From: keith mannthey <kmannth@us.ibm.com>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Prarit Bhargava--redhat <prarit@redhat.com>,
linux acpi <linux-acpi@vger.kernel.org>,
robert.moore@intel.com, konrad <darnok@us.ibm.com>,
lhms-devel <lhms-devel@lists.sourceforge.net>
Subject: Re: [Lhms-devel] [RFC] Patch [1/2] for acpi_memhotplug.c
Date: Wed, 21 Jun 2006 18:37:00 -0700 [thread overview]
Message-ID: <1150940220.10001.11.camel@keithlap> (raw)
In-Reply-To: <20060622091336.be46e7a6.kamezawa.hiroyu@jp.fujitsu.com>
On Thu, 2006-06-22 at 09:13 +0900, KAMEZAWA Hiroyuki wrote:
> On Wed, 21 Jun 2006 16:23:47 -0700
> keith mannthey <kmannth@us.ibm.com> wrote:
> > Update. I have moved to 2.6.17-rc6-mm2 to work with the development
> > acpi_memhotplug driver there. I have added various debug statements and
> > this is what I know.
> >
> Thanks, looks informative.
>
> > acpi_memory_get_device calls acpi_bus_add
> > acpi_bus_add calls acpi_add_single_object (fails)
> > acpi_add_single_object passes acpi_bus_get_flags
> > finds the device present
> > passes acpi_device_set_context
> > calls acpi_device_register
> > after calling acpi_bus_find_driver
> > ends up
> > if (!result) *child = device;
> > and returns.
> >
>
> Then, "acpi_device" itself is added, but no driver data.
> acpi_add_single_object doesn't check return value of acpi_bus_find_driver(),
> as you know. So...
> ===
> static int acpi_bus_find_driver(struct acpi_device *device)
> {
> <snip>
> list_for_each_safe(node, next, &acpi_bus_drivers) {
> <snip>
> if (!acpi_bus_match(device, driver)) {
> (*)----------- result = acpi_bus_driver_init(device, driver);
> if (!result)
> goto Done;
> }
> ....
> }
> ===
> Next check point is:
> - acpi_bus_driver_init() is called or not
> - what acpi_bus_driver_init() returns
result = acpi_bus_driver_init(device, driver);
if (!result)
goto Done;
I goto Done.
> in acpi_bus_driver_init()
> - driver->ops.add() is called or not
> - what it retruns
It is called. But that is not the whole story.
In acpi_bus_driver_init it calls driver->ops.add(device). This ops.add
is not acpi_memory_device_add. I do get not any printks that I would
expect from acpi_memory_device_add.
If I print out in acpi_bus_driver_init
printk(" device_add() about %s\n",acpi_device_name(device));
result = driver->ops.add(device);
The device name is null. I don't think the device / driver combo that
has been passed in are the right ones.
> int acpi_memory_device_add()
> - it is called or not
> - why this fails.
This is not called.
After acpi_bus_driver_init calls the unknown .add it returns successfully.
it sets
device->driver = driver;
and
return 0;
Maybe I am picking the wrong driver from list_for_each_safe(node, next, &acpi_bus_drivers)
in acpi_bus_find_driver?
Thanks for your help.
--
keith mannthey <kmannth@us.ibm.com>
Linux Technology Center IBM
next prev parent reply other threads:[~2006-06-22 1:37 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-18 20:51 Re: [Lhms-devel] [PATCH 1/1] patch to fix acpi_memhotplug.c Moore, Robert
[not found] ` <971FCB6690CD0E4898387DBF7552B90E0378BEE7-sBd4vmA9Se5Qxe9IK+vIArfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2005-11-19 10:44 ` Erik Slagter
2005-11-19 12:15 ` Kamezawa Hiroyuki
[not found] ` <1150853300.5873.49.camel@keithlap>
2006-06-21 2:10 ` [Lhms-devel] [RFC] Patch [1/1] for acpi_memhotplug.c keith mannthey
[not found] ` <20060621114334.1b954854.kamezawa.hiroyu@jp.fujitsu.com>
[not found] ` <1150863525.7865.6.camel@keithlap>
[not found] ` <20060621194832.37124aae.kamezawa.hiroyu@jp.fujitsu.com>
2006-06-21 18:43 ` [Lhms-devel] [RFC] Patch [1/2] " keith mannthey
2006-06-21 23:23 ` keith mannthey
2006-06-22 0:13 ` KAMEZAWA Hiroyuki
2006-06-22 1:37 ` keith mannthey [this message]
2006-06-22 1:58 ` KAMEZAWA Hiroyuki
2006-06-22 2:19 ` keith mannthey
2006-06-22 3:13 ` KAMEZAWA Hiroyuki
2006-06-22 3:55 ` keith mannthey
2006-06-22 5:20 ` KAMEZAWA Hiroyuki
2006-06-22 6:11 ` KAMEZAWA Hiroyuki
2006-06-22 7:01 ` KAMEZAWA Hiroyuki
2006-06-22 17:25 ` keith mannthey
2006-06-22 17:41 ` KAMEZAWA Hiroyuki
2006-06-22 18:29 ` keith mannthey
2006-06-22 19:07 ` keith mannthey
2006-06-22 2:28 ` keith mannthey
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=1150940220.10001.11.camel@keithlap \
--to=kmannth@us.ibm.com \
--cc=darnok@us.ibm.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=lhms-devel@lists.sourceforge.net \
--cc=linux-acpi@vger.kernel.org \
--cc=prarit@redhat.com \
--cc=robert.moore@intel.com \
/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