Hi!

Once again I looked into "vgs" on one of our simpler systems, inspecting calls 
to open(strace -e open vgs 2>&1):
open("/proc/devices", O_RDONLY)         = 3
open("/etc/lvm/.cache", O_RDONLY)       = 3
open("/dev", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/proc/meminfo", O_RDONLY)         = 5
open("/dev/T11_AS_1", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/T11_DB_10k", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/T11_DB_BTD", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/T11_DB_FATA", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/VBW_CI", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/VBW_DB_10k", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/VBW_DB_BTD", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/VBW_DB_FATA", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bsg", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus/usb", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus/usb/001", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus/usb/002", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus/usb/003", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus/usb/004", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus/usb/005", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/bus/usb/006", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/cciss", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/cpqhealth", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/cpu", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/disk", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/disk/by-id", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/disk/by-path", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/disk/by-uuid", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/hpilo", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/input", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/input/by-id", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/input/by-path", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/mapper", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/net", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/pts", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/shm", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/dev/sys", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4

Why are those /sys/block files also opened?

open("/sys/class/block", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/sys/class/block/cciss!c0d0/dev", O_RDONLY) = 4
open("/sys/class/block/cciss!c0d0p1/dev", O_RDONLY) = 4
open("/sys/class/block/cciss!c0d0p2/dev", O_RDONLY) = 4
open("/sys/class/block/cciss!c0d0p5/dev", O_RDONLY) = 4
open("/sys/class/block/cciss!c0d0p6/dev", O_RDONLY) = 4
open("/sys/class/block/dm-0/dev", O_RDONLY) = 4
open("/sys/class/block/dm-1/dev", O_RDONLY) = 4
open("/sys/class/block/dm-2/dev", O_RDONLY) = 4
open("/sys/class/block/dm-3/dev", O_RDONLY) = 4
open("/sys/class/block/dm-4/dev", O_RDONLY) = 4
open("/sys/class/block/dm-5/dev", O_RDONLY) = 4
open("/sys/class/block/dm-6/dev", O_RDONLY) = 4
open("/sys/class/block/dm-7/dev", O_RDONLY) = 4
open("/sys/class/block/dm-8/dev", O_RDONLY) = 4
open("/sys/class/block/dm-9/dev", O_RDONLY) = 4
open("/sys/class/block/dm-10/dev", O_RDONLY) = 4
open("/sys/class/block/dm-11/dev", O_RDONLY) = 4
open("/sys/class/block/sdam/dev", O_RDONLY) = 4
open("/sys/class/block/sday/dev", O_RDONLY) = 4
open("/sys/class/block/sdan/dev", O_RDONLY) = 4
open("/sys/class/block/sdap/dev", O_RDONLY) = 4
open("/sys/class/block/sdak/dev", O_RDONLY) = 4
open("/sys/class/block/sdao/dev", O_RDONLY) = 4
open("/sys/class/block/sdat/dev", O_RDONLY) = 4
open("/sys/class/block/sdar/dev", O_RDONLY) = 4
open("/sys/class/block/sdbd/dev", O_RDONLY) = 4
open("/sys/class/block/sdbe/dev", O_RDONLY) = 4
open("/sys/class/block/sdbi/dev", O_RDONLY) = 4
open("/sys/class/block/sdbj/dev", O_RDONLY) = 4
open("/sys/class/block/sdaq/dev", O_RDONLY) = 4
open("/sys/class/block/sdbg/dev", O_RDONLY) = 4
open("/sys/class/block/sdbm/dev", O_RDONLY) = 4
open("/sys/class/block/sdax/dev", O_RDONLY) = 4
open("/sys/class/block/sdaz/dev", O_RDONLY) = 4
open("/sys/class/block/sdas/dev", O_RDONLY) = 4
open("/sys/class/block/sdau/dev", O_RDONLY) = 4
open("/sys/class/block/sdaw/dev", O_RDONLY) = 4
open("/sys/class/block/sdal/dev", O_RDONLY) = 4
open("/sys/class/block/sdbo/dev", O_RDONLY) = 4
open("/sys/class/block/sdbs/dev", O_RDONLY) = 4
open("/sys/class/block/sdbt/dev", O_RDONLY) = 4
open("/sys/class/block/sdav/dev", O_RDONLY) = 4
open("/sys/class/block/sdbn/dev", O_RDONLY) = 4
open("/sys/class/block/sdbc/dev", O_RDONLY) = 4
open("/sys/class/block/sdbp/dev", O_RDONLY) = 4
open("/sys/class/block/sdba/dev", O_RDONLY) = 4
open("/sys/class/block/sdbb/dev", O_RDONLY) = 4
open("/sys/class/block/sdbf/dev", O_RDONLY) = 4
open("/sys/class/block/sdbl/dev", O_RDONLY) = 4
open("/sys/class/block/sdbk/dev", O_RDONLY) = 4
open("/sys/class/block/sdbq/dev", O_RDONLY) = 4
open("/sys/class/block/sdbh/dev", O_RDONLY) = 4
open("/sys/class/block/sdbr/dev", O_RDONLY) = 4
open("/sys/class/block/sr0/dev", O_RDONLY) = 4
open("/sys/class/block/dm-12/dev", O_RDONLY) = 4
open("/sys/class/block/dm-13/dev", O_RDONLY) = 4
open("/sys/class/block/dm-14/dev", O_RDONLY) = 4
open("/sys/class/block/dm-15/dev", O_RDONLY) = 4
open("/sys/class/block/dm-16/dev", O_RDONLY) = 4
open("/sys/class/block/dm-17/dev", O_RDONLY) = 4
open("/sys/class/block/dm-18/dev", O_RDONLY) = 4
open("/sys/class/block/dm-19/dev", O_RDONLY) = 4
open("/sys/class/block/dm-20/dev", O_RDONLY) = 4
open("/sys/class/block/dm-21/dev", O_RDONLY) = 4
open("/sys/class/block/dm-22/dev", O_RDONLY) = 4
open("/sys/class/block/dm-23/dev", O_RDONLY) = 4
open("/sys/class/block/dm-24/dev", O_RDONLY) = 4
open("/sys/class/block/dm-25/dev", O_RDONLY) = 4
open("/sys/class/block/dm-26/dev", O_RDONLY) = 4
open("/sys/class/block/dm-27/dev", O_RDONLY) = 4
open("/sys/class/block/dm-28/dev", O_RDONLY) = 4
open("/sys/class/block/dm-29/dev", O_RDONLY) = 4
open("/sys/class/block/loop0/dev", O_RDONLY) = 4
open("/sys/class/block/loop1/dev", O_RDONLY) = 4
open("/sys/class/block/loop2/dev", O_RDONLY) = 4
open("/sys/class/block/loop3/dev", O_RDONLY) = 4
open("/sys/class/block/loop4/dev", O_RDONLY) = 4
open("/sys/class/block/loop5/dev", O_RDONLY) = 4
open("/sys/class/block/loop6/dev", O_RDONLY) = 4
open("/sys/class/block/loop7/dev", O_RDONLY) = 4
open("/sys/class/block/md0/dev", O_RDONLY) = 4
open("/sys/class/block/md1/dev", O_RDONLY) = 4
open("/sys/class/block/dm-30/dev", O_RDONLY) = 4
open("/sys/class/block/dm-31/dev", O_RDONLY) = 4
open("/sys/class/block/dm-32/dev", O_RDONLY) = 4
open("/sys/class/block/dm-33/dev", O_RDONLY) = 4
open("/sys/class/block/dm-34/dev", O_RDONLY) = 4
open("/sys/class/block/dm-35/dev", O_RDONLY) = 4
open("/sys/class/block/dm-36/dev", O_RDONLY) = 4
open("/sys/class/block/md7/dev", O_RDONLY) = 4
open("/sys/class/block/md8/dev", O_RDONLY) = 4
open("/sys/class/block/md9/dev", O_RDONLY) = 4
open("/sys/class/block/dm-37/dev", O_RDONLY) = 4
open("/sys/class/block/dm-38/dev", O_RDONLY) = 4
open("/sys/class/block/dm-39/dev", O_RDONLY) = 4
open("/sys/class/block/dm-40/dev", O_RDONLY) = 4
open("/sys/class/block/dm-41/dev", O_RDONLY) = 4
open("/sys/class/block/dm-42/dev", O_RDONLY) = 4
open("/sys/class/block/dm-43/dev", O_RDONLY) = 4
open("/sys/class/block/dm-44/dev", O_RDONLY) = 4
open("/sys/class/block/dm-45/dev", O_RDONLY) = 4
open("/sys/class/block/md6/dev", O_RDONLY) = 4
open("/sys/class/block/md5/dev", O_RDONLY) = 4
open("/sys/class/block/dm-47/dev", O_RDONLY) = 4
open("/dev/loop0", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop0", O_RDONLY)            = 4

To make things worse, devices are opened with "O_DIRECT" now! Why?
open("/dev/md0", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/sdaw", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/sdaw", O_RDONLY)             = 4
open("/dev/sdaw", O_RDONLY)             = 3
open("/dev/sdaw", O_RDONLY|O_DIRECT|O_NOATIME) = 3

Why is the same file opened multiple times?

open("/dev/sdbm", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/sdbm", O_RDONLY)             = 4
open("/dev/sdbm", O_RDONLY)             = 3
open("/dev/sdbm", O_RDONLY|O_DIRECT|O_NOATIME) = 3

open("/dev/cciss/c0d0", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/cciss/c0d0", O_RDONLY)       = 4
open("/dev/dm-0", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/loop1", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop1", O_RDONLY)            = 4
open("/dev/md1", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/cciss/c0d0p1", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/root", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/loop2", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop2", O_RDONLY)            = 4
open("/dev/cciss/c0d0p2", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/cciss/c0d0p2", O_RDONLY)     = 4
open("/dev/dm-2", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/loop3", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop3", O_RDONLY)            = 4
open("/dev/dm-3", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/loop4", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop4", O_RDONLY)            = 4
open("/dev/dm-4", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/loop5", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop5", O_RDONLY)            = 4
open("/dev/md5", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/cciss/c0d0p5", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/dm-5", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/loop6", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop6", O_RDONLY)            = 4
open("/dev/md6", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/cciss/c0d0p6", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/dm-6", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/loop7", O_RDONLY|O_NONBLOCK|O_NOATIME) = 3
open("/dev/loop7", O_RDONLY)            = 4
open("/dev/md7", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/dm-7", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/md8", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/dm-8", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/md9", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/dm-9", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/dm-10", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/dev/dm-11", O_RDONLY|O_DIRECT|O_NOATIME) = 3
open("/proc/devices", O_RDONLY)         = 3
open("/proc/misc", O_RDONLY)            = 3
open("/dev/mapper/control", O_RDWR)     = 3
open("/proc/devices", O_RDONLY)         = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-12", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-12", O_RDONLY)            = 5
open("/dev/dm-12", O_RDONLY)            = 4
open("/dev/dm-12", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-13", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-14", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-14", O_RDONLY)            = 5
open("/dev/dm-14", O_RDONLY)            = 4
open("/dev/dm-14", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-15", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-15", O_RDONLY)            = 5
open("/dev/dm-15", O_RDONLY)            = 4
open("/dev/dm-15", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdax", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdax", O_RDONLY)             = 5
open("/dev/sdax", O_RDONLY)             = 4
open("/dev/sdax", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbn", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbn", O_RDONLY)             = 5
open("/dev/sdbn", O_RDONLY)             = 4
open("/dev/sdbn", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-16", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-16", O_RDONLY)            = 5
open("/dev/dm-16", O_RDONLY)            = 4
open("/dev/dm-16", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-17", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-18", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-18", O_RDONLY)            = 5
open("/dev/dm-18", O_RDONLY)            = 4
open("/dev/dm-18", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-19", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-20", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-20", O_RDONLY)            = 5
open("/dev/dm-20", O_RDONLY)            = 4
open("/dev/dm-20", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-21", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-21", O_RDONLY)            = 5
open("/dev/dm-21", O_RDONLY)            = 4
open("/dev/dm-21", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-22", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-23", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-23", O_RDONLY)            = 5
open("/dev/dm-23", O_RDONLY)            = 4
open("/dev/dm-23", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-24", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-24", O_RDONLY)            = 5
open("/dev/dm-24", O_RDONLY)            = 4
open("/dev/dm-24", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-25", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-25", O_RDONLY)            = 5
open("/dev/dm-25", O_RDONLY)            = 4
open("/dev/dm-25", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-26", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-26", O_RDONLY)            = 5
open("/dev/dm-26", O_RDONLY)            = 4
open("/dev/dm-26", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-27", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-27", O_RDONLY)            = 5
open("/dev/dm-27", O_RDONLY)            = 4
open("/dev/dm-27", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-28", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-28", O_RDONLY)            = 5
open("/dev/dm-28", O_RDONLY)            = 4
open("/dev/dm-28", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/sys/kernel/uevent_seqnum", O_RDONLY) = 4
open("/dev/dm-29", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/dm-29", O_RDONLY)            = 5
open("/dev/dm-29", O_RDONLY)            = 4
open("/dev/dm-29", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-30", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-31", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sday", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sday", O_RDONLY)             = 5
open("/dev/sday", O_RDONLY)             = 4
open("/dev/sday", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbo", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-32", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-33", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-34", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-35", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-36", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-37", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-38", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-39", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-40", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-41", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-42", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-43", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-44", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-45", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/dm-47", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdaz", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdaz", O_RDONLY)             = 5
open("/dev/sdaz", O_RDONLY)             = 4
open("/dev/sdaz", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbp", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbp", O_RDONLY)             = 5
open("/dev/sdbp", O_RDONLY)             = 4
open("/dev/sdbp", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdak", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdba", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbq", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbq", O_RDONLY)             = 5
open("/dev/sdbq", O_RDONLY)             = 4
open("/dev/sdbq", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdal", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdal", O_RDONLY)             = 5
open("/dev/sdal", O_RDONLY)             = 4
open("/dev/sdal", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbb", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbb", O_RDONLY)             = 5
open("/dev/sdbb", O_RDONLY)             = 4
open("/dev/sdbb", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbr", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbr", O_RDONLY)             = 5
open("/dev/sdbr", O_RDONLY)             = 4
open("/dev/sdbr", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdam", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdam", O_RDONLY)             = 5
open("/dev/sdam", O_RDONLY)             = 4
open("/dev/sdam", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbc", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbc", O_RDONLY)             = 5
open("/dev/sdbc", O_RDONLY)             = 4
open("/dev/sdbc", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbs", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbs", O_RDONLY)             = 5
open("/dev/sdbs", O_RDONLY)             = 4
open("/dev/sdbs", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdan", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdan", O_RDONLY)             = 5
open("/dev/sdan", O_RDONLY)             = 4
open("/dev/sdan", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbd", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbd", O_RDONLY)             = 5
open("/dev/sdbd", O_RDONLY)             = 4
open("/dev/sdbd", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbt", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdao", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdao", O_RDONLY)             = 5
open("/dev/sdao", O_RDONLY)             = 4
open("/dev/sdao", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbe", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdap", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdap", O_RDONLY)             = 5
open("/dev/sdap", O_RDONLY)             = 4
open("/dev/sdap", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbf", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbf", O_RDONLY)             = 5
open("/dev/sdbf", O_RDONLY)             = 4
open("/dev/sdbf", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdaq", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdaq", O_RDONLY)             = 5
open("/dev/sdaq", O_RDONLY)             = 4
open("/dev/sdaq", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbg", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbg", O_RDONLY)             = 5
open("/dev/sdbg", O_RDONLY)             = 4
open("/dev/sdbg", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdar", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdar", O_RDONLY)             = 5
open("/dev/sdar", O_RDONLY)             = 4
open("/dev/sdar", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbh", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbh", O_RDONLY)             = 5
open("/dev/sdbh", O_RDONLY)             = 4
open("/dev/sdbh", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdas", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbi", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbi", O_RDONLY)             = 5
open("/dev/sdbi", O_RDONLY)             = 4
open("/dev/sdbi", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdat", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdat", O_RDONLY)             = 5
open("/dev/sdat", O_RDONLY)             = 4
open("/dev/sdat", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbj", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdau", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdau", O_RDONLY)             = 5
open("/dev/sdau", O_RDONLY)             = 4
open("/dev/sdau", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbk", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdav", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdav", O_RDONLY)             = 5
open("/dev/sdav", O_RDONLY)             = 4
open("/dev/sdav", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/dev/sdbl", O_RDONLY|O_NONBLOCK|O_NOATIME) = 4
open("/dev/sdbl", O_RDONLY)             = 5
open("/dev/sdbl", O_RDONLY)             = 4
open("/dev/sdbl", O_RDONLY|O_DIRECT|O_NOATIME) = 4
open("/var/lock/lvm/V_VBW_DB_BTD", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/dm-19", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/etc/lvm/backup/VBW_DB_BTD", O_RDONLY) = 6
open("/var/lock/lvm/V_T11_DB_BTD", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/dm-17", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/dm-19", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/T11_DB_BTD", O_RDONLY) = 6
open("/var/lock/lvm/V_VBW_DB_FATA", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/md9", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/dm-17", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/VBW_DB_FATA", O_RDONLY) = 6
open("/var/lock/lvm/V_VBW_DB_10k", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/md8", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/md9", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/VBW_DB_10k", O_RDONLY) = 6
open("/var/lock/lvm/V_VBW_CI", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/md7", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/md8", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/VBW_CI", O_RDONLY) = 6
open("/var/lock/lvm/V_sys", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/cciss/c0d0p5", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/md7", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/sys", O_RDONLY)   = 6
open("/var/lock/lvm/V_T11_AS_1", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/md5", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/cciss/c0d0p5", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/T11_AS_1", O_RDONLY) = 6
open("/var/lock/lvm/V_T11_DB_FATA", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/md1", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/md5", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/T11_DB_FATA", O_RDONLY) = 6
open("/var/lock/lvm/V_T11_DB_10k", O_RDWR|O_CREAT|O_APPEND, 0777) = 4
open("/dev/md0", O_RDONLY|O_DIRECT|O_NOATIME) = 5
open("/dev/md1", O_RDONLY|O_DIRECT|O_NOATIME) = 6
open("/etc/lvm/backup/T11_DB_10k", O_RDONLY) = 6
open("/etc/lvm/.cache", O_RDWR|O_CREAT, 0777) = 4
open("/etc/lvm/.cache.tmp", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 5

I also don't know what that lvm cache is intended to useful for, but obviously 
it's not very effective. As everything execpt the local disks is using 
multipath, I wonder how effective a restriction to /dev/mapper would be. The 
other thing is which paths will be displayed in vgdisplay -v: I'd like the 
pretty paths (/dev/disk/by-id/dm-name-*) to be displayed, but those are just 
symlinks to the dm files.

Regards,
Ulrich


>>> Vladislav Bogdanov <[email protected]> schrieb am 15.11.2011 um 09:21 in
Nachricht <[email protected]>:
> 15.11.2011 10:55, Ulrich Windl wrote:
> > Hi Vladislav,
> > 
> > filtering the devices for LVM also was on my mind, but changing the
> > filter cluster-wide after any configuration change seems too
> > error-prone for me. On the other side I couldn't a generic rule that
> > will match our configuration.
> 
> Attached code fragment works for me (I use it in my iscsi-multipath RA).
> 
> > 
> > On your attempts managing priority using "nice": Do you know about
> > "ionice"? I guess that's closer to what you are looking for.
> 
> I didn't try it.
> Anyways you have scalability problem if you do not use filtering. Disks
> are slow...
> 
> Best,
> Vladislav
> 

 
 
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems

Reply via email to