Re: [PATCH 26/35] x86/process: Change copy_thread() argument 'arg' to 'stack_size'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2022-02-08 at 09:38 +0100, Thomas Gleixner wrote:
> On Sun, Jan 30 2022 at 13:18, Rick Edgecombe wrote:
> > -int copy_thread(unsigned long clone_flags, unsigned long sp,
> > unsigned long arg,
> > -             struct task_struct *p, unsigned long tls)
> > +int copy_thread(unsigned long clone_flags, unsigned long sp,
> > +             unsigned long stack_size, struct task_struct *p,
> > +             unsigned long tls)
> >   {
> >        struct inactive_task_frame *frame;
> >        struct fork_frame *fork_frame;
> > @@ -175,7 +176,7 @@ int copy_thread(unsigned long clone_flags,
> > unsigned long sp, unsigned long arg,
> >        if (unlikely(p->flags & PF_KTHREAD)) {
> >                p->thread.pkru = pkru_get_init_value();
> >                memset(childregs, 0, sizeof(struct pt_regs));
> > -             kthread_frame_init(frame, sp, arg);
> > +             kthread_frame_init(frame, sp, stack_size);
> >                return 0;
> >        }
> >   
> > @@ -208,7 +209,7 @@ int copy_thread(unsigned long clone_flags,
> > unsigned long sp, unsigned long arg,
> >                 */
> >                childregs->sp = 0;
> >                childregs->ip = 0;
> > -             kthread_frame_init(frame, sp, arg);
> > +             kthread_frame_init(frame, sp, stack_size);
> >                return 0;
> >        }
> 
> Can you please change the prototypes too for completeness sake?

In the header it's:
extern int copy_thread(unsigned long, unsigned long, unsigned long,
		       struct task_struct *, unsigned long);

And the various arch implementations call the stack size: arg,
kthread_arg, stk_sz, etc.

Adding names to the prototype would conflict with the some arch's names
unless they were all unified. Is it a worthwhile refactor?






[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux