On Mon, Mar 21, 2016 at 8:25 PM, James Molloy <james at jamesmolloy.co.uk> wrote:> > Also, if it can segfault for some pathetic input > > Surely that's a bug though, not seriously designed behaviour? >No. That is a design choice.> On Mon, 21 Mar 2016 at 19:24 Rui Ueyama <ruiu at google.com> wrote: > >> We do not enable exceptions and longjmp is not safe. Also, if it can >> segfault for some pathetic input, "it longjmps in most cases" doesn't help >> people who wants 100% guarantee like you. >> >> On Mon, Mar 21, 2016 at 8:21 PM, James Molloy <james at jamesmolloy.co.uk> >> wrote: >> >>> If it can exit, why can't it longjmp back to a library consumer at least? >>> >>> On Mon, 21 Mar 2016 at 19:20 Rui Ueyama <ruiu at google.com> wrote: >>> >>>> On Mon, Mar 21, 2016 at 8:16 PM, James Molloy <james at jamesmolloy.co.uk> >>>> wrote: >>>> >>>>> > Correct >>>>> >>>>> Out of interest, how does LLD itself handle error reporting when >>>>> invoked from the command line, and how does it avoid segfaulting in that >>>>> case? >>>>> >>>> >>>> It generally reports an error and exit, or in rare circumstances it >>>> just segfaults. >>>> >>>> >>>>> Cheers, >>>>> >>>>> James >>>>> >>>>> On Mon, 21 Mar 2016 at 19:14 Rafael Espíndola < >>>>> rafael.espindola at gmail.com> wrote: >>>>> >>>>>> On 21 March 2016 at 15:10, James Molloy <james at jamesmolloy.co.uk> >>>>>> wrote: >>>>>> > Well sure, it's unlikely, but how many consumers can make that sort >>>>>> of >>>>>> > guarantee? And if a consumer can't guarantee the integrity of the >>>>>> ELF file >>>>>> > they have no choice but not to use LLD, or to fork before using it. >>>>>> >>>>>> Correct. >>>>>> >>>>>> Cheers, >>>>>> Rafael >>>>>> >>>>> >>-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160321/5fc496a0/attachment.html>
But you're surely not suggesting that lld will segfault as an error handling mode in production? You say this was decided in a thread recently- could you please point me at that? I find this really hard to believe. Cheers, James On Mon, 21 Mar 2016 at 19:28, Rui Ueyama <ruiu at google.com> wrote:> On Mon, Mar 21, 2016 at 8:25 PM, James Molloy <james at jamesmolloy.co.uk> > wrote: > >> > Also, if it can segfault for some pathetic input >> >> Surely that's a bug though, not seriously designed behaviour? >> > > No. That is a design choice. > > >> On Mon, 21 Mar 2016 at 19:24 Rui Ueyama <ruiu at google.com> wrote: >> >>> We do not enable exceptions and longjmp is not safe. Also, if it can >>> segfault for some pathetic input, "it longjmps in most cases" doesn't help >>> people who wants 100% guarantee like you. >>> >>> On Mon, Mar 21, 2016 at 8:21 PM, James Molloy <james at jamesmolloy.co.uk> >>> wrote: >>> >>>> If it can exit, why can't it longjmp back to a library consumer at >>>> least? >>>> >>>> On Mon, 21 Mar 2016 at 19:20 Rui Ueyama <ruiu at google.com> wrote: >>>> >>>>> On Mon, Mar 21, 2016 at 8:16 PM, James Molloy <james at jamesmolloy.co.uk >>>>> > wrote: >>>>> >>>>>> > Correct >>>>>> >>>>>> Out of interest, how does LLD itself handle error reporting when >>>>>> invoked from the command line, and how does it avoid segfaulting in that >>>>>> case? >>>>>> >>>>> >>>>> It generally reports an error and exit, or in rare circumstances it >>>>> just segfaults. >>>>> >>>>> >>>>>> Cheers, >>>>>> >>>>>> James >>>>>> >>>>>> On Mon, 21 Mar 2016 at 19:14 Rafael Espíndola < >>>>>> rafael.espindola at gmail.com> wrote: >>>>>> >>>>>>> On 21 March 2016 at 15:10, James Molloy <james at jamesmolloy.co.uk> >>>>>>> wrote: >>>>>>> > Well sure, it's unlikely, but how many consumers can make that >>>>>>> sort of >>>>>>> > guarantee? And if a consumer can't guarantee the integrity of the >>>>>>> ELF file >>>>>>> > they have no choice but not to use LLD, or to fork before using it. >>>>>>> >>>>>>> Correct. >>>>>>> >>>>>>> Cheers, >>>>>>> Rafael >>>>>>> >>>>>> >>>-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160321/8b444c84/attachment.html>
On Mon, Mar 21, 2016 at 8:33 PM, James Molloy <james at jamesmolloy.co.uk> wrote:> But you're surely not suggesting that lld will segfault as an error > handling mode in production? >The document clearly states that (a) it is user's responsibility to give sane object files, and (b) a corrupted file may cause a fatal error or SEGV.> You say this was decided in a thread recently- could you please point me > at that? I find this really hard to believe. >Please find it yourself, that was a long thread. The current decision was not made lightly, so please respect that and take your time to understand the situation. Cheers,> > James > > On Mon, 21 Mar 2016 at 19:28, Rui Ueyama <ruiu at google.com> wrote: > >> On Mon, Mar 21, 2016 at 8:25 PM, James Molloy <james at jamesmolloy.co.uk> >> wrote: >> >>> > Also, if it can segfault for some pathetic input >>> >>> Surely that's a bug though, not seriously designed behaviour? >>> >> >> No. That is a design choice. >> >> >>> On Mon, 21 Mar 2016 at 19:24 Rui Ueyama <ruiu at google.com> wrote: >>> >>>> We do not enable exceptions and longjmp is not safe. Also, if it can >>>> segfault for some pathetic input, "it longjmps in most cases" doesn't help >>>> people who wants 100% guarantee like you. >>>> >>>> On Mon, Mar 21, 2016 at 8:21 PM, James Molloy <james at jamesmolloy.co.uk> >>>> wrote: >>>> >>>>> If it can exit, why can't it longjmp back to a library consumer at >>>>> least? >>>>> >>>>> On Mon, 21 Mar 2016 at 19:20 Rui Ueyama <ruiu at google.com> wrote: >>>>> >>>>>> On Mon, Mar 21, 2016 at 8:16 PM, James Molloy < >>>>>> james at jamesmolloy.co.uk> wrote: >>>>>> >>>>>>> > Correct >>>>>>> >>>>>>> Out of interest, how does LLD itself handle error reporting when >>>>>>> invoked from the command line, and how does it avoid segfaulting in that >>>>>>> case? >>>>>>> >>>>>> >>>>>> It generally reports an error and exit, or in rare circumstances it >>>>>> just segfaults. >>>>>> >>>>>> >>>>>>> Cheers, >>>>>>> >>>>>>> James >>>>>>> >>>>>>> On Mon, 21 Mar 2016 at 19:14 Rafael Espíndola < >>>>>>> rafael.espindola at gmail.com> wrote: >>>>>>> >>>>>>>> On 21 March 2016 at 15:10, James Molloy <james at jamesmolloy.co.uk> >>>>>>>> wrote: >>>>>>>> > Well sure, it's unlikely, but how many consumers can make that >>>>>>>> sort of >>>>>>>> > guarantee? And if a consumer can't guarantee the integrity of the >>>>>>>> ELF file >>>>>>>> > they have no choice but not to use LLD, or to fork before using >>>>>>>> it. >>>>>>>> >>>>>>>> Correct. >>>>>>>> >>>>>>>> Cheers, >>>>>>>> Rafael >>>>>>>> >>>>>>> >>>>-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160321/4b2b8a27/attachment.html>