linux_dsm_epyc7002/drivers/media/usb
Arnd Bergmann f410b4093f media: em28xx: split up em28xx_dvb_init to reduce stack size
With CONFIG_KASAN, the init function uses a large amount of kernel stack:

drivers/media/usb/em28xx/em28xx-dvb.c: In function 'em28xx_dvb_init.part.4':
drivers/media/usb/em28xx/em28xx-dvb.c:2061:1: error: the frame size of 3232 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]

Using gcc-7 with -fsanitize-address-use-after-scope makes this even worse:

drivers/media/usb/em28xx/em28xx-dvb.c: In function 'em28xx_dvb_init':
drivers/media/usb/em28xx/em28xx-dvb.c:2069:1: error: the frame size of 4280 bytes is larger than 3072 bytes [-Werror=frame-larger-than=]

By splitting out each part of the switch/case statement that has its own local
variables into a separate function, no single one of them uses more than 500 bytes,
and with a noinline_for_stack annotation we can ensure that they are not merged
back together.

[mchehab@s-opensource.com: fix conflict with changeset
 be7fd3c3a8 ("media: em28xx: Hauppauge DualHD second tuner functionality")]

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mauro Carvalho Chehab <>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2018-03-06 04:59:57 -05:00
..
airspy media: usb: make video_device const 2017-08-27 08:45:32 -04:00
as102 media: fix usage of whitespaces and on indentation 2018-01-04 13:12:01 -05:00
au0828 Merge commit 'v4.16-rc4~0' into patchwork 2018-03-05 07:39:06 -05:00
b2c2 media: move dvb kAPI headers to include/media 2017-12-28 13:16:01 -05:00
cpia2 vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
cx231xx vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
dvb-usb media: cxusb, dib0700: ignore XC2028_I2C_FLUSH 2018-01-29 07:47:47 -05:00
dvb-usb-v2 media: move dvb kAPI headers to include/media 2017-12-28 13:16:01 -05:00
em28xx media: em28xx: split up em28xx_dvb_init to reduce stack size 2018-03-06 04:59:57 -05:00
go7007 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
gspca media: gspca: dtcs033: use %*ph to print small buffer 2018-02-26 08:14:47 -05:00
hackrf media: usb: make video_device const 2017-08-27 08:45:32 -04:00
hdpvr vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
msi2500 media: usb: fix spelling mistake: "synchronuously" -> "synchronously" 2017-11-07 03:47:09 -05:00
pulse8-cec media: pulse8-cec: print time using time64_t 2017-12-08 11:08:22 -05:00
pvrusb2 vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
pwc media: replace all <spaces><tab> occurrences 2018-01-04 13:15:05 -05:00
rainshadow-cec media: usb: rainshadow-cec: constify serio_device_id 2017-08-20 08:27:29 -04:00
s2255 media: s2255drv: Remove unneeded if else blocks 2018-02-26 07:57:38 -05:00
siano media: replace all <spaces><tab> occurrences 2018-01-04 13:15:05 -05:00
stk1160 media: replace all <spaces><tab> occurrences 2018-01-04 13:15:05 -05:00
stkwebcam vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
tm6000 vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
ttusb-budget media updates for v4.16-rc1 2018-02-06 11:27:48 -08:00
ttusb-dec media: dvb: update buffer mmaped flags and frame counter 2018-02-23 11:44:08 -05:00
usbtv media: usbtv: Add USB ID 1f71:3306 to the UTV007 driver 2018-02-26 07:42:47 -05:00
usbvision media: don't include drivers/media/i2c at cflags 2017-12-28 14:14:09 -05:00
uvc media: uvcvideo: Fixed ktime_t to ns conversion 2018-02-23 02:24:29 -05:00
zr364xx media: annotate ->poll() instances 2017-11-27 16:20:06 -05:00
Kconfig [media] rainshadow-cec: new RainShadow Tech HDMI CEC driver 2017-04-10 12:42:10 -03:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00