Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-26 Thread Sven Breuner
Pádraig Brady wrote on 02/20/2012 11:54 AM: On 02/20/2012 02:06 AM, Sven Breuner wrote: Pádraig Brady wrote on 02/20/2012 12:54 AM: I just booted RHEL 6.2 with selinux=0 on the kernel command line, so as I could test new files without a context created, and... getxattr("security.selinux

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-20 Thread Sven Breuner
Pádraig Brady wrote on 02/20/2012 11:54 AM: On 02/20/2012 02:06 AM, Sven Breuner wrote: Seems to be inconsistent. Some of our RHEL 6.x systems return "unlabled" on a tmpfs: [...] The fhgfs result in these cases is similar to the tmpfs result: "unlabled" on machines a

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-19 Thread Sven Breuner
Pádraig Brady wrote on 02/20/2012 12:54 AM: On 02/19/2012 10:22 PM, Sven Breuner wrote: Is there maybe another check that could be used to find out if selinux is disabled? (e.g. is_selinux_enabled(3) ) I'm not sure you could use that. Even though it's currently disabled, yo

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-19 Thread Sven Breuner
Jim Meyering wrote on 02/19/2012 06:00 PM: Pádraig Brady wrote: > From Sven's strace it seems that lgetfilecon() is interpreting the "unlabeled" return from lgetxattr() and converting that into a -1 return with ENODATA? That's the only logical explanation I can see for how ENODATA is significan

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-18 Thread Sven Breuner
Jim Meyering wrote on 02/09/2012 03:17 PM: > Here's that simpler patch: > [...] Jim Meyering wrote on 02/17/2012 01:11 PM: Here's the updates series, along with this addition to NEWS: [...] Thanks for all this optimization work so far! My "ls -l" test case with >60K files in a single director

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-11 Thread Sven Breuner
Jim Meyering wrote on 02/10/2012 09:16 AM: Pádraig Brady wrote: Current git version patched... $ strace -c ~/tmp/ls-8.15.34-31eee_patched -l>/dev/null % time seconds usecs/call callserrors syscall -- --- --- - - 45.500.3133

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-11 Thread Sven Breuner
Pádraig Brady wrote on 02/10/2012 02:03 AM: On 02/09/2012 09:17 PM, Sven Breuner wrote: Current git version patched... $ time ~/tmp/ls-8.15.34-31eee_patched -l>/dev/null real0m21.254s user0m0.565s sys 0m2.496s $ strace -c ~/tmp/ls-8.15.34-31eee_patched -l>/dev/null

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-09 Thread Sven Breuner
Jim Meyering wrote on 02/09/2012 04:08 PM: I'm not as enthusiastic about adding code to optimize away the calls in file_has_acl, unless there are mainstream system/FS for which it makes a difference. Jim Meyering wrote on 02/09/2012 03:17 PM: > Here's that simpler patch: > > diff --git a/src/ls

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-09 Thread Sven Breuner
Jim Meyering wrote on 02/09/2012 03:17 PM: Pádraig Brady wrote: On 02/09/2012 11:32 AM, Jim Meyering wrote: Technically, we could probably exempt all files on that device, but ... So you avoid symlinks as they can point outside the device. Unfortunately so can bind mounts, so you probably hav

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-06 Thread Sven Breuner
Pádraig Brady wrote on 02/06/2012 09:06 PM: This seems to have some related info. https://bugzilla.redhat.com/show_bug.cgi?id=662011 We might be able to cache something. We'll investigate. Thanks, Pádraig. I assume that bugzilla report is only related on a very abstract level: The reporter of

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-06 Thread Sven Breuner
Jérémy Compostella wrote on 02/06/2012 08:00 PM: Anyway, you should maybe provide a "strace -c" output in both cases in order to know how much would be the speed improvement. on a directory with 61441 files: $ strace -c ls -l >/dev/null % time seconds usecs/call callserrors syscal

Re: "ls -l": Avoid unnecessary getxattr() overhead

2012-02-06 Thread Sven Breuner
Hi Jérémy, thanks for running the tests. Jérémy Compostella wrote on 02/06/2012 04:09 PM: As I'm stuck home today (unusual snow at Bordeaux, France), I made some tests: Hm, Bordeaux - You're not working at the University, are you? Then you would even have access to a fhgfs file system to run

"ls -l": Avoid unnecessary getxattr() overhead

2012-02-06 Thread Sven Breuner
t enabled. 2) For getxattr(..., "system.posix_acl_access", ...), ls could check whether the first call returns EOPNOTSUPP and then skip this call for the remaining directory entries, because those will just have the same return value. Best regards, Sven --- Sven Breuner Fraunhofer HPC FhGFS Team http://www.fhgfs.com