cvs commit: src/sys/dev/ata ata-disk.c ata-raid.c ata-raid.h atapi-fd.c

Matthew Dillon dillon at crater.dragonflybsd.org
Tue Jul 22 10:04:10 PDT 2003


dillon      2003/07/22 10:03:27 PDT

  Modified files:
    sys/dev/ata          ata-disk.c ata-raid.c ata-raid.h 
                         atapi-fd.c 
  Log:
  DEV messaging stage 2/4: In this stage all DEV commands are now being
  funneled through the message port for action by the port's beginmsg function.
  CONSOLE and DISK device shims replace the port with their own and then
  forward to the original.  FB (Frame Buffer) shims supposedly do the same
  thing but I haven't been able to test it.   I don't expect instability
  in mainline code but there might be easy-to-fix, and some drivers still need
  to be converted.  See primarily: kern/kern_device.c (new dev_*() functions and
  inherits cdevsw code from kern/kern_conf.c), sys/device.h, and kern/subr_disk.c
  for the high points.
  
  In this stage all DEV messages are still acted upon synchronously in the
  context of the caller.  We cannot create a separate handler thread until
  the copyin's (primarily in ioctl functions) are made thread-aware.
  
  Note that the messaging shims are going to look rather messy in these early
  days but as more subsystems are converted over we will begin to use
  pre-initialized messages and message forwarding to avoid having to constantly
  rebuild messages prior to use.
  
  Note that DEV itself is a mess oweing to its 4.x roots and will be cleaned
  up in subsequent passes.  e.g. the way sub-devices inherit the main device's
  cdevsw was always a bad hack and it still is, and several functions
  (mmap, kqfilter, psize, poll) return results rather then error codes, which
  will be fixed since now we have a message to store the result in :-)
  
  Revision  Changes    Path
  1.6       +2 -3      src/sys/dev/ata/ata-disk.c
  1.7       +2 -3      src/sys/dev/ata/ata-raid.c
  1.3       +2 -2      src/sys/dev/ata/ata-raid.h
  1.6       +2 -3      src/sys/dev/ata/atapi-fd.c






More information about the Commits mailing list