On Sat. 30 Jul. 2022 at 02:48, Sean Christopherson <seanjc@xxxxxxxxxx> wrote: > On Fri, Jul 29, 2022, Vincent Mailhol wrote: > > arch/x86/include/asm/apic.h declares a global variable named `apic'. > > > > Many function arguments from arch/x86/kvm/lapic.h also uses the same > > name and thus shadow the global declaration. For each case of > > shadowing, rename the function argument from `apic' to `lapic'. > > > > This patch silences below -Wshadow warnings: > > This is just the tip of the iceberg, nearly every KVM x86 .c file has at least one > "apic" variable. arch/x86/kvm/lapic.c alone has nearly 100. If this were the very > last step before a kernel-wide (or even KVM-wide) enabling of -Wshadow then maybe > it would be worth doing, but as it stands IMO it's unnecesary churn. I would say the opposite: in terms of *volume*, warnings from apic.c would be the tip of the iceberg and apic.h is the submerged part. When the warning occurs in a header from the include directory, it will spam some random files which include such header. This is annoying when trying to triage W=2 warnings because you get totally unrelated warning (and W=2 has some useful flags such as -Wmaybe-uninitialized so there are some insensitive to check it). My intent is only to silence the headers. I do not really care about the -Wshadow on *.c files because it is local. > What I would really love is to not have the global (and exported!) "apic", but > properly solving that, i.e. not just a rename, would require a significant rework. I double agree. I would also like to rename the global "apic" but I do not think this is easily feasible. Yours sincerely, Vincent Mailhol