]> git.baikalelectronics.ru Git - kernel.git/commit
md: remove need for mddev_lock() in md_seq_show()
authorNeilBrown <neilb@suse.de>
Mon, 15 Dec 2014 01:56:59 +0000 (12:56 +1100)
committerNeilBrown <neilb@suse.de>
Thu, 5 Feb 2015 22:32:55 +0000 (09:32 +1100)
commitf0f722c1e9ad51f037e6b52bbb4fe1ae3df6f986
treebff93531bc4bf444adf29337202b4814359d8a61
parent08abc5f0e7d3ea59e0a39c604421d181eafdf8c5
md: remove need for mddev_lock() in md_seq_show()

The only access in md_seq_show that could suffer from races
not protected by ->lock is walking the rdev list.
This can receive sufficient protection from 'rcu'.

So use rdev_for_each_rcu() and get rid of mddev_lock().

Now reading /proc/mdstat will never block in md_seq_show.

Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/md.c