android_kernel_motorola_sm6375/drivers
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Nathan Chancellor e390838eef hamradio: baycom_epp: Fix return type of baycom_send_packet()
[ Upstream commit c5733e5b15d91ab679646ec3149e192996a27d5d ]

With clang's kernel control flow integrity (kCFI, CONFIG_CFI_CLANG),
indirect call targets are validated against the expected function
pointer prototype to make sure the call target is valid to help mitigate
ROP attacks. If they are not identical, there is a failure at run time,
which manifests as either a kernel panic or thread getting killed. A
proposed warning in clang aims to catch these at compile time, which
reveals:

  drivers/net/hamradio/baycom_epp.c:1119:25: error: incompatible function pointer types initializing 'netdev_tx_t (*)(struct sk_buff *, struct net_device *)' (aka 'enum netdev_tx (*)(struct sk_buff *, struct net_device *)') with an expression of type 'int (struct sk_buff *, struct net_device *)' [-Werror,-Wincompatible-function-pointer-types-strict]
          .ndo_start_xmit      = baycom_send_packet,
                                ^~~~~~~~~~~~~~~~~~
  1 error generated.

->ndo_start_xmit() in 'struct net_device_ops' expects a return type of
'netdev_tx_t', not 'int'. Adjust the return type of baycom_send_packet()
to match the prototype's to resolve the warning and CFI failure.

Link: https://github.com/ClangBuiltLinux/linux/issues/1750
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20221102160610.1186145-1-nathan@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-01-18 11:41:35 +01:00
..
accessibility
acpi ACPICA: Fix error code path in acpi_ds_call_control_method() 2023-01-18 11:41:34 +01:00
amba
android binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0 2022-12-08 11:23:01 +01:00
ata pata_ipx4xx_cf: Fix unsigned comparison with less than zero 2023-01-18 11:40:59 +01:00
atm atm: idt77252: fix use-after-free bugs caused by tst_timer 2022-08-25 11:18:26 +02:00
auxdisplay
base class: fix possible memory leak in __class_register() 2023-01-18 11:41:21 +01:00
bcma
block drbd: use after free in drbd_create_device() 2022-11-25 17:42:16 +01:00
bluetooth Bluetooth: hci_bcsp: don't call kfree_skb() under spin_lock_irqsave() 2023-01-18 11:41:16 +01:00
bus bus: sunxi-rsb: Support atomic transfers 2022-12-08 11:22:57 +01:00
cdrom
char ipmi: fix memleak when unload ipmi driver 2023-01-18 11:41:35 +01:00
clk clk: socfpga: Fix memory leak in socfpga_gate_init() 2023-01-18 11:41:13 +01:00
clocksource clocksource/drivers/sh_cmt: Make sure channel clock supply is enabled 2023-01-18 11:40:56 +01:00
connector
counter counter: stm32-lptimer-cnt: fix the check on arr and cmp registers update 2023-01-18 11:41:24 +01:00
cpufreq cpufreq: amd_freq_sensitivity: Add missing pci_dev_put() 2023-01-18 11:40:55 +01:00
cpuidle cpuidle: dt: Return the correct numbers of parsed idle states 2023-01-18 11:40:53 +01:00
crypto crypto: img-hash - Fix variable dereferenced before check 'hdev->req' 2023-01-18 11:41:21 +01:00
dax
dca
devfreq
dio drivers: dio: fix possible memory leak in dio_init() 2023-01-18 11:41:21 +01:00
dma dmaengine: at_hdmac: Check return code of dma_async_device_register 2022-11-25 17:42:10 +01:00
dma-buf udmabuf: Set the DMA mask for the udmabuf device (v2) 2022-09-05 10:27:45 +02:00
edac EDAC/i10nm: fix refcount leak in pci_get_dev_wrapper() 2023-01-18 11:40:55 +01:00
eisa
extcon
firewire
firmware firmware: coreboot: Register bus in module init 2022-12-08 11:23:00 +01:00
fpga fpga: altera-pr-ip: fix unsigned comparison with less than zero 2022-08-25 11:17:51 +02:00
fsi fsi: core: Check error number after calling ida_simple_get 2022-10-26 13:22:41 +02:00
gnss
gpio gpio: amd8111: Fix PCI device reference count leak 2022-12-14 11:30:44 +01:00
gpu drm/etnaviv: add missing quirks for GC300 2023-01-18 11:41:34 +01:00
greybus
hid HID: hid-sensor-custom: set fixed size for custom attributes 2023-01-18 11:41:04 +01:00
hsi HSI: omap_ssi_core: Fix error handling in ssi_init() 2023-01-18 11:41:28 +01:00
hv Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register() 2022-12-08 11:22:58 +01:00
hwmon hwmon: (coretemp) fix pci device refcount leak in nv1a_ram_new() 2022-12-08 11:23:03 +01:00
hwspinlock
hwtracing intel_th: pci: Add Meteor Lake-P support 2022-08-25 11:18:13 +02:00
i2c i2c: ismt: Fix an out-of-bounds bug in ismt_access() 2023-01-18 11:41:26 +01:00
i3c
ide
idle intel_idle: Disable IBRS during long idle 2022-10-07 09:16:55 +02:00
iio iio: light: rpr0521: add missing Kconfig dependencies 2022-12-08 11:23:02 +01:00
infiniband RDMA/siw: Fix pointer cast warning 2023-01-18 11:41:29 +01:00
input Input: elants_i2c - properly handle the reset GPIO when power is off 2023-01-18 11:41:03 +01:00
interconnect
iommu iommu/fsl_pamu: Fix resource leak in fsl_pamu_probe() 2023-01-18 11:41:29 +01:00
ipack
irqchip irqchip: gic-pm: Use pm_runtime_resume_and_get() in gic_probe() 2023-01-18 11:40:54 +01:00
isdn mISDN: hfcmulti: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave() 2023-01-18 11:41:32 +01:00
leds
lightnvm
macintosh macintosh/macio-adb: check the return value of ioremap() 2023-01-18 11:41:29 +01:00
mailbox mailbox: zynq-ipi: fix error handling while device_register() fails 2023-01-18 11:41:33 +01:00
mcb mcb: mcb-parse: fix error handing in chameleon_parse_gdd() 2023-01-18 11:41:25 +01:00
md dm integrity: flush the journal on suspend 2022-12-08 11:23:01 +01:00
media media: coda: Add check for kmalloc 2023-01-18 11:41:12 +01:00
memory memory: of: Fix refcount leak bug in of_get_ddr_timings() 2022-10-26 13:22:31 +02:00
memstick memstick/ms_block: Fix a memory leak 2022-08-25 11:17:55 +02:00
message
mfd mfd: sm501: Add check for platform_driver_register() 2022-10-26 13:22:42 +02:00
misc cxl: Fix refcount leak in cxl_calc_capp_routing 2023-01-18 11:41:30 +01:00
mmc mmc: mmci: fix return value check of mmc_add_host() 2023-01-18 11:41:11 +01:00
mtd mtd: maps: pxa2xx-flash: fix memory leak in probe 2023-01-18 11:41:05 +01:00
mux
net hamradio: baycom_epp: Fix return type of baycom_send_packet() 2023-01-18 11:41:35 +01:00
nfc nfc: pn533: Clear nfc_target before being used 2023-01-18 11:41:32 +01:00
ntb NTB: ntb_tool: uninitialized heap data in tool_fn_write() 2022-08-25 11:18:26 +02:00
nubus
nvdimm
nvme nvme initialize core quirks before calling nvme_init_subsystem 2022-12-14 11:30:46 +01:00
nvmem
of of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry() and find_dup_cset_prop() 2023-01-18 11:41:14 +01:00
opp opp: Fix error check in dev_pm_opp_attach_genpd() 2022-08-25 11:18:00 +02:00
oprofile
parisc parisc: Export iosapic_serial_irq() symbol for serial port driver 2022-11-10 17:57:56 +01:00
parport parport_pc: Avoid FIFO port location truncation 2022-11-25 17:42:14 +01:00
pci PCI: Check for alloc failure in pci_request_irq() 2023-01-18 11:41:18 +01:00
pcmcia
perf perf/smmuv3: Fix hotplug callback leak in arm_smmu_pmu_init() 2023-01-18 11:40:50 +01:00
phy phy: stm32: fix an error code in probe 2022-11-25 17:42:03 +01:00
pinctrl pinctrl: pinconf-generic: add missing of_node_put() 2023-01-18 11:41:06 +01:00
platform platform/x86: mxm-wmi: fix memleak in mxm_wmi_call_mx[ds|mx]() 2023-01-18 11:40:58 +01:00
pnp PNP: fix name memory leak in pnp_alloc_dev() 2023-01-18 11:40:54 +01:00
power power: supply: fix null pointer dereferencing in power_supply_get_battery_info 2023-01-18 11:41:28 +01:00
powercap powercap: intel_rapl: fix UBSAN shift-out-of-bounds issue 2022-10-26 13:22:47 +02:00
pps
ps3
ptp
pwm pwm: sifive: Call pwm_sifive_update_clock() while mutex is held 2023-01-18 11:41:30 +01:00
rapidio rapidio: devices: fix missing put_device in mport_cdev_open 2023-01-18 11:40:59 +01:00
ras
regulator regulator: core: fix resource leak in regulator_register() 2023-01-18 11:41:09 +01:00
remoteproc remoteproc: qcom_q6v5_pas: Fix missing of_node_put() in adsp_alloc_memory_region() 2023-01-18 11:41:31 +01:00
reset
rpmsg rpmsg: qcom: glink: replace strncpy() with strscpy_pad() 2022-10-15 07:54:38 +02:00
rtc rtc: mxc_v2: Add missing clk_disable_unprepare() 2023-01-18 11:41:32 +01:00
s390 s390/dasd: fix no record found for raw_track_access 2022-12-08 11:22:59 +01:00
sbus
scsi scsi: snic: Fix possible UAF in snic_tgt_create() 2023-01-18 11:41:20 +01:00
sfi
sh
siox siox: fix possible memory leak in siox_device_add() 2022-11-25 17:42:14 +01:00
slimbus slimbus: stream: correct presence rate frequencies 2022-11-25 17:42:17 +01:00
soc soc: ti: knav_qmss_queue: Fix PM disable depth imbalance in knav_queue_probe 2023-01-18 11:40:50 +01:00
soundwire soundwire: bus_type: fix remove and shutdown support 2022-08-25 11:17:54 +02:00
spi spi: spi-gpio: Don't set MOSI as an input if not 3WIRE mode 2023-01-18 11:41:12 +01:00
spmi spmi: pmic-arb: correct duplicate APID to PPID mapping logic 2022-10-26 13:22:43 +02:00
ssb
staging staging: rtl8192e: Fix potential use-after-free in rtllib_rx_Monitor() 2023-01-18 11:41:25 +01:00
target scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus() 2022-11-25 17:42:20 +01:00
tc
tee tee: optee: fix possible memory leak in optee_register_device() 2022-12-08 11:22:57 +01:00
thermal thermal: intel_powerclamp: Use first online CPU as control_cpu 2022-10-26 13:23:01 +02:00
thunderbolt thunderbolt: Use the actual buffer in tb_async_error() 2022-09-15 12:04:52 +02:00
tty serial: sunsab: Fix error handling in sunsab_init() 2023-01-18 11:41:23 +01:00
uio uio: uio_dmem_genirq: Fix deadlock between irq config and handling 2023-01-18 11:41:22 +01:00
usb usb: storage: Add check for kcalloc 2023-01-18 11:41:26 +01:00
vfio vfio: platform: Do not pass return buffer to ACPI _RST method 2023-01-18 11:41:22 +01:00
vhost vhost/vsock: Use kvmalloc/kvfree for larger packets. 2022-10-26 13:22:25 +02:00
video fbdev: uvesafb: Fixes an error handling path in uvesafb_probe() 2023-01-18 11:41:27 +01:00
virt vboxguest: Do not use devm for irq 2022-08-25 11:18:33 +02:00
virtio
visorbus
vlynq
vme vme: Fix error not catched in fake_init() 2023-01-18 11:41:26 +01:00
w1
watchdog watchdog: armada_37xx_wdt: check the return value of devm_ioremap() in armada_37xx_wdt_probe() 2022-08-25 11:18:06 +02:00
xen xen/privcmd: Fix a possible warning in privcmd_ioctl_mmap_resource() 2023-01-18 11:40:57 +01:00
zorro
Kconfig
Makefile