Re: [PATCH v2 0/5] riscv: mm: init clean up #ifdefs

From: Palmer Dabbelt
Date: Tue Jan 18 2022 - 14:15:12 EST


On Mon, 06 Dec 2021 07:03:48 PST (-0800), jszhang@xxxxxxxxxx wrote:
To support NOMMU, XIP, the arch/riscv/mm/init.c becomes much complex
due to lots of #ifdefs, this not only impacts the code readability,
compile coverage, but may also bring bugs. For example, I believe one
recently fixed bug[1] is caused by this issue when merging.

This series tries to clean up unnecessary #ifdefs as much as possible.

Further cleanups may need to refactor the XIP code as Alexandre's patch
does.

[1] http://lists.infradead.org/pipermail/linux-riscv/2021-December/010607.html


Since v1:
- collect Reviewed-by tag.
- remove the __maybe_unused used in max_mapped_addr declaration.
- remove the BUG_ON check of mapping the last 4K bytes of the
addressable memory since "this is true for every kernel actually"
as pointed out by Alexandre.

Jisheng Zhang (5):
riscv: mm: init: remove unnecessary "#ifdef CONFIG_CRASH_DUMP"
riscv: mm: init: try best to use IS_ENABLED(CONFIG_64BIT) instead of
#ifdef
riscv: mm: init: remove _pt_ops and use pt_ops directly
riscv: mm: init: try IS_ENABLED(CONFIG_XIP_KERNEL) instead of #ifdef
riscv: mm: init: try best to remove #ifdef CONFIG_XIP_KERNEL usage

arch/riscv/mm/init.c | 76 ++++++++++++++++----------------------------
1 file changed, 27 insertions(+), 49 deletions(-)

Thanks, these look good. I've put them on a staging branch that will soon be for-next, I'd like to start from after my recent PR's merge (assuming it's merged).