public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: KAMEZAWA Hiroyuki <kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
To: keith <kmannth-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Cc: len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	naveen.b.s-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	acpi-devel
	<acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
	external hotplug mem list
	<lhms-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: Re: [Lhms-devel] [PATCH 1/1]  patch to fix acpi_memhotplug.c
Date: Wed, 16 Nov 2005 12:26:34 +0900	[thread overview]
Message-ID: <437AA6EA.905@jp.fujitsu.com> (raw)
In-Reply-To: <1132109343.3798.62.camel@knk>

keith wrote:
> Kame this patch will not apply to 2.6.14-mm1 or 2.6.15-rc1.  Is this
> patch ment to be used with other patches?
> 
Hmm, I created this on 2.6.14-mm1 .. but I'll re-check my tree. sorry.



>>  static int
>>  acpi_memory_get_device_resources(struct acpi_memory_device *mem_device)
>>  {
>>@@ -112,18 +130,14 @@ acpi_memory_get_device_resources(struct
>>
>>  static int
>>  acpi_memory_get_device(acpi_handle handle,
>>-		       struct acpi_memory_device **mem_device)
>>+		       struct acpi_device **device)
here. **device. *device is filled by this func.

>>-	/*
>>-	 * Now add the notified device.  This creates the acpi_device
>>-	 * and invokes .add function
>>-	 */
>>-	status = acpi_bus_add(&device, pdevice, handle, ACPI_BUS_TYPE_DEVICE);
>>+	status = acpi_bus_add(device, pdevice, handle, ACPI_BUS_TYPE_DEVICE);
> 
> 
> At this point the device is a null pointer?  Where is the device created
> you pass to acpi_bus_add?

*device is null at this point.

See:
acpi_bus_add()
     -> acpi_bus_scan()(ops.acpi_op_add = 1;)
	-> acpi_add_single_object()
	   (*)device = kmalloc(sizeof(struct acpi_device), GFP_KERNEL);
	    -> acpi_bus_find_driver()
		-> acpi_bus_driver_init()
		   here driver->ops.add = acpi_memory_device_add,
		    -> acpi_memory_device_add()
		       (*) mem_device = kmalloc(sizeof(struct acpi_memory_device), GFP_KERNEL);

All necessary kmalloc is done under acpi_bus_add().
And pointer to device is returned in the first argment(struct acpi_device **).
This is the same manner as acpi_processor/acpi_container.

> 
> 
>>  	if (ACPI_FAILURE(status)) {
>>  		ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Error in acpi_bus_add\n"));
>>  		return_VALUE(-EINVAL);
>>  	}
>>
>>-      end:
>>-	*mem_device = acpi_driver_data(device);
>>-	if (!(*mem_device)) {
>>-		printk(KERN_ERR "\n driver data not found");
>>-		return_VALUE(-ENODEV);
>>-	}
>>-
>>  	return_VALUE(0);
>>  }
> 
> 
> Where does acpi_memory_get_device return the device via the device
> pointer?  I don't see anywhere it is assigned....  
> 
1                 status = acpi_bus_get_device(handle, &device);
2                 if (ACPI_FAILURE(status) || !device) {
3                         if (present) {
4                                 status = acpi_memory_get_device(handle, &device);
5                                 if (ACPI_FAILURE(status) || !device) {
6                                         ACPI_DEBUG_PRINT((ACPI_DB_ERROR,
7                                           "Error in finding driver data\n"));
8                                         return_VOID;
9                                 }
10                        } else {
11                                ACPI_DEBUG_PRINT((ACPI_DB_ERROR,
12                                        "notified handle seems not present"));
13                                return_VOID;
14                        }
15                }

in line 4 above.


> I am not having _STA confusion.  acpi_memory_get_device just dosen't
> return a device.  I would still fall into "Error in finding driver"
> path. 
> 
Hmm, I'll look into more.
BTW, could you confirm following ?
(1) CONFIG_ACPI_HOTPLUG_MEMORY=y
(2) Does your memory device has type PNP0C80 ?


Thanks,
-- Kame



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click

  reply	other threads:[~2005-11-16  3:26 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-07 21:44 acpi_memhotplug driver is not working for me. Any ideas? keith
2005-11-11  2:45 ` keith
2005-11-12  5:03   ` [RFC][PATCH] patch to fix acpi_memhotplug.c for my hardware keith
2005-11-15  5:36     ` [PATCH 1/1] patch to fix acpi_memhotplug.c keith
2005-11-15  9:29       ` [Lhms-devel] " KAMEZAWA Hiroyuki
     [not found]         ` <4379AA86.5040901-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2005-11-15  9:33           ` KAMEZAWA Hiroyuki
2005-11-16  2:49           ` keith
2005-11-16  3:26             ` KAMEZAWA Hiroyuki [this message]
2005-11-15 10:20       ` Yasunori Goto
     [not found]         ` <20051115171221.7E99.Y-GOTO-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2005-11-17  4:18           ` keith
2005-11-17  6:08             ` KAMEZAWA Hiroyuki
     [not found]               ` <437C1E6C.6000404-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2005-11-18  2:22                 ` keith
2005-11-18  2:56                   ` KAMEZAWA Hiroyuki
     [not found]                     ` <437D42F1.6080407-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2005-11-18 18:54                       ` keith
2005-11-17  7:01             ` Yasunori Goto

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=437AA6EA.905@jp.fujitsu.com \
    --to=kamezawa.hiroyu-+cum20s59erqfuhtdcdx3a@public.gmane.org \
    --cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=kmannth-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org \
    --cc=len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=lhms-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=naveen.b.s-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    /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