summary refs log tree commit diff
path: root/drivers/mtd/onenand
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@nokia.com>2009-03-23 14:57:38 +0200
committerDavid Woodhouse <David.Woodhouse@intel.com>2009-03-23 13:13:55 +0000
commita29f280b739985a9e829d67af4d08e6584153495 (patch)
treecf8aa48c5250e8314961ed137a7a78c45a80274c /drivers/mtd/onenand
parent17b536cc43bcf2afcc20b4812f93a895881b5f4f (diff)
downloadlinux-a29f280b739985a9e829d67af4d08e6584153495.tar.gz
[MTD] [OneNAND] omap2: panic_write may be in an interrupt context
panic_write may read in an interrupt context.

Signed-off-by: Adrian Hunter <adrian.hunter@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/mtd/onenand')
-rw-r--r--drivers/mtd/onenand/omap2.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/mtd/onenand/omap2.c b/drivers/mtd/onenand/omap2.c
index 77a4f1446156..2c199b30ab58 100644
--- a/drivers/mtd/onenand/omap2.c
+++ b/drivers/mtd/onenand/omap2.c
@@ -294,6 +294,10 @@ static int omap3_onenand_read_bufferram(struct mtd_info *mtd, int area,
 	if (bram_offset & 3 || (size_t)buf & 3 || count < 384)
 		goto out_copy;
 
+	/* panic_write() may be in an interrupt context */
+	if (in_interrupt())
+		goto out_copy;
+
 	if (buf >= high_memory) {
 		struct page *p1;