DragonFly-22.214.171.124.gd1f80 master sys/bus/cam cam_ccb.h cam_queue.c cam_xpt.c
dillon at crater.dragonflybsd.org
Thu Jun 4 11:27:04 PDT 2009
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Tue Jun 2 20:36:27 2009 -0700
CAM fixes - queue empty tests, sim refcount, add XPORT_AHCI enum.
* CAMQ_GET_HEAD assumes the head entry in the devq array is NULL to
indicate an empty queue. Fix allocations and removal code to ensure
that no bogus pointers are left in the array, cleaning it up and fixing
a bug where CAMQ_GET_HEAD() could return non-NULL even when the queue
This fixes numerous reports on detachment of non-empty device queues
that are, in fact, empty, and also fixes a memory leak.
* xpt_bus_register() bumps the sim's refcount, but xpt_bus_deregister()
did not properly release it. This fixes a memory leak.
* Add XPORT_AHCI to the cam_xport enum for AHCI attachments.
Summary of changes:
sys/bus/cam/cam_ccb.h | 1 +
sys/bus/cam/cam_queue.c | 10 ++++++++--
sys/bus/cam/cam_xpt.c | 9 +++++++--
3 files changed, 16 insertions(+), 4 deletions(-)
DragonFly BSD source repository
More information about the Commits