[libcamera-devel,0/2] rkisp1: don't enable immutable link
mbox series

Message ID 20200227030001.333291-1-helen.koike@collabora.com
Headers show
Series
  • rkisp1: don't enable immutable link
Related show

Message

Helen Koike Feb. 27, 2020, 2:59 a.m. UTC
The following patch was merged in the Linux kernel media tree:
3eed7385bff6 ("media: staging: media: rkisp1: make links immutable by default")

Which causes the topology configuration in libcamera to fail, since it tries to
enable immutable links.

This patchset fixes the rkisp1-capture.sh scrips and the pipeline
handler.

Question: I was wondering how releases are being mananged by libcamera.
Does this patchset needs to wait for the patch mentioned above to reach
mainline kernel?

Helen Koike (2):
  utils: rkisp1: don't enable immutable link
  libcamera: pipeline: rkisp1: don't enable immutable link

 src/libcamera/pipeline/rkisp1/rkisp1.cpp | 8 --------
 utils/rkisp1/rkisp1-capture.sh           | 1 -
 2 files changed, 9 deletions(-)

Comments

Laurent Pinchart Feb. 29, 2020, 3:28 p.m. UTC | #1
Hi Helen,

(CC'ing Niklas)

On Wed, Feb 26, 2020 at 11:59:59PM -0300, Helen Koike wrote:
> The following patch was merged in the Linux kernel media tree:
> 3eed7385bff6 ("media: staging: media: rkisp1: make links immutable by default")
> 
> Which causes the topology configuration in libcamera to fail, since it tries to
> enable immutable links.
> 
> This patchset fixes the rkisp1-capture.sh scrips and the pipeline
> handler.
> 
> Question: I was wondering how releases are being mananged by libcamera.
> Does this patchset needs to wait for the patch mentioned above to reach
> mainline kernel?

Short answer: we don't have a release process yet :-) Longer term our
baseline for merging code in libcamera is having corresponding support
in mainline. For drivers not in staging, userspace API breakages are not
allowed, so we'd need to consider that for kernel changes. For drivers
in staging I think waiting for the change to appear in a release would
be nice for end-users.

I think we'll need to care about backward compatibility, and handle that
in libcamera. This may actually make it easier to change the kernel
userspace API in a non backward-compatible way. For this specific
change, enabling an immutable link should be a no-op, right ? We would
then likely keep the code in libcamera, maybe with a comment explaining
the issue, and with a scheduled removal data.

As we have no release yet, I think we can just merge the changes
already. Niklas, any opinion ? Can you handle this ?

> Helen Koike (2):
>   utils: rkisp1: don't enable immutable link
>   libcamera: pipeline: rkisp1: don't enable immutable link
> 
>  src/libcamera/pipeline/rkisp1/rkisp1.cpp | 8 --------
>  utils/rkisp1/rkisp1-capture.sh           | 1 -
>  2 files changed, 9 deletions(-)
Niklas Söderlund March 17, 2020, 8:37 p.m. UTC | #2
Hello,

Sorry for the very late reply, I had completely missed this thread.

On 2020-02-29 17:28:31 +0200, Laurent Pinchart wrote:
> Hi Helen,
> 
> (CC'ing Niklas)
> 
> On Wed, Feb 26, 2020 at 11:59:59PM -0300, Helen Koike wrote:
> > The following patch was merged in the Linux kernel media tree:
> > 3eed7385bff6 ("media: staging: media: rkisp1: make links immutable by default")
> > 
> > Which causes the topology configuration in libcamera to fail, since it tries to
> > enable immutable links.
> > 
> > This patchset fixes the rkisp1-capture.sh scrips and the pipeline
> > handler.
> > 
> > Question: I was wondering how releases are being mananged by libcamera.
> > Does this patchset needs to wait for the patch mentioned above to reach
> > mainline kernel?
> 
> Short answer: we don't have a release process yet :-) Longer term our
> baseline for merging code in libcamera is having corresponding support
> in mainline. For drivers not in staging, userspace API breakages are not
> allowed, so we'd need to consider that for kernel changes. For drivers
> in staging I think waiting for the change to appear in a release would
> be nice for end-users.
> 
> I think we'll need to care about backward compatibility, and handle that
> in libcamera. This may actually make it easier to change the kernel
> userspace API in a non backward-compatible way. For this specific
> change, enabling an immutable link should be a no-op, right ? We would
> then likely keep the code in libcamera, maybe with a comment explaining
> the issue, and with a scheduled removal data.
> 
> As we have no release yet, I think we can just merge the changes
> already. Niklas, any opinion ? Can you handle this ?

I think we only need to start to _really_ care about backwards 
compatibility once we have a release. So think we should merge this 
series.

I can handle this. I will test the latest media tree with this series 
and if everything works as it should I will merge it. Unfortunately I'm 
quiet swamped at the moment so will probably be at the end of the week.

> 
> > Helen Koike (2):
> >   utils: rkisp1: don't enable immutable link
> >   libcamera: pipeline: rkisp1: don't enable immutable link
> > 
> >  src/libcamera/pipeline/rkisp1/rkisp1.cpp | 8 --------
> >  utils/rkisp1/rkisp1-capture.sh           | 1 -
> >  2 files changed, 9 deletions(-)
> 
> -- 
> Regards,
> 
> Laurent Pinchart
Niklas Söderlund March 20, 2020, 12:52 a.m. UTC | #3
Hi Helen,

Merged to master, thanks for your work.

On 2020-02-26 23:59:59 -0300, Helen Koike wrote:
> The following patch was merged in the Linux kernel media tree:
> 3eed7385bff6 ("media: staging: media: rkisp1: make links immutable by default")
> 
> Which causes the topology configuration in libcamera to fail, since it tries to
> enable immutable links.
> 
> This patchset fixes the rkisp1-capture.sh scrips and the pipeline
> handler.
> 
> Question: I was wondering how releases are being mananged by libcamera.
> Does this patchset needs to wait for the patch mentioned above to reach
> mainline kernel?
> 
> Helen Koike (2):
>   utils: rkisp1: don't enable immutable link
>   libcamera: pipeline: rkisp1: don't enable immutable link
> 
>  src/libcamera/pipeline/rkisp1/rkisp1.cpp | 8 --------
>  utils/rkisp1/rkisp1-capture.sh           | 1 -
>  2 files changed, 9 deletions(-)
> 
> -- 
> 2.25.0
>