From owner-svn-src-stable-9@FreeBSD.ORG Tue Jul 2 05:53:41 2013 Return-Path: Delivered-To: svn-src-stable-9@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A6DE789B; Tue, 2 Jul 2013 05:53:41 +0000 (UTC) (envelope-from Andre.Albsmeier@siemens.com) Received: from thoth.sbs.de (thoth.sbs.de [192.35.17.2]) by mx1.freebsd.org (Postfix) with ESMTP id 3D5211792; Tue, 2 Jul 2013 05:53:40 +0000 (UTC) Received: from mail2.siemens.de (localhost [127.0.0.1]) by thoth.sbs.de (8.13.6/8.13.6) with ESMTP id r625rY8Z022428; Tue, 2 Jul 2013 07:53:34 +0200 Received: from curry.mchp.siemens.de (curry.mchp.siemens.de [139.25.40.130]) by mail2.siemens.de (8.13.6/8.13.6) with ESMTP id r625rYKp017918; Tue, 2 Jul 2013 07:53:34 +0200 Received: (from localhost) by curry.mchp.siemens.de (8.14.7/8.14.7) id r625rYXC006155; Date: Tue, 2 Jul 2013 07:53:33 +0200 From: Andre Albsmeier To: "Kenneth D. Merry" Subject: Re: svn commit: r252214 - in stable/9: bin/chio sys/cam/scsi sys/sys Message-ID: <20130702055333.GA2729@bali> References: <201306252143.r5PLhoM0064338@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201306252143.r5PLhoM0064338@svn.freebsd.org> X-Echelon: X-Advice: Drop that crappy M$-Outlook, I'm tired of your viruses! User-Agent: Mutt/1.5.21 (2010-09-15) Cc: "svn-src-stable@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , "svn-src-stable-9@freebsd.org" X-BeenThere: svn-src-stable-9@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for only the 9-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Jul 2013 05:53:41 -0000 On Tue, 25-Jun-2013 at 23:43:50 +0200, Kenneth D. Merry wrote: > Author: ken > Date: Tue Jun 25 21:43:49 2013 > New Revision: 252214 > URL: http://svnweb.freebsd.org/changeset/base/252214 Hi Ken, > Log: > MFC: 249658, 249701 > > Update chio(1) and ch(4) to support reporting element designators. > > This allows mapping a tape drive in a changer (as reported by > 'chio status') to a sa(4) driver instance by comparing the > serial numbers. > > The designators can be ASCII (which is printed out directly), binary > (which is printed in hex format) or UTF-8, which is printed in either > native UTF-8 format if the terminal can support it, or in %XX notation > for non-ASCII characters. Thanks to Hiroki Sato for the > explanation and example UTF-8 printing code. > > chio.h: Modify the changer_element_status structure to add new > fields and definitions from the SMC3r16 spec. > > Rename the original CHIOGSTATUS ioctl to OCHIOGTATUS and > define a new CHIOGSTATUS ioctl. > > Clean up some tab/space issues. > > chio.c: For the 'status' subcommand, print the designator field > if it is supplied by a device. > > scsi_ch.h: Add new flags for DVCID and CURDATA to the READ > ELEMENT STATUS command structure. > > Add a read_element_status_device_id structure > for the data fields in the new standard. Add new > unions, dt_or_obsolete and voltage_devid, to hold > and address data from either SCSI-2 or newer devices. > > scsi_ch.c: Implement support for fetching device IDs with READ > ELEMENT STATUS data. > > Add new arguments to scsi_read_element_status() to > allow the user to request the DVCID and CURDATA bits. This broke "chio status" when talking to my QUALSTAR TLS-8211 library: Jul 2 07:08:22 server kernel: (ch0:ahd3:0:1:0): READ ELEMENT STATUS. CDB: b8 10 fd e8 00 01 03 00 04 00 00 00 Jul 2 07:08:22 server kernel: (ch0:ahd3:0:1:0): CAM status: SCSI Status Error Jul 2 07:08:22 server kernel: (ch0:ahd3:0:1:0): SCSI status: Check Condition Jul 2 07:08:22 server kernel: (ch0:ahd3:0:1:0): SCSI sense: ILLEGAL REQUEST asc:24,0 (Invalid field in CDB) Jul 2 07:08:22 server kernel: (ch0:ahd3:0:1:0): Command byte 6 is invalid Jul 2 07:08:22 server kernel: (ch0:ahd3:0:1:0): Error 22, Unretryable error scsi_cmd->flags (Byte 6) must be zero for this library so I had to use this workaround to make it work again until a better solution is available: --- sys/cam/scsi/scsi_ch.c.ORI 2013-06-26 13:38:54.000000000 +0200 +++ sys/cam/scsi/scsi_ch.c 2013-07-02 07:42:24.000000000 +0200 @@ -1245,8 +1245,8 @@ /* tag_action */ MSG_SIMPLE_Q_TAG, /* voltag */ want_voltags, /* sea */ softc->sc_firsts[chet], - /* dvcid */ 1, - /* curdata */ 1, + /* dvcid */ 0, + /* curdata */ 0, /* count */ 1, /* data_ptr */ data, /* dxfer_len */ 1024, @@ -1284,8 +1284,8 @@ /* voltag */ want_voltags, /* sea */ softc->sc_firsts[chet] + cesr->cesr_element_base, - /* dvcid */ 1, - /* curdata */ 1, + /* dvcid */ 0, + /* curdata */ 0, /* count */ cesr->cesr_element_count, /* data_ptr */ data, /* dxfer_len */ size, -Andre