Importing bio aka RAID Management Framework from OpenBSD

Joao Barros joao.barros at gmail.com
Sun Oct 2 08:40:35 PDT 2005


Hi all,

I proposed to import bio aka RAID Management Framework from OpenBSD.

I have studied how bio is implemented in OpenBSD and here is a quick
resume of the 3 components that make bio:

- bio - ioctl tunnel pseudo-device
/dev/bio.c biovar.h
The bio driver provides userland applications ioctl access to devices
     otherwise not found as /dev nodes.  The /dev/bio device node operates by
     delegating ioctl(2) calls to a requested device driver.  Only drivers
     which have registered with the bio device can be accessed via this inter-
     face.

- ciss, amr - supported device drivers

- bioctl - RAID management interface
RAID device drivers which support management functionality can register
     their services with the bio(4) driver.  bioctl then can be used to main-
     tain RAID volumes.

After analysing the structure of /src my initial idea was:
new /src/sys/contrib/dev/bio/bio.c biovar.h
new /src/sys/modules/bio/makefile

new /src/contrib/bio/bioctl.c

edit amr and ciss to register themselves on bio


1st: are these the correct places to be putting this files?
2nd: the drivers need to register to bio, this one being a kernel
module. If bio is not compiled in that can represent a problem. Ideas?

References:
Theo De Raadt initial presentation of bio:
http://marc.theaimsgroup.com/?l=openbsd-misc&m=112630095818062
bio manpage: http://www.openbsd.org/cgi-bin/man.cgi?query=bio&sektion=4&arch=i386&apropos=0&manpath=OpenBSD+Current
bioctl manpage:
http://www.openbsd.org/cgi-bin/man.cgi?query=bioctl&sektion=8&arch=i386&apropos=0&manpath=OpenBSD+Current

--
Joao Barros


More information about the freebsd-hackers mailing list