xen/xenbus: fix locking
authorJuergen Gross <jgross@suse.com>
Thu, 5 Mar 2020 10:03:23 +0000 (11:03 +0100)
committerBoris Ostrovsky <boris.ostrovsky@oracle.com>
Thu, 5 Mar 2020 15:42:23 +0000 (09:42 -0600)
commit2f69a110e7bba3ec6bc089a2f736ca0941d887ed
tree57ffc62e0497d2f1be6ad89f9abd7c8adbdde722
parent8130b9d5b5abf26f9927b487c15319a187775f34
xen/xenbus: fix locking

Commit 060eabe8fbe726 ("xenbus/backend: Protect xenbus callback with
lock") introduced a bug by holding a lock while calling a function
which might schedule.

Fix that by using a semaphore instead.

Fixes: 060eabe8fbe726 ("xenbus/backend: Protect xenbus callback with lock")
Signed-off-by: Juergen Gross <jgross@suse.com>
Link: https://lore.kernel.org/r/20200305100323.16736-1-jgross@suse.com
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
drivers/xen/xenbus/xenbus_probe.c
drivers/xen/xenbus/xenbus_probe_backend.c
include/xen/xenbus.h