On Mon, Sep 30, 2019 at 04:06:50PM -0700, Kees Cook wrote: > On Sun, Sep 29, 2019 at 06:30:12PM +0200, Romain Perier wrote: > This is looking really good; thank you! Glad to read this :) > I think for easier review it > would make sense to break out the "special" cases (where you're changing > structures, etc) into their own patches (and not as a bulk change -- > they need review by different subsystem maintainers, etc). > > Then the patch phases can be: > > 1) Introduce new APIs and casts > 2) Convert special cases include passing the tasklet as their .data > (while also changing the prototypes and replacing tasklet_init() with > tasklet_setup()) => So, one commit per driver for preparing the data structure to own a sub "struct tasklet_struct" + tasklet_init() -> tasklet_setup() with use of "from_tasklet" in the same commit. Right ? For example: the commit "[PRE-REVIEW PATCH 03/16] mmc: renesas_sdhi: Prepare to use the new tasklet API" would contain changes for preparing the driver to use a "struct tasklet_struct" correctly + convert the driver to the new API (tasklet_init() -> tasklet_setup()) Same for commit "[PRE-REVIEW PATCH 04/16] net: liquidio: Prepare to use the new tasklet API". This is what you had in mind ? > 3) Convert DECLARE_TASKLET() users to the same Yeah, this is what you explain in reply to "[PRE-REVIEW PATCH 12/16] tasklet: Pass tasklet_struct pointer as .data in DECLARE_TASKLET", right ? > 4) Manual one-off conversions of tasklet_init() -> tasklet_setup() > 5) Mechanical mass conversion of tasklet_init() -> tasklet_setup() See the reply to the commit "treewide:" about this > 6) Mass removal of .data argument from DECLARE_TASKLET() > 7) tasklet API internal swap and removal of .data > 8) tasklet_init() and helper cast removals. Ack > > Step 1 needs to happen in an -rc1 (e.g. v5.5-rc1). > > Then steps 2, 3, and 4 can happen simultaneously across all the > maintainers that need to be aware of it and land in the next release > (the linux-next for v5.6). > > Finally steps 5, 6, 7, and 8 happen in the next release's -rc1 > (v5.6-rc1). > > If we can get the "phase 1" patch ready quick, maybe we can get into > -rc2 for v5.4 and move things up by a release... > > -Kees > Thanks for your time, Regards, Romain > -- > Kees Cook