Re: __migrate_disabled symbol not exported for rt kernel > 4.9

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2018-09-18 16:55:14 [-0400], Jonathan Rajotte-Julien wrote:
> Hi,
Hi,

> While building/linking our out-of-tree modules, lttng-modules, against
> 4.14.69-rt43 we encounter this error:
> 
>     WARNING: "__migrate_disabled" [/home/builder/lttng-modules/lttng-modules-2.10.7/lttng-tracer.ko] undefined!
> 
> Same problem for other stable rt kernels > 4.9.
> Everything work fine against 4.9.115-rt93.
> 
> It looks like __migrate_disabled was moved from linux/include/sched.h to
> linux/include/preempt.h. No problem there but for a configuration the
> inline function was transformed into a function declaration. The symbol for
> that function is not currently exported (EXPORT_SYMBOL*).
> 
> Should __migrate_disabled be exported when defined in kernel/sched/core.c?

If you need it, I guess so. In order to inline it again, it should be
moved back to sched.h…

> And for personal knowledge:
> 
> What is the reason for not using an inline function for the (CONFIG_SMP)
> && (CONFIG_PREEMPT_RT_BASE) configuration?

we should not include sched.h (for struct task_struct) into preempt.h

> The commit message introducing __migrate_disabled does not give much information
> regarding why it is done differently compared to 4.9-rt kernels.
> 
> We will probably end up accessing the migrate_disabled field directly since we
> need to support those kernel versions somehow.

Do you want a EXPORT_SYMBOL_GPL for that or are you good?

> Cheers

Sebastian



[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux