Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Jun 2010 22:07:53 +0000 (UTC)
From:      "Kenneth D. Merry" <ken@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/dev/mpt mpt.c mpt.h mpt_cam.c mpt_pci.c mpt_raid.c
Message-ID:  <201006292208.o5TM8AQL091728@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
ken         2010-06-29 22:07:53 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/mpt          mpt.c mpt.h mpt_cam.c mpt_pci.c 
                         mpt_raid.c 
  Log:
  SVN rev 209599 on 2010-06-29 22:07:53Z by ken
  
  Change the mpt driver to allow larger I/O sizes.
  
  The mpt driver previously didn't report a 'maxio' size to CAM, and so the
  da(4) driver limited I/O sizes to DFLTPHYS (64K) by default.  The number
  of scatter gather segments allowed, as reported to busdma, was
  (128K / PAGE_SIZE) + 1, or 33 on architectures with 4K pages.
  
  Change things around so that we wait until we've determined how many
  segments the adapter can support before creating the busdma tag used for
  buffers, so we can potentially support more S/G segments and therefore
  larger I/O sizes.
  
  Also, fix some things that were broken about the module unload path.  It
  still gets hung up inside CAM, though.
  
  mpt.c:          Move some busdma initialization calls in here, and call
                  them just after we've gotten the IOCFacts, and know how
                  many S/G segments this adapter can support.
  
  mpt.h:          Get rid of MPT_MAXPHYS, it is no longer used.
  
                  Add max_cam_seg_cnt, which is used to report our maximum
                  I/O size up to CAM.
  
  mpt_cam.c:      Use max_cam_seg_cnt to report our maximum I/O size to CAM.
  
                  Fix the locking in mpt_cam_detach().
  
  mpt_pci.c:      Pull some busdma initialization and teardown out and put
                  it in mpt.c.  We now delay it until we know many scatter
                  gather segments the adapter can support, and therefore
                  how to setup our busdma tags.
  
  mpt_raid.c:     Make sure we wake up the right wait channel to get the
                  raid thread to wake up when we're trying to shut it down.
  
  Reviewed by:    gibbs, mjacob
  MFC after:      2 weeks
  
  Revision  Changes    Path
  1.52      +129 -16   src/sys/dev/mpt/mpt.c
  1.51      +2 -3      src/sys/dev/mpt/mpt.h
  1.74      +3 -6      src/sys/dev/mpt/mpt_cam.c
  1.57      +0 -87     src/sys/dev/mpt/mpt_pci.c
  1.27      +1 -1      src/sys/dev/mpt/mpt_raid.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006292208.o5TM8AQL091728>