Thread (18 messages) flat view 18 messages, 4 authors, 2022-08-12

Re: [PATCH 1/2] powerpc: drop dependency on <asm/machdep.h> in archrandom.h

From: Andy Shevchenko <hidden>
Date: 2022-07-26 06:14:19
Also in: lkml

On Tue, Jul 26, 2022 at 1:35 AM Yury Norov [off-list ref] wrote:
On Mon, Jul 25, 2022 at 11:39:39PM +0200, Andy Shevchenko wrote:
quoted
On Mon, Jul 25, 2022 at 6:19 PM Yury Norov [off-list ref] wrote:
quoted
On Mon, Jul 25, 2022 at 09:28:12AM +0200, Andy Shevchenko wrote:
quoted
On Sun, Jul 24, 2022 at 12:19 AM Yury Norov [off-list ref] wrote:
...
quoted
quoted
quoted
quoted
 EXPORT_SYMBOL_GPL(pm_power_off);
^^^ (Note this and read below)

...
quoted
+EXPORT_SYMBOL(arch_get_random_seed_long);
It can't be like this. Brief browsing of the callees shows that.
Is my understanding correct that you're suggesting to make it GPL?

ppc_md is exported with EXPORT_SYMBOL(), and the function is in header,
so it's available for non-GPL code now. I don't want to change it.
The symbols your function calls are GPL. As far as I understand (not a
lawyer!) it logically one may not call GPL and pretend to be non-GPL.
Can you explain what you mean in details?

The function is:
        static inline bool __must_check arch_get_random_seed_long(unsigned long *v)
        {
               if (ppc_md.get_random_seed)
                       return ppc_md.get_random_seed(v);

               return false;
        }

ppc_md is non-GPL:
 77 /* The main machine-dep calls structure
 78  */
 79 struct machdep_calls ppc_md;
 80 EXPORT_SYMBOL(ppc_md);
What a mess...
And get_random_seed is initialized in in arch/powerpc/platforms/powernv/rng.c
with different functions that are static and not exported at all.

I don't understand where arch_get_random_seed_long calls GPL...
The ->get_random_seed() (aka "callees" in my previous mail) are all
GPL (maybe I missed one out of five which is non-GPL, but then it's
even more of a mess).

-- 
With Best Regards,
Andy Shevchenko
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help