reduce sysfs path lookup overhead
authorNathan Lynch <ntl@pobox.com>
Wed, 22 Oct 2008 00:26:49 +0000 (19:26 -0500)
committerNathan Lynch <ntl@pobox.com>
Wed, 22 Oct 2008 00:26:49 +0000 (19:26 -0500)
commit0ab96ee16317673e183a3c006bcba3245fcbe71b
tree9bc4f65b9b3e3e64ab90d4852dc7fe43bfd87595
parentb0e87bc4e939bf3ea11d2c637526a35d58b52cb3
reduce sysfs path lookup overhead

Rely more heavily on relative paths and openat(2) to avoid the lookup
overhead involved in opening paths such as
"/sys/devices/system/cpu/cpu42/topology/thread_siblings" in the
context initialization code.  This can hurt on large systems.  With
these changes, elapsed time for context initialization is reduced by
20 to 25% from v0.3 (measured on a mocked-up 1024-cpu sysfs
hierarchy).
lib/topology.c