xen: add "not_essential" flag to struct xenbus_driver
authorJuergen Gross <jgross@suse.com>
Fri, 22 Oct 2021 06:47:56 +0000 (08:47 +0200)
committerBoris Ostrovsky <boris.ostrovsky@oracle.com>
Tue, 23 Nov 2021 19:41:29 +0000 (13:41 -0600)
commit37a72b08a3e1eb28053214dd8211eb09c2fd3187
tree2e9c964969b4608d467dbfbb8fa16e784d0542f8
parent2a0991929aba0a3dd6fe51d1daba06a93a96a021
xen: add "not_essential" flag to struct xenbus_driver

When booting the xenbus driver will wait for PV devices to have
connected to their backends before continuing. The timeout is different
between essential and non-essential devices.

Non-essential devices are identified by their nodenames directly in the
xenbus driver, which requires to update this list in case a new device
type being non-essential is added (this was missed for several types
in the past).

In order to avoid this problem, add a "not_essential" flag to struct
xenbus_driver which can be set to "true" by the respective frontend.

Set this flag for the frontends currently regarded to be not essential
(vkbs and vfb) and use it for testing in the xenbus driver.

Signed-off-by: Juergen Gross <jgross@suse.com>
Link: https://lore.kernel.org/r/20211022064800.14978-2-jgross@suse.com
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
drivers/input/misc/xen-kbdfront.c
drivers/video/fbdev/xen-fbfront.c
drivers/xen/xenbus/xenbus_probe_frontend.c
include/xen/xenbus.h