RE: [PATCH 2/2] [PATCH v1 2/2] sd: Fixing interpretation of VPD B9h length

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for the feedback. 
I did use git format-patch. I will double check my work and see if I can figure out what caused the formatting issues and resubmit with the changes you have mentioned.

Tyler Erickson
Seagate Technology


Seagate Internal

-----Original Message-----
From: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx> 
Sent: Tuesday, May 31, 2022 3:30 PM
To: Tyler Erickson <tyler.erickson@xxxxxxxxxxx>; jejb@xxxxxxxxxxxxx; martin.petersen@xxxxxxxxxx
Cc: linux-scsi@xxxxxxxxxxxxxxx; linux-ide@xxxxxxxxxxxxxxx; Muhammad Ahmad <muhammad.ahmad@xxxxxxxxxxx>; Michael English <michael.english@xxxxxxxxxxx>
Subject: Re: [PATCH 2/2] [PATCH v1 2/2] sd: Fixing interpretation of VPD B9h length


This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.


On 6/1/22 02:50, Tyler Erickson wrote:
> Fixing the interpretation of the length of the B9h VPD page 
> (concurrent positioning ranges). Adding 4 is necessary as the first 4 
> bytes of the page is the header with page number and length 
> information. Adding 3 was likely a misinterpretation of the SBC-5 
> specification which sets all offsets starting at zero.
>
> This fixes the error in dmesg:
> [ 9.014456] sd 1:0:0:0: [sda] Invalid Concurrent Positioning Ranges 
> VPD page
>
> Signed-off-by: Tyler Erickson <tyler.erickson@xxxxxxxxxxx>
> Reviewed-by: Muhammad Ahmad <muhammad.ahmad@xxxxxxxxxxx>
> Tested-by: Michael English <michael.english@xxxxxxxxxxx>

This needs a fixes tag and cc stable. Your patch format is also starnge.
It is missing the "---" separator after the tags. This is not going to apply. Did you generate this with git format-patch ?

>
> diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 
> dc6e55761fd1..14867e8cd687 100644
> --- a/drivers/scsi/sd.c
> +++ b/drivers/scsi/sd.c
> @@ -3067,7 +3067,7 @@ static void sd_read_cpr(struct scsi_disk *sdkp)
>               goto out;
>
>       /* We must have at least a 64B header and one 32B range descriptor */
> -     vpd_len = get_unaligned_be16(&buffer[2]) + 3;
> +     vpd_len = get_unaligned_be16(&buffer[2]) + 4;
>       if (vpd_len > buf_len || vpd_len < 64 + 32 || (vpd_len & 31)) {
>               sd_printk(KERN_ERR, sdkp,
>                         "Invalid Concurrent Positioning Ranges VPD 
> page\n");


--
Damien Le Moal
Western Digital Research




[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux