[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230428065513.GA22111@redhat.com>
Date: Fri, 28 Apr 2023 08:55:13 +0200
From: Oleg Nesterov <oleg@...hat.com>
To: Josh Poimboeuf <jpoimboe@...nel.org>
Cc: Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>,
Vernon Lovejoy <vlovejoy@...hat.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] x86/show_trace_log_lvl: ensure stack pointer is aligned,
again
On 04/27, Josh Poimboeuf wrote:
>
> On Thu, Apr 27, 2023 at 04:00:54PM +0200, Oleg Nesterov wrote:
> > + stack = PTR_ALIGN(stack, sizeof(long));
> > for ( ; stack; stack = PTR_ALIGN(stack_info.next_sp, sizeof(long))) {
> > const char *stack_name;
>
> Seems reasonable, though 'stack' is already initialized a few lines
> above this, so it would be cleaner to do the PTR_ALIGN then. Or even
> better, just move it all to the for loop:
>
> for (stack = PTR_ALIGN(stack ? : get_stack_pointer(task, regs));
> stack;
> stack = PTR_ALIGN(stack_info.next_sp, sizeof(long))) {
We decided to make the simplest one-liner fix, but I was thinking about
for ( stack = stack ? : get_stack_pointer(task, regs);
(stack = PTR_ALIGN(stack, sizeof(long)));
stack = stack_info.next_sp)
{
...
to factout out the annoying PTR_ALIGN(). Will it work for you?
Oleg.
Powered by blists - more mailing lists