Re: [PATCH 2.6.25.10 1/2] libata: fix locking for kmap_atomic

From: Jeremy Fitzhardinge
Date: Sun Jul 13 2008 - 17:32:33 EST


Jakub W. Jozwicki wrote:
Sunday, 13 of July 2008 19:46:29 Jeremy Fitzhardinge napisaÅ(a):
Jakub W. Jozwicki wrote:
Sorry, this was for -rt only.

[ 17.012011] BUG: sleeping function called from invalid context
IRQ-14(5732) at arch/x86/mm/highmem_32.c:8
[ 17.012011] in_atomic():0 [00000000], irqs_disabled():1
[ 17.012011] Pid: 5732, comm: IRQ-14 Not tainted 2.6.25.10-rtXXX #11
[ 17.012011] [<c0120fc4>] __might_sleep+0xf1/0xf8
[ 17.012011] [<c011c035>] kmap+0x47/0x5a
The subject says kmap_atomic, but this is kmap. It definitely makes no
sense to call kmap in an IRQ, regardless of the locking. There seems to
be a larger structural problem here.


--- linux-2.6.25.8-rt7.orig/include/asm-x86/highmem.h 2008-06-23 19:12:47.000000000 -0400
+++ linux-2.6.25.8-rt7/include/asm-x86/highmem.h 2008-06-23 19:13:58.000000000 -0400


+/*
+ * on PREEMPT_RT kmap_atomic() is a wrapper that uses kmap():

OK, I guess the "structural problem" is RT ;)

J
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/