VN - Remove use of IO_DIRECT, Improve lock performance for reads
authorMatthew Dillon <dillon@apollo.backplane.com>
Wed, 3 Mar 2010 07:15:27 +0000 (23:15 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 3 Mar 2010 07:15:27 +0000 (23:15 -0800)
commitb527c4c540cc186db2c8aa7105d074135e7b8ea5
tree0e8423db3f33cab3511ee8a152c57ff7da238c69
parentd1eff1f76e97f152871f352c915e5f23227e09e1
VN - Remove use of IO_DIRECT, Improve lock performance for reads

* Remove the use of IO_DIRECT.  This just doesn't work very well,
  particularly when the device backing the VN has a different logical
  block size than the device using VN.

  This will result in heavier use of the buffer cache and more
  (temporarily) duplicated data, but also has much better performance.

* Use LK_SHARED for VOP_READ()s instead of LK_EXCLUSIVE, which allows
  concurrent reads to be issued.

Reported-by: Vincent Stemen <vince.dragonfly@hightek.org>
sys/dev/disk/vn/vn.c