xenbus: Allow PVH dom0 a non-local xenstore
authorJason Andryuk <jason.andryuk@amd.com>
Tue, 6 May 2025 20:44:56 +0000 (16:44 -0400)
committerJuergen Gross <jgross@suse.com>
Wed, 7 May 2025 14:15:27 +0000 (16:15 +0200)
commit90989869baae47ee2aa3bcb6f6eb9fbbe4287958
treedc3cb6a02f5de3c4c6ffdf50db0987266a4c1269
parentcd9c058489053e172a6654cad82ee936d1b09fab
xenbus: Allow PVH dom0 a non-local xenstore

Make xenbus_init() allow a non-local xenstore for a PVH dom0 - it is
currently forced to XS_LOCAL.  With Hyperlaunch booting dom0 and a
xenstore stubdom, dom0 can be handled as a regular XS_HVM following the
late init path.

Ideally we'd drop the use of xen_initial_domain() and just check for the
event channel instead.  However, ARM has a xen,enhanced no-xenstore
mode, where the event channel and PFN would both be 0.  Retain the
xen_initial_domain() check, and use that for an additional check when
the event channel is 0.

Check the full 64bit HVM_PARAM_STORE_EVTCHN value to catch the off
chance that high bits are set for the 32bit event channel.

Signed-off-by: Jason Andryuk <jason.andryuk@amd.com>
Change-Id: I5506da42e4c6b8e85079fefb2f193c8de17c7437
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Signed-off-by: Juergen Gross <jgross@suse.com>
Message-ID: <20250506204456.5220-1-jason.andryuk@amd.com>
drivers/xen/xenbus/xenbus_probe.c