still i'm going to give them a spin a bit later.
> Individual PCMCIA drivers need to be updated to call
> thier release function directly when processing a
> CARD_RELEASE message instead of from a timer procedure.
>
> Similar to this patch for synclink_cs.c:
...
> - mod_timer(&link->release, jiffies + HZ/20);
> + mgslpc_release((u_long)link);
Tried that. This time the trace looks different:
Debug: sleeping function called from illegal context at include/asm/semaphore.h:119
Call Trace:
[<c0118bc8>] __might_sleep+0x58/0x70
[<c6a31eb6>] +0x82/0x58c [pcmcia_core]
[<c6a2d193>] undo_irq+0x23/0x90 [pcmcia_core]
[<c6a31eb6>] +0x82/0x58c [pcmcia_core]
[<c6a302f8>] pcmcia_release_irq+0xb8/0xe0 [pcmcia_core]
[<c6a25e00>] pcnet_release+0x0/0x80 [pcnet_cs]
[<c6a312d5>] CardServices+0x155/0x260 [pcmcia_core]
[<c6a312c9>] CardServices+0x149/0x260 [pcmcia_core]
[<c6a25e56>] pcnet_release+0x56/0x80 [pcnet_cs]
[<c01224a4>] run_timer_softirq+0xc4/0x1a0
[<c010a8b3>] handle_IRQ_event+0x33/0xf0
[<c011e889>] do_softirq+0xa9/0xb0
[<c010abb5>] do_IRQ+0x125/0x150
[<c01093a8>] common_interrupt+0x18/0x20
[<c013cfb6>] zap_pte_range+0xd6/0x1d0
[<c013d0f3>] zap_pmd_range+0x43/0x70
[<c013d153>] unmap_page_range+0x33/0x60
[<c013d271>] unmap_vmas+0xf1/0x260
[<c01412d5>] exit_mmap+0x65/0x180
[<c0119196>] mmput+0x56/0xb0
[<c01556ce>] exec_mmap+0xce/0x150
[<c01557e8>] flush_old_exec+0x18/0x830
[<c01555ea>] kernel_read+0x3a/0x50
[<c0170483>] load_elf_binary+0x283/0xba0
[<c01316fd>] generic_file_aio_read+0x3d/0x50
[<c0134379>] buffered_rmqueue+0xc9/0x160
[<c0170200>] load_elf_binary+0x0/0xba0
[<c015639b>] search_binary_handler+0xcb/0x2d0
[<c01566f9>] do_execve+0x159/0x1a0
[<c0157d28>] getname+0x78/0xc0
[<c0107a46>] sys_execve+0x36/0x70
[<c0109187>] syscall_call+0x7/0xb
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/