Re: [PATCH 0/2] xen: Fix PV-only build

Juergen Gross <[email protected]> Thu, 6 Aug 2026 15:31:54 +0200
Newsgroups gmane.comp.emulators.xen.devel,gmane.linux.kernel
Message-ID <[email protected]>
On 06.08.26 15:24, Jason Andryuk wrote:
> On 2026-08-06 08:00, Jürgen Groß wrote:
>> On 06.08.26 13:31, Jan Beulich wrote:
>>> On 06.08.2026 12:55, Juergen Gross wrote:
>>>> On 06.08.26 03:52, Jason Andryuk wrote:
>>>>> Allow disabling XEN_PVHVM for a PV-only.  A stub in the event channel
>>>>> code needs to be fixed first.
>>>>>
>>>>> Jason Andryuk (2):
>>>>>     xen/events: Fix xen_set_upcall_vector stub
>>>>>     xen/Kconfig: select XEN_PVHVM
>>>>>
>>>>>    arch/x86/xen/Kconfig             | 8 +++++---
>>>>>    drivers/xen/events/events_base.c | 2 +-
>>>>>    2 files changed, 6 insertions(+), 4 deletions(-)
>>>>>
>>>>
>>>> I did a comparison of a kernel built with your patches disabling XEN_PVHVM
>>>> and my patches with XEN_PVHVM_GUEST disabled.
>>>>
>>>> The kernel built with my patches is 6 bytes smaller than the one with your
>>>> patches.
>>>
>>> Isn't this a sign of something else needing tweaking, somewhere?
>>
>> This is a sign that there are probably only very few really HVM specific paths
>> (in the sense of: explicitly not marked as irrelevant for PV) in the kernel.
>> Yes, I'm sure you can find some more, but I'm really not sure this is relevant
>> for more than a handful of users.
> 
> I see more reduction:
> 15029248 - arch/x86/boot/bzImage
> 15021056 - arch/x86/boot/bzImage.after
> 
> ~8k
> 
> 52542480 - vmlinux
> 52523184 - vmlinux.after
> 
> ~18k
> 
> $ ../linux/scripts/bloat-o-meter vmlinux vmlinux.after
> add/remove: 1/136 grow/shrink: 14/48 up/down: 15902/-22430 (-6528)

Did you disable CONFIG_XEN_PVHVM_GUEST in the before kernel, too?

> 
>>>> So I don't see any reason to take your patches, which conflict with mine,
>>>> especially as my patches have a negative diffstat on source level, too.
>>>
>>> Hmm, Jason's patches look to move things into a more adequate direction,
>>> though. In which case I think a negative diffstat becomes an irrelevant
>>> argument?
>>
>> Depends on what you are looking for.
>>
>> My take from this is that a PV-only kernel with Jason's patches is not really
>> adding any value, while my simplification is at least making things simpler
>> in terms of code volume and number of Xen related config options.
>>
>> Of course it would be possible to have a smaller PV-only kernel, but as I said
>> already, there has been no public demand for that in the last years and the
>> downsides IMHO far outweigh the potential gain.
>>
>> IMO the "adequate direction" regarding Xen specific kernel code is towards PVH
>> and not towards more PV specific tweaking. And I'm very sure the kernel
>> community outside of the Xen community is agreeing with me here.
> I don't need PV-only kernels, so I am fine with not pursuing this patch set.
> 
> Mainly I wanted to post this alternative since restoring PV-only is possible 
> (and I inadvertently broke it).  Converting CONFIG_XEN_PVHVM to CONFIG_XEN 
> looked wrong when it didn't apply to PV.
> 
> Pursuing your patches for the reasons you give also makes sense.

Thanks,


Juergen
OpenPGP_0xB0DE9DD628BF132F.asc (application/pgp-keys, 3.6 KB)
-----BEGIN PGP PUBLIC KEY BLOCK-----

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
kt+z4drzFUyEjLM1vVvIMjkUoJs=
=eeAB
-----END PGP PUBLIC KEY BLOCK-----
OpenPGP_signature.asc (application/pgp-signature, 495 B)
-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmp0jMoFAwAAAAAACgkQsN6d1ii/Ey+w
0QgAgWFtwLXHbZiI2x6rwpaNKVn9HGdNEHtNajXZkomknhdnC4BlDSPqQtnqp0Sai0mrHWwfD4+I
c/N5h+PLnRGs4QT2KvS5/XNu0AYdNkb7W+Aml2Ac/gLMXoMnn6p8XpvGydDJxKph7tWyBrZH556F
YQCYOX8w+UjjZukEuw9riSvjdZliFdS7HU6jmBgkubbRTHTQBq1bDFGmC72/Tqo7yaDlivE0QJxe
m7t0cIWPOAr/5TPzpjV+TxH7rAbJqznPpFPh8eZRzGWN6y1HrEC4QmMry7XjWdfK88z99SEA1/PA
2qYSKDk2aZYDR4tw0+nHEnxrZLB8hbLcmxIMWqdmwg==
=odcF
-----END PGP SIGNATURE-----