twx-linux/tools/include/linux
Kees Cook 63a0895d96 compiler: Remove uninitialized_var() macro
Using uninitialized_var() is dangerous as it papers over real bugs[1]
(or can in the future), and suppresses unrelated compiler warnings
(e.g. "unused variable"). If the compiler thinks it is uninitialized,
either simply initialize the variable or make compiler changes.

As recommended[2] by[3] Linus[4], remove the macro. With the recent
change to disable -Wmaybe-uninitialized in v5.7 in commit 78a5255ffb6a
("Stop the ad-hoc games with -Wno-maybe-initialized"), this is likely
the best time to make this treewide change.

[1] https://lore.kernel.org/lkml/20200603174714.192027-1-glider@google.com/
[2] https://lore.kernel.org/lkml/CA+55aFw+Vbj0i=1TGqCR5vQkCzWJ0QxK6CernOU6eedsudAixw@mail.gmail.com/
[3] https://lore.kernel.org/lkml/CA+55aFwgbgqhbp1fkxvRKEpzyR5J8n1vKT1VZdz9knmPuXhOeg@mail.gmail.com/
[4] https://lore.kernel.org/lkml/CA+55aFz2500WfbKXAx8s67wrm9=yVJu65TpLgN_ybYNv0VEOKA@mail.gmail.com/

Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
Reviewed-by: Bart van Assche <bvanassche@acm.org>
Reviewed-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
Tested-by: Nathan Chancellor <natechancellor@gmail.com>
Tested-by: Sedat Dilek <sedat.dilek@gmail.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
2020-07-16 12:35:31 -07:00
..
sched tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
unaligned License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
atomic.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bitmap.h tools bitmap: Implement bitmap_equal() operation at bitmap API 2020-01-06 11:46:04 -03:00
bitops.h bitops: more BITS_TO_* macros 2020-02-04 03:05:26 +00:00
bits.h tools headers: Synchronize linux/bits.h with the kernel sources 2020-04-14 11:40:05 -03:00
bug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
build_bug.h tools headers: Synchronize linux/bits.h with the kernel sources 2020-04-14 11:40:05 -03:00
compiler-gcc.h tools compiler.h: Add attribute to disable tail calls 2020-06-01 12:24:21 -03:00
compiler.h compiler: Remove uninitialized_var() macro 2020-07-16 12:35:31 -07:00
const.h tools headers: Update linux/vdso.h and grab a copy of vdso/const.h 2020-04-14 08:55:03 -03:00
coresight-pmu.h coresight: etm4x: Add kernel configuration for CONTEXTID 2019-04-25 22:00:16 +02:00
ctype.h tools perf: Move from sane_ctype.h obtained from git to the Linux's original 2019-06-25 21:02:47 -03:00
debug_locks.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
delay.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
err.h docs: fix broken documentation links 2019-06-08 13:42:13 -06:00
export.h tools: Restore export.h 2015-08-25 09:44:22 +02:00
filter.h bpf, selftest: test {rd, wr}only flags and direct value access 2019-04-09 17:05:47 -07:00
ftrace.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
gfp.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
hardirq.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hash.h tools/headers: Synchronize kernel ABI headers 2017-11-04 09:27:46 +01:00
hashtable.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
interrupt.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
irqflags.h lockdep: Rename trace_{hard,soft}{irq_context,irqs_enabled}() 2020-03-21 16:03:54 +01:00
jhash.h tools/lib/lockdep: Fix compilation for 4.11 2017-06-05 09:28:09 +02:00
kallsyms.h kallsyms/printk: add loglvl to print_ip_sym() 2020-06-09 09:39:10 -07:00
kern_levels.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kernel.h tools headers: Synchronize linux/bits.h with the kernel sources 2020-04-14 11:40:05 -03:00
linkage.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
list.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lockdep.h tools/lib/lockdep: Add dummy task_struct state member 2018-09-10 13:48:24 +02:00
log2.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
module.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mutex.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
nmi.h tools/lib/lockdep: Add empty nmi.h 2018-09-10 13:48:23 +02:00
numa.h tools/: replace open encodings for NUMA_NO_NODE 2019-03-05 21:07:14 -08:00
overflow.h tools: bpf: make use of reallocarray 2018-07-11 22:13:34 +02:00
poison.h Drop flex_arrays 2019-03-12 10:04:03 -07:00
proc_fs.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
rbtree_augmented.h docs: Add rbtree documentation to the core-api 2020-04-21 10:29:19 -06:00
rbtree.h docs: Add rbtree documentation to the core-api 2020-04-21 10:29:19 -06:00
rcu.h rcu: Don't return a value from rcu_assign_pointer() 2019-06-13 15:38:34 -07:00
refcount.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ring_buffer.h tools headers: Add missing perf_event.h include 2019-08-22 11:12:36 -03:00
seq_file.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
sizes.h tools: bpftool: add "prog run" subcommand to test-run programs 2019-07-05 23:48:07 +02:00
spinlock.h xarray: Add XArray unconditional store operations 2018-10-21 10:45:57 -04:00
stacktrace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
string.h tools lib: Fix builds when glibc contains strlcpy() 2020-01-06 11:46:10 -03:00
stringify.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
time64.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
types.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
zalloc.h tools lib: Adopt zalloc()/zfree() from tools/perf 2019-07-09 10:13:26 -03:00