From: Andrew Morton <akpm@osdl.org>

Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 fs/block_dev.c |    5 +++++
 1 files changed, 5 insertions(+)

diff -puN fs/block_dev.c~nr_blockdev_pages-in_interrupt-warning fs/block_dev.c
--- 25/fs/block_dev.c~nr_blockdev_pages-in_interrupt-warning	2005-05-11 21:30:44.000000000 -0700
+++ 25-akpm/fs/block_dev.c	2005-05-11 22:09:53.000000000 -0700
@@ -23,6 +23,8 @@
 #include <linux/mount.h>
 #include <linux/uio.h>
 #include <linux/namei.h>
+#include <linux/hardirq.h>
+
 #include <asm/uaccess.h>
 
 struct bdev_inode {
@@ -393,6 +395,9 @@ long nr_blockdev_pages(void)
 {
 	struct list_head *p;
 	long ret = 0;
+
+	WARN_ON(in_interrupt());
+
 	spin_lock(&bdev_lock);
 	list_for_each(p, &all_bdevs) {
 		struct block_device *bdev;
_