Date: Sat, 14 Nov 2009 20:30:42 +0000 (UTC) From: Alexander Motin <mav@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r199281 - head/sys/cam Message-ID: <200911142030.nAEKUgUb012607@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: mav Date: Sat Nov 14 20:30:42 2009 New Revision: 199281 URL: http://svn.freebsd.org/changeset/base/199281 Log: MFp4: Some more missed parts from previous commits. Modified: head/sys/cam/cam_periph.c head/sys/cam/cam_queue.c head/sys/cam/cam_queue.h Modified: head/sys/cam/cam_periph.c ============================================================================== --- head/sys/cam/cam_periph.c Sat Nov 14 20:23:20 2009 (r199280) +++ head/sys/cam/cam_periph.c Sat Nov 14 20:30:42 2009 (r199281) @@ -1465,6 +1465,11 @@ camperiphscsisenseerror(union ccb *ccb, action_string = "No recovery CCB supplied"; goto sense_error_done; } + /* + * Clear freeze flag for original request here, as + * this freeze will be dropped as part of ERESTART. + */ + ccb->ccb_h.status &= ~CAM_DEV_QFRZN; bcopy(ccb, save_ccb, sizeof(*save_ccb)); print_ccb = save_ccb; periph->flags |= CAM_PERIPH_RECOVERY_INPROG; Modified: head/sys/cam/cam_queue.c ============================================================================== --- head/sys/cam/cam_queue.c Sat Nov 14 20:23:20 2009 (r199280) +++ head/sys/cam/cam_queue.c Sat Nov 14 20:30:42 2009 (r199281) @@ -334,7 +334,6 @@ cam_ccbq_init(struct cam_ccbq *ccbq, int } ccbq->devq_openings = openings; ccbq->dev_openings = openings; - TAILQ_INIT(&ccbq->active_ccbs); return (0); } Modified: head/sys/cam/cam_queue.h ============================================================================== --- head/sys/cam/cam_queue.h Sat Nov 14 20:23:20 2009 (r199280) +++ head/sys/cam/cam_queue.h Sat Nov 14 20:30:42 2009 (r199281) @@ -60,7 +60,6 @@ struct cam_ccbq { int dev_openings; int dev_active; int held; - struct ccb_hdr_tailq active_ccbs; }; struct cam_ed; @@ -209,9 +208,6 @@ static __inline void cam_ccbq_send_ccb(struct cam_ccbq *ccbq, union ccb *send_ccb) { - TAILQ_INSERT_TAIL(&ccbq->active_ccbs, - &(send_ccb->ccb_h), - xpt_links.tqe); send_ccb->ccb_h.pinfo.index = CAM_ACTIVE_INDEX; ccbq->dev_active++; ccbq->dev_openings--; @@ -220,8 +216,7 @@ cam_ccbq_send_ccb(struct cam_ccbq *ccbq, static __inline void cam_ccbq_ccb_done(struct cam_ccbq *ccbq, union ccb *done_ccb) { - TAILQ_REMOVE(&ccbq->active_ccbs, &done_ccb->ccb_h, - xpt_links.tqe); + ccbq->dev_active--; ccbq->dev_openings++; ccbq->held++;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200911142030.nAEKUgUb012607>