]> git.baikalelectronics.ru Git - kernel.git/commit
media: em28xx-dvb: simplify DVB module probing logic
authorMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 2 Mar 2018 14:23:04 +0000 (09:23 -0500)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 6 Mar 2018 10:08:43 +0000 (05:08 -0500)
commit96abeb979a792063d16f0aa58f1701d5b8807bdd
tree60ee8af615462515a1bc05a16f0210ad91185169
parentb5636d4d4177d609b609bea443ab32191713d0aa
media: em28xx-dvb: simplify DVB module probing logic

The module probing logic there is a way more complex than
it should be, and requires some special magic to avoid
stack overflows when KASAN is enabled.

Solve it by creating ancillary functions to setup the
platform data and request module.

Now, the probing functions are cleaner and easier to understand.

As a side effect, the size of the module was reduced by
about 9.7% on x86_64:

Before this patch:
   text    data     bss     dec     hex filename
  51090   14192      96   65378    ff62 drivers/media/usb/em28xx/em28xx-dvb.o

After this patch:
   text    data     bss     dec     hex filename
  44743   14192      96   59031    e697 drivers/media/usb/em28xx/em28xx-dvb.o

Tested with a PCTV 461e device.

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/usb/em28xx/em28xx-dvb.c