Re: [PATCH v3] modules: wait do_free_init correctly

2024-02-20 Thread Eric Chanudet
nter false positive reports in > > W+X checking, and the rcu synchronization is unnecessary which can > > introduce significant delay. > > > > Eric Chanudet reports that the rcu_barrier introduces ~0.1s delay on a > > PREEMPT_RT kernel. > > [0.291444] Freeing unused

Re: [RESEND PATCH v2] modules: wait do_free_init correctly

2024-02-15 Thread Eric Chanudet
u_preempt LastCB cpu -1 remaining 0 # 1 systemd-1 [002] . 0.413351: rcu_barrier: rcu_preempt Inc2 cpu -1 remaining 0 # 1 With this patch the delay is no longer there: [0.377662] Freeing unused kernel memory: 14080K [ 0.377767] Run /sbin/init as init process AFAIU, for the race to happen, module_alloc() needs to create a W+X mapping (neither x86 nor arm64 does) and debug_checkwx() has to happen before module_enable_nx() in complete_formation(), I didn't get a reproducer so far. Best, -- Eric Chanudet