From: Andrew Morton Signed-off-by: Andrew Morton --- fs/block_dev.c | 5 +++++ 1 file changed, 5 insertions(+) diff -puN fs/block_dev.c~nr_blockdev_pages-in_interrupt-warning fs/block_dev.c --- a/fs/block_dev.c~nr_blockdev_pages-in_interrupt-warning +++ a/fs/block_dev.c @@ -23,6 +23,8 @@ #include #include #include +#include + #include #include "internal.h" @@ -406,6 +408,9 @@ long nr_blockdev_pages(void) { struct block_device *bdev; long ret = 0; + + WARN_ON(in_interrupt()); + spin_lock(&bdev_lock); list_for_each_entry(bdev, &all_bdevs, bd_list) { ret += bdev->bd_inode->i_mapping->nrpages; _