* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) [not found] ` <4769FF37.5060308@gmail.com> @ 2007-12-20 13:38 ` Miles Lane [not found] ` <476A703B.50804@gmail.com> 1 sibling, 0 replies; 8+ messages in thread From: Miles Lane @ 2007-12-20 13:38 UTC (permalink / raw) To: Andrew Morton, LKML, Christoph Lameter, Pavel Machek, linux-pm On further investigation, "cat /proc/iomem" does not trigger the stack trace until after a suspend-to-disk/resume cycle has occurred. I am removing Ingo and Russell from the TO list (as they are apparently the wrong people) and adding the suspend folks, as suspend is implicated. My .config file can be found here: http://marc.info/?l=linux-kernel&m=119812903001296&w=2 Miles Lane wrote: > .config attached in order to not trip spam filters. > > Miles Lane wrote: >> [ 252.868386] BUG: unable to handle kernel NULL pointer dereference >> at virtual address 00000018 >> [ 252.868393] printing ip: c012d527 *pde = 00000000 >> [ 252.868399] Oops: 0000 [#1] SMP >> [ 252.868403] last sysfs file: >> /sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda3/stat >> >> [ 252.868407] Modules linked in: aes_i586 aes_generic i915 drm >> rfcomm l2cap bluetooth acpi_cpufreq cpufreq_stats >> cpufreq_conservative sbs sbshc dm_crypt sbp2 parport_pc lp parport >> arc4 ecb crypto_blkcipher cryptomgr crypto_algapi snd_hda_intel >> snd_pcm_oss snd_mixer_oss pcmcia snd_pcm iTCO_wdt iTCO_vendor_support >> snd_seq_dummy watchdog_core watchdog_dev snd_seq_oss snd_seq_midi >> tifm_7xx1 snd_rawmidi iwl3945 snd_seq_midi_event rng_core tifm_core >> mac80211 snd_seq snd_timer snd_seq_device cfg80211 sky2 battery >> yenta_socket rsrc_nonstatic pcmcia_core ac snd soundcore >> snd_page_alloc button shpchp pci_hotplug sr_mod cdrom pata_acpi piix >> ide_core firewire_ohci firewire_core crc_itu_t thermal processor fan >> [ 252.868469] >> [ 252.868472] Pid: 7088, comm: head Not tainted (2.6.24-rc5-mm1 #9) >> [ 252.868476] EIP: 0060:[<c012d527>] EFLAGS: 00010297 CPU: 0 >> [ 252.868481] EIP is at r_show+0x2a/0x70 >> [ 252.868483] EAX: 00000000 EBX: 00000001 ECX: c07e3224 EDX: c04bb034 >> [ 252.868486] ESI: 00000008 EDI: ed1f52c0 EBP: f5320f10 ESP: f5320f04 >> [ 252.868489] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 >> [ 252.868493] Process head (pid: 7088, ti=f5320000 task=f532e000 >> task.ti=f5320000) >> [ 252.868495] Stack: c03a6cac ed1f52c0 c07e3224 f5320f50 c0199a7e >> 00002000 bf930807 e1007800 >> [ 252.868504] ed1f52e0 00000000 00000000 000001d3 0000000e >> 00000000 0000000d 00000000 >> [ 252.868512] fffffffb f7d39370 c01998e4 f5320f74 c01af4f5 >> f5320f9c 00002000 bf930807 >> [ 252.868521] Call Trace: >> [ 252.868523] [<c0107d55>] show_trace_log_lvl+0x12/0x25 >> [ 252.868529] [<c0107df2>] show_stack_log_lvl+0x8a/0x95 >> [ 252.868534] [<c0107e89>] show_registers+0x8c/0x154 >> [ 252.868538] [<c010805f>] die+0x10e/0x1d2 >> [ 252.868542] [<c039c8c9>] do_page_fault+0x52b/0x600 >> [ 252.868547] [<c039af9a>] error_code+0x72/0x78 >> [ 252.868552] [<c0199a7e>] seq_read+0x19a/0x26c >> [ 252.868557] [<c01af4f5>] proc_reg_read+0x60/0x74 >> [ 252.868562] [<c018390d>] vfs_read+0xa2/0x11e >> [ 252.868567] [<c0183d02>] sys_read+0x3b/0x60 >> [ 252.868571] [<c0106bae>] sysenter_past_esp+0x6b/0xc1 >> [ 252.868575] ======================= >> [ 252.868577] Code: c3 55 89 d1 89 e5 57 89 c7 56 53 8b 50 64 83 7a >> 0c 00 77 0e 81 7a 08 ff ff 00 00 be 04 00 00 00 76 05 be 08 00 00 00 >> 89 c8 31 db <8b> 40 18 39 d0 74 06 43 83 fb 05 75 f3 8b 41 10 ba 2f >> 1b 45 c0 >> [ 252.868623] EIP: [<c012d527>] r_show+0x2a/0x70 SS:ESP 0068:f5320f04 ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <476A703B.50804@gmail.com>]
* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) [not found] ` <476A703B.50804@gmail.com> @ 2007-12-20 17:32 ` Andrew Morton [not found] ` <20071220093206.22f319b0.akpm@linux-foundation.org> 1 sibling, 0 replies; 8+ messages in thread From: Andrew Morton @ 2007-12-20 17:32 UTC (permalink / raw) To: Miles Lane; +Cc: Pavel Machek, linux-pm, LKML, Christoph Lameter On Thu, 20 Dec 2007 08:38:03 -0500 Miles Lane <miles.lane@gmail.com> wrote: > On further investigation, "cat /proc/iomem" does not trigger the stack > trace until after a suspend-to-disk/resume cycle has occurred. I still can't reproduce this. Could you please try this? - cat /proc/iomem - suspend/resume - do while read i do echo $i sleep 1 done < /proc/iomem then, with luck, we'll be able to work out which /proc/iomem record immediately precedes the corrupted one. ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <20071220093206.22f319b0.akpm@linux-foundation.org>]
* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) [not found] ` <20071220093206.22f319b0.akpm@linux-foundation.org> @ 2007-12-21 5:58 ` Miles Lane 2007-12-21 6:18 ` Miles Lane ` (2 more replies) 0 siblings, 3 replies; 8+ messages in thread From: Miles Lane @ 2007-12-21 5:58 UTC (permalink / raw) To: Andrew Morton; +Cc: Pavel Machek, linux-pm, LKML, Christoph Lameter [-- Attachment #1.1: Type: text/plain, Size: 1249 bytes --] On Dec 20, 2007 12:32 PM, Andrew Morton <akpm@linux-foundation.org> wrote: > On Thu, 20 Dec 2007 08:38:03 -0500 Miles Lane <miles.lane@gmail.com> > wrote: > > > On further investigation, "cat /proc/iomem" does not trigger the stack > > trace until after a suspend-to-disk/resume cycle has occurred. > > I still can't reproduce this. > > Could you please try this? > > - cat /proc/iomem > - suspend/resume > - do > > while read i > do > echo $i > sleep 1 > done < /proc/iomem > > then, with luck, we'll be able to work out which /proc/iomem record > immediately precedes the corrupted one. > miles@syntropy:~$ cat > test.sh while read i do echo $i sleep 1 done < /proc/iomem ^C miles@syntropy:~$ sh test.sh 00000000-0009f7ff : System RAM 0009f800-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000c7fff : Video ROM 000f0000-000fffff : System ROM 00100000-7f68ffff : System RAM 00100000-0039e4b7 : Kernel code 0039e4b8-004f0983 : Kernel data 00553000-007ecdfb : Kernel bss 7f690000-7f698fff : ACPI Tables 7f699000-7f6fffff : ACPI Non-volatile Storage 7f700000-7fffffff : reserved 88000000-8bffffff : PCI CardBus #05 8c000000-8fffffff : PCI CardBus #05 Segmentation fault How do I determine what comes next? Thanks, Miles [-- Attachment #1.2: Type: text/html, Size: 1751 bytes --] [-- Attachment #2: Type: text/plain, Size: 0 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) 2007-12-21 5:58 ` Miles Lane @ 2007-12-21 6:18 ` Miles Lane 2007-12-21 6:29 ` Andrew Morton [not found] ` <20071220222913.92a2c19f.akpm@linux-foundation.org> 2 siblings, 0 replies; 8+ messages in thread From: Miles Lane @ 2007-12-21 6:18 UTC (permalink / raw) To: Andrew Morton; +Cc: Pavel Machek, linux-pm, LKML, Christoph Lameter Resending... Curse GMail's HTML messages! On Dec 21, 2007 12:58 AM, Miles Lane <miles.lane@gmail.com> wrote: > > On Dec 20, 2007 12:32 PM, Andrew Morton <akpm@linux-foundation.org> wrote: > > > On Thu, 20 Dec 2007 08:38:03 -0500 Miles Lane <miles.lane@gmail.com> wrote: > > > > > On further investigation, "cat /proc/iomem" does not trigger the stack > > > trace until after a suspend-to-disk/resume cycle has occurred. > > > > I still can't reproduce this. > > > > Could you please try this? > > > > - cat /proc/iomem > > - suspend/resume > > - do > > > > while read i > > do > > echo $i > > sleep 1 > > done < /proc/iomem > > > > then, with luck, we'll be able to work out which /proc/iomem record > > immediately precedes the corrupted one. > > > > miles@syntropy:~$ cat > test.sh > > while read i > do > echo $i > sleep 1 > done < /proc/iomem > ^C > miles@syntropy:~$ sh test.sh > 00000000-0009f7ff : System RAM > 0009f800-0009ffff : reserved > 000a0000-000bffff : Video RAM area > 000c0000-000c7fff : Video ROM > 000f0000-000fffff : System ROM > 00100000-7f68ffff : System RAM > 00100000-0039e4b7 : Kernel code > 0039e4b8-004f0983 : Kernel data > 00553000-007ecdfb : Kernel bss > 7f690000-7f698fff : ACPI Tables > 7f699000-7f6fffff : ACPI Non-volatile Storage > 7f700000-7fffffff : reserved > 88000000-8bffffff : PCI CardBus #05 > 8c000000-8fffffff : PCI CardBus #05 > Segmentation fault > > How do I determine what comes next? > > Thanks, > Miles > ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) 2007-12-21 5:58 ` Miles Lane 2007-12-21 6:18 ` Miles Lane @ 2007-12-21 6:29 ` Andrew Morton [not found] ` <20071220222913.92a2c19f.akpm@linux-foundation.org> 2 siblings, 0 replies; 8+ messages in thread From: Andrew Morton @ 2007-12-21 6:29 UTC (permalink / raw) To: Miles Lane; +Cc: Pavel Machek, linux-pm, LKML, Christoph Lameter On Fri, 21 Dec 2007 00:58:19 -0500 "Miles Lane" <miles.lane@gmail.com> wrote: > On Dec 20, 2007 12:32 PM, Andrew Morton <akpm@linux-foundation.org> wrote: > > > On Thu, 20 Dec 2007 08:38:03 -0500 Miles Lane <miles.lane@gmail.com> > > wrote: > > > > > On further investigation, "cat /proc/iomem" does not trigger the stack > > > trace until after a suspend-to-disk/resume cycle has occurred. > > > > I still can't reproduce this. > > > > Could you please try this? > > > > - cat /proc/iomem > > - suspend/resume > > - do > > > > while read i > > do > > echo $i > > sleep 1 > > done < /proc/iomem > > > > then, with luck, we'll be able to work out which /proc/iomem record > > immediately precedes the corrupted one. > > > > miles@syntropy:~$ cat > test.sh > while read i > do > echo $i > sleep 1 > done < /proc/iomem > ^C > miles@syntropy:~$ sh test.sh > 00000000-0009f7ff : System RAM > 0009f800-0009ffff : reserved > 000a0000-000bffff : Video RAM area > 000c0000-000c7fff : Video ROM > 000f0000-000fffff : System ROM > 00100000-7f68ffff : System RAM > 00100000-0039e4b7 : Kernel code > 0039e4b8-004f0983 : Kernel data > 00553000-007ecdfb : Kernel bss > 7f690000-7f698fff : ACPI Tables > 7f699000-7f6fffff : ACPI Non-volatile Storage > 7f700000-7fffffff : reserved > 88000000-8bffffff : PCI CardBus #05 > 8c000000-8fffffff : PCI CardBus #05 > Segmentation fault > > How do I determine what comes next? > By comparing it with the /proc/iomem from prior to suspending the machine. ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <20071220222913.92a2c19f.akpm@linux-foundation.org>]
* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) [not found] ` <20071220222913.92a2c19f.akpm@linux-foundation.org> @ 2007-12-21 16:06 ` Miles Lane [not found] ` <a44ae5cd0712210806i7f020a71k8c552953f7aeef4d@mail.gmail.com> 1 sibling, 0 replies; 8+ messages in thread From: Miles Lane @ 2007-12-21 16:06 UTC (permalink / raw) To: Andrew Morton; +Cc: Pavel Machek, linux-pm, LKML, Christoph Lameter On Dec 21, 2007 1:29 AM, Andrew Morton <akpm@linux-foundation.org> wrote: > > On Fri, 21 Dec 2007 00:58:19 -0500 "Miles Lane" <miles.lane@gmail.com> wrote: > > > On Dec 20, 2007 12:32 PM, Andrew Morton <akpm@linux-foundation.org> wrote: > > > > > On Thu, 20 Dec 2007 08:38:03 -0500 Miles Lane <miles.lane@gmail.com> > > > wrote: > > > > > > > On further investigation, "cat /proc/iomem" does not trigger the stack > > > > trace until after a suspend-to-disk/resume cycle has occurred. > > > > > > I still can't reproduce this. > > > > > > Could you please try this? > > > > > > - cat /proc/iomem > > > - suspend/resume > > > - do > > > > > > while read i > > > do > > > echo $i > > > sleep 1 > > > done < /proc/iomem > > > > > > then, with luck, we'll be able to work out which /proc/iomem record > > > immediately precedes the corrupted one. > > > > > > > miles@syntropy:~$ cat > test.sh > > while read i > > do > > echo $i > > sleep 1 > > done < /proc/iomem > > ^C > > miles@syntropy:~$ sh test.sh > > 00000000-0009f7ff : System RAM > > 0009f800-0009ffff : reserved > > 000a0000-000bffff : Video RAM area > > 000c0000-000c7fff : Video ROM > > 000f0000-000fffff : System ROM > > 00100000-7f68ffff : System RAM > > 00100000-0039e4b7 : Kernel code > > 0039e4b8-004f0983 : Kernel data > > 00553000-007ecdfb : Kernel bss > > 7f690000-7f698fff : ACPI Tables > > 7f699000-7f6fffff : ACPI Non-volatile Storage > > 7f700000-7fffffff : reserved > > 88000000-8bffffff : PCI CardBus #05 > > 8c000000-8fffffff : PCI CardBus #05 > > Segmentation fault > > > > How do I determine what comes next? > > > > By comparing it with the /proc/iomem from prior to suspending the machine. > The offending information seems to be "90000000-90000fff : Intel Flush Page" root@syntropy:~# cat /proc/iomem 00000000-0009f7ff : System RAM 0009f800-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000c7fff : Video ROM 000f0000-000fffff : System ROM 00100000-7f68ffff : System RAM 00100000-0039e4b7 : Kernel code 0039e4b8-004f0983 : Kernel data 00553000-007ecdfb : Kernel bss 7f690000-7f698fff : ACPI Tables 7f699000-7f6fffff : ACPI Non-volatile Storage 7f700000-7fffffff : reserved 88000000-8bffffff : PCI CardBus #05 8c000000-8fffffff : PCI CardBus #05 90000000-90000fff : Intel Flush Page c0000000-cfffffff : 0000:00:02.0 d0000000-d1ffffff : PCI Bus #02 d2000000-d3ffffff : PCI Bus #03 d4000000-d5ffffff : PCI Bus #02 d4000000-d4003fff : 0000:02:00.0 d4000000-d4003fff : sky2 d6000000-d7ffffff : PCI Bus #03 d6000000-d6000fff : 0000:03:00.0 d6000000-d6000fff : iwl3945 d8000000-d80fffff : PCI Bus #04 d8000000-d8003fff : 0000:04:09.1 d8004000-d8004fff : 0000:04:09.2 d8004000-d8004fff : tifm_7xx1 d8005000-d80057ff : 0000:04:09.1 d8005000-d80057ff : ohci1394 d8006000-d8006fff : 0000:04:09.0 d8006000-d8006fff : yenta_socket d8100000-d817ffff : 0000:00:02.0 d8180000-d81fffff : 0000:00:02.1 d8200000-d823ffff : 0000:00:02.0 d8240000-d8243fff : 0000:00:1b.0 d8240000-d8243fff : ICH HD audio d8444000-d84443ff : 0000:00:1d.7 d8444000-d84443ff : ehci_hcd d8444400-d84447ff : 0000:00:1f.2 d8444400-d84447ff : ahci e0000000-efffffff : PCI MMCONFIG 0 e0000000-efffffff : reserved fec00000-fec0ffff : reserved fed00000-fed003ff : HPET 0 fed00000-fed003ff : reserved fed14000-fed19fff : reserved fed1c000-fed8ffff : reserved fee00000-fee00fff : reserved ff000000-ffffffff : reserved ~# lspci 00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03) 00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03) 00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02) 00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02) 00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02) 00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 02) 00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 02) 00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02) 00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA AHCI Controller (rev 02) 00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02) 02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8038 PCI-E Fast Ethernet Controller (rev 14) 03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02) 04:09.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller 04:09.1 FireWire (IEEE 1394): Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller 04:09.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) I hope this helps, Miles ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <a44ae5cd0712210806i7f020a71k8c552953f7aeef4d@mail.gmail.com>]
* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) [not found] ` <a44ae5cd0712210806i7f020a71k8c552953f7aeef4d@mail.gmail.com> @ 2007-12-21 20:00 ` Andrew Morton [not found] ` <20071221120000.b319b735.akpm@linux-foundation.org> 1 sibling, 0 replies; 8+ messages in thread From: Andrew Morton @ 2007-12-21 20:00 UTC (permalink / raw) To: Miles Lane; +Cc: Dave Airlie, Pavel Machek, linux-pm, LKML, Christoph Lameter On Fri, 21 Dec 2007 11:06:49 -0500 "Miles Lane" <miles.lane@gmail.com> wrote: > > > > > > How do I determine what comes next? > > > > > > > By comparing it with the /proc/iomem from prior to suspending the machine. > > > > The offending information seems to be "90000000-90000fff : Intel Flush Page" ah-hah. git-agpgart.patch > I hope this helps, It does, thanks. Dave, a `cat /proc/iomem' crashes after a suspend/resume cycle when it reaches the intel_private.ifp_resource record. intel_i915_configure() is called on each resume and it calls intel_i9xx_setup_flush() which zeroes out the already-registered `struct resource', causing core kernel to oops over a deref of parent/sibling/child. Probably this: --- a/drivers/char/agp/intel-agp.c~a +++ a/drivers/char/agp/intel-agp.c @@ -883,8 +883,6 @@ static void intel_i965_g33_setup_chipset static void intel_i9xx_setup_flush(void) { /* setup a resource for this object */ - memset(&intel_private.ifp_resource, 0, sizeof(intel_private.ifp_resource)); - intel_private.ifp_resource.name = "Intel Flush Page"; intel_private.ifp_resource.flags = IORESOURCE_MEM; _ will be enough to prevent the crash, but I suspect a bit more than that will be needed. ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <20071221120000.b319b735.akpm@linux-foundation.org>]
* Re: OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) [not found] ` <20071221120000.b319b735.akpm@linux-foundation.org> @ 2007-12-21 21:18 ` Miles Lane 0 siblings, 0 replies; 8+ messages in thread From: Miles Lane @ 2007-12-21 21:18 UTC (permalink / raw) To: Andrew Morton Cc: Dave Airlie, Pavel Machek, linux-pm, LKML, Christoph Lameter On Dec 21, 2007 3:00 PM, Andrew Morton <akpm@linux-foundation.org> wrote: > On Fri, 21 Dec 2007 11:06:49 -0500 "Miles Lane" <miles.lane@gmail.com> wrote: > > > > > > > > > How do I determine what comes next? > > > > > > > > > > By comparing it with the /proc/iomem from prior to suspending the machine. > > > > > > > The offending information seems to be "90000000-90000fff : Intel Flush Page" > > ah-hah. git-agpgart.patch > > > I hope this helps, > > It does, thanks. > > Dave, a `cat /proc/iomem' crashes after a suspend/resume cycle when it > reaches the intel_private.ifp_resource record. > > > intel_i915_configure() is called on each resume and it calls > intel_i9xx_setup_flush() which zeroes out the already-registered `struct > resource', causing core kernel to oops over a deref of > parent/sibling/child. > > Probably this: > > --- a/drivers/char/agp/intel-agp.c~a > +++ a/drivers/char/agp/intel-agp.c > @@ -883,8 +883,6 @@ static void intel_i965_g33_setup_chipset > static void intel_i9xx_setup_flush(void) > { > /* setup a resource for this object */ > - memset(&intel_private.ifp_resource, 0, sizeof(intel_private.ifp_resource)); > - > intel_private.ifp_resource.name = "Intel Flush Page"; > intel_private.ifp_resource.flags = IORESOURCE_MEM; > > _ > > > will be enough to prevent the crash, but I suspect a bit more than that > will be needed. > I tested with the patch applied, and the stackdump did not occur. However, I notice that the values listed for Intel Page Flush is changed from the pre-suspend values: Before the suspend: 90000000-90000fff : Intel Flush Page After the resume: 00000000-90001000 : Intel Flush Page # patch -p1 < akpm.patch patching file drivers/char/agp/intel-agp.c Hunk #1 succeeded at 891 (offset 8 lines). $ cat /proc/iomem 00000000-0009f7ff : System RAM 0009f800-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000c7fff : Video ROM 000f0000-000fffff : System ROM 00100000-7f68ffff : System RAM 00100000-0039e4a7 : Kernel code 0039e4a8-004f0983 : Kernel data 00553000-007ecdfb : Kernel bss 7f690000-7f698fff : ACPI Tables 7f699000-7f6fffff : ACPI Non-volatile Storage 7f700000-7fffffff : reserved 88000000-8bffffff : PCI CardBus #05 8c000000-8fffffff : PCI CardBus #05 00000000-90001000 : Intel Flush Page c0000000-cfffffff : 0000:00:02.0 d0000000-d1ffffff : PCI Bus #02 d2000000-d3ffffff : PCI Bus #03 d4000000-d5ffffff : PCI Bus #02 d4000000-d4003fff : 0000:02:00.0 d4000000-d4003fff : sky2 d6000000-d7ffffff : PCI Bus #03 d6000000-d6000fff : 0000:03:00.0 d6000000-d6000fff : iwl3945 d8000000-d80fffff : PCI Bus #04 d8000000-d8003fff : 0000:04:09.1 d8004000-d8004fff : 0000:04:09.2 d8004000-d8004fff : tifm_7xx1 d8005000-d80057ff : 0000:04:09.1 d8005000-d80057ff : ohci1394 d8006000-d8006fff : 0000:04:09.0 d8006000-d8006fff : yenta_socket d8100000-d817ffff : 0000:00:02.0 d8180000-d81fffff : 0000:00:02.1 d8200000-d823ffff : 0000:00:02.0 d8240000-d8243fff : 0000:00:1b.0 d8240000-d8243fff : ICH HD audio d8444000-d84443ff : 0000:00:1d.7 d8444000-d84443ff : ehci_hcd d8444400-d84447ff : 0000:00:1f.2 d8444400-d84447ff : ahci e0000000-efffffff : PCI MMCONFIG 0 e0000000-efffffff : reserved fec00000-fec0ffff : reserved fed00000-fed003ff : HPET 0 fed00000-fed003ff : reserved fed14000-fed19fff : reserved fed1c000-fed8ffff : reserved fee00000-fee00fff : reserved ff000000-ffffffff : reserved ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2007-12-21 21:18 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <a44ae5cd0712192040k7480682eoa29f33d70a91c618@mail.gmail.com>
[not found] ` <4769F409.6030300@gmail.com>
[not found] ` <4769FF37.5060308@gmail.com>
2007-12-20 13:38 ` OOPS: 2.6.24-rc5-mm1 -- EIP is at r_show+0x2a/0x70 -- (triggered by "cat /proc/iomem" AFTER suspend-to-disk/resume) Miles Lane
[not found] ` <476A703B.50804@gmail.com>
2007-12-20 17:32 ` Andrew Morton
[not found] ` <20071220093206.22f319b0.akpm@linux-foundation.org>
2007-12-21 5:58 ` Miles Lane
2007-12-21 6:18 ` Miles Lane
2007-12-21 6:29 ` Andrew Morton
[not found] ` <20071220222913.92a2c19f.akpm@linux-foundation.org>
2007-12-21 16:06 ` Miles Lane
[not found] ` <a44ae5cd0712210806i7f020a71k8c552953f7aeef4d@mail.gmail.com>
2007-12-21 20:00 ` Andrew Morton
[not found] ` <20071221120000.b319b735.akpm@linux-foundation.org>
2007-12-21 21:18 ` Miles Lane
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox