Re: [PATCH v9 2/3] x86,/proc/pid/status: Add AVX-512 usage elapsed time

From: Thomas Gleixner
Date: Tue Feb 12 2019 - 06:19:52 EST


On Tue, 12 Feb 2019, Li, Aubrey wrote:
> On 2019/2/12 16:22, Thomas Gleixner wrote:
> > On Tue, 12 Feb 2019, Aubrey Li wrote:
> >> diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h
> >> index d53c54b842da..60ee932070fe 100644
> >> --- a/arch/x86/include/asm/processor.h
> >> +++ b/arch/x86/include/asm/processor.h
> >> @@ -996,5 +996,7 @@ enum l1tf_mitigations {
> >> };
> >>
> >> extern enum l1tf_mitigations l1tf_mitigation;
> >> +/* Add support for architecture specific output in /proc/pid/status */
> >> +extern void arch_proc_pid_status(struct seq_file *m, struct task_struct *task);
> >
> > Sigh. This is absolutely the wrong place. The weak function is declared and
> > used in fs/proc/... So the prototype wants to be in a header which is
> > included from there independent of x86...
>
> Can the prototype be in the architecture header if they want to call the
> function?

Basic C programming course:

The prototype must be available before the declaration of the global
function.

fs/proc/array.c:404:13: warning: no previous prototype for âarch_proc_pid_statusâ [-Wmissing-prototypes]
void __weak arch_proc_pid_status(struct seq_file *m, struct task_struct *task)

Oh well....

Thanks,

tglx