e155741ec4
[ Upstream commit a3607581cd49c17128a486a526a36a97bafcb2bb ]
Currently, the late XenStore init protocol is only triggered properly
for the case that HVM_PARAM_STORE_PFN is ~0ULL (invalid). For the
case that XenStore interface is allocated but not ready (the connection
status is not XENSTORE_CONNECTED), Linux should also wait until the
XenStore is set up properly.
Introduce a macro to describe the XenStore interface is ready, use
it in xenbus_probe_initcall() to select the code path of doing the
late XenStore init protocol or not. Since now we have more than one
condition for XenStore late init, rework the check in xenbus_probe()
for the free_irq().
Take the opportunity to enhance the check of the allocated XenStore
interface can be properly mapped, and return error early if the
memremap() fails.
Fixes:
|
||
---|---|---|
.. | ||
events | ||
xen-pciback | ||
xenbus | ||
xenfs | ||
Kconfig | ||
Makefile | ||
acpi.c | ||
arm-device.c | ||
balloon.c | ||
biomerge.c | ||
cpu_hotplug.c | ||
dbgp.c | ||
efi.c | ||
evtchn.c | ||
features.c | ||
gntalloc.c | ||
gntdev-common.h | ||
gntdev-dmabuf.c | ||
gntdev-dmabuf.h | ||
gntdev.c | ||
grant-dma-iommu.c | ||
grant-dma-ops.c | ||
grant-table.c | ||
manage.c | ||
mcelog.c | ||
mem-reservation.c | ||
pci.c | ||
pcpu.c | ||
platform-pci.c | ||
privcmd-buf.c | ||
privcmd.c | ||
privcmd.h | ||
pvcalls-back.c | ||
pvcalls-front.c | ||
pvcalls-front.h | ||
swiotlb-xen.c | ||
sys-hypervisor.c | ||
time.c | ||
unpopulated-alloc.c | ||
xen-acpi-pad.c | ||
xen-acpi-processor.c | ||
xen-balloon.c | ||
xen-front-pgdir-shbuf.c | ||
xen-scsiback.c | ||
xlate_mmu.c |