From: Romain Perier <romain.perier@gmail.com>
To: Kees Cook <keescook@chromium.org>, kernel-hardening@lists.openwall.com
Subject: Re: [PRE-REVIEW PATCH 00/16] Modernize the tasklet API
Date: Tue, 1 Oct 2019 19:47:52 +0200 [thread overview]
Message-ID: <20191001174752.GD2748@debby.home> (raw)
In-Reply-To: <201909301552.4AAB4D4@keescook>
[-- Attachment #1: Type: text/plain, Size: 2399 bytes --]
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
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2019-10-01 17:48 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-29 16:30 [PRE-REVIEW PATCH 00/16] Modernize the tasklet API Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 01/16] tasklet: Prepare to change tasklet callback argument type Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 02/16] crypto: ccp - Prepare to use the new tasklet API Romain Perier
2019-09-30 22:35 ` Kees Cook
2019-09-29 16:30 ` [PRE-REVIEW PATCH 03/16] mmc: renesas_sdhi: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 04/16] net: liquidio: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 05/16] chelsio: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 06/16] net: mvpp2: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 07/16] qed: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 08/16] isdn: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 09/16] scsi: pm8001: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 10/16] scsi: pmcraid: " Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 11/16] treewide: Globally replace tasklet_init() by tasklet_setup() Romain Perier
2019-09-30 22:46 ` Kees Cook
2019-10-01 17:18 ` Romain Perier
2019-10-10 22:30 ` Kees Cook
2019-09-29 16:30 ` [PRE-REVIEW PATCH 12/16] tasklet: Pass tasklet_struct pointer as .data in DECLARE_TASKLET Romain Perier
2019-09-30 22:44 ` Kees Cook
2019-09-29 16:30 ` [PRE-REVIEW PATCH 13/16] tasklet: Pass tasklet_struct pointer to callbacks unconditionally Romain Perier
2019-09-30 22:49 ` Kees Cook
2019-09-29 16:30 ` [PRE-REVIEW PATCH 14/16] tasklet: Remove the data argument from DECLARE_TASKLET() macros Romain Perier
2019-09-30 22:50 ` Kees Cook
2019-09-29 16:30 ` [PRE-REVIEW PATCH 15/16] tasklet: convert callbacks prototype for using struct tasklet_struct * arguments Romain Perier
2019-09-29 16:30 ` [PRE-REVIEW PATCH 16/16] tasklet: Add the new initialization function permanently Romain Perier
2019-09-30 22:52 ` Kees Cook
2019-10-01 17:34 ` Romain Perier
2019-09-30 23:06 ` [PRE-REVIEW PATCH 00/16] Modernize the tasklet API Kees Cook
2019-10-01 17:47 ` Romain Perier [this message]
2019-10-10 22:34 ` Kees Cook
2019-10-30 8:20 ` Allen
2019-11-07 7:29 ` Romain Perier
2019-11-07 21:22 ` Kees Cook
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191001174752.GD2748@debby.home \
--to=romain.perier@gmail.com \
--cc=keescook@chromium.org \
--cc=kernel-hardening@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).