[RESEND2 PATCH 1/3] memremap: add MEMREMAP_WC flag
Brian Starkey
brian.starkey at arm.com
Tue Feb 9 02:23:00 PST 2016
Hi Andrew,
Thanks for taking a look,
On Mon, Feb 08, 2016 at 12:03:17PM -0800, Andrew Morton wrote:
>On Mon, 8 Feb 2016 17:30:50 +0000 Brian Starkey <brian.starkey at arm.com> wrote:
>The patch generally looks OK to me. It generates rejects against
>linux-next because of some janitorial changes in memremap.c.
>
Ah yeah, so it does - sorry. I was hoping this could make it into 4.5,
but I can rebase onto linux-next if that's better. Annoyingly it only
conflicts because of a couple of quotation marks.
>
>> @@ -101,6 +107,11 @@ void *memremap(resource_size_t offset, size_t size, unsigned long flags)
>> addr = ioremap_wt(offset, size);
>> }
>>
>> + if (!addr && (flags & MEMREMAP_WC)) {
>> + flags &= ~MEMREMAP_WC;
>> + addr = ioremap_wc(offset, size);
>> + }
>> +
>> return addr;
>> }
>
>The modifications of `flags' is unneeded (and the compiler will remove
>it). And generally the modification of incoming args is a bit nasty
>IMO - I find it's better to treat them as const - part of the calling
>environment which can be relied upon to be unaltered as the code
>evolves.
>
To be honest I was just mirroring the rest of the function. I guess
the idea was filtering the different mapping types in case one of the
'mappers' can handle multiple flags or something. I'll remove it if
you like, I just thought that extending the functionality in-keeping
with the current semantics was a better evolution - let me know.
Thanks,
Brian
More information about the linux-arm-kernel
mailing list