Re: [2.6.2-rc1] sleep called from invalid context (8250/ACPI related?)

From: Andrew Morton (akpm_at_osdl.org)
Date: 01/21/04

  • Next message: Mike Fedyk: "[OT] Confirmation Spam Blocking was: List 'linux-dvb' closed to public posts"
    Date:	Wed, 21 Jan 2004 13:36:52 -0800
    To: Rui Saraiva <rmps@joel.ist.utl.pt>
    
    

    Rui Saraiva <rmps@joel.ist.utl.pt> wrote:
    >
    > --------------------------------------------------------------------------------|
    > Hello,
    >
    > I've found this message in my logs while investigating some kernel Oops
    > (in other message). If you need more info, please ask.
    >
    > Regards,
    > Rui Saraiva
    >
    >
    > Debug: sleeping function called from invalid context at include/asm/semaphore.h:119
    > in_atomic():1, irqs_disabled():0
    > Call Trace:
    > [<c0122ddb>] __might_sleep+0xab/0xd0
    > [<d1bd2df6>] uart_unregister_port+0x76/0xa9 [serial_core]
    > [<d1bd9559>] unregister_serial+0x19/0x20 [8250]
    > [<d1bcb2de>] acpi_serial_remove+0x2e/0x50 [8250_acpi]
    > [<c02523f0>] acpi_driver_detach+0xcc/0x184
    > [<c0252621>] acpi_bus_unregister_driver+0x18/0x168
    > [<d1bcb312>] acpi_serial_exit+0x12/0x14 [8250_acpi]
    > [<c014510f>] sys_delete_module+0x13f/0x160
    > [<c0166307>] sys_munmap+0x57/0x80
    > [<c010a14f>] syscall_call+0x7/0xb

    acpi_driver_detach is calling the acpi_driver.remove() method under
    the acpi_device_lock spinlock.

    uart_unregister_port() happens to be using a semaphore for its locking.

    I do think that it would be better if ACPI were to permit this. From a
    quick peek it appears that acpi_device_lock can simply become a semaphore?

    -
    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/


  • Next message: Mike Fedyk: "[OT] Confirmation Spam Blocking was: List 'linux-dvb' closed to public posts"

    Relevant Pages

    • kernel panic after sema_init(&sem,-1) why?
      ... if I initialise the semaphore to -1 ... then try to acquire it by calling down. ... privileged information for the sole use of the person or entity to ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • [PATCH/RFC] Futex mmap_sem deadlock
      ... to take the same semaphore for reading. ... Call Trace: ... then do_page_fault will deadlock. ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Re: 2.6.7-mm4 compile buglet
      ... >You'll need to disable CONFIG_PERFCTR or apply the below patch. ... I didn't trace it back to what was calling it sorry, ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Re: 2.4.23-pre9 ide+XFree+ptrace=Complete hang
      ... there is any way to get the Xserver running without ioplbut using ... ioperm instead - I know that the io bitmap is only 0x400 ports, ... Any ideas on how to trace this down? ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Badness in as_completed_request in 2.6.0-test5-bk3
      ... their DNS appears to be down in this ... Call Trace: ... My mainboard has a VIA controller and the hard disk is a IBM ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)