Kees Cook
95d00778b2
e1000: Distribute switch variables for initialization
...
[ Upstream commit a34c7f5156654ebaf7eaace102938be7ff7036cb ]
Variables declared in a switch statement before any case statements
cannot be automatically initialized with compiler instrumentation (as
they are not part of any execution flow). With GCC's proposed automatic
stack variable initialization feature, this triggers a warning (and they
don't get initialized). Clang's automatic stack variable initialization
(via CONFIG_INIT_STACK_ALL=y) doesn't throw a warning, but it also
doesn't initialize such variables[1]. Note that these warnings (or silent
skipping) happen before the dead-store elimination optimization phase,
so even when the automatic initializations are later elided in favor of
direct initializations, the warnings remain.
To avoid these problems, move such variables into the "case" where
they're used or lift them up into the main function body.
drivers/net/ethernet/intel/e1000/e1000_main.c: In function ‘e1000_xmit_frame’:
drivers/net/ethernet/intel/e1000/e1000_main.c:3143:18: warning: statement will never be executed [-Wswitch-unreachable]
3143 | unsigned int pull_size;
| ^~~~~~~~~
[1] https://bugs.llvm.org/show_bug.cgi?id=44916
Signed-off-by: Kees Cook <keescook@chromium.org>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-06-22 09:05:13 +02:00
..
accessibility
acpi
ACPI: GED: use correct trigger type field in _Exx / _Lxx handling
2020-06-22 09:05:09 +02:00
amba
android
binder: take read mode of mmap_sem in binder_alloc_free_page()
2020-05-02 17:25:48 +02:00
ata
libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set
2020-04-17 10:48:52 +02:00
atm
fore200e: Fix incorrect checks of NULL pointer dereference
2020-02-24 08:34:42 +01:00
auxdisplay
base
x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation
2020-06-10 21:35:01 +02:00
bcma
bcma: fix incorrect update of BCMA_CORE_PCI_MDIO_DATA
2020-01-27 14:51:09 +01:00
block
null_blk: return error for invalid zone size
2020-06-07 13:17:56 +02:00
bluetooth
Bluetooth: btusb: fix PM leak in error case of setup
2020-01-09 10:19:04 +01:00
bus
bus: sunxi-rsb: Return correct data when mixing 16-bit and 8-bit reads
2020-04-17 10:48:37 +02:00
cdrom
cdrom: respect device capabilities during opening action
2020-01-04 19:13:12 +01:00
char
agp/intel: Reinforce the barrier after GTT updates
2020-06-22 09:05:08 +02:00
clk
PM: runtime: clk: Fix clk_pm_runtime_get() error path
2020-06-22 09:05:03 +02:00
clocksource
clocksource: dw_apb_timer_of: Fix missing clockevent timers
2020-06-22 09:05:11 +02:00
connector
cpufreq
cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once
2020-05-20 08:18:40 +02:00
cpuidle
cpuidle: Do not unset the driver if it is there already
2019-12-17 20:35:00 +01:00
crypto
crypto: ccp -- don't "select" CONFIG_DMADEVICES
2020-06-22 09:05:09 +02:00
dax
dca
devfreq
Revert "PM / devfreq: Modify the device name as devfreq(X) for sysfs"
2020-03-05 16:42:18 +01:00
dio
dma
dmaengine: owl: Use correct lock in owl_dma_get_pchan()
2020-05-27 17:37:38 +02:00
dma-buf
dma-buf: Fix memory leak in sync_file_merge()
2019-12-21 10:57:38 +01:00
edac
EDAC/amd64: Set grain per DIMM
2020-03-11 14:14:45 +01:00
eisa
extcon
extcon: axp288: Add wakeup support
2020-04-13 10:45:03 +02:00
firewire
net: add annotations on hh->hh_len lockless accesses
2020-01-09 10:19:09 +01:00
firmware
efi/libstub/x86: Work around LLVM ELF quirk build regression
2020-06-22 09:05:10 +02:00
fmc
fpga
fsi
fsi: sbefifo: Don't fail operations when in SBE IPL state
2020-01-27 14:51:00 +01:00
gnss
gpio
gpio: exar: Fix bad handling for ida_simple_get error path
2020-06-03 08:19:35 +02:00
gpu
drm: bridge: adv7511: Extend list of audio sample rates
2020-06-22 09:05:09 +02:00
hid
HID: i2c-hid: add Schneider SCL142ALM to descriptor override
2020-06-07 13:17:53 +02:00
hsi
hv
x86/Hyper-V: Report crash data in die() when panic_on_oops is set
2020-04-23 10:30:17 +02:00
hwmon
hwmon: (da9052) Synchronize access with mfd
2020-05-20 08:18:44 +02:00
hwspinlock
hwtracing
intel_th: pci: Add Elkhart Lake CPU support
2020-03-25 08:06:11 +01:00
i2c
i2c: altera: Fix race between xfer_msg and isr thread
2020-06-07 13:17:56 +02:00
ide
ide: serverworks: potential overflow in svwks_set_pio_mode()
2020-02-24 08:34:49 +01:00
idle
iio
iio: vcnl4000: Fix i2c swapped word reading.
2020-06-10 21:35:00 +02:00
infiniband
RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated
2020-06-22 09:05:00 +02:00
input
Input: synaptics - add a second working PNP_ID for Lenovo T470s
2020-06-22 09:05:00 +02:00
iommu
iommu: Fix reference count leak in iommu_group_alloc.
2020-06-03 08:19:41 +02:00
ipack
ipack: tpci200: fix error return code in tpci200_register()
2020-05-27 17:37:43 +02:00
irqchip
irqchip/mbigen: Free msi_desc on device teardown
2020-04-23 10:30:13 +02:00
isdn
staging: gigaset: add endpoint-type sanity check
2019-12-17 20:34:33 +01:00
leds
leds: pca963x: Fix open-drain initialization
2020-02-24 08:34:35 +01:00
lightnvm
lightnvm: pblk: fix lock order in pblk_rb_tear_down_check
2020-01-27 14:50:45 +01:00
macintosh
macintosh: windfarm: fix MODINFO regression
2020-03-18 07:14:21 +01:00
mailbox
mailbox: qcom-apcs: fix max_register value
2020-01-27 14:51:14 +01:00
mcb
md
dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath
2020-05-06 08:13:29 +02:00
media
media: si2157: Better check for running tuner in init
2020-06-22 09:05:09 +02:00
memory
memory: tegra: Don't invoke Tegra30+ specific memory timing setup on Tegra20
2020-01-27 14:50:13 +01:00
memstick
message
scsi: mptfusion: Fix double fetch bug in ioctl
2020-01-23 08:21:28 +01:00
mfd
mfd: intel-lpss: Use devm_ioremap_uc for MMIO
2020-05-10 10:30:11 +02:00
misc
mei: release me_cl object reference
2020-05-27 17:37:43 +02:00
mmc
mmc: meson-mx-sdio: trigger a soft reset after a timeout or CRC error
2020-06-22 09:05:12 +02:00
mtd
ubi: Fix seq_file usage in detailed_erase_block_info debugfs file
2020-05-27 17:37:30 +02:00
mux
net
e1000: Distribute switch variables for initialization
2020-06-22 09:05:13 +02:00
nfc
NFC: st21nfca: add missed kfree_skb() in an error path
2020-06-10 21:34:59 +02:00
ntb
ntb_hw_switchtec: potential shift wrapping bug in switchtec_ntb_init_sndev()
2020-01-27 14:50:55 +01:00
nubus
nvdimm
libnvdimm: Fix endian conversion issues
2020-06-07 13:17:53 +02:00
nvme
nvme: fix deadlock caused by ANA update wrong locking
2020-04-29 16:31:12 +02:00
nvmem
nvmem: qfprom: remove incorrect write support
2020-06-10 21:35:00 +02:00
of
of: overlay: kmemleak in dup_and_fixup_symbol_prop()
2020-04-23 10:30:14 +02:00
opp
OPP: Fix missing debugfs supply directory for OPPs
2020-01-27 14:50:04 +01:00
oprofile
parisc
parport
parport: load lowlevel driver if ports not found
2019-12-31 16:36:01 +01:00
pci
PCI: Move Apex Edge TPU class quirk to fix BAR assignment
2020-05-02 17:25:52 +02:00
pcmcia
perf
drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer
2020-03-25 08:06:07 +01:00
phy
phy: mapphone-mdm6600: Fix write timeouts with shorter GPIO toggle interval
2020-03-11 14:15:10 +01:00
pinctrl
pinctrl: cherryview: Add missing spinlock usage in chv_gpio_irq_handler
2020-05-20 08:18:41 +02:00
platform
platform/x86: asus-nb-wmi: Do not load on Asus T100TA and T200TA
2020-05-27 17:37:35 +02:00
pnp
power
power: supply: axp288_fuel_gauge: Broaden vendor check for Intel Compute Sticks.
2020-04-23 10:30:22 +02:00
powercap
pps
ps3
ptp
ptp: free ptp device pin descriptors properly
2020-01-23 08:21:35 +01:00
pwm
pwm: bcm2835: Dynamically allocate base
2020-04-29 16:31:14 +02:00
rapidio
rapidio: fix an error in get_user_pages_fast() error handling
2020-05-27 17:37:43 +02:00
ras
regulator
regulator: rk808: Lower log level on optional GPIOs being not available
2020-02-24 08:34:40 +01:00
remoteproc
remoteproc: Fix wrong rvring index computation
2020-05-02 17:25:47 +02:00
reset
reset: uniphier: Add SCSSI reset control for each channel
2020-02-24 08:34:44 +01:00
rpmsg
rpmsg: glink: Remove chunk size word align warning
2020-04-13 10:45:16 +02:00
rtc
rtc: 88pm860x: fix possible race condition
2020-04-23 10:30:18 +02:00
s390
s390/cio: avoid duplicated 'ADD' uevents
2020-04-29 16:31:13 +02:00
sbus
scsi
scsi: megaraid_sas: TM command refire leads to controller firmware crash
2020-06-22 09:05:07 +02:00
sfi
sh
siox
slimbus
slimbus: ngd: Fix build error on x86
2019-12-13 08:51:54 +01:00
sn
soc
soc: imx: gpc: fix power up sequencing
2020-04-23 10:30:17 +02:00
soundwire
soundwire: intel: fix PDI/stream mapping for Bulk
2019-12-31 16:35:55 +01:00
spi
spi: dw: Fix Rx-only DMA transfers
2020-06-22 09:05:12 +02:00
spmi
ssb
staging
staging: android: ion: use vmap instead of vm_map_ram
2020-06-22 09:05:12 +02:00
target
scsi: target/iblock: fix WRITE SAME zeroing
2020-05-06 08:13:31 +02:00
tc
tee
tee: optee: Fix compilation issue with nommu
2020-02-05 14:43:50 +00:00
thermal
thermal: brcmstb_thermal: Do not use DT coefficients
2020-03-05 16:42:22 +01:00
thunderbolt
thunderbolt: Drop duplicated get_switch_at_route()
2020-05-27 17:37:40 +02:00
tty
tty: hvc_console, fix crashes on parallel open/close
2020-06-10 21:35:00 +02:00
uio
uio: fix a sleep-in-atomic-context bug in uio_dmem_genirq_irqcontrol()
2020-02-24 08:34:37 +01:00
usb
CDC-ACM: heed quirk also in error handling
2020-06-10 21:35:00 +02:00
uwb
vfio
vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn()
2020-05-06 08:13:31 +02:00
vhost
vhost/vsock: fix packet delivery order to monitoring devices
2020-05-27 17:37:32 +02:00
video
video: fbdev: w100fb: Fix a potential double free.
2020-06-22 09:05:06 +02:00
virt
virtio
virtio_balloon: prevent pfn array overflow
2020-02-24 08:34:54 +01:00
visorbus
visorbus: fix uninitialized variable access
2020-02-24 08:34:47 +01:00
vlynq
vme
vme: bridges: reduce stack usage
2020-02-24 08:34:47 +01:00
w1
w1: IAD Register is yet readable trough iad sys file. Fix snprintf (%u for unsigned, count for max size).
2019-12-01 09:16:22 +01:00
watchdog
watchdog: reset last_hw_keepalive time at start
2020-04-29 16:31:09 +02:00
xen
xen/pvcalls-back: test for errors when calling backend_connect()
2020-06-22 09:05:09 +02:00
zorro
Kconfig
Makefile