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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 24 May 2011 16:02:22 -0700
From:	Yinghai Lu <yinghai@...nel.org>
To:	Alex Williamson <alex.williamson@...hat.com>
CC:	David Woodhouse <dwmw2@...radead.org>,
	Vinod Koul <vinod.koul@...el.com>, linux-pci@...r.kernel.org,
	linux-kernel@...r.kernel.org,
	Jesse Barnes <jbarnes@...tuousgeek.org>,
	iommu@...ts.linux-foundation.org,
	Dan Williams <dan.j.williams@...el.com>,
	Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH] pci, dmar: Update dmar units devices list during hotplug

On 05/24/2011 03:38 PM, Alex Williamson wrote:
> On Tue, 2011-05-24 at 14:45 -0700, Yinghai Lu wrote:
>> No, it does not work.
> 
> I didn't say this wasn't without some effort, just thought it might give
> you a jump start.

ok, let me debug it tonight.

looks like that pdev is not freed, but already get removed from the device tree.

may need to pass pci_dev pointer directly.

> 
> Alex
> 
>> [  592.792864] BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
>> [  592.793279] IP: [<ffffffff8136271a>] dmar_match_scope+0x27/0xb6
>> [  592.804488] PGD 0 
>> [  592.804629] Oops: 0000 [#1] SMP 
>> [  592.804849] CPU 1 
>> [  592.804947] Modules linked in:
>> [  592.824426] 
>> [  592.824521] Pid: 14498, comm: kworker/u:7 Tainted: G        W   2.6.39-tip-yh-06738-g5d55a15-dirty #1043 Oracle Corporation  Sun Fire X4800 M2 /     
>> [  592.844637] RIP: 0010:[<ffffffff8136271a>]  [<ffffffff8136271a>] dmar_match_scope+0x27/0xb6
>> [  592.864410] RSP: 0018:ffff881ffce45a70  EFLAGS: 00010293
>> [  592.864673] RAX: 0000000000000000 RBX: 0000000000000008 RCX: 0000000000000000
>> [  592.884403] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88fffeef6000
>> [  592.904205] RBP: ffff881ffce45ab0 R08: 0000000000000000 R09: 0000000000000000
>> [  592.904535] R10: 0000000000000000 R11: ffff88dffedda320 R12: 0000000000000000
>> [  592.924419] R13: 0000000000000000 R14: ffff88fffeef6000 R15: 0000000000000000
>> [  592.924748] FS:  0000000000000000(0000) GS:ffff88207d800000(0000) knlGS:0000000000000000
>> [  592.944447] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>> [  592.964196] CR2: 0000000000000010 CR3: 00000000023cb000 CR4: 00000000000006e0
>> [  592.964541] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>> [  592.984308] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
>> [  593.004091] Process kworker/u:7 (pid: 14498, threadinfo ffff881ffce44000, task ffff881ffce3c560)
>> [  593.004492] Stack:
>> [  593.024051]  ffff881ffce45a80 ffffffff8134bf6a ffff881ffce45ab0 ffff88407d002640
>> [  593.024479]  0000000000000000 0000000000000000 0000000000000000 0000000000000000
>> [  593.044272]  ffff881ffce45ae0 ffffffff81363e4a ffff881ffce45b00 ffff88dffe1c1d00
>> [  593.064027] Call Trace:
>> [  593.064156]  [<ffffffff8134bf6a>] ? pci_get_device+0x16/0x18
>> [  593.064441]  [<ffffffff81363e4a>] device_to_iommu+0x4c/0x77
>> [  593.084054]  [<ffffffff81364163>] domain_remove_one_dev_info+0x39/0x1fc
>> [  593.084361]  [<ffffffff8136637f>] device_notifier+0x52/0x78
>> [  593.104093]  [<ffffffff81c24cc3>] notifier_call_chain+0x68/0x9f
>> [  593.123814]  [<ffffffff81193710>] ? sysfs_schedule_callback+0x1df/0x1df
>> [  593.124125]  [<ffffffff8109f209>] __blocking_notifier_call_chain+0x4c/0x61
>> [  593.143899]  [<ffffffff8109f232>] blocking_notifier_call_chain+0x14/0x16
>> [  593.144207]  [<ffffffff81414909>] __device_release_driver+0xcd/0xd2
>> [  593.163934]  [<ffffffff81414933>] device_release_driver+0x25/0x32
>> [  593.164222]  [<ffffffff814144bd>] bus_remove_device+0x8e/0x9f
>> [  593.183934]  [<ffffffff8141255e>] device_del+0x130/0x17f
>> [  593.184186]  [<ffffffff814125c3>] device_unregister+0x16/0x23
>> [  593.203888]  [<ffffffff813473e5>] pci_stop_bus_device+0x61/0x83
>> [  593.223661]  [<ffffffff8134c88a>] ? remove_callback+0x1f/0x3c
>> [  593.223932]  [<ffffffff813473b4>] pci_stop_bus_device+0x30/0x83
>> [  593.243652]  [<ffffffff81347470>] pci_remove_bus_device+0x1a/0xba
>> [  593.243955]  [<ffffffff8134c896>] remove_callback+0x2b/0x3c
>> [  593.263631]  [<ffffffff8119372c>] sysfs_schedule_callback_work+0x1c/0x5f
>> [  593.263962]  [<ffffffff8109433b>] process_one_work+0x231/0x3e6
>> [  593.283667]  [<ffffffff810942ac>] ? process_one_work+0x1a2/0x3e6
>> [  593.283958]  [<ffffffff81094829>] worker_thread+0x17c/0x240
>> [  593.303651]  [<ffffffff810add32>] ? trace_hardirqs_on+0xd/0xf
>> [  593.303927]  [<ffffffff810946ad>] ? manage_workers+0xab/0xab
>> [  593.323617]  [<ffffffff81099ea5>] kthread+0xa0/0xa8
>> [  593.323845]  [<ffffffff810adbcc>] ? trace_hardirqs_on_caller+0x1f/0x178
>> [  593.343620]  [<ffffffff81c29614>] kernel_thread_helper+0x4/0x10
>> [  593.343888]  [<ffffffff81c218c4>] ? _raw_spin_unlock_irq+0x30/0x36
>> [  593.363642]  [<ffffffff810add32>] ? trace_hardirqs_on+0xd/0xf
>> [  593.383357]  [<ffffffff81c21bc0>] ? retint_restore_args+0xe/0xe
>> [  593.383624]  [<ffffffff81099e05>] ? __init_kthread_worker+0x5b/0x5b
>> [  593.403441]  [<ffffffff81c29610>] ? gs_change+0xb/0xb
>> [  593.403667] Code: 41 5f c9 c3 55 48 89 e5 41 57 41 56 41 55 41 54 53 48 83 ec 18 66 66 66 66 90 45 31 ed 89 f3 49 89 d4 49 89 fe 44 0f b7 f9 eb 72 
>> [  593.424146]  8b 44 24 10 49 8b 16 48 8b 80 88 00 00 00 44 3b 38 75 57 48 
>> [  593.443684] RIP  [<ffffffff8136271a>] dmar_match_scope+0x27/0xb6
>> [  593.443968]  RSP <ffff881ffce45a70>
>> [  593.463319] CR2: 0000000000000010
>> [  593.463510] ---[ end trace 75ddbb3d94414ea9 ]---
>> [  593.465841] BUG: unable to handle kernel 
>>
> 
> 

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