xen/gntdevt: Fix race condition in gntdev_release()
authorMarek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Fri, 26 Jun 2015 01:28:24 +0000 (03:28 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 17 Aug 2015 03:51:39 +0000 (20:51 -0700)
commit292f53675e097ca807df744fb6fd39211a134bf7
treef7388c05f9ff28777ec7906097a62322adeec79d
parent3f2c206ae6f9e1005ac7f092e8d65c17307a0d59
xen/gntdevt: Fix race condition in gntdev_release()

commit 30b03d05e07467b8c6ec683ea96b5bffcbcd3931 upstream.

While gntdev_release() is called the MMU notifier is still registered
and can traverse priv->maps list even if no pages are mapped (which is
the case -- gntdev_release() is called after all). But
gntdev_release() will clear that list, so make sure that only one of
those things happens at the same time.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/xen/gntdev.c