On Thu, 2024-12-05 at 22:56 +0900, Hajime Tazaki wrote:
> 
> > > +++ b/arch/x86/um/asm/processor.h
> > > @@ -38,6 +38,18 @@ static __always_inline void cpu_relax(void)
> > >  
> > >  #define task_pt_regs(t) (&(t)->thread.regs)
> > >  
> > > +#ifndef CONFIG_MMU
> > > +#define task_top_of_stack(task) \
> > > +({                                                                       
> > > \
> > > + unsigned long __ptr = (unsigned long)task->stack;       \
> > > + __ptr += THREAD_SIZE;                   \
> > > + __ptr;                                  \
> > > +})
> > > +
> > > +extern long current_top_of_stack;
> > > +extern long current_ptregs;
> > > +#endif
> > 
> > no need for "extern".
> > 
> > you only use all that once, does it need to be here?
> 
> sorry, I don't understand both of these comments; could you care to
> elaborate ?

Sorry, you obviously do need 'extern', I was clearly confused.

Regarding the task_top_of_stack() macro, I thought you only used it in
one C file, so I'm not sure it should be in a header file that's
generally included across the kernel, rather than a private header file
or just in the C file itself.

johannes

Reply via email to