Pharo 64bit on Ubuntu (was Re: failing tests in Pharo 7)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Pharo 64bit on Ubuntu (was Re: failing tests in Pharo 7)

Alistair Grant
Hi Ben,

On 7 January 2018 at 05:22, Ben Coman <[hidden email]> wrote:
> Ubuntu 16.04 64bit
> Build information:
> Pharo-7.0+alpha.build.409.sha.bb4eaaf976e3fb148b33b6d87598022b77329768 (64 Bit)
> Virtual Machine: Pharo64/lib/pharo/5.0-201712211450/pharo

I've mostly ignored 64 bit Pharo because I can't get Iceberg stable
enough.  Since you're also using Ubuntu 16.04, could I ask you to try
(obviously somewhere it is OK to crash the vm :-)):


| pharoRepository |

Iceberg enableMetacelloIntegration: true.
Metacello new
        repository: 'github://akgrant43/pharo-akgosprocess/mc';
        baseline: 'AKGOSProcess';
        load.
pharoRepository := IceRepository registry detect: [ :each | each name
= 'pharo-akgosprocess' ].
pharoRepository pull.


And let me know the result.  I get:

pharo: malloc.c:2394: sysmalloc: Assertion `(old_top == initial_top
(av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE &&
prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) ==
0)' failed.
/snap/pharo7/x1/usr/bin/pharo: line 43: 21304 Aborted
(core dumped) $pharoexe $origargs


Thanks!
Alistair

Reply | Threaded
Open this post in threaded view
|

Re: Pharo 64bit on Ubuntu (was Re: failing tests in Pharo 7)

Ben Coman


On 7 January 2018 at 20:38, Alistair Grant <[hidden email]> wrote:
Hi Ben,

On 7 January 2018 at 05:22, Ben Coman <[hidden email]> wrote:
> Ubuntu 16.04 64bit
> Build information:
> Pharo-7.0+alpha.build.409.sha.bb4eaaf976e3fb148b33b6d87598022b77329768 (64 Bit)
> Virtual Machine: Pharo64/lib/pharo/5.0-201712211450/pharo

I've mostly ignored 64 bit Pharo because I can't get Iceberg stable
enough.  Since you're also using Ubuntu 16.04, could I ask you to try
(obviously somewhere it is OK to crash the vm :-)):

Now first up, is it just Ubuntu 16.04 with this problem?
Can other Linux users report what they get for this?
 

| pharoRepository |

Iceberg enableMetacelloIntegration: true.
Metacello new
        repository: 'github://akgrant43/pharo-akgosprocess/mc';
        baseline: 'AKGOSProcess';
        load.
pharoRepository := IceRepository registry detect: [ :each | each name
= 'pharo-akgosprocess' ].
pharoRepository pull.


And let me know the result.  I get:

pharo: malloc.c:2394: sysmalloc: Assertion `(old_top == initial_top
(av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE &&
prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) ==
0)' failed.
/snap/pharo7/x1/usr/bin/pharo: line 43: 21304 Aborted
(core dumped) $pharoexe $origargs

Downloaded and unzipped...

Ran your script and Pharo crashed with the following in the console shell...

pharo: malloc.c:2394: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Aborted (core dumped)


Also, anther case... 
Tools > Iceberg > Clone repository
  Remote url = [hidden email]:bencoman/pharo.git
  Local directory = /home/ben/Apps/Pharo64/pharo-local/iceberg
  Code sub directory = src
  clicked <Create Repository>
After "pharo    master" row appears, 
  right-clicked on "pharo" and clicked <Synchronise>
  added a comment and clicked <Commit on master>
and Pharo crashed with the following on console...

*** Error in `./lib/pharo/5.0-201712211450/pharo': corrupted size vs. prev_size: 0x00007fe23c020120 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7fe241a407e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x7e9dc)[0x7fe241a479dc]
/lib/x86_64-linux-gnu/libc.so.6(+0x82246)[0x7fe241a4b246]
/lib/x86_64-linux-gnu/libc.so.6(__libc_calloc+0xba)[0x7fe241a4ddca]
./lib/pharo/5.0-201712211450/libgit2.so(+0x6cd9e)[0x7fe23cc77d9e]
./lib/pharo/5.0-201712211450/libgit2.so(+0x6eda2)[0x7fe23cc79da2]
./lib/pharo/5.0-201712211450/libgit2.so(git_diff_tree_to_tree+0x224)[0x7fe23cc55461]
./lib/pharo/5.0-201712211450/pharo[0x4c947e]
./lib/pharo/5.0-201712211450/pharo[0x457c27]
./lib/pharo/5.0-201712211450/pharo[0x459c97]
./lib/pharo/5.0-201712211450/pharo(ceSendsupertonumArgs+0x25c)[0x45ba9c]
[0xf00100]

See attached for full dump.
cheers -ben

console-dump.txt (36 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Pharo 64bit on Ubuntu (was Re: failing tests in Pharo 7)

Alistair Grant
Hi Ben,

Many thanks for taking the trouble to reproduce this.


On 8 January 2018 at 15:44, Ben Coman <[hidden email]> wrote:

>
>
> On 7 January 2018 at 20:38, Alistair Grant <[hidden email]> wrote:
>>
>> Hi Ben,
>>
>> On 7 January 2018 at 05:22, Ben Coman <[hidden email]> wrote:
>> > Ubuntu 16.04 64bit
>> > Build information:
>> > Pharo-7.0+alpha.build.409.sha.bb4eaaf976e3fb148b33b6d87598022b77329768
>> > (64 Bit)
>> > Virtual Machine: Pharo64/lib/pharo/5.0-201712211450/pharo
>>
>> I've mostly ignored 64 bit Pharo because I can't get Iceberg stable
>> enough.  Since you're also using Ubuntu 16.04, could I ask you to try
>> (obviously somewhere it is OK to crash the vm :-)):
>
>
> Now first up, is it just Ubuntu 16.04 with this problem?
> Can other Linux users report what they get for this?
>
>>
>>
>> | pharoRepository |
>>
>> Iceberg enableMetacelloIntegration: true.
>> Metacello new
>>         repository: 'github://akgrant43/pharo-akgosprocess/mc';
>>         baseline: 'AKGOSProcess';
>>         load.
>> pharoRepository := IceRepository registry detect: [ :each | each name
>> = 'pharo-akgosprocess' ].
>> pharoRepository pull.
>>
>>
>> And let me know the result.  I get:
>>
>> pharo: malloc.c:2394: sysmalloc: Assertion `(old_top == initial_top
>> (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE &&
>> prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) ==
>> 0)' failed.
>> /snap/pharo7/x1/usr/bin/pharo: line 43: 21304 Aborted
>> (core dumped) $pharoexe $origargs
>
>
> Downloaded and unzipped...
> http://files.pharo.org/vm/pharo-spur64/linux/pharo-linux-x86_64threaded-201712211450-276a5ff.zip
> http://files.pharo.org/image/70/Pharo-7.0.0-alpha.build.412.sha.2e40948.arch.64bit.zip
>
> Ran your script and Pharo crashed with the following in the console shell...
>
> https://github.com/OpenSmalltalk/opensmalltalk-vm/releases/tag/r3732#linux
> pharo: malloc.c:2394: sysmalloc: Assertion `(old_top == initial_top (av) &&
> old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse
> (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
> Aborted (core dumped)
>
>
> Also, anther case...
> Tools > Iceberg > Clone repository
>   Remote url = [hidden email]:bencoman/pharo.git
>   Local directory = /home/ben/Apps/Pharo64/pharo-local/iceberg
>   Code sub directory = src
>   clicked <Create Repository>
> After "pharo    master" row appears,
>   right-clicked on "pharo" and clicked <Synchronise>
>   added a comment and clicked <Commit on master>
> and Pharo crashed with the following on console...
>
> *** Error in `./lib/pharo/5.0-201712211450/pharo': corrupted size vs.
> prev_size: 0x00007fe23c020120 ***
> ======= Backtrace: =========
> /lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7fe241a407e5]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e9dc)[0x7fe241a479dc]
> /lib/x86_64-linux-gnu/libc.so.6(+0x82246)[0x7fe241a4b246]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_calloc+0xba)[0x7fe241a4ddca]
> ./lib/pharo/5.0-201712211450/libgit2.so(+0x6cd9e)[0x7fe23cc77d9e]
> ./lib/pharo/5.0-201712211450/libgit2.so(+0x6eda2)[0x7fe23cc79da2]
> ./lib/pharo/5.0-201712211450/libgit2.so(git_diff_tree_to_tree+0x224)[0x7fe23cc55461]
> ./lib/pharo/5.0-201712211450/pharo[0x4c947e]
> ./lib/pharo/5.0-201712211450/pharo[0x457c27]
> ./lib/pharo/5.0-201712211450/pharo[0x459c97]
> ./lib/pharo/5.0-201712211450/pharo(ceSendsupertonumArgs+0x25c)[0x45ba9c]
> [0xf00100]

I get the same crash dump if I follow the steps you detailed above.

My C debugging skills have accumulated more than 20 years of rust and
debris, but I'm almost at the point where I'll try building a debug
version of the VM and have a look at this.


Thanks again,
Alistair