This is the mail archive of the
libc-help@sourceware.org
mailing list for the glibc project.
Re: vi and glibc 2.12: Assertion `_rtld_global_ro._dl_pagesize != 0
- From: Arkadiusz Miskiewicz <arekm at maven dot pl>
- To: libc-alpha at sourceware dot org
- Cc: "H.J. Lu" <hjl dot tools at gmail dot com>,libc-help at sourceware dot org
- Date: Mon, 16 Aug 2010 14:47:02 +0200
- Subject: Re: vi and glibc 2.12: Assertion `_rtld_global_ro._dl_pagesize != 0
- References: <201005132108.47735.arekm@maven.pl> <201005212042.01247.arekm@maven.pl> <AANLkTimwbqfiz9lY8ncTdsKIdwraAI_unaNK2CkTBEU3@mail.gmail.com>
On Friday 21 of May 2010, H.J. Lu wrote:
> On Fri, May 21, 2010 at 11:42 AM, Arkadiusz Miskiewicz <arekm@maven.pl>
wrote:
> > On Thursday 13 of May 2010, Arkadiusz Miskiewicz wrote:
> >> With glibc 2.12 vi (from vim 7.2.422) started dying here with:
> >>
> >> 188679 write(2, "vi: ../sysdeps/unix/sysv/linux/getpagesize.c:32:
> >> __getpagesize: Assertion `_rtld_global_ro._dl_pagesize != 0' failed.\n",
> >> 118) = 118
> >>
> >> Vim: Caught deadly signal ABRT
> >>
> >> Has anyone seen this?
> >
> > Simple reproducer for:
> >
> > [arekm@carme-pld ~]$ ./a.out
> > a.out: ../sysdeps/unix/sysv/linux/getpagesize.c:32: __getpagesize:
> > Assertion `_rtld_global_ro._dl_pagesize != 0' failed.
> >
> > [arekm@carme-pld ~]$ cat a.c
> > #include <sys/types.h>
> > #include <pwd.h>
> > int main() {
> >
> > getpwnam("root");
> > return 0;
> > }
> >
> > [arekm@carme-pld ~]$ gcc a.c -static
> > /home/users/arekm/tmp/ccedPM2o.o: In function `main':
> > a.c:(.text+0xa): warning: Using 'getpwnam' in statically linked
> > applications requires at runtime the shared libraries from the glibc
> > version used for linking
> > [arekm@carme-pld ~]$ ./a.out
> > a.out: ../sysdeps/unix/sysv/linux/getpagesize.c:32: __getpagesize:
> > Assertion `_rtld_global_ro._dl_pagesize != 0' failed.
> > zsh: abort ./a.out
> > [arekm@carme-pld ~]$ gcc --version
> > gcc (PLD-Linux) 4.5.0 20100520 (release)
> > Copyright (C) 2010 Free Software Foundation, Inc.
> > This is free software; see the source for copying conditions. There is
> > NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
> > PURPOSE.
>
> I have no problem with glibc 2.12 on Linux/ia32
> and Linux/Intel64. Can you try gcc 4.4.4 instead of
> gcc 4.5.0?
Could you try the same reproducer but with nscd stopped? It segfaults only if
nscd is not running.
--
Arkadiusz MiÅkiewicz PLD/Linux Team
arekm / maven.pl http://ftp.pld-linux.org/