2021-05-07 05:42:21

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: manual merge of the akpm tree with the risc-v tree

Hi all,

Today's linux-next merge of the akpm tree got a conflict in:

arch/riscv/include/asm/set_memory.h

between commit:

8d91b0973358 ("riscv: Consistify protect_kernel_linear_mapping_text_rodata() use")

from the risc-v tree and commit:

e022d55b4d97 ("set_memory: allow set_direct_map_*_noflush() for multiple pages")

from the akpm tree.

I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.

--
Cheers,
Stephen Rothwell

diff --cc arch/riscv/include/asm/set_memory.h
index 086f757e8ba3,b766f2ccd9de..000000000000
--- a/arch/riscv/include/asm/set_memory.h
+++ b/arch/riscv/include/asm/set_memory.h
@@@ -26,14 -27,8 +26,14 @@@ static inline void protect_kernel_text_
static inline int set_memory_rw_nx(unsigned long addr, int numpages) { return 0; }
#endif

+#if defined(CONFIG_64BIT) && defined(CONFIG_STRICT_KERNEL_RWX)
+void protect_kernel_linear_mapping_text_rodata(void);
+#else
+static inline void protect_kernel_linear_mapping_text_rodata(void) {}
+#endif
+
- int set_direct_map_invalid_noflush(struct page *page);
- int set_direct_map_default_noflush(struct page *page);
+ int set_direct_map_invalid_noflush(struct page *page, int numpages);
+ int set_direct_map_default_noflush(struct page *page, int numpages);
bool kernel_page_present(struct page *page);

#endif /* __ASSEMBLY__ */


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2021-05-07 15:06:18

by Mike Rapoport

[permalink] [raw]
Subject: Re: linux-next: manual merge of the akpm tree with the risc-v tree

On Fri, May 07, 2021 at 11:24:26AM +1000, Stephen Rothwell wrote:
> Hi all,
>
> Today's linux-next merge of the akpm tree got a conflict in:
>
> arch/riscv/include/asm/set_memory.h
>
> between commit:
>
> 8d91b0973358 ("riscv: Consistify protect_kernel_linear_mapping_text_rodata() use")
>
> from the risc-v tree and commit:
>
> e022d55b4d97 ("set_memory: allow set_direct_map_*_noflush() for multiple pages")
>
> from the akpm tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc arch/riscv/include/asm/set_memory.h
> index 086f757e8ba3,b766f2ccd9de..000000000000
> --- a/arch/riscv/include/asm/set_memory.h
> +++ b/arch/riscv/include/asm/set_memory.h
> @@@ -26,14 -27,8 +26,14 @@@ static inline void protect_kernel_text_
> static inline int set_memory_rw_nx(unsigned long addr, int numpages) { return 0; }
> #endif
>
> +#if defined(CONFIG_64BIT) && defined(CONFIG_STRICT_KERNEL_RWX)
> +void protect_kernel_linear_mapping_text_rodata(void);
> +#else
> +static inline void protect_kernel_linear_mapping_text_rodata(void) {}
> +#endif
> +
> - int set_direct_map_invalid_noflush(struct page *page);
> - int set_direct_map_default_noflush(struct page *page);
> + int set_direct_map_invalid_noflush(struct page *page, int numpages);
> + int set_direct_map_default_noflush(struct page *page, int numpages);
> bool kernel_page_present(struct page *page);

Ack, thanks Stephen!

> #endif /* __ASSEMBLY__ */

--
Sincerely yours,
Mike.