Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ACPI: PAD: Eliminate usage of uninitialized_var() macro

This is an effort to eliminate the uninitialized_var() macro[1].

The use of this macro is the wrong solution because it forces off ANY
analysis by the compiler for a given variable. It even masks "unused
variable" warnings.

Quoted from Linus[2]:

"It's a horrible thing to use, in that it adds extra cruft to the
source code, and then shuts up a compiler warning (even the _reliable_
warnings from gcc)."

The gcc option "-Wmaybe-uninitialized" has been disabled and this change
will not produce any warnnings even with "make W=1".

Link: https://github.com/KSPP/linux/issues/81 # [1]
Link: https://lore.kernel.org/lkml/CA+55aFz2500WfbKXAx8s67wrm9=yVJu65TpLgN_ybYNv0VEOKA@mail.gmail.com/ # [2]
Signed-off-by: Jason Yan <yanaijie@huawei.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Jason Yan and committed by
Rafael J. Wysocki
134043cd 48778464

+1 -1
+1 -1
drivers/acpi/acpi_pad.c
··· 88 88 cpumask_var_t tmp; 89 89 int cpu; 90 90 unsigned long min_weight = -1; 91 - unsigned long uninitialized_var(preferred_cpu); 91 + unsigned long preferred_cpu; 92 92 93 93 if (!alloc_cpumask_var(&tmp, GFP_KERNEL)) 94 94 return;