From mboxrd@z Thu Jan 1 00:00:00 1970 From: James Bottomley Subject: Re: Bugs in scsi_vpd_inquiry() Date: Tue, 11 Aug 2009 11:24:47 -0500 Message-ID: <1250007887.4301.53.camel@mulgrave.site> References: Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Return-path: Received: from bedivere.hansenpartnership.com ([66.63.167.143]:39758 "EHLO bedivere.hansenpartnership.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752619AbZHKQYv (ORCPT ); Tue, 11 Aug 2009 12:24:51 -0400 In-Reply-To: Sender: linux-scsi-owner@vger.kernel.org List-Id: linux-scsi@vger.kernel.org To: Alan Stern Cc: Boaz Harrosh , "Martin K. Petersen" , Matthew Wilcox , SCSI development list On Tue, 2009-08-11 at 12:14 -0400, Alan Stern wrote: > On Tue, 11 Aug 2009, James Bottomley wrote: > > > Sort of, but it's not really doing it properly. Lets do it like this. > > This should also fix the > 255 length problem older devices might have. > > Do you mind including also the residue check? But there's no point to it ... it's a Byzantine check. The standard says shall return as many bytes as will fit in the allocation length (what it does with allocation length beyond data to return is undefined). For the USB case where a full residue and no error indicates there was actually an error, we already have a translation. If devices just return random data lengths and then stop, your proposed residue check doesn't catch them anyway. However, I'd much rather assume a device performs to spec until proven otherwise. James