All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] Reduce system calls
@ 2011-11-25  9:59 Zdenek Kabelac
  2011-11-25  9:59 ` [PATCH 1/7] Add common initialization code for struct device Zdenek Kabelac
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Zdenek Kabelac @ 2011-11-25  9:59 UTC (permalink / raw)
  To: lvm-devel

Seems like over the time we have added lots of system calls
which are not fully using the device cache or the code is 
just distrustful too much.

This patch set tries to reduce the number of system calls
and should have some positive impact on RHZB 744926.

In my measurements it seems like it's giving extra 10%-30% speedup
of processing commands like lvcreate with larger set of devices in system.
(depends on the lvm.conf configuration as well.)

!!! NOTICE !!!

It's worth to note that our current code for obtaining device list from
udev is upto 80% slower that our normal scan (yep, udev is quite slow and
does about ~8 syscalls per device) so unless we try to extend this udev 
scan with just check only for real PV devices (which has been reject)
we have quite noticable speed regression when larger set of devices
is present in the system.

Patch set should be back-portable.

Careful review for '*' please.

Zdenek Kabelac (7):
  Add common initialization code for struct device
* Add caching of BLKGETSIZE64 ioctl
* Do not drop cache  block_size for cached device.
* Do not lstat common path prefix
  Minor cleanup of strchr analyzer warning
* Drop extra stat before open of device
  Skip double stat() call with each _insert

 lib/device/dev-cache.c |  103 +++++++++++++++++++++++++++---------------------
 lib/device/dev-io.c    |   39 +++++++-----------
 lib/device/device.h    |    1 +
 3 files changed, 75 insertions(+), 68 deletions(-)

--
1.7.7.3



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-11-25  9:59 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-25  9:59 [PATCH 0/7] Reduce system calls Zdenek Kabelac
2011-11-25  9:59 ` [PATCH 1/7] Add common initialization code for struct device Zdenek Kabelac
2011-11-25  9:59 ` [PATCH 2/7] Add caching of BLKGETSIZE64 ioctl Zdenek Kabelac
2011-11-25  9:59 ` [PATCH 3/7] Do not drop cache block_size for cached device Zdenek Kabelac
2011-11-25  9:59 ` [PATCH 4/7] Do not lstat common path prefix Zdenek Kabelac
2011-11-25  9:59 ` [PATCH 5/7] Minor cleanup of strchr analyzer warning Zdenek Kabelac
2011-11-25  9:59 ` [PATCH 6/7] Drop extra stat before open of device Zdenek Kabelac
2011-11-25  9:59 ` [PATCH 7/7] Skip double stat() call with each _insert Zdenek Kabelac

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.