[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5082305A.2050108@cn.fujitsu.com>
Date: Sat, 20 Oct 2012 13:02:18 +0800
From: Wen Congyang <wency@...fujitsu.com>
To: KOSAKI Motohiro <kosaki.motohiro@...fujitsu.com>
CC: Yasuaki Ishimatsu <isimatu.yasuaki@...fujitsu.com>, x86@...nel.org,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
linux-acpi@...r.kernel.org, rientjes@...gle.com, liuj97@...il.com,
len.brown@...el.com, cl@...ux.com, minchan.kim@...il.com,
akpm@...ux-foundation.org
Subject: Re: [PATCH 1/4] acpi,memory-hotplug : add memory offline code to
acpi_memory_device_remove()
At 10/20/2012 02:19 AM, KOSAKI Motohiro Wrote:
>> Hmm, IIRC, if the memory is recognized from kerenl before driver initialization,
>> the memory device is not managed by the driver acpi_memhotplug.
>
> Yup.
>
>
>> I think we should also deal with REMOVAL_NORMAL here now. Otherwise it will cause
>> some critical problem: we unbind the device from the driver but we still use
>> it. If we eject it, we have no chance to offline and remove it. It is very dangerous.
>
> ??
> If resource was not allocated a driver, a driver doesn't need to
> deallocate it when
> error path. I haven't caught your point.
>
REMOVAL_NORMAL can be in 2 cases:
1. error path. If init call fails, we don't call it. We call this function
only when something fails after init.
2. unbind the device from the driver.
If we don't offline and remove memory when unbinding the device from the driver,
the device may be out of control. When we eject this driver, we don't offline and
remove it, but we will eject and poweroff the device. It is very dangerous because
the kernel uses the memory but we poweroff it.
acpi_bus_hot_remove_device()
acpi_bus_trim() // this function successes because the device has no driver
_PS3 // poweroff
_EJ0 // eject
Thanks
Wen Congyang
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists