Re: [PATCH v2] um: add dummy ioremap and iounmap functions

From: Logan Gunthorpe
Date: Wed Jun 21 2017 - 17:26:23 EST


Poke.

On 08/06/17 01:17 PM, Richard Weinberger wrote:
> Am 08.06.2017 um 20:53 schrieb Logan Gunthorpe:
> IMHO an ifdef in scatterlist code does not hurt.
> It is equally ugly than mocking ioremap for UML.

I disagree. Having ifdefs scattered around all call sites of a function
is *much* worse than having an extra mock function tucked away in a
header file somewhere.

It's a very common pattern in the kernel for providers of functions that
depend on a configuration option to provide mock functions when the
configuration option is not selected. This prevents needing every caller
of said function to put #ifdefs around the call. For a few examples:

include/linux/blkdev.h:1952
include/linux/dax.h:24
include/linux/pci.h:1329

And, frankly, it's _exactly_ what Linus Torvalds himself was arguing
against in the link I sent up-thread [1].

> So, I'm puzzled.
> Arnd, what do you think?
> Shall !HAS_IOMEM archs just mock these functions?

So, once again, 'um' is now the only architecture that has this problem
since tile and s390 accepted my patches (and without a fuss too). So can
you please consider merging this patch or proposing something that will
also fix the problem?

Thanks,

Logan


[1] http://yarchive.net/comp/linux/ifdefs.html