Re: Minor bug in SCSI definition

From: NGie Cooper <yaneurabeya_at_gmail.com>
Date: Wed, 12 Nov 2014 19:44:16 -0800
On Wed, Nov 12, 2014 at 7:30 PM, Rang, Anton <anton.rang_at_isilon.com> wrote:
> Coverity found an issue in this area which I tracked down to the incorrect definition patched below.
>
> The SID_QUAL macro is (((inq_data)->device & 0xE0) >> 5) which extracts the peripheral qualifier.
> Per SCSI-2 (draft 10L) table 46, the vendor-specific values are "1XXb".
>
> This probably affects almost nobody, but it will clear up a couple of Coverity warnings.
>
> Anton
>
> Index: sys/cam/scsi/scsi_all.h
> ===================================================================
> --- sys/cam/scsi/scsi_all.h     (revision 274352)
> +++ sys/cam/scsi/scsi_all.h  (working copy)
> _at__at_ -1817,7 +1817,7 _at__at_
>                                                             * reserved for this peripheral
>                                                             * qualifier.
>                                                             */
> -#define          SID_QUAL_IS_VENDOR_UNIQUE(inq_data) ((SID_QUAL(inq_data) & 0x08) != 0)
> +#define         SID_QUAL_IS_VENDOR_UNIQUE(inq_data) ((SID_QUAL(inq_data) & 0x04) != 0)
>            u_int8_t dev_qual2;
> #define          SID_QUAL2  0x7F
> #define          SID_LU_CONG        0x40

CCing ken_at_/mav_at_/scottl_at_ -- thanks!
Received on Thu Nov 13 2014 - 02:44:18 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:54 UTC