All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: Sam Eiderman <shmuel.eiderman@oracle.com>
Cc: kwolf@redhat.com, qemu-block@nongnu.org, arbel.moshe@oracle.com,
	seabios@seabios.org, qemu-devel@nongnu.org, mreitz@redhat.com,
	kevin@koconnor.net, liran.alon@oracle.com,
	karl.heubaum@oracle.com
Subject: Re: [Qemu-devel] [QEMU] [PATCH v2 7/8] bootdevice: FW_CFG interface for LCHS values
Date: Mon, 17 Jun 2019 09:20:40 +0200	[thread overview]
Message-ID: <20190617072040.yriunmoffbjhvqc5@sirius.home.kraxel.org> (raw)
In-Reply-To: <20190612115939.23825-8-shmuel.eiderman@oracle.com>

  Hi,

> We serialize this information in a similar way to the "bootorder"
> interface.
> The fw_cfg entry is "bootdevices" and it serializes a struct.

Why "bootdevices"?  I'd suggest to use "geometry" or "lchs" instead.

> At the moment the struct holds the values of logical CHS values but it
> can be expanded easily due to the extendable ABI implemented.
> 
> (In the future, we can pass the bootindex through "bootdevices" instead
> "bootorder" - unifying all bootdevice information in one fw_cfg value)

I don't think deprecating bootorder is useful.  Nobody cares about the
disk geometry, except some legacy x86 bios guests.  So seabios will be
the only firmware using this new interface.  Switching all firmware to a
new fw_cfg file is pointless churn.

Why make this extendable?  What possible extensions do you have in mind?

Also note that with a possible extension you might end up in a situation
where you have info A for device 1 and info B for device 2 and info A+B
for device 3 while with your current patch there is no way to signal
whenever info A or B is available for a given device.

> +/* Serialized as: struct size (4) + (device name\0 + device struct) x devices */
> +char *get_boot_devices_info(size_t *size)
> +{
> +    FWLCHSEntry *i;
> +    BootDeviceEntrySerialized s;
> +    size_t total = 0;
> +    char *list = NULL;

if (QTAILQ_EMPTY(&fw_lchs)) {
	return NULL;
}

> +    if (!mc->legacy_fw_cfg_order) {
                ^^^^^^^^^^^^^^^^^^^
Hmm?

cheers,
  Gerd



  reply	other threads:[~2019-06-17  7:21 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-12 11:59 [Qemu-devel] [QEMU] [PATCH v2 0/8] Add Qemu to SeaBIOS LCHS interface Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 1/8] block: Refactor macros - fix tabbing Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 2/8] block: Support providing LCHS from user Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 3/8] bootdevice: Add interface to gather LCHS Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 4/8] scsi: Propagate unrealize() callback to scsi-hd Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 5/8] bootdevice: Gather LCHS from all relevant devices Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 6/8] bootdevice: Refactor get_boot_devices_list Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 7/8] bootdevice: FW_CFG interface for LCHS values Sam Eiderman
2019-06-17  7:20   ` Gerd Hoffmann [this message]
2019-06-17  7:36     ` Sam Eiderman
2019-06-17  8:38       ` Gerd Hoffmann
2019-06-17 10:08         ` Sam Eiderman
2019-06-17 14:48       ` Kevin O'Connor
2019-06-17 15:13         ` Sam Eiderman
2019-06-12 11:59 ` [Qemu-devel] [QEMU] [PATCH v2 8/8] hd-geo-test: Add tests for lchs override Sam Eiderman
2019-06-12 12:33 ` [Qemu-devel] [SeaBIOS] [QEMU] [PATCH v2 0/8] Add Qemu to SeaBIOS LCHS interface no-reply
2019-06-12 13:06 ` [Qemu-devel] " Gerd Hoffmann
2019-06-12 13:30   ` Sam Eiderman
2019-06-12 19:18     ` Gerd Hoffmann
2019-06-13  7:41       ` Sam Eiderman
2019-06-13  7:44         ` Sam Eiderman
2019-06-13  9:38         ` Gerd Hoffmann
2019-06-13 11:45           ` Sam Eiderman
2019-06-14  4:43             ` Gerd Hoffmann
2019-06-14  9:37               ` Sam Eiderman
2019-06-17  6:50                 ` Gerd Hoffmann
2019-06-17  7:59                   ` Sam Eiderman
2019-06-12 13:51 ` [Qemu-devel] [SeaBIOS] " no-reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190617072040.yriunmoffbjhvqc5@sirius.home.kraxel.org \
    --to=kraxel@redhat.com \
    --cc=arbel.moshe@oracle.com \
    --cc=karl.heubaum@oracle.com \
    --cc=kevin@koconnor.net \
    --cc=kwolf@redhat.com \
    --cc=liran.alon@oracle.com \
    --cc=mreitz@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=seabios@seabios.org \
    --cc=shmuel.eiderman@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.