Re: [PATCH] .azurepipelines: Enable CI for OvmfPkg and EmulatorPkg


Ard Biesheuvel
 

On Mon, 30 Mar 2020 at 22:56, Laszlo Ersek <lersek@redhat.com> wrote:

On 03/30/20 19:44, Ard Biesheuvel wrote:
On Mon, 30 Mar 2020 at 19:11, Sean via Groups.Io
<sean.brogan=microsoft.com@groups.io> wrote:

On Mon, Mar 30, 2020 at 10:04 AM, Ard Biesheuvel wrote:

Is there any way I could contribute ArmVirtQemu to this? Or would it
be easier if I provided comments/instructions?

Either way.
Any instructions you provide would be great. I was going to hack something up for feedback but happy for someone else to do it. Let me know.
OK, so the typical invocation would be

qemu-system-aarch64 -M virt -cpu cortex-a57 -m 1024 -net none
-nographic -bios .../path/to/QEMU_EFI.fd -hda
fat:rw:.../path/to/startup.nsh

The only complication compared to OVMF is that there is no separate
serial port for debug output vs console output, so everything is going
to come out of the same pipe, and grep'ing the console output for
meaningful strings may easily result in false positives. (-pflash
could be used as well, but doesn't really add anything in this case,
and QEMU for ARM has a quirk where pflash images must be exactly 64 MB
in size)
I'm begging you not to introduce instances of "-bios" anywhere near
edk2. Please? :) We need to educate QEMU users, and we need to keep our
sanity when facing bug reports. Let's not set bad examples anywhere, if
we can manage.

I think truncate(1) can do what we need for padding, without actually
allocating those MBs.
truncate should work on Linux, but I have no idea how to pad an image
to a certain size on Windows, and I think the idea was to enable both?

In any case, I don't feel as strongly about this as Laszlo does: even
though -bios really shouldn't be used when you are actually installing
an OS into the VM, I don't think it is inappropriate for booting into
a shell and nothing else. Perhaps we could annotate the scripts in a
way that discourages people from adopting it?

Or if there is an easy way to make this work on both Windows and Linux
using -pflash, I obviously wouldn't mind. I just don't feel it is
essential.

Join devel@edk2.groups.io to automatically receive all group messages.