On Wed, 25 Jul 2007 18:03:14 -0400 [EMAIL PROTECTED] wrote: > On Wed, 25 Jul 2007 04:03:04 PDT, Andrew Morton said: > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/ > > It built and booted on the first try for my Dell Latitude D820 laptop, Core2 > T7200 x86_64 kernel. Now at about 5 hours of uptime. I guess I got lucky and > my > stock .config doesn't trip over any of the issues others are hitting. I did > hit *one* problem: > > Under 2.6.22-rc6-mm1, 'modprobe tpm_tis' did this: > > [ 10.028000] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2) > [ 10.088000] tpm_tis 00:0f: Unable to request irq: 8 for probe > > and the modprobe returned immediately. Under 23-rc1-mm1, the modprobe > takes a *long* time: > > [ 23.787331] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2) > [ 23.787353] tpm0 (IRQ 3) handled a spurious interrupt > [ 143.803891] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62 > [ 143.803920] tpm0 (IRQ 3) handled a spurious interrupt > [ 263.736163] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62 > [ 383.668381] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62 > [ 385.667261] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62 > > then it finally returns. I snuck in a few 'echo t > /proc/sysrq_trigger', > and it's always waiting here: > > [ 193.154317] modprobe S 0000001eeae8252d 5488 1446 1 > [ 193.154321] ffff8100043d7a98 0000000000000082 0000000000000000 > ffffffff80795480 > [ 193.154325] ffff8100043d7a48 ffff810003538000 ffffffff806813e0 > ffff810003538290 > [ 193.154329] 0000000004173800 0000000000000202 00000000000000ff > ffffffff8023ba74 > [ 193.154332] Call Trace: > [ 193.154336] [<ffffffff8023ba74>] __mod_timer+0xc4/0xd6 > [ 193.154340] [<ffffffff805273cc>] schedule_timeout+0x8d/0xb4 > [ 193.154344] [<ffffffff8023b7be>] process_timeout+0x0/0xb > [ 193.154347] [<ffffffff805273c7>] schedule_timeout+0x88/0xb4 > [ 193.154353] [<ffffffff880b328a>] :tpm_tis:wait_for_stat+0xb0/0x11a > [ 193.154356] [<ffffffff802460ef>] autoremove_wake_function+0x0/0x38 > [ 193.154360] [<ffffffff880b31b0>] :tpm_tis:get_burstcount+0x63/0x8d > [ 193.154365] [<ffffffff880b367e>] :tpm_tis:tpm_tis_send+0x191/0x1d3 > [ 193.154370] [<ffffffff803ba945>] tpm_transmit+0x98/0x1f1 > [ 193.154374] [<ffffffff803baaf2>] transmit_cmd+0x14/0x2e > [ 193.154377] [<ffffffff803badd8>] tpm_get_timeouts+0xe9/0x13c > [ 193.154382] [<ffffffff880b3ac5>] :tpm_tis:tpm_tis_init+0x405/0x44c > [ 193.154387] [<ffffffff880b3b3a>] :tpm_tis:tpm_tis_pnp_init+0x2e/0x30 > [ 193.154391] [<ffffffff8039d8fc>] pnp_device_probe+0x7b/0xa3 > [ 193.154394] [<ffffffff803c691e>] driver_probe_device+0xfa/0x17e > [ 193.154397] [<ffffffff803c6a4d>] __driver_attach+0x0/0x94 > [ 193.154400] [<ffffffff803c6aa8>] __driver_attach+0x5b/0x94 > [ 193.154403] [<ffffffff803c5cd8>] bus_for_each_dev+0x49/0x7a > [ 193.154408] [<ffffffff803c6736>] driver_attach+0x1c/0x1e > [ 193.154410] [<ffffffff803c6046>] bus_add_driver+0x86/0x1a9 > [ 193.154414] [<ffffffff803c6cb3>] driver_register+0x72/0x76 > [ 193.154417] [<ffffffff8039d692>] pnp_register_driver+0x1c/0x1e > [ 193.154421] [<ffffffff880b8081>] :tpm_tis:init_tis+0x81/0x89 > [ 193.154425] [<ffffffff80251d94>] sys_init_module+0x14db/0x1657 > [ 193.154433] [<ffffffff8020bece>] system_call+0x7e/0x83 > > Here's my /proc/interrupts: > > CPU0 CPU1 > 0: 15121156 0 IO-APIC-edge timer > 1: 3022 0 IO-APIC-edge i8042 > 3: 0 0 IO-APIC-edge tpm0 > 8: 0 0 IO-APIC-edge rtc > 9: 2 0 IO-APIC-fasteoi acpi > 12: 85 0 IO-APIC-edge i8042 > 14: 46529 0 IO-APIC-edge libata > 15: 94 0 IO-APIC-edge libata > 16: 1301032 0 IO-APIC-fasteoi nvidia > 17: 148 0 IO-APIC-fasteoi iwl3945 > 19: 10 0 IO-APIC-fasteoi ohci1394, yenta > 20: 9548 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb2 > 21: 10544 0 IO-APIC-fasteoi uhci_hcd:usb3, HDA Intel > 22: 0 0 IO-APIC-fasteoi uhci_hcd:usb4 > 23: 0 0 IO-APIC-fasteoi uhci_hcd:usb5 > 506: 111 68979 PCI-MSI-edge eth0 > NMI: 0 0 > LOC: 15121050 15120952 > ERR: 0 > > (tpm0 on 3 is new with 23-rc1-mm1. I have *no* idea why 22-rc6-mm1 tried to > put it on irq 8. Yes, kernel is currently tainted with nvidia module, but > at the time of the traceback listed above, I had not yet even gotten the > module > built, so the kernel was untainted at that point). >
I can't imagine what we did to break tpm_tis, sorry. Nothing has changed in there for ages. Perhaps something broke at the bus level. It would be useful to add --- a/drivers/char/tpm/tpm_tis.c~a +++ a/drivers/char/tpm/tpm_tis.c @@ -595,9 +595,11 @@ static int __devinit tpm_tis_pnp_init(st const struct pnp_device_id *pnp_id) { resource_size_t start, len; + start = pnp_mem_start(pnp_dev, 0); len = pnp_mem_len(pnp_dev, 0); - + printk("%s: start=%llu, len=%llu\n", + (unsigned long long)start, (unsigned long long)end); return tpm_tis_init(&pnp_dev->dev, start, len); } _ to both a good and a bad kernel, see what it says. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/