summaryrefslogtreecommitdiff
path: root/include/linux/raid
diff options
context:
space:
mode:
authorNeil Brown <neilb@notabene.brown>2008-06-28 08:31:44 +1000
committerNeil Brown <neilb@notabene.brown>2008-06-28 08:31:44 +1000
commit526647320e696f434647f38421a6ecf65b859c43 (patch)
treeaa6bf13e6aa766051ba32a8b64157f4adf9fcd3e /include/linux/raid
parenta99ac97113d5bc25ddc4d17f404c2024ac6c57f9 (diff)
downloadlinux-3.10-526647320e696f434647f38421a6ecf65b859c43.tar.gz
linux-3.10-526647320e696f434647f38421a6ecf65b859c43.tar.bz2
linux-3.10-526647320e696f434647f38421a6ecf65b859c43.zip
Make sure all changes to md/dev-XX/state are notified
The important state change happens during an interrupt in md_error. So just set a flag there and call sysfs_notify later in process context. Signed-off-by: Neil Brown <neilb@suse.de>
Diffstat (limited to 'include/linux/raid')
-rw-r--r--include/linux/raid/md_k.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h
index 62aa9c9a6dd..df30c439587 100644
--- a/include/linux/raid/md_k.h
+++ b/include/linux/raid/md_k.h
@@ -87,6 +87,9 @@ struct mdk_rdev_s
#define Blocked 8 /* An error occured on an externally
* managed array, don't allow writes
* until it is cleared */
+#define StateChanged 9 /* Faulty or Blocked has changed during
+ * interrupt, so it needs to be
+ * notified by the thread */
wait_queue_head_t blocked_wait;
int desc_nr; /* descriptor index in the superblock */