[PATCH 0/3] Modernize tasklet callback API

Kees Cook
2020-07-16T03:09:17Z

Hi,

This is the infrastructure changes to prepare the tasklet API for
conversion to passing the tasklet struct as the callback argument instead
of an arbitrary unsigned long. The first patch details why this is useful
(it's the same rationale as the timer_struct changes from a bit ago:
less abuse during memory corruption attacks, more in line with existing
ways of doing things in the kernel, save a little space in struct,
etc). Notably, the existing tasklet API use is much less messy, so there
is less to clean up.

It's not clear to me which tree this should go through... Greg since it
starts with a USB clean-up, -tip for timer or interrupt, or if I should
just carry it. I'm open to suggestions, but if I don't hear otherwise,
I'll just carry it.

My goal is to have this merged for v5.9-rc1 so that during the v5.10
development cycle the new API will be available. The entire tree of
changes is here[1] currently, but to split it up by maintainer the
infrastructure changes need to be landed first.

Review and Acks appreciated! :)

Thanks,

-Kees

[1] https://github.com/allenpais/tasklets/commits/tasklets_V2

Kees Cook (2):
usb: gadget: udc: Avoid tasklet passing a global
treewide: Replace DECLARE_TASKLET() with DECLARE_TASKLET_OLD()

Romain Perier (1):
tasklet: Introduce new initialization API

drivers/input/keyboard/omap-keypad.c | 2 +-
drivers/input/serio/hil_mlc.c | 2 +-
drivers/net/wan/farsync.c | 4 +--
drivers/s390/crypto/ap_bus.c | 2 +-
drivers/staging/most/dim2/dim2.c | 2 +-
drivers/staging/octeon/ethernet-tx.c | 2 +-
drivers/tty/vt/keyboard.c | 2 +-
drivers/usb/gadget/udc/snps_udc_core.c | 6 ++---
drivers/usb/host/fhci-sched.c | 2 +-
include/linux/interrupt.h | 37 ++++++++++++++++++++++----
kernel/backtracetest.c | 2 +-
kernel/debug/debug_core.c | 2 +-
kernel/irq/resend.c | 2 +-
kernel/softirq.c | 18 ++++++++++++-
net/atm/pppoatm.c | 2 +-
net/iucv/iucv.c | 2 +-
sound/drivers/pcsp/pcsp_lib.c | 2 +-
17 files changed, 66 insertions(+), 25 deletions(-)

--
2.25.1