qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH for-2.11] hw/ppc/spapr: Fix virtio-scsi bootinde


From: David Gibson
Subject: Re: [Qemu-devel] [PATCH for-2.11] hw/ppc/spapr: Fix virtio-scsi bootindex handling for LUNs >= 256
Date: Tue, 21 Nov 2017 11:12:26 +1100
User-agent: Mutt/1.9.1 (2017-09-22)

On Mon, Nov 20, 2017 at 08:44:38AM +0100, Thomas Huth wrote:
> LUNs >= 256 have to be encoded with the so-called "flat space
> addressing method" for virtio-scsi, where an additional bit has to
> be set. SLOF already took care of this with the following commit:
> 
>  https://git.qemu.org/?p=SLOF.git;a=commitdiff;h=f72a37713fea47da
>  (see https://bugzilla.redhat.com/show_bug.cgi?id=1431584 for details)
> 
> But QEMU does not use this encoding yet for device tree paths
> that have to be handed over to SLOF to deal with the "bootindex"
> property, so SLOF currently fails to boot from virtio-scsi devices
> with LUNs >= 256 in the right boot order. Fix it by using the bit
> to indicate the "flat space addressing method" for LUNs >= 256.
> 
> Signed-off-by: Thomas Huth <address@hidden>

Applied to ppc-for-2.11, thanks.

> ---
>  hw/ppc/spapr.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index d682f01..ff2eec4 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -2643,6 +2643,10 @@ static char *spapr_get_fw_dev_path(FWPathProvider *p, 
> BusState *bus,
>               * swap 0100 or 10 << or 20 << ( target lun-id -- srplun )
>               */
>              unsigned id = 0x1000000 | (d->id << 16) | d->lun;
> +            if (d->lun >= 256) {
> +                /* Use the LUN "flat space addressing method" */
> +                id |= 0x4000;
> +            }
>              return g_strdup_printf("address@hidden"PRIX64, qdev_fw_name(dev),
>                                     (uint64_t)id << 32);
>          } else if (usb) {

-- 
David Gibson                    | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
                                | _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]