From owner-freebsd-scsi@FreeBSD.ORG Sat Sep 20 04:01:34 2003 Return-Path: Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C211816A4B3; Sat, 20 Sep 2003 04:01:34 -0700 (PDT) Received: from melusine.cuivre.fr.eu.org (melusine.cuivre.fr.eu.org [62.212.105.185]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01A0243FB1; Sat, 20 Sep 2003 04:01:34 -0700 (PDT) (envelope-from thomas@FreeBSD.ORG) Received: by melusine.cuivre.fr.eu.org (Postfix, from userid 1000) id 0671F2C3D4; Sat, 20 Sep 2003 13:01:31 +0200 (CEST) Date: Sat, 20 Sep 2003 13:01:31 +0200 From: Thomas Quinot To: freebsd-scsi@freebsd.org, ken@freebsd.org, gibbs@freebsd.org Message-ID: <20030920110131.GA41062@melusine.cuivre.fr.eu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4i X-message-flag: WARNING! Using Outlook can damage your computer. Subject: Missing length specification in scsi_request_sense X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Sep 2003 11:01:34 -0000 The CDB built by scsi_request_sense always has a zero length indication, preventing correct transfer of sense data during recovery action by cam_periph. The following change resolves the problem, please review. Thomas. Index: scsi/scsi_all.c =================================================================== RCS file: /home/ncvs/src/sys/cam/scsi/scsi_all.c,v retrieving revision 1.42 diff -u -r1.42 scsi_all.c --- scsi/scsi_all.c 10 Jun 2003 18:14:04 -0000 1.42 +++ scsi/scsi_all.c 20 Sep 2003 10:53:38 -0000 @@ -2408,6 +2408,7 @@ scsi_cmd = (struct scsi_request_sense *)&csio->cdb_io.cdb_bytes; bzero(scsi_cmd, sizeof(*scsi_cmd)); scsi_cmd->opcode = REQUEST_SENSE; + scsi_cmd->length = dxfer_len; } void -- Thomas.Quinot@Cuivre.FR.EU.ORG