lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 8 Jul 2011 12:38:38 +0800
From:	Qin Dehua <qindehua@...il.com>
To:	Russell King <rmk@....linux.org.uk>
Cc:	Dan Williams <dan.j.williams@...el.com>,
	linux-kernel@...r.kernel.org, santosh.shilimkar@...com,
	neilb@...e.de
Subject: Re: PROBLEM: ARM-dma-mapping-fix-for-speculative-prefetching cause OOPS

2011/7/7 Russell King <rmk@....linux.org.uk>:
> Could you try commenting out:
>
> +       if (dir != DMA_TO_DEVICE)
> +               outer_inv_range(paddr, paddr + size);
>
> in ___dma_page_dev_to_cpu and:
>
> +       if (dir != DMA_TO_DEVICE) {
> +               unsigned long paddr = __pa(kaddr);
> +               outer_inv_range(paddr, paddr + size);
> +       }
>
> in ___dma_single_dev_to_cpu please - and put a BUG_ON(dir == DMA_BIDIRECTIONAL)
> in their place (because that won't be handled correctly with that change.)

After doing the above changes, the kernel just report  BUG_ON(dir ==
DMA_BIDIRECTIONAL):

kernel BUG at arch/arm/mm/dma-mapping.c:526!
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = 80004000
[00000000] *pgd=00000000
Internal error: Oops: 805 [#1]
last sysfs file:
Modules linked in:
CPU: 0    Not tainted  (2.6.38.8+ #57)
PC is at __bug+0x1c/0x28
LR is at __bug+0x18/0x28
pc : [<8002b0d4>]    lr : [<8002b0d0>]    psr: 60000013
sp : 80419e90  ip : 00000007  fp : 00001000
r10: f18fb0ec  r9 : 00000005  r8 : 71932000
r7 : 81376640  r6 : 00001000  r5 : 00000000  r4 : 00000000
r3 : 00000000  r2 : 60000013  r1 : 0000219b  r0 : 00000033
Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: 0400397f  Table: 00004018  DAC: 00000035
Process swapper (pid: 0, stack limit = 0x80418278)
Stack: (0x80419e90 to 0x8041a000)
9e80:                                     80533ba1 8002d474 80419ec4 80419ea8
9ea0: 80033e40 00000003 00000004 f18fb0c0 f18fb0c0 8028948c 80419edc 80419ec8
9ec0: 80032ea4 f18fb0c0 8041eb10 00000000 00000000 00000100 f188a984 f188a980
9ee0: 00000000 802895d8 80532b80 f188a98c 00000000 00000004 718d2040 00000001
9f00: 80043dc0 00000000 8041eb10 80532a20 00000018 00000100 0000000a 80418000
9f20: 8041e994 8003e960 00000006 00000001 80532a5c 8003e444 f18a39c0 80420630
9f40: 00000001 00000001 804278a0 00000000 8041a000 000202c0 69056819 00020258
9f60: 00000000 8002704c ffffffff 80419fac 00000005 80027b7c 8039b020 000000ce
9f80: 00000000 60000013 80418000 80431eac 8041cabc 8041a000 000202c0 69056819
9fa0: 00020258 00000000 80423734 80419fc0 8002907c 80028eb4 60000013 ffffffff
9fc0: 8041a0e8 80431e78 80431e00 800089e8 80008344 00000000 00000000 80022dc0
9fe0: 00000000 0400397d 8041a024 800231c4 8041cab0 00008034 00000000 00000000
[<8002b0d4>] (__bug+0x1c/0x28) from [<8002d474>]
(___dma_page_dev_to_cpu+0x7c/0x84)
[<8002d474>] (___dma_page_dev_to_cpu+0x7c/0x84) from [<8028948c>]
(iop_adma_run_tx_complete_actions+0x204/0x288)
[<8028948c>] (iop_adma_run_tx_complete_actions+0x204/0x288) from
[<802895d8>] (__iop_adma_slot_cleanup+0xc8/0x34c)
[<802895d8>] (__iop_adma_slot_cleanup+0xc8/0x34c) from [<8003e960>]
(tasklet_action+0x70/0xec)
[<8003e960>] (tasklet_action+0x70/0xec) from [<8003e444>]
(__do_softirq+0x88/0x124)
[<8003e444>] (__do_softirq+0x88/0x124) from [<8002704c>] (asm_do_IRQ+0x4c/0x98)
[<8002704c>] (asm_do_IRQ+0x4c/0x98) from [<80027b7c>] (__irq_svc+0x3c/0x80)
Exception stack(0x80419f78 to 0x80419fc0)
9f60:                                                       8039b020 000000ce
9f80: 00000000 60000013 80418000 80431eac 8041cabc 8041a000 000202c0 69056819
9fa0: 00020258 00000000 80423734 80419fc0 8002907c 80028eb4 60000013 ffffffff
[<80027b7c>] (__irq_svc+0x3c/0x80) from [<80028eb4>] (cpu_idle+0x8c/0xa4)
[<80028eb4>] (cpu_idle+0x8c/0xa4) from [<800089e8>] (start_kernel+0x224/0x2f4)
[<800089e8>] (start_kernel+0x224/0x2f4) from [<00008034>] (0x8034)
Code: e1a01000 e59f000c eb003ca2 e3a03000 (e5833000)
---[ end trace 6b4795e8111d3a81 ]---
Kernel panic - not syncing: Fatal exception in interrupt
[<8002ced8>] (unwind_backtrace+0x0/0xf0) from [<8003930c>] (panic+0x5c/0x1a0)
[<8003930c>] (panic+0x5c/0x1a0) from [<8002b60c>] (die+0x188/0x1bc)
[<8002b60c>] (die+0x188/0x1bc) from [<8002df68>] (__do_kernel_fault+0x68/0x88)
[<8002df68>] (__do_kernel_fault+0x68/0x88) from [<8002e0d0>]
(do_page_fault+0x148/0x214)
[<8002e0d0>] (do_page_fault+0x148/0x214) from [<800272e0>]
(do_DataAbort+0x38/0x9c)
[<800272e0>] (do_DataAbort+0x38/0x9c) from [<80027b2c>] (__dabt_svc+0x4c/0x60)
Exception stack(0x80419e48 to 0x80419e90)
9e40:                   00000033 0000219b 60000013 00000000 00000000 00000000
9e60: 00001000 81376640 71932000 00000005 f18fb0ec 00001000 00000007 80419e90
9e80: 8002b0d0 8002b0d4 60000013 ffffffff
[<80027b2c>] (__dabt_svc+0x4c/0x60) from [<8002b0d4>] (__bug+0x1c/0x28)
[<8002b0d4>] (__bug+0x1c/0x28) from [<8002d474>]
(___dma_page_dev_to_cpu+0x7c/0x84)
[<8002d474>] (___dma_page_dev_to_cpu+0x7c/0x84) from [<8028948c>]
(iop_adma_run_tx_complete_actions+0x204/0x288)
[<8028948c>] (iop_adma_run_tx_complete_actions+0x204/0x288) from
[<802895d8>] (__iop_adma_slot_cleanup+0xc8/0x34c)
[<802895d8>] (__iop_adma_slot_cleanup+0xc8/0x34c) from [<8003e960>]
(tasklet_action+0x70/0xec)
[<8003e960>] (tasklet_action+0x70/0xec) from [<8003e444>]
(__do_softirq+0x88/0x124)
[<8003e444>] (__do_softirq+0x88/0x124) from [<8002704c>] (asm_do_IRQ+0x4c/0x98)
[<8002704c>] (asm_do_IRQ+0x4c/0x98) from [<80027b7c>] (__irq_svc+0x3c/0x80)
Exception stack(0x80419f78 to 0x80419fc0)
9f60:                                                       8039b020 000000ce
9f80: 00000000 60000013 80418000 80431eac 8041cabc 8041a000 000202c0 69056819
9fa0: 00020258 00000000 80423734 80419fc0 8002907c 80028eb4 60000013 ffffffff
[<80027b7c>] (__irq_svc+0x3c/0x80) from [<80028eb4>] (cpu_idle+0x8c/0xa4)
[<80028eb4>] (cpu_idle+0x8c/0xa4) from [<800089e8>] (start_kernel+0x224/0x2f4)
[<800089e8>] (start_kernel+0x224/0x2f4) from [<00008034>] (0x8034)

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ