Re: [PATCH v2] powerpc/64s: Clarify copy_and_flush() cache sync loop comment
From: Amit Machhiwal <hidden>
Date: 2026-07-17 11:55:58
Also in:
lkml
On 2026/07/09 11:40 AM, Nikhil Kumar Singh wrote:
Hi Mukesh, Ideally, checkpatch should take care of this, I see no checkpatch errors.
That is because the default $max_line_length is set to 100 columns in checkpatch.pl scripts. The kernel coding style document recommends 80, but checkpatch enforces 100 unless you pass --max-line-length=80 explicitly. my $max_line_length = 100; You will see the warnings being reported when you run the script as: ❯ scripts/checkpatch.pl ./v2_20260706_nikhilks_powerpc_64s_clarify_copy_and_flush_cache_sync_loop_comment.mbx --max-line-length=80 WARNING: line length of 82 exceeds 80 columns #44: FILE: arch/powerpc/kernel/head_64.S:716: +4: li r0,8 /* r0 is the number of 8-byte words */ [...] total: 0 errors, 12 warnings, 26 lines checked I agree with Mukesh here and I think the comment should be fixed to fit within 80 column width limit as staying within 80 columns is certainly still preferred. Thanks, Amit
./scripts/checkpatch.pl v2-0001-powerpc-64s-Clarify-copy_and_flush-cache-sync-loo.patch total: 0 errors, 0 warnings, 26 lines checked v2-0001-powerpc-64s-Clarify-copy_and_flush-cache-sync-loo.patch has no obvious style problems and is ready for submission.Thanks ~ Nikhil On 07/07/26 12:48, Nikhil Kumar Singh wrote:quoted
Hi Mukesh, Thanks for reviewing the patch and for the suggestion. I'd prefer to keep the current alignment as I find it a bit more readable. Thanks, ~ Nikhil On 07/07/26 11:08, Mukesh Kumar Chaurasiya wrote:quoted
On Mon, Jul 06, 2026 at 01:57:08PM +0530, Nikhil Kumar Singh wrote:quoted
The value loaded into r0 in copy_and_flush() represents the number of 8-byte words processed between cache synchronization operations. The existing comment refers to cache line size, which can make it appear that the value is a cache line size in bytes rather than a loop count. Clarify the comment to explain that the loop processes 8 words (64 bytes) per cache synchronization iteration, and that increasing the value would skip cache maintenance for intermediate cache lines. This is a comment-only change with no functional impact. Signed-off-by: Nikhil Kumar Singh <redacted> --- arch/powerpc/kernel/head_64.S | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-)diff --git a/arch/powerpc/kernel/head_64.Sb/arch/powerpc/kernel/head_64.S index 63432a33ec49..a54f6f979173 100644--- a/arch/powerpc/kernel/head_64.S +++ b/arch/powerpc/kernel/head_64.S@@ -713,14 +713,18 @@ p_end: .8byte _end - copy_to_here_GLOBAL(copy_and_flush) addi r5,r5,-8 addi r6,r6,-8 -4: li r0,8 /* Use the smallest common */ - /* denominator cache line */ - /* size. This results in */ - /* extra cache line flushes */ - /* but operation is correct. */ - /* Can't get cache line size */ - /* from NACA as it is being */ - /* moved too. */ +4: li r0,8 /* r0 is the number of 8-byte words */ + /* to copy per cache sync iteration. */ + /* 8 words * 8 bytes = 64 bytes. 64B is */ + /* the current default cache line size. */ + /* This is a loop count, not a byte */ + /* count. Increasing it may skip */ + /* dcbst/icbi for lines in between and */ + /* leave stale instructions in icache. */ + /* This results in extra cache line */ + /* flushes but operation is correct. */ + /* Can't get cache line size from NACA */ + /* as it is being moved too. */The comment looks fine. But the alignement of the comment is still different from earlier. Keep the alignment same as earlier, it looks a little nicer. Regards, Mukeshquoted
mtctr r0 /* put # words/line in ctr */ 3: addi r6,r6,8 /* copy a cache line */ -- 2.43.5