Re: Crash in fork.c on everything = install hosed
On Mon, 03 Nov 2003 19:42:08 -0500, Mental Patient wrote: [...] Last time I broke libc, I fixed it by booting off my rescue (knoppix) cd. Mounted all the filesystems under /mnt/debian. It looked like /mnt/debian /mnt/debian/boot /mnt/debian/usr /mnt/debian/var etc... I used knoppix to download the libc6 deb and copied it to the root filesystem (/mnt/debian) of the hosed installation. I then cd'd into /mnt/debian and did the following: ar x PACKAGE.deb That left 2 files, data.tar.gz and control.tar.gz. I untared data.tar.gz and rebooted. Does knoppix come with a working dpkg? If it does you can also you dpkg -x PACKAGE.deb target_directory It worked, I was fine. Just to be sure, I did an apt-get --reinstall install libc6 to make sure everything was updated (package info, control scripts, etc). -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: Crash in fork.c on everything = install hosed
Gary Hennigan wrote: Malcolm Box [EMAIL PROTECTED] writes: OK, that looks like it might fix things. But can anyone tell me how to get the new version onto my machine given that both dpkg apt-get don't work at the moment? Is there some way to manually unpack the files from the .deb into the right places? I've never done it, but there's nothing magical about *.deb files. They're simple ar archive files, usually containing a data.tar.gz and control.tar.gz file, among other things. For your purposes you could try and untar the data.tar.gz file, which would contain the actually libc binaries and go from there. Thanks for the hint. Unfortunately, the machine is still losing, even after installing libc6_2.3.2.ds1-9_i386.deb which is the latest. Just to check I've done the right, thing, I did: ar x libc6_2.3.2.ds1-9_i386.deb gunzip data.tar.gz cd / tar xvf data.tar all as root. Then ran ldconfig, since this seems to be all that the postinstall scripts do. But the problem still remains - programs (including all shell scripts :-( ) that attempt to fork result in a: ../nptl/sysdeps/unix/sysv/linux/fork.c:132: __libc_fork: Assertion `({ __typeof (self-tid) __value; if (sizeof (__value) == 1) asm volatile (movb %%gs:%P2,%b0 : =q (__value) : 0 (0), i (((size_t) ((struct pthread *)0)-tid))); else if (sizeof (__value) == 4) asm volatile (movl %%gs:%P1,%0 : =r (__value) : i (((size_t) ((struct pthread *)0)-tid))); else { if (sizeof (__value) != 8) abort (); asm volatile (movl %%gs:%P1,%%eax\n\t movl %%gs:%P2,%%edx : =A (__value) : i (((size_t) ((struct pthread *)0)-tid)), i (((size_t) ((struct pthread *)0)-tid) + 4)); } __value; }) != ppid' failed. And I'm still stuck :-( Can anyone suggest what other parts of the system I should manually upgrade to fix this? Kernel? Binutils? Trouble is of couse that a whole lot of stuff relies on the ability to fork. Or is there another way to do this - boot from a rescue disk (what rescue disk!) and then point apt at the installed system and get it to fix it? Cheers, Malcolm -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: Crash in fork.c on everything = install hosed
Paul Scott wrote: Malcolm Box wrote: snip symptoms Near as I can tell, this is an assertion somewhere in the bowels of libc - a nasty place for things to go wrong. The error seems to be affecting anything trying to do certain type of fork() operations. Among others, it has taken out apt-get and dpkg :-( I just posted the same thing two days ago. Thanks to Jacob Lell. Bug 218546. It's fixed in the latest libc6. OK, that looks like it might fix things. But can anyone tell me how to get the new version onto my machine given that both dpkg apt-get don't work at the moment? Is there some way to manually unpack the files from the .deb into the right places? Malcolm -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: Crash in fork.c on everything = install hosed
Malcolm Box [EMAIL PROTECTED] writes: Paul Scott wrote: Malcolm Box wrote: snip symptoms Near as I can tell, this is an assertion somewhere in the bowels of libc - a nasty place for things to go wrong. The error seems to be affecting anything trying to do certain type of fork() operations. Among others, it has taken out apt-get and dpkg :-( I just posted the same thing two days ago. Thanks to Jacob Lell. Bug 218546. It's fixed in the latest libc6. OK, that looks like it might fix things. But can anyone tell me how to get the new version onto my machine given that both dpkg apt-get don't work at the moment? Is there some way to manually unpack the files from the .deb into the right places? I've never done it, but there's nothing magical about *.deb files. They're simple ar archive files, usually containing a data.tar.gz and control.tar.gz file, among other things. For your purposes you could try and untar the data.tar.gz file, which would contain the actually libc binaries and go from there. Gary -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: Crash in fork.c on everything = install hosed
Malcolm Box wrote: OK, that looks like it might fix things. But can anyone tell me how to get the new version onto my machine given that both dpkg apt-get don't work at the moment? Is there some way to manually unpack the files from the .deb into the right places? Malcolm Last time I broke libc, I fixed it by booting off my rescue (knoppix) cd. Mounted all the filesystems under /mnt/debian. It looked like /mnt/debian /mnt/debian/boot /mnt/debian/usr /mnt/debian/var etc... I used knoppix to download the libc6 deb and copied it to the root filesystem (/mnt/debian) of the hosed installation. I then cd'd into /mnt/debian and did the following: ar x PACKAGE.deb That left 2 files, data.tar.gz and control.tar.gz. I untared data.tar.gz and rebooted. It worked, I was fine. Just to be sure, I did an apt-get --reinstall install libc6 to make sure everything was updated (package info, control scripts, etc). HTH -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Crash in fork.c on everything = install hosed
Hi, I'm running unstable, and did an apt-get dist-upgrade this evening. The result was a crash in dpkg with the following error message: apt-get: ../nptl/sysdeps/unix/sysv/linux/fork.c:132: __libc_fork: Assertion `({ __typeof (self-tid) __value; if (sizeof (__value) == 1) asm volatile (movb %%gs:%P2,%b0 : =q (__value) : 0 (0), i (((size_t) ((struct pthread *)0)-tid))); else if (sizeof (__value) == 4) asm volatile (movl %%gs:%P1,%0 : =r (__value) : i (((size_t) ((struct pthread *)0)-tid))); else { if (sizeof (__value) != 8) abort (); asm volatile (movl %%gs:%P1,%%eax\n\t movl %%gs:%P2,%%edx : =A (__value) : i (((size_t) ((struct pthread *)0)-tid)), i (((size_t) ((struct pthread *)0)-tid) + 4)); } __value; }) != ppid' failed. E: Sub-process /usr/sbin/dpkg-preconfigure --apt || true received a segmentation fault. E: Failure running script /usr/sbin/dpkg-preconfigure --apt || true Near as I can tell, this is an assertion somewhere in the bowels of libc - a nasty place for things to go wrong. The error seems to be affecting anything trying to do certain type of fork() operations. Among others, it has taken out apt-get and dpkg :-( Has anyone (a) seen anything like this (b) got a clue what's causing it or (even better) know how I might go about fixing this? Right now the system is still usable for most things, but I don't know how a reboot would fare, nor how to fix the problem in the areas already affected. Thanks in advance for any help anyone can give! Malcolm -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: Crash in fork.c on everything = install hosed
Malcolm Box wrote: Hi, I'm running unstable, and did an apt-get dist-upgrade this evening. The result was a crash in dpkg with the following error message: apt-get: ../nptl/sysdeps/unix/sysv/linux/fork.c:132: __libc_fork: Assertion `({ __typeof (self-tid) __value; if (sizeof (__value) == 1) asm volatile (movb %%gs:%P2,%b0 : =q (__value) : 0 (0), i (((size_t) ((struct pthread *)0)-tid))); else if (sizeof (__value) == 4) asm volatile (movl %%gs:%P1,%0 : =r (__value) : i (((size_t) ((struct pthread *)0)-tid))); else { if (sizeof (__value) != 8) abort (); asm volatile (movl %%gs:%P1,%%eax\n\t movl %%gs:%P2,%%edx : =A (__value) : i (((size_t) ((struct pthread *)0)-tid)), i (((size_t) ((struct pthread *)0)-tid) + 4)); } __value; }) != ppid' failed. E: Sub-process /usr/sbin/dpkg-preconfigure --apt || true received a segmentation fault. E: Failure running script /usr/sbin/dpkg-preconfigure --apt || true Near as I can tell, this is an assertion somewhere in the bowels of libc - a nasty place for things to go wrong. The error seems to be affecting anything trying to do certain type of fork() operations. Among others, it has taken out apt-get and dpkg :-( Has anyone (a) seen anything like this (b) got a clue what's causing it or (even better) know how I might go about fixing this? Right now the system is still usable for most things, but I don't know how a reboot would fare, nor how to fix the problem in the areas already affected. I just posted the same thing two days ago. Thanks to Jacob Lell. Bug 218546. It's fixed in the latest libc6. Paul Scott -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]