Re: [PATCH v7 03/37] sparc: io: To use the define of ioremap_[nocache|wc|wb] in asm-generic/io.h

From: Arnd Bergmann
Date: Wed Feb 21 2018 - 07:28:05 EST


On Wed, Feb 21, 2018 at 9:05 AM, Greentime Hu <green.hu@xxxxxxxxx> wrote:
> 2018-02-14 22:43 GMT+08:00 Arnd Bergmann <arnd@xxxxxxxx>:
>> On Tue, Feb 13, 2018 at 10:09 AM, Greentime Hu <green.hu@xxxxxxxxx> wrote:
>>> A commit for the nds32 architecture bootstrap("asm-generic/io.h: move
>>> ioremap_nocache/ioremap_uc/ioremap_wc/ioremap_wt out of ifndef CONFIG_MMU")
>>> will move the ioremap_nocache out of the CONFIG_MMU ifdef. This means that
>>> in order to suppress re-definition errors we need to remove the #define
>>> in io_32.h.
>>>
>>> Also, the change adds a prototype for ioremap where size is size_t and
>>> offset is phys_addr_t so fix that as well.
>>>
>>> Signed-off-by: Greentime Hu <greentime@xxxxxxxxxxxxx>
>>
>> This patch should have been addressed to the sparclinux mailing list to
>> the maintainers can see it, otherwise they are unlikely to notice.
>>
>> Added it to Cc now.
>>
>> Can you confirm that the patches are ordered correctly in your series so that
>> at no point, sparc is in a state that fails to be build cleanly?
>>
>> If not, this may have to get merged into the other patch.
>
> Hi, Arnd:
>
> These 2 patch will cause sparc building error in any order.


>
> Should I merge them together like this?
>
> asm-generic/io.h: move ioremap_nocache/ioremap_uc/ioremap_wc/ioremap_wt out of
> ifndef CONFIG_MMU
>
> It allows some architectures to use this generic macro instead of
> defining theirs.
>
> sparc: io: To use the define of ioremap_[nocache|wc|wb] in asm-generic/io.h
> It will move the ioremap_nocache out of the CONFIG_MMU ifdef. This means that
> in order to suppress re-definition errors we need to remove the #define
> in arch/sparc/include/asm/io_32.h. Also, the change adds a prototype for
> ioremap where size is size_t and offset is phys_addr_t so fix that as well.
>
> Signed-off-by: Greentime Hu <greentime@xxxxxxxxxxxxx>

That looks reasonable since both patches are fairly small, yes.

For a more complex patch that requires interdependent changes
in different areas of the kernel, it may be necessary instead to
come up with a way to stage out the changes differently so they
are truly independent. Getting that right requires a bit practice
but is usually possible.

Arnd