cvs commit: src/sys/dev/raid/vinum vinuminterrupt.c vinumio.c vinumrequest.c vinumvar.h
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Jul 31 11:14:27 PDT 2007
dillon 2007/07/31 11:13:02 PDT
DragonFly src repository
Modified files:
sys/dev/raid/vinum vinuminterrupt.c vinumio.c vinumrequest.c
vinumvar.h
Log:
Fix vinum. Vinum illegally uses device ops such as dev_dopen(),
dev_dclose(), and dev_dstrategy() without following the restrictions and
requirements for those calls. It does not properly check D_TRACKCLOSE
and does not properly limit DMA.
Access the low level device via the vnode subsystem instead of the device
subsystem. Use new calls to synthesize appropriate vnodes based on the
requested device name and remove all the manual major/minor conversion junk.
When booting with a vinum root vinum will synthesize appropriate vnodes
to access devices. If a root mount already exists vinum will simply
open the device vnode via the filesystem.
Reported-by: "Simon 'corecode' Schubert" <bugs at crater.dragonflybsd.org>,
Chris Turner <c.turner at 199technologies.org>
Revision Changes Path
1.12 +10 -16 src/sys/dev/raid/vinum/vinuminterrupt.c
1.28 +67 -114 src/sys/dev/raid/vinum/vinumio.c
1.20 +4 -6 src/sys/dev/raid/vinum/vinumrequest.c
1.12 +3 -1 src/sys/dev/raid/vinum/vinumvar.h
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/vinum/vinuminterrupt.c.diff?r1=1.11&r2=1.12&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/vinum/vinumio.c.diff?r1=1.27&r2=1.28&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/vinum/vinumrequest.c.diff?r1=1.19&r2=1.20&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/vinum/vinumvar.h.diff?r1=1.11&r2=1.12&f=u
More information about the Commits
mailing list