Re: [PATCH v7 3/3] check-module-params: Introduce check-module-params.sh

From: John Moon
Date: Tue Dec 12 2023 - 11:58:57 EST


On 12/11/2023 11:41 PM, Christoph Hellwig wrote:
On Mon, Dec 11, 2023 at 06:02:59PM -0800, John Moon wrote:
One part of maintaining backwards compatibility with older
userspace programs is avoiding changes to module parameters.

Really? I don't think module parameters are a UAPI in the traditional
sense.

Agreed, they're not UAPI in the traditional sense. But, we're trying to establish tooling to help the community stabilize all interfaces that cross the kernel <-> userspace boundary and module params do fall into that bucket.

Now if you break a heavily used one you got to fix it, but
applying strict stability guarantees on module options which are not
availble to normal users or even normal programs doesn't make a whole
lot of sense.


True, but unfortunately we don't have any heuristic to determine if a param is "heavily used". However, in this rev, we added the ability to parse the permissions of a module param, so we could add a filter which does not flag change/removal of params with 0{0,4,6}000 permissions.

It's also obviously fine if the community has no interest in the script. We just wanted to share it as we find it to be a useful supplement to our code reviews and thought maintainers may find it useful as well.

Cheers,
John