libguestfs does not depend on an x86 architectural feature.
qemu-system-x86_64 emulates a PC, and PCs don't have -kernel. We
should discourage people from depending on this interface for
production use.

I really don't get this whole thing where we must slavishly
emulate an exact PC ...

This has two motivations:

- documented interfaces: we suck at documentation. We seldom document.
Even when we do document something, the documentation is often
inaccurate, misleading, and incomplete. While an "exact PC"
unfortunately doesn't exist, it's a lot closer to reality than, say, an
"exact Linux syscall interface". If we adopt an existing interface, we
already have the documentation, and if there's a conflict between the
documentation and our implementation, it's clear who wins (well, not
always).

- preexisting guests: if we design a new interface, we get to update all
guests; and there are many of them. Whereas an "exact PC" will be seen
by the guest vendors as well who will then add whatever support is
necessary.

Obviously we break this when we have to, but we don't, we shouldn't.
--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.