lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250822113159.70b0339d@foz.lan>
Date: Fri, 22 Aug 2025 11:31:59 +0200
From: Mauro Carvalho Chehab <mchehab+huawei@...nel.org>
To: Sakari Ailus <sakari.ailus@....fi>
Cc: linux-kernel@...r.kernel.org, linux-media@...r.kernel.org, Hans Verkuil
 <hverkuil@...all.nl>, Ricardo Ribalda <ribalda@...omium.org>
Subject: Re: [PATCH v4 3/5] docs: media: update maintainer-entry-profile for
 multi-committers

Em Fri, 22 Aug 2025 08:59:29 +0000
Sakari Ailus <sakari.ailus@....fi> escreveu:

> Hi Mauro,
> 
> On Fri, Aug 22, 2025 at 10:23:46AM +0200, Mauro Carvalho Chehab wrote:
> > Em Thu, 21 Aug 2025 12:26:18 +0000
> > Sakari Ailus <sakari.ailus@....fi> escreveu:
> >   
> > > Hi Mauro,
> > > 
> > > This seems pretty good, there are some comments mostly on technicalities
> > > below.
> > > 
> > > On Tue, Dec 03, 2024 at 10:35:47AM +0100, Mauro Carvalho Chehab wrote:  
> > > > As the media subsystem will experiment with a multi-committers model,
> > > > update the Maintainer's entry profile to the new rules.
> > > > 
> > > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@...nel.org>
> > > > Signed-off-by: Hans Verkuil <hverkuil@...all.nl>
> > > > Reviewed-by: Ricardo Ribalda <ribalda@...omium.org>
> > > > ---
> > > >  .../media/maintainer-entry-profile.rst        | 241 ++++++++++++++----
> > > >  1 file changed, 189 insertions(+), 52 deletions(-)
> > > > 
> > > > diff --git a/Documentation/driver-api/media/maintainer-entry-profile.rst b/Documentation/driver-api/media/maintainer-entry-profile.rst
> > > > index ffc712a5f632..101f6df6374f 100644
> > > > --- a/Documentation/driver-api/media/maintainer-entry-profile.rst
> > > > +++ b/Documentation/driver-api/media/maintainer-entry-profile.rst
> > > > @@ -4,11 +4,12 @@ Media Subsystem Profile
> > > >  Overview
> > > >  --------
> > > >  
> > > > -The media subsystem covers support for a variety of devices: stream
> > > > -capture, analog and digital TV streams, cameras, remote controllers, HDMI CEC
> > > > -and media pipeline control.
> > > > +The Linux Media Community (aka: the LinuxTV Community) covers support for a
> > > > +variety of devices: stream capture, analog and digital TV streams, cameras,
> > > > +remote controllers, HDMI CEC and media pipeline control.    
> > > 
> > > I'd make a difference here between the Media tree and the Linux Media
> > > community. The drivers in the Media tree support these devices whereas the
> > > community generally works on this codebase.
> > >   
> > > >  
> > > > -It covers, mainly, the contents of those directories:
> > > > +They consist of developers who work with the Linux Kernel media subsystem,
> > > > +which covers, mainly, the contents of those directories:    
> > > 
> > > If you want to refer to the community here, I'd use that word.  
> > 
> > What about this:
> > 
> > <text>
> > The Linux Media Community (aka: the LinuxTV Community) consist of developers 
> > who work with the Linux Kernel media subsystem, together with users who
> > benefit from such develoment and help testing the developed code.  
> 
> How about, with slight modifications:
> 
> The Linux Media Community (aka: the LinuxTV Community) is formed of
> developers working on Linux Kernel Media Subsystem, together with users.

Works for me, although I prefer keep mentioning about the important
role that users play on help testing drivers.

> 
> > 
> > They work on the top of the Media tree, which has code to support a    
> > variety of devices: stream capture, analog and digital TV streams, cameras,
> > remote controllers, HDMI CEC and media pipeline control.
> > 
> > The Media tree is mainly responsible to be the main source of the
> > code under development with the contents of those directories:
> > 
> >   - drivers/media
> >   - drivers/staging/media
> >   - Documentation/admin-guide/media
> >   - Documentation/driver-api/media
> >   - Documentation/userspace-api/media
> >   - Documentation/devicetree/bindings/media/\ [1]_
> >   - include/media
> > </text>
> >   
> > >   
> > > >  
> > > >    - drivers/media
> > > >    - drivers/staging/media
> > > > @@ -27,19 +28,158 @@ It covers, mainly, the contents of those directories:
> > > >  Both media userspace and Kernel APIs are documented and the documentation
> > > >  must be kept in sync with the API changes. It means that all patches that
> > > >  add new features to the subsystem must also bring changes to the
> > > > -corresponding API files.
> > > > +corresponding API documentation files.    
> > > 
> > > I'd drop " files" as the documentation is split between C source code files
> > > and ReST nowadays.  
> > 
> > OK.
> >   
> > > > -Due to the size and wide scope of the media subsystem, media's
> > > > -maintainership model is to have sub-maintainers that have a broad
> > > > -knowledge of a specific aspect of the subsystem. It is the sub-maintainers'
> > > > -task to review the patches, providing feedback to users if the patches are
> > > > +Due to the size and wide scope of the media subsystem, the media's
> > > > +maintainership model is to have committers that have a broad knowledge of    
> > > 
> > > Maintainership or maintenance?
> > > 
> > > s/is to have/recognises/ ?  
> > 
> > OK.
> >    
> > > > +a specific aspect of the subsystem. It is the committers' task to
> > > > +review the patches, providing feedback to users if the patches are
> > > >  following the subsystem rules and are properly using the media kernel and
> > > >  userspace APIs.
> > > >  
> > > > -Patches for the media subsystem must be sent to the media mailing list
> > > > -at linux-media@...r.kernel.org as plain text only e-mail. Emails with
> > > > -HTML will be automatically rejected by the mail server. It could be wise
> > > > -to also copy the sub-maintainer(s).
> > > > +Media committers
> > > > +----------------
> > > > +
> > > > +In the media subsystem, there are experienced developers who can push
> > > > +patches directly to the development tree. These developers are called
> > > > +Media committers and are divided into the following categories:
> > > > +
> > > > +- Committers:
> > > > +    contributors for one or more drivers within the media subsystem.
> > > > +    They can push changes to the tree that do not affect the core or ABI.    
> > > 
> > > Question to Ricardo -- sorry if I already have asked this: can this be
> > > enforced?
> > >   
> > > > +
> > > > +- Core committers:
> > > > +    responsible for part of the media core. They are typically
> > > > +    responsible for one or more drivers within the media subsystem, but, besides
> > > > +    that, they can also merge patches that change the code common to multiple
> > > > +    drivers, including the kernel internal API.    
> > > 
> > > This doesn't say clearly whether e.g. the V4L2 or MC frameworks are
> > > included or not. I think they should be and this should be mentioned. Same
> > > for videobuf2.  
> > 
> > The problem of specifying what the core via frameworks, vb2, etc is that
> > this would require constant maintainance. Core is everything that is not
> > inside a driver for an specific driver.
> > 
> > We called this here as "the code common to multiple drivers". For me it
> > is clear, but if you have a better generic term, I'm all ears.  
> 
> How about:
> 
> - Core committers:
>     responsible for part of the Media Core, including V4L2, Media
>     controller, Videobuf2, CEC and DVB frameworks. They are typically
>     responsible for one or more drivers within the Media Subsystem, but,
>     besides that, they can also merge patches that change the code common
>     to multiple drivers, including the kernel internal API.
> 
> I think we should define Media Subsystem, Media Core and possibly Media
> Community in the glossary but I'd do that after merging this set.

You forgot remote controllers there ;-)

Btw, that's exactly my point: when we enumerate things, we tend to forget
about something, and, when new stuff gets add, we need to remember to
add here.

> 
> >   
> > >   
> > > > +
> > > > +- Subsystem maintainers:
> > > > +    responsible for the subsystem as a whole, with access to the
> > > > +    entire subsystem.
> > > > +
> > > > +    API/ABI changes are done via consensus between subsystem maintainers\ [2]_.
> > > > +
> > > > +    Only subsystem maintainers push changes that affect the userspace
> > > > +    API/ABI. Committers may push ABI/API changes on their commits if they
> > > > +    have approvals from subsystem maintainers.
> > > > +
> > > > +All media committers shall explicitly agree with the Kernel development process
> > > > +as described at Documentation/process/index.rst and to the Kernel
> > > > +development rules inside the Kernel documentation, including its code of
> > > > +conduct.    
> > > 
> > > Is there a need to mention this? Aren't people generally expected to
> > > follow the process anyway?  
> > 
> > There's a big difference between "generally expected" and "have to agree".
> > The goal here is really to prevent having bad committers as we had in the
> > past on our previous multicommiters model before we moved to git. If this
> > ever have again, by having an explicit agreement, one cannot deny he/she
> > didn't know the rules.  
> 
> Fair enough. Either way, enforment is discretionary so I think this is
> fine -- mistakes tend to happen, to everybody, at least in some extent.

Yeah, mistakes can happen. What we want to cover is intentional misbehavior.

> > > > +
> > > > +.. [2] Everything that would break backward compatibility with existing
> > > > +       non-kernel code are API/ABI changes. This includes ioctl and sysfs
> > > > +       interfaces, v4l2 controls, and their behaviors.
> > > > +
> > > > +Media development tree
> > > > +----------------------
> > > > +
> > > > +The main development tree used by the media subsystem is hosted at LinuxTV.org,
> > > > +where we also maintain news about the subsystem, wiki pages and a patchwork
> > > > +instance where we track patches though their lifetime.
> > > > +
> > > > +The main tree used by media developers is at:
> > > > +
> > > > +https://git.linuxtv.org/media.git/
> > > > +
> > > > +.. _Media development workflow:
> > > > +
> > > > +Media development workflow
> > > > +++++++++++++++++++++++++++
> > > > +
> > > > +All changes for the media subsystem must be sent first as e-mails to the    
> > > 
> > > s/must/shall/ ?  
> > 
> > OK.
> >   
> > > > +media mailing list, following the process documented at
> > > > +Documentation/process/index.rst.
> > > > +
> > > > +It means that patches shall be submitted as plain text only via e-mail to
> > > > +linux-media@...r.kernel.org (aka: LMML). While subscription is not mandatory,
> > > > +you can find details about how to subscribe to it and to see its archives at:
> > > > +
> > > > +  https://subspace.kernel.org/vger.kernel.org.html
> > > > +
> > > > +Emails with HTML will be automatically rejected by the mail server.
> > > > +
> > > > +It could be wise to also copy the media committer(s). You should use
> > > > +``scripts/get_maintainers.pl`` to identify whom else needs to be copied.
> > > > +Please always copy driver's authors and maintainers.
> > > > +
> > > > +To minimize the chance of merge conflicts for your patch series, and make
> > > > +easier to backport patches to stable Kernels, we recommend that you use the
> > > > +following baseline for your patch series:
> > > > +
> > > > +1. Features for the next mainline release:
> > > > +
> > > > +   - baseline shall be media.git ``next`` branch;
> > > > +
> > > > +2. Bug fixes for the current mainline release:
> > > > +
> > > > +   - baseline shall be the latest mainline release or media.git ``fixes``
> > > > +     if changes depend on a fix already merged;
> > > > +
> > > > +3. Bug fixes for the next mainline release:
> > > > +
> > > > +   - baseline shall be a prepatch release (-rcX) or media.git ``fixes``
> > > > +     if changes depend on a fix already merged. It is also
> > > > +     fine to use media.git ``next`` as baseline for such patches if such
> > > > +     patches apply cleanly on ``fixes``.
> > > > +
> > > > +.. Note::
> > > > +
> > > > +   See https://www.kernel.org/category/releases.html for an overview
> > > > +   about Kernel release types.
> > > > +
> > > > +Patches with fixes shall have:
> > > > +
> > > > +- a ``Fixes:`` tag pointing to the first commit that introduced the bug;
> > > > +- when applicable, a ``Cc: stable@...r.kernel.org``.
> > > > +
> > > > +Patches that were fixing bugs publicly reported by someone at the
> > > > +linux-media@...r.kernel.org mailing list shall have:
> > > > +
> > > > +- a ``Reported-by:`` tag immediately followed by a ``Closes:`` tag.
> > > > +
> > > > +Patches that change API shall update documentation accordingly at the
> > > > +same patch series.
> > > > +
> > > > +See Documentation/process/index.rst for more details about e-mail submission.
> > > > +
> > > > +Once a patch is submitted, it may follow either one of the following
> > > > +workflows:
> > > > +
> > > > +a. Pull request workflow: patches are handled by subsystem maintainers::
> > > > +
> > > > +     +-------+   +---------+   +-------+   +-----------------------+   +---------+
> > > > +     |e-mail |-->|patchwork|-->|pull   |-->|maintainers merge      |-->|media.git|
> > > > +     |to LMML|   |picks it |   |request|   |in media-committers.git|   +---------+
> > > > +     +-------+   +---------+   +-------+   +-----------------------+
> > > > +
> > > > +   For this workflow, pull requests can be generated by committers,
> > > > +   former committers, subsystem maintainers or by trusted long-time
> > > > +   contributors. If you are not in such group, please don't submit
> > > > +   pull requests, as they will not be processed.
> > > > +
> > > > +b. Committers' workflow: patches are handled by media committers::
> > > > +
> > > > +     +-------+   +---------+   +--------------------+   +-----------+   +---------+
> > > > +     |e-mail |-->|patchwork|-->|committers merge at |-->|maintainers|-->|media.git|
> > > > +     |to LMML|   |picks it |   |media-committers.git|   |approval   |   +---------+
> > > > +     +-------+   +---------+   +--------------------+   +-----------+
> > > > +
> > > > +On both workflows, all patches shall be properly reviewed at
> > > > +linux-media@...r.kernel.org (LMML) before being merged at media-committers.git.
> > > > +
> > > > +When patches are picked by patchwork and when merged at media-committers,
> > > > +CI bots will check for errors and may provide e-mail feedback about
> > > > +patch problems. When this happens, the patch submitter must fix them, or    
> > > 
> > > I'd remove the latter comma.  
> > 
> > OK.
> >   
> > >   
> > > > +explain why the errors are false positives.
> > > > +
> > > > +Patches will only be moved to the next stage in those two workflows if they
> > > > +pass on CI or if there are false-positives in the CI reports.
> > > > +
> > > > +Failures during e-mail submission
> > > > ++++++++++++++++++++++++++++++++++
> > > >  
> > > >  Media's workflow is heavily based on Patchwork, meaning that, once a patch
> > > >  is submitted, the e-mail will first be accepted by the mailing list
> > > > @@ -47,51 +187,49 @@ server, and, after a while, it should appear at:
> > > >  
> > > >     - https://patchwork.linuxtv.org/project/linux-media/list/
> > > >  
> > > > -If it doesn't automatically appear there after a few minutes, then
> > > > +If it doesn't automatically appear there after some time [3]_, then
> > > >  probably something went wrong on your submission. Please check if the
> > > > -email is in plain text\ [2]_ only and if your emailer is not mangling
> > > > +email is in plain text\ [4]_ only and if your emailer is not mangling
> > > >  whitespaces before complaining or submitting them again.
> > > >  
> > > > -You can check if the mailing list server accepted your patch, by looking at:
> > > > +To troubleshoot problems, you should first check if the mailing list
> > > > +server has accepted your patch, by looking at:
> > > >  
> > > >     - https://lore.kernel.org/linux-media/
> > > >  
> > > > -.. [2] If your email contains HTML, the mailing list server will simply
> > > > +If the patch is there and not at patchwork, it is likely that your e-mailer
> > > > +mangled the patch. Patchwork internally has logic that checks if the
> > > > +received e-mail contains a valid patch. Any whitespace and new line
> > > > +breakages mangling the patch won't be recognized by patchwork, thus such
> > > > +patch will be rejected.
> > > > +
> > > > +.. [3] It usually takes a few minutes for the patch to arrive, but
> > > > +       the e-mail server may be busy, so it may take up to a few hours
> > > > +       for a patch to be picked by patchwork.    
> > > 
> > > I'd just refer to "longer" in the latter case; there are no fixed time
> > > limits anyway.
> > >   
> > 
> > OK.
> >   
> > > > +
> > > > +.. [4] If your email contains HTML, the mailing list server will simply
> > > >         drop it, without any further notice.
> > > >  
> > > > +.. _media-developers-gpg:
> > > >  
> > > > -Media maintainers
> > > > -+++++++++++++++++
> > > > +Authentication for pull and merge requests
> > > > +++++++++++++++++++++++++++++++++++++++++++
> > > >  
> > > > -At the media subsystem, we have a group of senior developers that
> > > > -are responsible for doing the code reviews at the drivers (also known as
> > > > -sub-maintainers), and another senior developer responsible for the
> > > > -subsystem as a whole. For core changes, whenever possible, multiple
> > > > -media maintainers do the review.
> > > > +The authenticity of developers submitting pull requests and merge requests
> > > > +shall be validated by using PGP signing at some moment.
> > > > +See: :ref:`kernel_org_trust_repository`.
> > > >  
> > > > -The media maintainers that work on specific areas of the subsystem are:
> > > > +With the pull request workflow, pull requests shall use PGP-signed tags.
> > > >  
> > > > -- Remote Controllers (infrared):
> > > > -    Sean Young <sean@...s.org>
> > > > +For more details about PGP sign, please read
> > > > +Documentation/process/maintainer-pgp-guide.rst.
> > > >  
> > > > -- HDMI CEC:
> > > > -    Hans Verkuil <hverkuil@...all.nl>
> > > > +Subsystem maintainers
> > > > +---------------------
> > > >  
> > > > -- Media controller drivers:
> > > > -    Laurent Pinchart <laurent.pinchart@...asonboard.com>
> > > > -
> > > > -- ISP, v4l2-async, v4l2-fwnode, v4l2-flash-led-class and Sensor drivers:
> > > > -    Sakari Ailus <sakari.ailus@...ux.intel.com>
> > > > -
> > > > -- V4L2 drivers and core V4L2 frameworks:
> > > > -    Hans Verkuil <hverkuil@...all.nl>
> > > > -
> > > > -The subsystem maintainer is:
> > > > -  Mauro Carvalho Chehab <mchehab@...nel.org>
> > > > -
> > > > -Media maintainers may delegate a patch to other media maintainers as needed.
> > > > -On such case, checkpatch's ``delegate`` field indicates who's currently
> > > > -responsible for reviewing a patch.
> > > > +The subsystem maintainers are:
> > > > +  - Mauro Carvalho Chehab <mchehab@...nel.org> and
> > > > +  - Hans Verkuil <hverkuil@...all.nl>
> > > >  
> > > >  Submit Checklist Addendum
> > > >  -------------------------
> > > > @@ -106,18 +244,15 @@ that should be used in order to check if the drivers are properly
> > > >  implementing the media APIs:
> > > >  
> > > >  ====================	=======================================================
> > > > -Type			Tool
> > > > +Type			Utility
> > > >  ====================	=======================================================
> > > > -V4L2 drivers\ [3]_	``v4l2-compliance``
> > > > +V4L2 drivers\ [5]_	``v4l2-compliance``
> > > >  V4L2 virtual drivers	``contrib/test/test-media``
> > > >  CEC drivers		``cec-compliance``
> > > >  ====================	=======================================================
> > > >  
> > > > -.. [3] The ``v4l2-compliance`` also covers the media controller usage inside
> > > > -       V4L2 drivers.
> > > > -
> > > > -Other compilance tools are under development to check other parts of the
> > > > -subsystem.
> > > > +.. [5] The ``v4l2-compliance`` utility also covers the media controller usage
> > > > +       inside V4L2 drivers.
> > > >  
> > > >  Those tests need to pass before the patches go upstream.
> > > >  
> > > > @@ -134,6 +269,8 @@ Where the check script is::
> > > >  Be sure to not introduce new warnings on your patches without a
> > > >  very good reason.
> > > >  
> > > > +Please see `Media development workflow`_ for e-mail submission rules.
> > > > +
> > > >  Style Cleanup Patches
> > > >  +++++++++++++++++++++
> > > >  
> > > > @@ -199,7 +336,7 @@ tree between -rc6 and the next -rc1.
> > > >  Please notice that the media subsystem is a high traffic one, so it
> > > >  could take a while for us to be able to review your patches. Feel free
> > > >  to ping if you don't get a feedback in a couple of weeks or to ask
> > > > -other developers to publicly add Reviewed-by and, more importantly,
> > > > +other developers to publicly add ``Reviewed-by:`` and, more importantly,
> > > >  ``Tested-by:`` tags.
> > > >  
> > > >  Please note that we expect a detailed description for ``Tested-by:``,    
> > >   
> 



Thanks,
Mauro

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ