aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHillf Danton <hdanton@sina.com>2019-05-14 04:34:19 -0400
committerWill Deacon <will.deacon@arm.com>2019-05-14 05:52:45 -0400
commit0e4add4ae79e4466ae2a7e7772dfbe39fb28787a (patch)
tree7766b653df32ddaa3c6a821d8b3e22f3ab2bf462
parent14ae42a6f0b13130a97d94d23481128961de5d38 (diff)
arm64: assembler: Update comment above cond_yield_neon() macro
Since commit 7faa313f05ca ("arm64: preempt: Fix big-endian when checking preempt count in assembly") both the preempt count and the 'need_resched' flag are checked as part of a single 64-bit load in cond_yield_neon(), so update the stale comment to reflect reality. Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Dave Martin <Dave.Martin@arm.com> Cc: Will Deacon <will.deacon@arm.com> Cc: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Hillf Danton <hdanton@sina.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r--arch/arm64/include/asm/assembler.h11
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.