Message ID | 20220329085709.4132729-1-haokexin@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | powerpc: Export mmu_feature_keys[] as non-GPL | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/github-powerpc_selftests | success | Successfully ran 8 jobs. |
snowpatch_ozlabs/github-powerpc_ppctests | success | Successfully ran 8 jobs. |
snowpatch_ozlabs/github-powerpc_clang | success | Successfully ran 7 jobs. |
snowpatch_ozlabs/github-powerpc_sparse | success | Successfully ran 4 jobs. |
snowpatch_ozlabs/github-powerpc_kernel_qemu | success | Successfully ran 24 jobs. |
On Tue, 29 Mar 2022 16:57:09 +0800, Kevin Hao wrote: > When the mmu_feature_keys[] was introduced in the commit c12e6f24d413 > ("powerpc: Add option to use jump label for mmu_has_feature()"), > it is unlikely that it would be used either directly or indirectly in > the out of tree modules. So we export it as GPL only. But with the > evolution of the codes, especially the PPC_KUAP support, it may be > indirectly referenced by some primitive macro or inline functions such > as get_user() or __copy_from_user_inatomic(), this will make it > impossible to build many non GPL modules (such as ZFS) on ppc > architecture. Fix this by exposing the mmu_feature_keys[] to the > non-GPL modules too. > > [...] Applied to powerpc/next. [1/1] powerpc: Export mmu_feature_keys[] as non-GPL https://git.kernel.org/powerpc/c/d9e5c3e9e75162f845880535957b7fd0b4637d23 cheers
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index ae0fdef0ac11..3a8cd40b6368 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c @@ -2119,7 +2119,7 @@ void __init cpu_feature_keys_init(void) struct static_key_true mmu_feature_keys[NUM_MMU_FTR_KEYS] = { [0 ... NUM_MMU_FTR_KEYS - 1] = STATIC_KEY_TRUE_INIT }; -EXPORT_SYMBOL_GPL(mmu_feature_keys); +EXPORT_SYMBOL(mmu_feature_keys); void __init mmu_feature_keys_init(void) {
When the mmu_feature_keys[] was introduced in the commit c12e6f24d413 ("powerpc: Add option to use jump label for mmu_has_feature()"), it is unlikely that it would be used either directly or indirectly in the out of tree modules. So we export it as GPL only. But with the evolution of the codes, especially the PPC_KUAP support, it may be indirectly referenced by some primitive macro or inline functions such as get_user() or __copy_from_user_inatomic(), this will make it impossible to build many non GPL modules (such as ZFS) on ppc architecture. Fix this by exposing the mmu_feature_keys[] to the non-GPL modules too. Reported-by: Nathaniel Filardo <nwfilardo@gmail.com> Signed-off-by: Kevin Hao <haokexin@gmail.com> --- arch/powerpc/kernel/cputable.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)