MD: Prevent sysfs operations on uninitialized kobjects
authorJonathan Brassow <jbrassow@redhat.com>
Thu, 7 Mar 2013 22:24:26 +0000 (16:24 -0600)
committerNeilBrown <neilb@suse.de>
Wed, 20 Mar 2013 02:17:57 +0000 (13:17 +1100)
commit90584fc93d461520a888f691144f0879283b3624
treeb29d3af3e2af5ff3e3761525de851d88f102f9e5
parente3620a3ad52609f64a2402e4b59300afb4b83b77
MD: Prevent sysfs operations on uninitialized kobjects

MD: Prevent sysfs operations on uninitialized kobjects

Device-mapper does not use sysfs; but when device-mapper is leveraging
MD's RAID personalities, MD sometimes attempts to update sysfs.  This
patch adds checks for 'mddev-kobj.sd' in sysfs_[un]link_rdev to ensure
it is about to operate on something valid.  This patch also checks for
'mddev->kobj.sd' before calling 'sysfs_notify' in 'remove_and_add_spares'.
Although 'sysfs_notify' already makes this check, doing so in
'remove_and_add_spares' prevents an additional mutex operation.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/md.c
drivers/md/md.h