drbd: fix potential dereference of NULL pointer
authorLars Ellenberg <lars.ellenberg@linbit.com>
Thu, 16 Dec 2010 14:41:26 +0000 (15:41 +0100)
committerPhilipp Reisner <philipp.reisner@linbit.com>
Thu, 10 Mar 2011 10:43:30 +0000 (11:43 +0100)
commit2265b473aecc1a6fe1f84a0ee272ba39806c2a8a
treebd58a09ad124dd37f15db23f20912049ccd067cd
parent02851e9f00d78dbc8ded0aacbf9bf3b631d627b3
drbd: fix potential dereference of NULL pointer

If drbd used to have crypto digest algorithms configured, then is being
unconfigured (but not unloaded), it frees the algorithms, but does not
reset the config.  If it then is reconfigured to use the very same
algorithm, it "forgot" to re-allocate the algorithms, thinking that the
config has not changed in that aspect.
It will then Oops on the first attempt to actually use those algorithms.

Fix this by resetting the config to defaults after cleanup.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
drivers/block/drbd/drbd_main.c