[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] ide: Correct the CHS 'cyls_max' limit to be 655
From: |
John Snow |
Subject: |
Re: [Qemu-devel] [PATCH] ide: Correct the CHS 'cyls_max' limit to be 65535 |
Date: |
Tue, 19 Jan 2016 14:12:10 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 01/18/2016 05:19 AM, Shmulik Ladkani wrote:
> In b7eb0c9:
> hw/block-common: Factor out fall back to legacy -drive cyls=...
> 'blkconf_geometry()' was introduced, factoring out CHS limit validation
> code that was repeated in ide, scsi, virtio-blk.
>
> The original IDE CHS limit prior b7eb0c9 was 65535,16,255 (as per ATA
> CHS addressing).
> However the 'cyls_max' argument passed to 'blkconf_geometry' in the
> ide_dev_initfn case was accidentally set to 65536 instead of 65535.
>
> Fix, providing the correct 'cyls_max'.
>
> Signed-off-by: Shmulik Ladkani <address@hidden>
> ---
> hw/ide/qdev.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c
> index 1f83109..fea5425 100644
> --- a/hw/ide/qdev.c
> +++ b/hw/ide/qdev.c
> @@ -172,7 +172,7 @@ static int ide_dev_initfn(IDEDevice *dev, IDEDriveKind
> kind)
>
> blkconf_serial(&dev->conf, &dev->serial);
> if (kind != IDE_CD) {
> - blkconf_geometry(&dev->conf, &dev->chs_trans, 65536, 16, 255, &err);
> + blkconf_geometry(&dev->conf, &dev->chs_trans, 65535, 16, 255, &err);
> if (err) {
> error_report_err(err);
> return -1;
>
Yep, this value eventually gets reported out via uint16_t, so 65535 is
correct.
Reviewed-by: John Snow <address@hidden>
Thanks, applied to my IDE tree:
https://github.com/jnsnow/qemu/commits/ide
https://github.com/jnsnow/qemu.git
--js