[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <53C29F84.6010108@gmail.com>
Date: Sun, 13 Jul 2014 23:02:28 +0800
From: Chen Gang <gang.chen.5i5j@...il.com>
To: Lars-Peter Clausen <lars@...afoo.de>
CC: Richard Weinberger <richard@....at>,
Lennox Wu <lennox.wu@...il.com>, Marek Vasut <marex@...x.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
dmitry.torokhov@...il.com, thierry.reding@...il.com,
jic23@...nel.org, wim@...ana.be,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
kys@...rosoft.com, Martin Schwidefsky <schwidefsky@...ibm.com>,
teg@...m.no, Mischa.Jonker@...opsys.com, msalter@...hat.com,
knaack.h@....de, rdunlap@...radead.org,
linux-input@...r.kernel.org, linux-pwm@...r.kernel.org,
linux-iio@...r.kernel.org, devel@...verdev.osuosl.org,
linux-watchdog@...r.kernel.org, Liqin Chen <liqin.linux@...il.com>
Subject: Re: [PATCH] drivers: Let several drivers depends on HAS_IOMEM for
'devm_ioremap_resource'
On 07/13/2014 10:25 PM, Lars-Peter Clausen wrote:
> On 07/13/2014 04:03 PM, Richard Weinberger wrote:
>> Am 13.07.2014 15:56, schrieb Lars-Peter Clausen:
>>> On 07/13/2014 03:40 PM, Richard Weinberger wrote:
>>>> Am 13.07.2014 15:26, schrieb Lars-Peter Clausen:
>>>>> On 07/13/2014 11:45 AM, Richard Weinberger wrote:
>>>>>> Am 13.07.2014 11:27, schrieb Lennox Wu:
>>>>>>> As I said before, some configurations don't make sense.
>>>>>>
>>>>>> If such a configuration can be achieved using allmod/yesconfig it has to be fixed.
>>>>>> Chen's fixes seem reasonable as not all architectures support iomem.
>>>>>
>>>>> Maybe we should stub out ioremap() and friends when COMPILE_TEST is enabled to avoid these linker errors. That's in my opinion better than turning most of the 'depends on
>>>>> COMPILE_TEST' into 'depends on COMPILE_TEST && HAS_IOMEM'. The issue comes up quite a lot and it is often overlooked when adding a driver that can be build when COMPILE_TEST is
>>>>> enabled.
>>>>
>>>> And what should this stub do?
>>>> Except calling BUG()...
>>>
>>> return NULL;
>>>
>>> It's for compile testing, it's not meant to work at runtime.
>>
>> Hm, I really don't like the idea of having a non-working kernel.
>> IMHO either it should build _and_ run and nothing else.
>> Greg, what do you think?
>
> The kernel will still be working fine and you can run it on a system. The drivers which use ioremap() or similar are probably not instantiated on a system that does not provide HAS_IOMEM. But even if it was the driver should handle ioremap() returning NULL gracefully and abort the driver probe. That said you'll probably not run a kernel that was built with COMPILE_TEST on your real hardware since it contains so many drivers that are completely useless on your hardware. The idea of COMPILE_TEST is to have as much compile test exposure as possible to the code that is enabled by COMPILE_TEST. Stubbing out ioremap() and friends when HAS_IOMEM is not set and COMPILE_TEST is set makes it easier to get there.
>
For me, welcome Greg's idea or suggestion for it.
And also if the reply contents are wrapped (e.g. within 80 or less), that
will generate a better display under other members' email clients.
Thanks
--
Chen Gang
Open share and attitude like air water and life which God blessed
--
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