All of lore.kernel.org
 help / color / mirror / Atom feed
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


  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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.