[Pharo-project] UUID and Cog?

Philippe Marschall kustos at gmx.net
Thu Oct 7 08:16:10 EDT 2010


On 06.10.2010 04:35, Levente Uzonyi wrote:
> On Tue, 5 Oct 2010, Philippe Marschall wrote:
> 
>> On 05.10.2010 18:23, Levente Uzonyi wrote:
>>> On Tue, 5 Oct 2010, Philippe Marschall wrote:
>>>
>>>> On 05.10.2010 16:41, David T. Lewis wrote:
>>>>> If anyone has any specific information as to the root cause of the
>>>>> libuuid
>>>>> bug, I'd appreciate if you can update the bug report here:
>>>>>
>>>>>   http://bugs.squeak.org/view.php?id=7358
>>>>>
>>>>> I had previously tried to summarize as follows:
>>>>>
>>>>>> The bug exists in some versions of libuuid on some Linux
>>>>>> distributions.
>>>>>> The workaround is to compile the plugin internal. The latest versions
>>>>>> of Unix VM have the plugin compiled internally, although some
>>>>>> users may
>>>>>> still experience problems if they have a leftover external plugin
>>>>>> from
>>>>>> a prior installation.
>>>>>
>>>>> But it's not clear if this is accurate given the recent reports here.
>>>>> In particular, if a precompiled Cog VM with the UUID plugin compiled
>>>>> internally leads to a crash, then the above is not a sufficient
>>>>> workaround (at least not on Cog).
>>>>>
>>>>> If we are seeing crashes on Cog with an internal UUID plugin, but
>>>>> not on the traditional VM with an internal UUID plugin, then I think
>>>>> I smell a pthread related issue.
>>>>
>>>> How can I find out whether the plugin is compiled internally or not?
>>>
>>> The crash report lists the loaded plugins. If the plugin name ends with
>>> (i), then it's internal, if it ends with (e), then it's external. If
>>> you're using Eliot's build, then it's external.
>>
>> Yeah, that's what I'm using, it's external.
>>
>>> If you just want a working VM and the quality of UUIDs doesn't matter,
>>> then you can safely delete the UUIDPlugin from the lib/squeak/3.9-7/
>>> directory.
>>
>> Uhm, I'm making Monticello commits and good UUIDs would help.
>>
> 
> I think the UUIDGenerator in the image produces UUIDs which are good
> enough for MC.
> 
>>>>
>>>> What I see in the console is the following:
>>>>
>>>> Segmentation fault
>>>>
>>>>
>>>>
>>>> Smalltalk stack dump:
>>>> 0xff79f344 M UUID>initialize -1045926312: a(n) UUID
>>>> 0xff79f35c M UUID class(Behavior)>new: -1246728604: a(n) UUID class
>>>> 0xff79f380 I UUID class>new -1246728604: a(n) UUID class
>>>>
>>>> ...
>>>>
>>>> Most recent primitives
>>>> ...
>>>> withArgs:executeMethod:
>>>> basicNew:
>>>> primMakeUUID
>>>>
>>>> Is there a way to provide more information?
>>>
>>> The stack dump looks the same as what other people have. The version of
>>> your linux might be helpful, so others can reproduce the issue if you
>>> don't want to debug it yourself.
>>
>> Gentoo 64bit: 2.6.35-gentoo-r8
>> util-linux (where libuuid afaik comes from): 2.18-r1
> 
> Do you have a 32-bit version of libuuid installed? If not, it won't work.

I believe so.

> What does "ldd UUIDPlugin" print?

$dd UUIDPlugin
	linux-gate.so.1 =>  (0xffffe000)
	libuuid.so.1 => /lib32/libuuid.so.1 (0xf771f000)
	libc.so.6 => /lib32/libc.so.6 (0xf75c4000)
	/lib/ld-linux.so.2 (0xf7762000)

Cheers
Philippe





More information about the Pharo-dev mailing list