From: Rene Herman <rene.herman@keyaccess.nl>
To: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Len Brown <lenb@kernel.org>,
linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org,
Adam Belay <ambx1@neo.rr.com>, Li Shaohua <shaohua.li@intel.com>,
Matthieu Castet <castet.matthieu@free.fr>,
Thomas Renninger <trenn@suse.de>,
Jaroslav Kysela <perex@perex.cz>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [patch 22/53] PNP: factor pnp_init_resource_table() and pnp_clean_resource_table()
Date: Sat, 19 Apr 2008 06:43:50 +0200 [thread overview]
Message-ID: <48097886.9000907@keyaccess.nl> (raw)
In-Reply-To: <200804182157.34313.bjorn.helgaas@hp.com>
On 19-04-08 05:57, Bjorn Helgaas wrote:
> Yep, you're right. I fixed it, but it requires changes to a couple
> other patches down the line, so I'll wait to repost the series until
> next week in case you find more problems.
>
> I think this is only a problem for bisection. By the time you
> apply the whole series, we start with an empty resource list, and
> every time we add one, we set the type in pnp_new_resource().
>
> That makes me wonder whether pnp_init_resources() should just
> free the whole list, so we just start again with an empty list.
Probably. Just a quick heads up; if you don't beat me to it I'll look at it
in more detail over the weekend but with the current series ISAPnP is quite
decidedly broken. Forget the OOPS for now which seems just a symptom of the
same thing as the "too many" warnings". Result of "modprobe snd-cs4236".
I believe it's pnp_assign_resources() which has all the pnp_assign_foo()
helpers fail due to there not being any yet. I guess pnp_assign_mem() and
friends should allocate upon not finding one available and not fail?
Don't get why isapnp_get_resources() didn't allocate though. As said, unless
you beat me to it I'll look into it more tomorrow or sunday.
===
pnp: the driver 'cs4236_isapnp' has been registered
cs4236_isapnp 01:01.00: driver attached
cs4236_isapnp 01:01.02: driver attached
cs4236_isapnp 01:01.03: driver attached
cs4236_isapnp 01:01.00: too many I/O port resources
cs4236_isapnp 01:01.00: too many I/O port resources
cs4236_isapnp 01:01.00: too many I/O port resources
cs4236_isapnp 01:01.00: too many IRQ resources
cs4236_isapnp 01:01.00: too many DMA resources
cs4236_isapnp 01:01.00: too many DMA resources
cs4236_isapnp 01:01.00: activated
BUG: unable to handle kernel NULL pointer dereference at 00000000
IP: [<f0c604da>] :snd_cs4236:snd_cs423x_pnpc_detect+0x104/0x390
*pde = 00000000
Oops: 0000 [#1] PREEMPT
Modules linked in: snd_cs4236(+) snd_opl3_lib snd_hwdep snd_cs4236_lib
snd_mpu401_uart snd_rawmidi snd_seq_device snd_cs4231_lib snd_pcm snd_timer
snd soundcore snd_page_alloc nfsd lockd nfs_acl sunrpc exportfs
Pid: 1198, comm: modprobe Not tainted (2.6.25 #2)
EIP: 0060:[<f0c604da>] EFLAGS: 00010202 CPU: 0
EIP is at snd_cs423x_pnpc_detect+0x104/0x390 [snd_cs4236]
EAX: 00000000 EBX: ef868c00 ECX: ef868d6c EDX: 00000000
ESI: 00000000 EDI: f0c63004 EBP: ef84d600 ESP: eed4ce88
DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
Process modprobe (pid: 1198, ti=eed4c000 task=eecf0aa0 task.ti=eed4c000)
Stack: ef312d40 ef84d7b8 ef843200 ef312d40 f0c63004 00000003 c10d981b f0c62720
ef868a00 f0c62720 ef84391c f0cab090 f0c633c0 c10d9df7 00000001 0000002b
f0c4802f f0c633c0 c102eb21 00018f20 c1050987 000226c4 00000000 00000690
Call Trace:
[<c10d981b>] card_probe+0xba/0x107
[<c10d9df7>] pnp_register_card_driver+0xa2/0xb2
[<f0c4802f>] alsa_card_cs423x_init+0x2f/0x4f [snd_cs4236]
[<c102eb21>] sys_init_module+0x149a/0x1604
[<c1050987>] do_sync_read+0xbe/0xfd
[<c1017be8>] __request_region+0x0/0x85
[<c10513bd>] sys_read+0x3c/0x63
[<c1003a62>] syscall_call+0x7/0xb
=======================
Code: 89 d8 e8 93 ad 47 d0 85 c0 79 0a 68 5a 0a c6 f0 e9 30 01 00 00 31 c9
ba 00 01 00 00 89 d8 e8 fc 9d 47 d0 83 3c b5 40 26 c6 f0 00 <8b> 00 89 04 b5
a0 26 c6 f0 7e 1a b9 01 00 00 00 ba 00 01 00 00
EIP: [<f0c604da>] snd_cs423x_pnpc_detect+0x104/0x390 [snd_cs4236] SS:ESP
0068:eed4ce88
---[ end trace 6704e77dc1a89be6 ]---
===
Rene
next prev parent reply other threads:[~2008-04-19 4:41 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-18 20:49 [patch 00/53] PNP cleanup and convert to dynamic resources, v3 Bjorn Helgaas
2008-04-18 20:49 ` [patch 01/53] ISAPNP: move config register addresses out of isapnp.h Bjorn Helgaas
2008-04-18 20:49 ` [patch 02/53] PNPACPI: continue after _CRS and _PRS errors Bjorn Helgaas
2008-04-18 20:49 ` [patch 03/53] PNP: make pnp_add_id() internal to PNP core Bjorn Helgaas
2008-04-18 20:49 ` [patch 04/53] PNP: change pnp_add_id() to allocate its own pnp_id structures Bjorn Helgaas
2008-04-18 20:50 ` [patch 05/53] PNP: add pnp_eisa_id_to_string() Bjorn Helgaas
2008-04-18 20:50 ` [patch 06/53] PNP: add pnp_alloc_dev() Bjorn Helgaas
2008-04-18 20:50 ` [patch 07/53] PNP: make pnp_add_card_id() internal to PNP core Bjorn Helgaas
2008-04-18 20:50 ` [patch 08/53] PNP: change pnp_add_card_id() to allocate its own pnp_id structures Bjorn Helgaas
2008-04-18 20:50 ` [patch 09/53] ISAPNP: pull pnp_add_card_id() out of isapnp_parse_card_id() Bjorn Helgaas
2008-04-18 20:50 ` [patch 10/53] PNP: add pnp_alloc_card() Bjorn Helgaas
2008-04-18 20:50 ` [patch 11/53] PNPACPI: pnpacpi_encode_ext_irq() wrongly set "irq" instead of "extended_irq" Bjorn Helgaas
2008-04-18 20:50 ` [patch 12/53] PNPACPI: use temporaries to reduce repetition Bjorn Helgaas
2008-04-18 20:50 ` [patch 13/53] PNPACPI: hoist dma_flags() out of pnpacpi_parse_allocated_dmaresource() Bjorn Helgaas
2008-04-18 20:50 ` [patch 14/53] PNPACPI: extend irq_flags() to set IORESOURCE_IRQ_SHAREABLE when appropriate Bjorn Helgaas
2008-04-18 20:50 ` [patch 15/53] PNPACPI: pass pnp_dev instead of acpi_handle Bjorn Helgaas
2008-04-18 20:50 ` [patch 16/53] PNP: remove pnp_resource_table from internal get/set interfaces Bjorn Helgaas
2008-04-18 20:50 ` [patch 17/53] PNP: remove more pnp_resource_table arguments Bjorn Helgaas
2008-04-18 20:50 ` [patch 18/53] PNP: add pnp_init_resources(struct pnp_dev *) interface Bjorn Helgaas
2008-04-18 20:50 ` [patch 19/53] PNP: remove pnp_resource_table from internal pnp_clean_resource_table interface Bjorn Helgaas
2008-04-18 20:50 ` [patch 20/53] PNP: remove unused interfaces using pnp_resource_table Bjorn Helgaas
2008-04-18 20:50 ` [patch 21/53] PNP: use dev_printk when possible Bjorn Helgaas
2008-04-18 20:50 ` [patch 22/53] PNP: factor pnp_init_resource_table() and pnp_clean_resource_table() Bjorn Helgaas
2008-04-18 22:29 ` Rene Herman
2008-04-19 3:57 ` Bjorn Helgaas
2008-04-19 4:43 ` Rene Herman [this message]
2008-04-19 4:46 ` Rene Herman
2008-04-21 18:41 ` Rene Herman
2008-04-21 23:10 ` Bjorn Helgaas
2008-04-22 21:01 ` Rene Herman
2008-04-23 23:08 ` Bjorn Helgaas
2008-04-24 1:26 ` Rene Herman
2008-04-24 1:39 ` Rene Herman
2008-04-24 22:45 ` Bjorn Helgaas
2008-04-18 20:50 ` [patch 23/53] PNP: add pnp_get_resource() interface Bjorn Helgaas
2008-04-18 20:50 ` [patch 24/53] PNP: remove pnp_mem_flags() as an lvalue Bjorn Helgaas
2008-04-18 20:50 ` [patch 25/53] PNP: convert resource accessors to use pnp_get_resource(), not pnp_resource_table Bjorn Helgaas
2008-04-18 20:50 ` [patch 26/53] PNP: use conventional "i" for loop indices Bjorn Helgaas
2008-04-18 20:50 ` [patch 27/53] PNP: convert resource checks to use pnp_get_resource(), not pnp_resource_table Bjorn Helgaas
2008-04-18 20:50 ` [patch 28/53] PNP: convert resource assign functions " Bjorn Helgaas
2008-04-18 20:50 ` [patch 29/53] PNP: convert sysfs interface " Bjorn Helgaas
2008-04-18 20:50 ` [patch 30/53] PNP: convert resource initializers " Bjorn Helgaas
2008-04-18 20:50 ` [patch 31/53] PNP: convert encoders " Bjorn Helgaas
2008-04-18 20:50 ` [patch 32/53] PNP: remove PNP_MAX_* uses Bjorn Helgaas
2008-04-18 20:50 ` [patch 33/53] rtc: dont reference pnp_resource_table directly Bjorn Helgaas
2008-04-18 20:50 ` [patch 34/53] PNP: make pnp_resource_table private to PNP core Bjorn Helgaas
2008-04-18 20:50 ` [patch 35/53] PNP: remove pnp_resource_table references from resource decoders Bjorn Helgaas
2008-04-18 20:50 ` [patch 36/53] PNP: add struct pnp_resource Bjorn Helgaas
2008-04-18 20:50 ` [patch 37/53] PNP: add pnp_resource index for ISAPNP Bjorn Helgaas
2008-04-18 20:50 ` [patch 38/53] PNP: add pnp_new_resource() to find a new unset pnp_resource Bjorn Helgaas
2008-04-18 20:50 ` [patch 39/53] PNP: make generic pnp_add_irq_resource() Bjorn Helgaas
2008-04-18 20:50 ` [patch 40/53] PNP: make generic pnp_add_dma_resource() Bjorn Helgaas
2008-04-18 20:50 ` [patch 41/53] PNP: make generic pnp_add_io_resource() Bjorn Helgaas
2008-04-18 20:50 ` [patch 42/53] PNP: make generic pnp_add_mem_resource() Bjorn Helgaas
2008-04-18 20:50 ` [patch 43/53] ISAPNP: fold isapnp_read_resources() back into isapnp_get_resources() Bjorn Helgaas
2008-04-18 20:50 ` [patch 44/53] PNP: add pnp_resource_type() internal interface Bjorn Helgaas
2008-04-18 20:50 ` [patch 45/53] PNP: replace pnp_resource_table with dynamically allocated resources Bjorn Helgaas
2008-04-18 20:50 ` [patch 46/53] PNP: remove ratelimit on add resource failures Bjorn Helgaas
2008-04-18 20:50 ` [patch 47/53] PNPACPI: move _CRS/_PRS warnings closer to the action Bjorn Helgaas
2008-04-18 20:50 ` [patch 48/53] PNPACPI: remove some pnp_dbg calls Bjorn Helgaas
2008-04-18 20:50 ` [patch 49/53] PNP: make interfaces private to the PNP core Bjorn Helgaas
2008-04-18 20:50 ` [patch 50/53] ISAPNP: remove unused pnp_dev->regs field Bjorn Helgaas
2008-04-18 20:50 ` [patch 51/53] PNPBIOS: remove include/linux/pnpbios.h Bjorn Helgaas
2008-04-18 20:50 ` [patch 52/53] PNP: fill in generic pnp_dev fields earlier Bjorn Helgaas
2008-04-18 20:50 ` [patch 53/53] PNP: dont sort by type in /sys/.../resources Bjorn Helgaas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48097886.9000907@keyaccess.nl \
--to=rene.herman@keyaccess.nl \
--cc=akpm@linux-foundation.org \
--cc=ambx1@neo.rr.com \
--cc=bjorn.helgaas@hp.com \
--cc=castet.matthieu@free.fr \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=perex@perex.cz \
--cc=shaohua.li@intel.com \
--cc=trenn@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox