[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: "ls -l": Avoid unnecessary getxattr() overhead
From: |
Bernhard Voelker |
Subject: |
Re: "ls -l": Avoid unnecessary getxattr() overhead |
Date: |
Mon, 20 Feb 2012 09:32:23 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20120208 Thunderbird/10.0.1 |
On 02/18/2012 02:06 PM, Jim Meyering wrote:
>> > See the attached getxattr-speedup.log.gz - I added a "cat k.c" so that
>> > you can check that I got your patch right.
>> > It seems that GCC doesn't like our "__attribute__((destructor)) void p()".
>> > It basically works in a standalone program, but not with LD_PRELOAD.
>> > I didn't find much about this. Can this be a 64-bit issue?
>
> Is that an open-suse system?
> I tried on an opensuse system with 2.6.37.6-0.11-desktop,
> and since there were no getxattr calls at all, no wrapper
> would run, and hence, your atexit call would never be reached.
> I've added this comment at the top:
Yes, it is a OpenSuSE 12.1 with kernel 3.1.9-1.4-desktop.
> # This test is skipped on systems that lack LD_PRELOAD support; that's fine.
It doesn't lack LD_PRELOAD support, it simply doesn't call the destructor.
> + # Similarly, on a system that lacks getxattr altogether, skipping it is
> fine.
>
> and this new skip_ use below:
>
> test -f x || skip_ "internal test failure: maybe LD_PRELOAD doesn't work?"
>
> Which may mean this test will simply be skipped on your system.
> But that is fine.
Maybe, but why is LD_PRELOAD honoring the "__attribute__((destructor))",
and on some systems not?
> +ld -G k.o -lc -o k.so || framework_failure_ 'failed to invoke ld -G ...'
I just added "-lc" for pulling in atexit(). It's not needed in your version.
Have a nice day,
Berny
- Re: "ls -l": Avoid unnecessary getxattr() overhead, (continued)
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Eric Blake, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Jim Meyering, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Eric Blake, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Jim Meyering, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Bernhard Voelker, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Jim Meyering, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Bernhard Voelker, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Jim Meyering, 2012/02/18
- Re: "ls -l": Avoid unnecessary getxattr() overhead,
Bernhard Voelker <=
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Jim Meyering, 2012/02/26
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Bernhard Voelker, 2012/02/27
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Jim Meyering, 2012/02/27
- Re: "ls -l": Avoid unnecessary getxattr() overhead, address@hidden, 2012/02/28
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Pádraig Brady, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Jim Meyering, 2012/02/17
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Sven Breuner, 2012/02/11
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Pádraig Brady, 2012/02/11
- Re: "ls -l": Avoid unnecessary getxattr() overhead, Sven Breuner, 2012/02/06