devfs - Fix FREEBLKS
authorAlex Hornung <ahornung@gmail.com>
Fri, 19 Nov 2010 14:49:17 +0000 (14:49 +0000)
committerAlex Hornung <ahornung@gmail.com>
Fri, 19 Nov 2010 15:09:49 +0000 (15:09 +0000)
commitbf390b25e6ef64c1fa868d8d60845d9627b40472
treee4e3f7eb2d3251e8adb41a7d2e4cfb37bc40606c
parent539b1063eac824c90d02f4185ad072027a8dd6d6
devfs - Fix FREEBLKS

* Since vn and md were changed to use the disk subsystem they
  essentially haven't been able to receive any BUF_CMD_FREEBLKS since
  their D_CANFREE flag was not propagated through the disk subsystem.

* Fix this by making the flag specific to the device via SI_CANFREE and
  propagating the D_CANFREE of even *underlying*/covered devices to the
  top-level device's SI_CANFREE.
sys/sys/conf.h
sys/vfs/devfs/devfs_core.c
sys/vfs/devfs/devfs_vnops.c