cvs commit: src/sys/geom/raid3 g_raid3.c g_raid3.h g_raid3_ctl.c src/sbin/geom/class/raid3 geom_raid3.c graid3.8

Pawel Jakub Dawidek pjd at FreeBSD.org
Sat Aug 21 11:11:47 PDT 2004


pjd         2004-08-21 18:11:46 UTC

  FreeBSD src repository

  Modified files:
    sys/geom/raid3       g_raid3.c g_raid3.h g_raid3_ctl.c 
    sbin/geom/class/raid3 geom_raid3.c graid3.8 
  Log:
  Implement new reading algorithm, which will use parity component for reading
  as well, even if device is in complete state.
  I observe 40% of speed-up with this option for random read operations,
  but slowdown for sequential reads.
  Basically, without this option reading from a RAID3 device built from 5
  components (c0-c4) looks like this:
  
          Request no.     Used components
          1               c0+c1+c2+c3
          2               c0+c1+c2+c3
          3               c0+c1+c2+c3
  
  With the new feature:
  
          Request no.     Used components
          1               c0+c1+c2+c3
          2               (c1^c2^c3^c4)+c1+c2+c3
          3               c0+(c0^c2^c3^c4)+c2+c3
          4               c0+c1+(c0^c1^c3^c4)+c3
          5               c0+c1+c2+(c0^c1^c2^c4)
          6               c0+c1+c2+c3
          [...]
  
  Revision  Changes    Path
  1.3       +14 -3     src/sbin/geom/class/raid3/geom_raid3.c
  1.2       +16 -6     src/sbin/geom/class/raid3/graid3.8
  1.7       +107 -95   src/sys/geom/raid3/g_raid3.c
  1.2       +7 -2      src/sys/geom/raid3/g_raid3.h
  1.2       +29 -5     src/sys/geom/raid3/g_raid3_ctl.c


More information about the cvs-src mailing list