Ken, this issue with UUID is almost half-year old (if not older), and was reported multiple times by multiple people who running squeak on linux. I thought this were fixed already.. but it seems there are some VMs which don't have such fix. David, can you shed a light on the status of given issue? 2009/7/16 Ken Causey <[hidden email]>: > So I disabled all the Traits tests and tried to run the rest. At some > point (sorry I was not watching closely) the image crashed. Again this > is on 32bit linux, exupery vm 0.15.1. > > Segmentation fault > > 2031394508 UUID>initialize > 2031394392 Behavior>new: -- Best regards, Igor Stasenko AKA sig. |
On Thu, Jul 16, 2009 at 10:53:25PM +0300, Igor Stasenko wrote: > > Ken, this issue with UUID is almost half-year old (if not older), > and was reported multiple times by multiple people who running squeak on linux. > I thought this were fixed already.. but it seems there are some VMs > which don't have such fix. > > David, can you shed a light on the status of given issue? I only know that it has been reported several times on the Pharo list. I have not seen the problem myself, but I assume that it's a bug in the plugin, so I opened an issue on Mantis to track it: http://bugs.squeak.org/view.php?id=7358 If anyone has additional information, please update the Mantis report. That's all I know for now. Dave |
As a workaround, how is this? UUID>>initialize "Some unix versions crash with the UUID prim, so disable it for all of 'em" Smalltalk platformName = 'unix' ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4] ifFalse:[self primMakeUUID]. Cheers, - Andreas David T. Lewis wrote: > > On Thu, Jul 16, 2009 at 10:53:25PM +0300, Igor Stasenko wrote: >> Ken, this issue with UUID is almost half-year old (if not older), >> and was reported multiple times by multiple people who running squeak on linux. >> I thought this were fixed already.. but it seems there are some VMs >> which don't have such fix. >> >> David, can you shed a light on the status of given issue? > > I only know that it has been reported several times on the Pharo > list. I have not seen the problem myself, but I assume that it's > a bug in the plugin, so I opened an issue on Mantis to track it: > > http://bugs.squeak.org/view.php?id=7358 > > If anyone has additional information, please update the Mantis report. > That's all I know for now. > > Dave > |
> As a workaround, how is this? > > UUID>>initialize > "Some unix versions crash with the UUID prim, so disable it for all of 'em" > Smalltalk platformName = 'unix' > ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4] > ifFalse:[self primMakeUUID]. No lads, we use this in a production telco environment - lets fix it properly. Brent |
On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote: > > > As a workaround, how is this? > > > > UUID>>initialize > > "Some unix versions crash with the UUID prim, so disable it for all of 'em" > > Smalltalk platformName = 'unix' > > ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4] > > ifFalse:[self primMakeUUID]. > > No lads, we use this in a production telco environment - lets fix it properly. Agreed. Someone (faried) has added an additional Mantis report on this problem, see http://bugs.squeak.org/view.php?id=7371. The new bug report contains some useful gdb output showing a segfault occuring in the actual uuid_generate() library call. The VM support code wrapping this call looks dead simple, so I'm hard pressed to see how that could be wrong. This plugin is trivial; we must be missing something obvious. Note, I'm not actually working on this bug, and I've never seen it happen. I'm just tracking it in Mantis and hoping that someone can point to a solution. Dave |
Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ? Nicolas 2009/7/18 David T. Lewis <[hidden email]>: > > On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote: >> >> > As a workaround, how is this? >> > >> > UUID>>initialize >> > "Some unix versions crash with the UUID prim, so disable it for all of 'em" >> > Smalltalk platformName = 'unix' >> > ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4] >> > ifFalse:[self primMakeUUID]. >> >> No lads, we use this in a production telco environment - lets fix it properly. > > Agreed. > > Someone (faried) has added an additional Mantis report on this problem, see > http://bugs.squeak.org/view.php?id=7371. > > The new bug report contains some useful gdb output showing a segfault occuring > in the actual uuid_generate() library call. The VM support code wrapping this > call looks dead simple, so I'm hard pressed to see how that could be wrong. > This plugin is trivial; we must be missing something obvious. > > Note, I'm not actually working on this bug, and I've never seen it happen. I'm > just tracking it in Mantis and hoping that someone can point to a solution. > > Dave > > |
In reply to this post by David T. Lewis
It's not clear from the reports whether this is known to be the first uuid_generate call. It might help if someone afflicted could say if this is always the first call... Since it does look dead simple on the face of it. But there's that almost-ambiguous extra indirection in there int MakeUUID(char *location) { uuid_t uuid; uuid_generate(uuid); memcpy((void *)location, (void *)&uuid, sizeof(uuid)); return 1; } since uuid_t is an array type, the & in (void *) & uuid is one of those C miseries; who knows? Anyway, is it the first uuid, or a subsequent one, that dies? -b > > On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote: >> >>> As a workaround, how is this? >>> >>> UUID>>initialize >>> "Some unix versions crash with the UUID prim, so disable it for >>> all of 'em" >>> Smalltalk platformName = 'unix' >>> ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4] >>> ifFalse:[self primMakeUUID]. >> >> No lads, we use this in a production telco environment - lets fix >> it properly. > > Agreed. > > Someone (faried) has added an additional Mantis report on this > problem, see > http://bugs.squeak.org/view.php?id=7371. > > The new bug report contains some useful gdb output showing a > segfault occuring > in the actual uuid_generate() library call. The VM support code > wrapping this > call looks dead simple, so I'm hard pressed to see how that could be > wrong. > This plugin is trivial; we must be missing something obvious. > > Note, I'm not actually working on this bug, and I've never seen it > happen. I'm > just tracking it in Mantis and hoping that someone can point to a > solution. > > Dave > |
In reply to this post by David T. Lewis
On Sat, Jul 18, 2009 at 8:11 PM, David T. Lewis<[hidden email]> wrote: > Someone (faried) has added an additional Mantis report on this problem, see > http://bugs.squeak.org/view.php?id=7371. I can't replicate this on Ubuntu/x86, nor on Solaris/SPARC, both 3.10-4. Can anyone replicate this bug? What did you do? -- Andrew |
In reply to this post by David T. Lewis
On Sat, 2009-07-18 at 14:11 -0400, David T. Lewis wrote: > On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote: > > > > > As a workaround, how is this? > > > > > > UUID>>initialize > > > "Some unix versions crash with the UUID prim, so disable it for all of 'em" > > > Smalltalk platformName = 'unix' > > > ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4] > > > ifFalse:[self primMakeUUID]. > > > > No lads, we use this in a production telco environment - lets fix it properly. > > Agreed. > > Someone (faried) has added an additional Mantis report on this problem, see > http://bugs.squeak.org/view.php?id=7371. > > The new bug report contains some useful gdb output showing a segfault occuring > in the actual uuid_generate() library call. The VM support code wrapping this > call looks dead simple, so I'm hard pressed to see how that could be wrong. > This plugin is trivial; we must be missing something obvious. > > Note, I'm not actually working on this bug, and I've never seen it happen. I'm > just tracking it in Mantis and hoping that someone can point to a solution. I think another work around was to increase the size of the Squeak UUID object by a byte which suggests the bug is an off by one error. Bryce |
In reply to this post by Nicolas Cellier
On Sat, Jul 18, 2009 at 08:24:10PM +0200, Nicolas Cellier wrote: > > Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ? > It certainly seems possible. The symptoms reported there are similar to what Squeak/Pharo users have been reporting. There is a C test program that someone might run to confirm, see the bugzilla report for details. Dave |
In reply to this post by Bryce Kampjes
On Sat, Jul 18, 2009 at 09:16:19PM +0100, Bryce Kampjes wrote: > > I think another work around was to increase the size of the Squeak UUID > object by a byte which suggests the bug is an off by one error. Interesting. I don't see an off-by-one error in the code, but perhaps it might be an alignment issue that causes a larger buffer to be required on some platforms? Dave |
In reply to this post by Nicolas Cellier
On Sat, Jul 18, 2009 at 08:24:10PM +0200, Nicolas Cellier wrote: > > 2009/7/18 David T. Lewis <[hidden email]>: > > > > Someone (faried) has added an additional Mantis report on this problem, see > > http://bugs.squeak.org/view.php?id=7371. > > > > The new bug report contains some useful gdb output showing a segfault occuring > > in the actual uuid_generate() library call. The VM support code wrapping this > > call looks dead simple, so I'm hard pressed to see how that could be wrong. > > This plugin is trivial; we must be missing something obvious. > > > > Note, I'm not actually working on this bug, and I've never seen it happen. I'm > > just tracking it in Mantis and hoping that someone can point to a solution. > > > > Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ? FYI, faried has provided some excellent follow up information on this issue on Mantis 7358, including a link to http://bugs.python.org/issue6059, which appears to show Python running into the same library bug. Dave |
Aha, so it seems that bug lies in uuid library.. Is there a way to find out the buggy version and then add a workaround into plugin? Something like put ' if (uuid_version() == xxx ) {} ' 2009/7/21 David T. Lewis <[hidden email]>: > > On Sat, Jul 18, 2009 at 08:24:10PM +0200, Nicolas Cellier wrote: >> >> 2009/7/18 David T. Lewis <[hidden email]>: >> > >> > Someone (faried) has added an additional Mantis report on this problem, see >> > http://bugs.squeak.org/view.php?id=7371. >> > >> > The new bug report contains some useful gdb output showing a segfault occuring >> > in the actual uuid_generate() library call. The VM support code wrapping this >> > call looks dead simple, so I'm hard pressed to see how that could be wrong. >> > This plugin is trivial; we must be missing something obvious. >> > >> > Note, I'm not actually working on this bug, and I've never seen it happen. I'm >> > just tracking it in Mantis and hoping that someone can point to a solution. >> > >> >> Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ? > > FYI, faried has provided some excellent follow up information on this issue > on Mantis 7358, including a link to http://bugs.python.org/issue6059, which > appears to show Python running into the same library bug. > > Dave > > -- Best regards, Igor Stasenko AKA sig. |
Free forum by Nabble | Edit this page |