1 |
On 01/16/2014 08:07 PM, lovely2 wrote: |
2 |
> I doubt this is a memory problem. I've just had the same problem with |
3 |
> glibc-2.17 and python. I manually went back to glibc-2.16 and everything is |
4 |
> fine again. I then tried re-emerging all the python versions with glibc-2.16 |
5 |
> installed and then re-emerged glibc-2.17 and had the same problem. |
6 |
> |
7 |
> After running strace on the python2.7. My best guess is that it is a kernel |
8 |
> <> glibc-2.17 incompatiblity. The segfault happens near a mprotect |
9 |
> operation, very early on. |
10 |
> |
11 |
> vault ~ # strace python |
12 |
> -- snip -- |
13 |
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = |
14 |
> 0xb7462000 |
15 |
> set_thread_area({entry_number:-1 -> 6, base_addr:0xb74626c0, limit:1048575, |
16 |
> seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, |
17 |
> seg_not_present:0, useable:1}) = 0 |
18 |
> mprotect(0xb7658000, 8192, PROT_READ) = 0 |
19 |
> --- SIGSEGV (Segmentation fault) @ 0 (0) --- |
20 |
> +++ killed by SIGSEGV +++ |
21 |
> Segmentation fault |
22 |
> |
23 |
> vault ~ # uname -a |
24 |
> Linux vault 2.6.31-gentoo-r10 #1 SMP Sun Mar 7 14:35:15 EST 2010 i686 |
25 |
> Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz GenuineIntel GNU/Linux |
26 |
> |
27 |
> I'm upgrading to the latest gentoo-sources. Only thing i'm worried about is |
28 |
> rebooting but all in the life of a gentoo user. |
29 |
|
30 |
That could very well be (kernel issue with glibc-2.17.) I just upgraded |
31 |
some 3 year old gentoo VMs and managed to get everything installed. The |
32 |
kernel was the last thing I did have to upgrade, but I was on |
33 |
gentoo-sources-2.6.32 and had no segfault problems. |
34 |
|
35 |
From memory, I had to upgrade things in this order: |
36 |
-run emerge --sync |
37 |
-gcc (then switch to new version) |
38 |
-emerge libtool, binutils, linux-headers, glibc (glib as a dependency |
39 |
had to be masked to build, may have to solve some other blocks like a |
40 |
fallocate64 error, i think i had to use `ac_cv_func_fallocate=no emerge |
41 |
bintuils` so libtool would build?) |
42 |
-rebuild gcc (advise from the gcc package - rebuild after glibc update) |
43 |
-upgrade baselayout and openrc (inc. udev, module-init-tool->kmod, etc) |
44 |
-perl (then run perl-cleaner) |
45 |
-python (then remove all stale versions of 3.x and 2.x, switch active to |
46 |
2.7) |
47 |
-python-updater |
48 |
-upgrade portage, portage-utils |
49 |
-unmask things I'd individually masked and try to solve blocks emerging |
50 |
world |
51 |
-eventually world would run, make sure everything built |
52 |
-run emerge-pvuDNe to make sure nothing was missed (something always is) |
53 |
then upgrade those packages |
54 |
-run emerge --depclean |
55 |
-run emerge @preserved-rebuild |
56 |
-run python-update & perl-cleaner |
57 |
-run revdep-rebuild |
58 |
-build & install new kernel (in my case 3.10.25) |
59 |
-reboot |
60 |
|
61 |
Damn, it works and it's up to date. Now I wish I could say that only |
62 |
took an hour, but on the first machine it took me almost 10 hours |
63 |
because I was almost always trying to work around blocks. The very last |
64 |
one I got down to 7 hours as I knew exactly what I had to do. |
65 |
|
66 |
The problem is it doesn't look like there's still an old 2.6 kernel in |
67 |
the tree you can upgrade to so it might be difficult: |
68 |
|
69 |
$ eshowkw gentoo-sources |
70 |
Keywords for sys-kernel/gentoo-sources: |
71 |
| | u | |
72 |
| a a a p s | n | |
73 |
| l m r h i m m p s p | u s | r |
74 |
| p d a m p a 6 i p c 3 a x | s l | e |
75 |
| h 6 r 6 p 6 8 p p 6 9 s r 8 | e o | p |
76 |
| a 4 m 4 a 4 k s c 4 0 h c 6 | d t | o |
77 |
--------------+-----------------------------+-------------+------- |
78 |
3.0.101 | ~ ~ ~ o ~ ~ o o ~ ~ ~ ~ ~ ~ | o 3.0.101 | gentoo |
79 |
--------------+-----------------------------+-------------+------- |
80 |
3.2.54 | ~ ~ ~ o ~ ~ o o ~ ~ ~ ~ ~ ~ | o 3.2.54 | gentoo |
81 |
--------------+-----------------------------+-------------+------- |
82 |
3.4.76 | ~ ~ ~ o ~ ~ o o ~ ~ ~ ~ ~ ~ | o 3.4.76 | gentoo |
83 |
--------------+-----------------------------+-------------+------- |
84 |
3.4.77 | ~ ~ ~ o ~ ~ o o ~ ~ ~ ~ ~ ~ | o 3.4.77 | gentoo |
85 |
--------------+-----------------------------+-------------+------- |
86 |
3.4.9999 | o o o o o o o o o o o o o o | o 3.4.9999 | gentoo |
87 |
--------------+-----------------------------+-------------+------- |
88 |
3.9.11-r1 | o ~ ~ o o ~ o o o o o o o ~ | o 3.9.11-r1 | gentoo |
89 |
--------------+-----------------------------+-------------+------- |
90 |
3.10.7 | + + + o + + o ~ + + + + + + | o 3.10.7 | gentoo |
91 |
--------------+-----------------------------+-------------+------- |
92 |
3.10.7-r1 | + + + o + + o ~ + + + + + + | o 3.10.7-r1 | gentoo |
93 |
--------------+-----------------------------+-------------+------- |
94 |
[I]3.10.17 | ~ + ~ o + ~ o ~ ~ ~ ~ ~ ~ + | o 3.10.17 | gentoo |
95 |
--------------+-----------------------------+-------------+------- |
96 |
3.10.25 | ~ + + o + + o ~ + + ~ ~ ~ + | o 3.10.25 | gentoo |
97 |
--------------+-----------------------------+-------------+------- |
98 |
3.10.26 | ~ ~ ~ o ~ ~ o ~ ~ ~ ~ ~ ~ ~ | o 3.10.26 | gentoo |
99 |
--------------+-----------------------------+-------------+------- |
100 |
3.10.27 | ~ ~ ~ o ~ ~ o ~ ~ ~ ~ ~ ~ ~ | o 3.10.27 | gentoo |
101 |
--------------+-----------------------------+-------------+------- |
102 |
3.10.9999 | o o o o o o o o o o o o o o | o 3.10.9999 | gentoo |
103 |
--------------+-----------------------------+-------------+------- |
104 |
3.11.10 | ~ ~ ~ o ~ ~ o ~ ~ ~ ~ ~ ~ ~ | o 3.11.10 | gentoo |
105 |
--------------+-----------------------------+-------------+------- |
106 |
3.11.9999 | o o o o o o o o o o o o o o | o 3.11.9999 | gentoo |
107 |
--------------+-----------------------------+-------------+------- |
108 |
3.12.7 | ~ ~ ~ o ~ ~ o ~ ~ ~ ~ ~ ~ ~ | o 3.12.7 | gentoo |
109 |
--------------+-----------------------------+-------------+------- |
110 |
3.12.8 | ~ ~ ~ o ~ ~ o ~ ~ ~ ~ ~ ~ ~ | o 3.12.8 | gentoo |
111 |
--------------+-----------------------------+-------------+------- |
112 |
3.12.9999 | o o o o o o o o o o o o o o | o 3.12.9999 | gentoo |
113 |
|
114 |
|
115 |
Dan |