aboutsummaryrefslogtreecommitdiff
path: root/drivers/input/misc
diff options
context:
space:
mode:
authorGravatar Juergen Gross <jgross@suse.com> 2021-10-22 08:47:56 +0200
committerGravatar Boris Ostrovsky <boris.ostrovsky@oracle.com> 2021-11-23 13:41:29 -0600
commit37a72b08a3e1eb28053214dd8211eb09c2fd3187 (patch)
tree2e9c964969b4608d467dbfbb8fa16e784d0542f8 /drivers/input/misc
parentxen/pvh: add missing prototype to header (diff)
downloadlinux-37a72b08a3e1eb28053214dd8211eb09c2fd3187.tar.gz
linux-37a72b08a3e1eb28053214dd8211eb09c2fd3187.tar.bz2
linux-37a72b08a3e1eb28053214dd8211eb09c2fd3187.zip
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>
Diffstat (limited to 'drivers/input/misc')
-rw-r--r--drivers/input/misc/xen-kbdfront.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/input/misc/xen-kbdfront.c b/drivers/input/misc/xen-kbdfront.c
index 4ff5cd2a6d8d..3d17a0b3fe51 100644
--- a/drivers/input/misc/xen-kbdfront.c
+++ b/drivers/input/misc/xen-kbdfront.c
@@ -542,6 +542,7 @@ static struct xenbus_driver xenkbd_driver = {
.remove = xenkbd_remove,
.resume = xenkbd_resume,
.otherend_changed = xenkbd_backend_changed,
+ .not_essential = true,
};
static int __init xenkbd_init(void)