DragonFly commits List (threaded) for 2008-05
DragonFly BSD
DragonFly commits List (threaded) for 2008-05
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

cvs commit: src/sys/bus/cam cam_periph.c cam_periph.h cam_queue.c cam_sim.c cam_sim.h cam_xpt.c cam_xpt.h src/sys/bus/cam/scsi scsi_all.c scsi_all.h scsi_cd.c scsi_ch.c scsi_da.c scsi_low.c scsi_pass.c scsi_pt.c scsi_sa.c scsi_ses.c scsi_targ_bh.c ...


From: Peter Avalos <pavalos@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 18 May 2008 13:30:24 -0700 (PDT)

pavalos     2008/05/18 13:30:24 PDT

DragonFly src repository

  Modified files:
    sys/bus/cam          cam_periph.c cam_periph.h cam_queue.c 
                         cam_sim.c cam_sim.h cam_xpt.c cam_xpt.h 
    sys/bus/cam/scsi     scsi_all.c scsi_all.h scsi_cd.c scsi_ch.c 
                         scsi_da.c scsi_low.c scsi_pass.c 
                         scsi_pt.c scsi_sa.c scsi_ses.c 
                         scsi_targ_bh.c scsi_target.c 
    sys/dev/disk/advansys advansys.c adwcam.c 
    sys/dev/disk/aha     aha.c 
    sys/dev/disk/ahb     ahb.c 
    sys/dev/disk/aic     aic.c 
    sys/dev/disk/aic7xxx ahc_eisa.c ahc_isa.c ahc_pci.c ahd_pci.c 
                         aic79xx.c aic79xx_osm.c aic7xxx.c 
                         aic7xxx_osm.c aic_osm_lib.h 
    sys/dev/disk/amd     amd.c 
    sys/dev/disk/ata     atapi-cam.c 
    sys/dev/disk/buslogic bt.c 
    sys/dev/disk/isp     isp_freebsd.c 
    sys/dev/disk/mpt     mpt_freebsd.c 
    sys/dev/disk/nata    atapi-cam.c 
    sys/dev/disk/ncr     ncr.c 
    sys/dev/disk/sbp     sbp.c 
    sys/dev/disk/sym     sym_hipd.c 
    sys/dev/disk/trm     trm.c 
    sys/dev/disk/vpo     vpo.c 
    sys/dev/raid/aac     aac_cam.c 
    sys/dev/raid/amr     amr_cam.c 
    sys/dev/raid/asr     asr.c 
    sys/dev/raid/ciss    ciss.c 
    sys/dev/raid/dpt     dpt_scsi.c 
    sys/dev/raid/iir     iir.c 
    sys/dev/raid/mly     mly.c 
    sys/dev/raid/twa     twa_cam.c 
    sys/dev/usbmisc/umass umass.c 
  Log:
  Sync CAM with FreeBSD using lockmgr locks instead of mutexes.
  Note:  This is mostly a code sync with FreeBSD which improves stability
  in addition to the items listed below.  This provides a framework for
  releasing the mplock, but for now it's still there.
  
  Add an xpt_print function to reduce most of the xpt_print_path/printf
  pairs. Convert the core code to use it.
  
  Initial cut at Basic Domain Validation.
  
  Make cam_xpt's pronouncements match camcontrol (Tagged -> Command) Queueing.
  
  Pay attention to return value from xpt_bus_register in xpt_init.
  
  Add an xpt_rescan function and a thread that will field rescan requests.
  The purpose of this is to allow a SIM (or other entities) to request a bus
  rescan and have it then fielded in a different (process) context from the
  caller.
  
  Check the return value from cam_periph_acquire.
  
  Drop the periph/sim lock when calling disk_destroy().
  
  Drop the topology lock before calling the periph oninvalidate and dtor
  vectors.
  
  For the XPT_SASYNC_CB operation, only decouple the broadcast to the bus
  and device lists instead of decoupling the whole operation.  This avoids
  problems with SIMs going away.
  
  Split the camisr into per-SIM done queues.  This optimizes the locking a
  little bit and allows for direct dispatch of the doneq from certain
  contexts that would otherwise face recursive locking problems.
  
  Zero the CCBs when mallocing them.
  
  Only schedule the xpt_finishconfig_task once.
  
  Eliminate the use of M_TEMP.
  
  Add a helper function for registering async callbacks.
  
  Release the bus reference that is acquired when doing a CAMIOCOMMAND ioctl.
  
  Zero scsi_readcapacity allocations so we can really tell if there has
  been data returned.
  
  Remove duplicate includes and fix typos.
  
  Add a bunch of definitions and structures to support newer drivers.
  
  When probing a newly found device, don't automatically assume that the
  device supports retrieving a serial number.  Instead, first query the
  list of VPD pages it does support, and only query the serial number if
  it's supported, else silently move on.  This eliminates a lot of noise
  during verbose booting, and will likely eliminate the need for most
  NOSERIAL quirks.
  
  Reduce diffs from FreeBSD.
  
  Obtained-from: FreeBSD
  
  Revision  Changes    Path
  1.40      +125 -122  src/sys/bus/cam/cam_periph.c
  1.11      +19 -4     src/sys/bus/cam/cam_periph.h
  1.12      +2 -2      src/sys/bus/cam/cam_queue.c
  1.11      +71 -2     src/sys/bus/cam/cam_sim.c
  1.7       +30 -2     src/sys/bus/cam/cam_sim.h
  1.65      +927 -474  src/sys/bus/cam/cam_xpt.c
  1.4       +10 -0     src/sys/bus/cam/cam_xpt.h
  1.27      +1 -3      src/sys/bus/cam/scsi/scsi_all.c
  1.14      +113 -1    src/sys/bus/cam/scsi/scsi_all.h
  1.42      +304 -290  src/sys/bus/cam/scsi/scsi_cd.c
  1.27      +62 -79    src/sys/bus/cam/scsi/scsi_ch.c
  1.56      +131 -169  src/sys/bus/cam/scsi/scsi_da.c
  1.28      +1 -1      src/sys/bus/cam/scsi/scsi_low.c
  1.27      +41 -65    src/sys/bus/cam/scsi/scsi_pass.c
  1.23      +29 -98    src/sys/bus/cam/scsi/scsi_pt.c
  1.35      +106 -158  src/sys/bus/cam/scsi/scsi_sa.c
  1.29      +40 -50    src/sys/bus/cam/scsi/scsi_ses.c
  1.19      +13 -32    src/sys/bus/cam/scsi/scsi_targ_bh.c
  1.19      +75 -37    src/sys/bus/cam/scsi/scsi_target.c
  1.15      +1 -1      src/sys/dev/disk/advansys/advansys.c
  1.19      +1 -1      src/sys/dev/disk/advansys/adwcam.c
  1.20      +1 -1      src/sys/dev/disk/aha/aha.c
  1.19      +1 -1      src/sys/dev/disk/ahb/ahb.c
  1.14      +1 -1      src/sys/dev/disk/aic/aic.c
  1.10      +1 -1      src/sys/dev/disk/aic7xxx/ahc_eisa.c
  1.4       +1 -1      src/sys/dev/disk/aic7xxx/ahc_isa.c
  1.15      +1 -1      src/sys/dev/disk/aic7xxx/ahc_pci.c
  1.13      +1 -1      src/sys/dev/disk/aic7xxx/ahd_pci.c
  1.31      +1 -1      src/sys/dev/disk/aic7xxx/aic79xx.c
  1.27      +1 -1      src/sys/dev/disk/aic7xxx/aic79xx_osm.c
  1.29      +3 -3      src/sys/dev/disk/aic7xxx/aic7xxx.c
  1.23      +3 -2      src/sys/dev/disk/aic7xxx/aic7xxx_osm.c
  1.6       +2 -2      src/sys/dev/disk/aic7xxx/aic_osm_lib.h
  1.16      +2 -2      src/sys/dev/disk/amd/amd.c
  1.15      +1 -1      src/sys/dev/disk/ata/atapi-cam.c
  1.19      +1 -1      src/sys/dev/disk/buslogic/bt.c
  1.21      +2 -2      src/sys/dev/disk/isp/isp_freebsd.c
  1.11      +1 -1      src/sys/dev/disk/mpt/mpt_freebsd.c
  1.10      +1 -1      src/sys/dev/disk/nata/atapi-cam.c
  1.22      +1 -1      src/sys/dev/disk/ncr/ncr.c
  1.28      +1 -0      src/sys/dev/disk/sbp/sbp.c
  1.24      +1 -1      src/sys/dev/disk/sym/sym_hipd.c
  1.18      +1 -0      src/sys/dev/disk/trm/trm.c
  1.12      +1 -1      src/sys/dev/disk/vpo/vpo.c
  1.10      +1 -1      src/sys/dev/raid/aac/aac_cam.c
  1.11      +1 -0      src/sys/dev/raid/amr/amr_cam.c
  1.35      +1 -1      src/sys/dev/raid/asr/asr.c
  1.28      +1 -1      src/sys/dev/raid/ciss/ciss.c
  1.18      +2 -1      src/sys/dev/raid/dpt/dpt_scsi.c
  1.21      +2 -1      src/sys/dev/raid/iir/iir.c
  1.21      +2 -0      src/sys/dev/raid/mly/mly.c
  1.10      +1 -0      src/sys/dev/raid/twa/twa_cam.c
  1.38      +1 -0      src/sys/dev/usbmisc/umass/umass.c


http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/cam_periph.c.diff?r1=1.39&r2=1.40&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/cam_periph.h.diff?r1=1.10&r2=1.11&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/cam_queue.c.diff?r1=1.11&r2=1.12&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/cam_sim.c.diff?r1=1.10&r2=1.11&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/cam_sim.h.diff?r1=1.6&r2=1.7&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/cam_xpt.c.diff?r1=1.64&r2=1.65&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/cam_xpt.h.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_all.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_all.h.diff?r1=1.13&r2=1.14&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_cd.c.diff?r1=1.41&r2=1.42&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_ch.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_da.c.diff?r1=1.55&r2=1.56&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_low.c.diff?r1=1.27&r2=1.28&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_pass.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_pt.c.diff?r1=1.22&r2=1.23&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_sa.c.diff?r1=1.34&r2=1.35&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_ses.c.diff?r1=1.28&r2=1.29&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_targ_bh.c.diff?r1=1.18&r2=1.19&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/bus/cam/scsi/scsi_target.c.diff?r1=1.18&r2=1.19&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/advansys/advansys.c.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/advansys/adwcam.c.diff?r1=1.18&r2=1.19&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aha/aha.c.diff?r1=1.19&r2=1.20&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/ahb/ahb.c.diff?r1=1.18&r2=1.19&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic/aic.c.diff?r1=1.13&r2=1.14&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/ahc_eisa.c.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/ahc_isa.c.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/ahc_pci.c.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/ahd_pci.c.diff?r1=1.12&r2=1.13&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/aic79xx.c.diff?r1=1.30&r2=1.31&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/aic79xx_osm.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/aic7xxx.c.diff?r1=1.28&r2=1.29&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/aic7xxx_osm.c.diff?r1=1.22&r2=1.23&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/aic7xxx/aic_osm_lib.h.diff?r1=1.5&r2=1.6&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/amd/amd.c.diff?r1=1.15&r2=1.16&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/ata/atapi-cam.c.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/buslogic/bt.c.diff?r1=1.18&r2=1.19&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/isp/isp_freebsd.c.diff?r1=1.20&r2=1.21&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/mpt/mpt_freebsd.c.diff?r1=1.10&r2=1.11&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/nata/atapi-cam.c.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/ncr/ncr.c.diff?r1=1.21&r2=1.22&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/sbp/sbp.c.diff?r1=1.27&r2=1.28&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/sym/sym_hipd.c.diff?r1=1.23&r2=1.24&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/trm/trm.c.diff?r1=1.17&r2=1.18&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/disk/vpo/vpo.c.diff?r1=1.11&r2=1.12&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/aac/aac_cam.c.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/amr/amr_cam.c.diff?r1=1.10&r2=1.11&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/asr/asr.c.diff?r1=1.34&r2=1.35&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/ciss/ciss.c.diff?r1=1.27&r2=1.28&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/dpt/dpt_scsi.c.diff?r1=1.17&r2=1.18&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/iir/iir.c.diff?r1=1.20&r2=1.21&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/mly/mly.c.diff?r1=1.20&r2=1.21&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/raid/twa/twa_cam.c.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/usbmisc/umass/umass.c.diff?r1=1.37&r2=1.38&f=u



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]