qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Laszlo Ersek <lersek@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>,
	Andrea Bolognani <abologna@redhat.com>
Cc: QEMU Developers <qemu-devel@nongnu.org>,
	Marcel Apfelbaum <marcel@redhat.com>,
	Andrew Jones <drjones@redhat.com>,
	Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v5 2/2] mach-virt: Provide sample configuration files
Date: Wed, 8 Feb 2017 20:23:53 +0100	[thread overview]
Message-ID: <c88bca35-58b1-1df3-116f-3a1786376ca8@redhat.com> (raw)
In-Reply-To: <CAFEAcA8+wfPQXXhoYZDv8LAOS6=4_P9kyaHONuMQcb7VmkVyxw@mail.gmail.com>

On 02/08/17 19:32, Peter Maydell wrote:
> On 8 February 2017 at 17:35, Andrea Bolognani <abologna@redhat.com> wrote:

>> +# Firmware configuration
>> +# =========================================================
>> +#
>> +# There are two parts to the firmware: a read-only image
>> +# containing the executable code, which is shared between
>> +# guests, and a read/write variable store that is used by
>> +# to record information such as the boot device. An empty
>> +# variable store can be created by simply copying a
>> +# template provided as part of AAVMF.
>> +#
>> +# Depending on the distribution you're using on the host,
>> +# paths to the firmware itself and variable store template
>> +# will be different. Some examples:
>> +#
>> +# Fedora:
>> +#   /usr/share/edk2/aarch64/QEMU_EFI.fd
>> +#   /usr/share/edk2/aarch64/QEMU_VARS.fd
>> +# RHEL:
>> +#   /usr/share/AAVMF/AAVMF_CODE.fd
>> +#   /usr/share/AAVMF/AAVMF_VARS.fd
> 
> It's a shame that we've ended up with different
> firmware names (even between RHEL and Fedora, without
> getting to Debian or SUSE).

The root cause (or, well, *one* root cause) is that OVMF used to be
un-distributable in Fedora (and I assume, Debian), due to the
requirements that Fedora presented (and presents) for package licenses.
In particular, the FAT driver in OVMF used not to be free software (no
freedom #0 -- "use for any purpose"). The RHEL Supplementary channel
could however accommodate OVMF (as Tech Preview).

So this was a strange situation where a package first entered RHEL (even
if in a "side channel"), and Fedora picked it up way later.

Also, my personal workflow does not really match Fedora. I'll break my
back for upstream and for RHEL (I *am* serious about "upstream first"),
but community distros are not a good fit for me, either technically or
socially. They are neither upstreams (with nicely bisectable git repos,
sane mailing lists -- have you seen HyperKitty? -- or sane bug trackers,
for example), nor real supported, stable downstreams, with necks and
money on the line. In the virt team @RH, I'm responsible for upstream
and RHEL, but I specifically requested to be independent of Fedora.

Whenever OVMF or AAVMF bugs are reported in RHBZ, for Fedora, I do take
a look, but I don't take responsibility. I'm not even a "proven
packager" for Fedora.

(I guess I'll be crucified for the above paragraph, but I guess I might
as well speak my mind on this, for one data point.)

Re: Debian, I *had* been on the lookout for OVMF-related Debian bugs
(and some other community distro bugs), and I used to comment on them
quite liberally, especially when it came to packaging. Example:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=764918

I also try to respond to OVMF-related reports that people file in the
QEMU LaunchPad tracker (... despite TianoCore having a real Bugzilla bug
tracker, which I'm forced to say runs circles around LaunchPad.)

But, packaging questions and uniformity across distros aren't my stuff.

> Would making UEFI a
> more "official" rom image in pc-bios/ help to
> harmonise things, or just introduce yet another
> possibility to the mix?

On one hand, it would be the best possible solution. I believe we've
been thinking on-and-off about bundling OVMF and ArmVirtQemu with QEMU,
since FatPkg in edk2 became free software. (... Because Microsoft
graciously liberated the license, after Intel worked with them for a
looong time on that. Kudos again to both companies!)

On the other hand, upstream edk2 doesn't do releases (not in the "whole
community stabilization / soft freeze / hard freeze / merge window
closed" sense anyway). So Gerd -- because it would fall under Gerd's
maintainership I think -- would have to deal with yet another project
like iPXE (no releases). It's up to him, I guess.

NB: Gerd maintains a distro-independent set of RPM packages at
<https://www.kraxel.org/repos/>, which provide bleeding edge upstream
builds. For "wide community" purposes, I tend to view those as the "gold
standard". If they run into build or functional failures, in the minimal
amount of private (but still open source) patches that we carry in them,
I do consider helping out with those as a priority.

So I guess Gerd would have to decide which of the both (or maybe both?)
streams he'd want to maintain -- the one bundled with QEMU, or the one
in his "bleeding edge" repo. ... If iPXE is any example, then my guess
is "both" :)

Sheesh, sorry about this huge rant. Don't push my buttons, people. ;)

Thanks
Laszlo

  reply	other threads:[~2017-02-08 19:24 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-08 17:35 [Qemu-devel] [PATCH v5 0/2] docs: Improve sample configuration files Andrea Bolognani
2017-02-08 17:35 ` [Qemu-devel] [PATCH v5 1/2] q35: " Andrea Bolognani
2017-02-08 17:35 ` [Qemu-devel] [PATCH v5 2/2] mach-virt: Provide " Andrea Bolognani
2017-02-08 18:11   ` Laszlo Ersek
2017-02-08 18:49     ` Andrea Bolognani
2017-02-08 19:34       ` Laszlo Ersek
2017-02-08 19:47         ` Andrea Bolognani
2017-02-09  9:49     ` Andrew Jones
2017-02-09 10:52       ` Andrea Bolognani
2017-02-08 18:32   ` Peter Maydell
2017-02-08 19:23     ` Laszlo Ersek [this message]
2017-02-08 19:40       ` Peter Maydell
2017-02-08 19:28     ` Andrea Bolognani
2017-02-08 19:36       ` Peter Maydell
2017-02-08 19:49         ` Laszlo Ersek
2017-02-09 13:53         ` Andrea Bolognani
2017-02-09 14:14           ` Andrew Jones
2017-02-08 19:36       ` Laszlo Ersek
2017-02-09  9:42   ` Andrew Jones
2017-02-09  9:57     ` Peter Maydell
2017-02-09 10:51       ` Andrea Bolognani
2017-02-09 12:28         ` Andrew Jones
2017-02-09 13:27           ` Andrea Bolognani
2017-02-09 14:08             ` Andrew Jones
2017-02-09 14:56               ` Andrea Bolognani
2017-02-09 15:26                 ` Gerd Hoffmann
2017-02-09 15:10           ` Andrea Bolognani
2017-02-09 15:35             ` Andrew Jones
2017-02-09 16:11               ` Andrea Bolognani
2017-02-09 16:36                 ` Andrew Jones
2017-02-09 17:06                   ` Andrea Bolognani
2017-02-09 18:05                     ` Andrew Jones

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=c88bca35-58b1-1df3-116f-3a1786376ca8@redhat.com \
    --to=lersek@redhat.com \
    --cc=abologna@redhat.com \
    --cc=drjones@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=marcel@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).