Re: [2.6.23-rt3] NMI watchdog trace of deadlock
From: Ingo Molnar <hidden>
Date: 2007-10-27 09:44:27
Also in:
lkml
* Nick Piggin [off-list ref] wrote:
quoted
[10138.175796] [<c0105de3>] show_trace+0x12/0x14 [10138.180291] [<c0105dfb>] dump_stack+0x16/0x18 [10138.184769] [<c011609f>] native_smp_call_function_mask+0x138/0x13d [10138.191117] [<c0117606>] smp_call_function+0x1e/0x24 [10138.196210] [<c012f85c>] on_each_cpu+0x25/0x50 [10138.200807] [<c0115c74>] flush_tlb_all+0x1e/0x20 [10138.205553] [<c016caaf>] kmap_high+0x1b6/0x417 [10138.210118] [<c011ec88>] kmap+0x4d/0x4f [10138.214102] [<c026a9d8>] ntfs_end_buffer_async_read+0x228/0x2f9 [10138.220163] [<c01a0e9e>] end_bio_bh_io_sync+0x26/0x3f [10138.225352] [<c01a2b09>] bio_endio+0x42/0x6d [10138.229769] [<c02c2a08>] __end_that_request_first+0x115/0x4ac [10138.235682] [<c02c2da7>] end_that_request_chunk+0x8/0xa [10138.241052] [<c0365943>] ide_end_request+0x55/0x10a [10138.246058] [<c036dae3>] ide_dma_intr+0x6f/0xac [10138.250727] [<c0366d83>] ide_intr+0x93/0x1e0 [10138.255125] [<c015afb4>] handle_IRQ_event+0x5c/0xc9Looks like ntfs is kmap()ing from interrupt context. Should be using kmap_atomic instead, I think.
it's not atomic interrupt context but irq thread context - and -rt remaps kmap_atomic() to kmap() internally. the problem seems to be what Mike's patch works around: fiddling with irq flags in the ntfs code. That fiddling seems quite unnecessary at first sight. Ingo