Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Mar 1997 17:46:17 -0800 (PST)
From:      "Justin T. Gibbs" <gibbs>
To:        CVS-committers, cvs-all, cvs-sys
Subject:   cvs commit:  src/sys/scsi scsi_base.c
Message-ID:  <199703240146.RAA17509@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
gibbs       97/03/23 17:46:16

  Modified:    sys/scsi  scsi_base.c
  Log:
  free_xs must be called at splbio().  This is usually the case since the main
  caller is scsi_done which the controller interrupt handlers call.  In the
  case of a non-buffer based transaction, the xs structure is freed by the
  process that initiated the transfer in scsi_scsi_cmd.  In this case, an
  explicit splbio/splx pair around the call to free_xs is required.  Without
  the splbio protection, the xs free list could be corrupted, and the type
  driver's start routine might run without spl protection.
  
  Submitted by:	Tor Egge <Tor.Egge@idt.ntnu.no>
  Obtained from: PR kern/2891
  
  Revision  Changes    Path
  1.47      +3 -1      src/sys/scsi/scsi_base.c



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