summaryrefslogtreecommitdiffstats
path: root/crypto/crypto_user.c
diff options
context:
space:
mode:
authorMing Lei <ming.lei@canonical.com>2012-06-22 18:01:40 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-07-16 18:04:25 -0700
commitd1c6c030fcec6f860d9bb6c632a3ebe62e28440b (patch)
tree1a6bbf92f2da6f0df73efb6725de990bb63e4853 /crypto/crypto_user.c
parent6fbfd0592ef88ba29cdce84ef92757351f1fa9c9 (diff)
downloadlinux-stable-d1c6c030fcec6f860d9bb6c632a3ebe62e28440b.tar.gz
linux-stable-d1c6c030fcec6f860d9bb6c632a3ebe62e28440b.tar.bz2
linux-stable-d1c6c030fcec6f860d9bb6c632a3ebe62e28440b.zip
driver core: fix shutdown races with probe/remove(v3)
Firstly, .shutdown callback may touch a uninitialized hardware if dev->driver is set and .probe is not completed. Secondly, device_shutdown() may dereference a null pointer to cause oops when dev->driver is cleared after it has been checked in device_shutdown(). So just hold device lock and its parent lock(if it has) to fix the races. Cc: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Ming Lei <ming.lei@canonical.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'crypto/crypto_user.c')
0 files changed, 0 insertions, 0 deletions