diff options
Diffstat (limited to 'arch/arm64/include/asm/assembler.h')
-rw-r--r-- | arch/arm64/include/asm/assembler.h | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/arch/arm64/include/asm/assembler.h b/arch/arm64/include/asm/assembler.h index 039fbd822ec6..92b6b7cf67dd 100644 --- a/arch/arm64/include/asm/assembler.h +++ b/arch/arm64/include/asm/assembler.h | |||
@@ -718,12 +718,11 @@ USER(\label, ic ivau, \tmp2) // invalidate I line PoU | |||
718 | * the output section, any use of such directives is undefined. | 718 | * the output section, any use of such directives is undefined. |
719 | * | 719 | * |
720 | * The yield itself consists of the following: | 720 | * The yield itself consists of the following: |
721 | * - Check whether the preempt count is exactly 1, in which case disabling | 721 | * - Check whether the preempt count is exactly 1 and a reschedule is also |
722 | * preemption once will make the task preemptible. If this is not the case, | 722 | * needed. If so, calling of preempt_enable() in kernel_neon_end() will |
723 | * yielding is pointless. | 723 | * trigger a reschedule. If it is not the case, yielding is pointless. |
724 | * - Check whether TIF_NEED_RESCHED is set, and if so, disable and re-enable | 724 | * - Disable and re-enable kernel mode NEON, and branch to the yield fixup |
725 | * kernel mode NEON (which will trigger a reschedule), and branch to the | 725 | * code. |
726 | * yield fixup code. | ||
727 | * | 726 | * |
728 | * This macro sequence may clobber all CPU state that is not guaranteed by the | 727 | * This macro sequence may clobber all CPU state that is not guaranteed by the |
729 | * AAPCS to be preserved across an ordinary function call. | 728 | * AAPCS to be preserved across an ordinary function call. |