]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
powerpc: Large user copy aware of full:rt:lazy preemption
authorShrikanth Hegde <sshegde@linux.ibm.com>
Sat, 16 Nov 2024 19:23:06 +0000 (00:53 +0530)
committerMadhavan Srinivasan <maddy@linux.ibm.com>
Thu, 19 Dec 2024 08:51:08 +0000 (14:21 +0530)
Large user copy_to/from (more than 16 bytes) uses vmx instructions to
speed things up. Once the copy is done, it makes sense to try schedule
as soon as possible for preemptible kernels. So do this for
preempt=full/lazy and rt kernel.

Not checking for lazy bit here, since it could lead to unnecessary
context switches.

Suggested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Shrikanth Hegde <sshegde@linux.ibm.com>
Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Link: https://patch.msgid.link/20241116192306.88217-3-sshegde@linux.ibm.com
arch/powerpc/lib/vmx-helper.c

index d491da8d18389f520a882fd515720f42b28fabef..58ed6bd613a6fe8f70ea9e35c3968c3d61bce52d 100644 (file)
@@ -45,7 +45,7 @@ int exit_vmx_usercopy(void)
         * set and we are preemptible. The hack here is to schedule a
         * decrementer to fire here and reschedule for us if necessary.
         */
-       if (IS_ENABLED(CONFIG_PREEMPT) && need_resched())
+       if (IS_ENABLED(CONFIG_PREEMPTION) && need_resched())
                set_dec(1);
        return 0;
 }