summaryrefslogtreecommitdiff
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)
[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;