Message ID | 20241029133141.45335-1-pchelkin@ispras.ru (mailing list archive) |
---|---|
Headers | show |
Series | On DRM -> stable process | expand |
On Tue, Oct 29, 2024 at 04:31:40PM +0300, Fedor Pchelkin wrote: >BTW, a question to the stable-team: what Git magic (3-way-merge?) let the >duplicate patch be applied successfully? The patch context in stable trees >was different to that moment so should the duplicate have been expected to >fail to be applied? Just plain git... Try it yourself :) $ git checkout 282f0a482ee6 HEAD is now at 282f0a482ee61 drm/amd/display: Skip Recompute DSC Params if no Stream on Link $ git cherry-pick 7c887efda1 Auto-merging drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c [detached HEAD 2a1c937960abd] drm/amd/display: Skip Recompute DSC Params if no Stream on Link Author: Fangzhi Zuo <Jerry.Zuo@amd.com> Date: Fri Jul 12 16:30:03 2024 -0400 1 file changed, 3 insertions(+) $ git log -2 --oneline 2a1c937960abd (HEAD) drm/amd/display: Skip Recompute DSC Params if no Stream on Link 282f0a482ee61 drm/amd/display: Skip Recompute DSC Params if no Stream on Link
On Tue, 29. Oct 10:20, Sasha Levin wrote: > On Tue, Oct 29, 2024 at 04:31:40PM +0300, Fedor Pchelkin wrote: > > BTW, a question to the stable-team: what Git magic (3-way-merge?) let the > > duplicate patch be applied successfully? The patch context in stable trees > > was different to that moment so should the duplicate have been expected to > > fail to be applied? > > Just plain git... Try it yourself :) > > $ git checkout 282f0a482ee6 > HEAD is now at 282f0a482ee61 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > $ git cherry-pick 7c887efda1 7c887efda1 is the commit backported to linux-6.1.y. Of course it will apply there. What I mean is that the upstream commit for 7c887efda1 is 8151a6c13111b465dbabe07c19f572f7cbd16fef. And cherry-picking 8151a6c13111b465dbabe07c19f572f7cbd16fef to linux-6.1.y on top of 282f0a482ee6 will not result in duplicating the change, at least with my git configuration. I just don't understand how a duplicating if-statement could be produced in result of those cherry-pick'ings and how the content of 7c887efda1 was generated. $ git checkout 282f0a482ee6 HEAD is now at 282f0a482ee6 drm/amd/display: Skip Recompute DSC Params if no Stream on Link $ git cherry-pick 8151a6c13111b465dbabe07c19f572f7cbd16fef Auto-merging drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c HEAD detached at 282f0a482ee6 You are currently cherry-picking commit 8151a6c13111. (all conflicts fixed: run "git cherry-pick --continue") (use "git cherry-pick --skip" to skip this patch) (use "git cherry-pick --abort" to cancel the cherry-pick operation) The previous cherry-pick is now empty, possibly due to conflict resolution. If you wish to commit it anyway, use: git commit --allow-empty Otherwise, please use 'git cherry-pick --skip' > Auto-merging drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c > [detached HEAD 2a1c937960abd] drm/amd/display: Skip Recompute DSC Params if no Stream on Link > Author: Fangzhi Zuo <Jerry.Zuo@amd.com> > Date: Fri Jul 12 16:30:03 2024 -0400 > 1 file changed, 3 insertions(+) > > $ git log -2 --oneline > 2a1c937960abd (HEAD) drm/amd/display: Skip Recompute DSC Params if no Stream on Link > 282f0a482ee61 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > -- > Thanks, > Sasha
On Tue, 29. Oct 18:12, Fedor Pchelkin wrote: > On Tue, 29. Oct 10:20, Sasha Levin wrote: > > On Tue, Oct 29, 2024 at 04:31:40PM +0300, Fedor Pchelkin wrote: > > > BTW, a question to the stable-team: what Git magic (3-way-merge?) let the > > > duplicate patch be applied successfully? The patch context in stable trees > > > was different to that moment so should the duplicate have been expected to > > > fail to be applied? > > > > Just plain git... Try it yourself :) > > > > $ git checkout 282f0a482ee6 > > HEAD is now at 282f0a482ee61 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > > > $ git cherry-pick 7c887efda1 > > 7c887efda1 is the commit backported to linux-6.1.y. Of course it will apply > there. > > What I mean is that the upstream commit for 7c887efda1 is 8151a6c13111b465dbabe07c19f572f7cbd16fef. > > And cherry-picking 8151a6c13111b465dbabe07c19f572f7cbd16fef to linux-6.1.y > on top of 282f0a482ee6 will not result in duplicating the change, at least > with my git configuration. > > I just don't understand how a duplicating if-statement could be produced in > result of those cherry-pick'ings and how the content of 7c887efda1 was > generated. > > $ git checkout 282f0a482ee6 > HEAD is now at 282f0a482ee6 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > $ git cherry-pick 8151a6c13111b465dbabe07c19f572f7cbd16fef > Auto-merging drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c > HEAD detached at 282f0a482ee6 > You are currently cherry-picking commit 8151a6c13111. > (all conflicts fixed: run "git cherry-pick --continue") > (use "git cherry-pick --skip" to skip this patch) > (use "git cherry-pick --abort" to cancel the cherry-pick operation) > The previous cherry-pick is now empty, possibly due to conflict resolution. > If you wish to commit it anyway, use: > > git commit --allow-empty > > Otherwise, please use 'git cherry-pick --skip' Sasha, my concern is that maybe there is some issue with the scripts used for the preparation of backport patches. There are two different upstream commits performing the exact same change: - 50e376f1fe3bf571d0645ddf48ad37eb58323919 - 8151a6c13111b465dbabe07c19f572f7cbd16fef 50e376f1fe3bf571d0645ddf48ad37eb58323919 was backported to stable kernels at first. After that, attempts to backport 8151a6c13111b465dbabe07c19f572f7cbd16fef to those stables should be expected to fail, no? Git would have complained about this - the patch was already applied. It is just strange that the (exact same) change made by the commits is duplicated by backporting tools. As it is not the first case where DRM patches are involved per Greg's statement [1], I wonder if something can be done on stable-team's side to avoid such odd behavior in future. [1]: https://lore.kernel.org/stable/20241007035711.46624-1-jsg@jsg.id.au/T/#u -- Thanks, Fedor
On Mon, Nov 4, 2024 at 9:55 AM Fedor Pchelkin <pchelkin@ispras.ru> wrote: > > On Tue, 29. Oct 18:12, Fedor Pchelkin wrote: > > On Tue, 29. Oct 10:20, Sasha Levin wrote: > > > On Tue, Oct 29, 2024 at 04:31:40PM +0300, Fedor Pchelkin wrote: > > > > BTW, a question to the stable-team: what Git magic (3-way-merge?) let the > > > > duplicate patch be applied successfully? The patch context in stable trees > > > > was different to that moment so should the duplicate have been expected to > > > > fail to be applied? > > > > > > Just plain git... Try it yourself :) > > > > > > $ git checkout 282f0a482ee6 > > > HEAD is now at 282f0a482ee61 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > > > > > $ git cherry-pick 7c887efda1 > > > > 7c887efda1 is the commit backported to linux-6.1.y. Of course it will apply > > there. > > > > What I mean is that the upstream commit for 7c887efda1 is 8151a6c13111b465dbabe07c19f572f7cbd16fef. > > > > And cherry-picking 8151a6c13111b465dbabe07c19f572f7cbd16fef to linux-6.1.y > > on top of 282f0a482ee6 will not result in duplicating the change, at least > > with my git configuration. > > > > I just don't understand how a duplicating if-statement could be produced in > > result of those cherry-pick'ings and how the content of 7c887efda1 was > > generated. > > > > $ git checkout 282f0a482ee6 > > HEAD is now at 282f0a482ee6 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > > > $ git cherry-pick 8151a6c13111b465dbabe07c19f572f7cbd16fef > > Auto-merging drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c > > HEAD detached at 282f0a482ee6 > > You are currently cherry-picking commit 8151a6c13111. > > (all conflicts fixed: run "git cherry-pick --continue") > > (use "git cherry-pick --skip" to skip this patch) > > (use "git cherry-pick --abort" to cancel the cherry-pick operation) > > The previous cherry-pick is now empty, possibly due to conflict resolution. > > If you wish to commit it anyway, use: > > > > git commit --allow-empty > > > > Otherwise, please use 'git cherry-pick --skip' > > Sasha, > > my concern is that maybe there is some issue with the scripts used for the > preparation of backport patches. > > There are two different upstream commits performing the exact same change: > - 50e376f1fe3bf571d0645ddf48ad37eb58323919 > - 8151a6c13111b465dbabe07c19f572f7cbd16fef There were cases where I needed to cherry-pick fixes from -next to -fixes. In the past I had not used -x when cherry-picking because I got warnings about references to commits that were not yet in mainline. I have since started using -x when cherry-picking things from -next to -fixes. Alex > > 50e376f1fe3bf571d0645ddf48ad37eb58323919 was backported to stable kernels > at first. After that, attempts to backport 8151a6c13111b465dbabe07c19f572f7cbd16fef > to those stables should be expected to fail, no? Git would have complained > about this - the patch was already applied. > > It is just strange that the (exact same) change made by the commits is > duplicated by backporting tools. As it is not the first case where DRM > patches are involved per Greg's statement [1], I wonder if something can be > done on stable-team's side to avoid such odd behavior in future. > > [1]: https://lore.kernel.org/stable/20241007035711.46624-1-jsg@jsg.id.au/T/#u > > -- > Thanks, > Fedor
On Mon, Nov 04, 2024 at 05:55:28PM +0300, Fedor Pchelkin wrote: > On Tue, 29. Oct 18:12, Fedor Pchelkin wrote: > > On Tue, 29. Oct 10:20, Sasha Levin wrote: > > > On Tue, Oct 29, 2024 at 04:31:40PM +0300, Fedor Pchelkin wrote: > > > > BTW, a question to the stable-team: what Git magic (3-way-merge?) let the > > > > duplicate patch be applied successfully? The patch context in stable trees > > > > was different to that moment so should the duplicate have been expected to > > > > fail to be applied? > > > > > > Just plain git... Try it yourself :) > > > > > > $ git checkout 282f0a482ee6 > > > HEAD is now at 282f0a482ee61 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > > > > > $ git cherry-pick 7c887efda1 > > > > 7c887efda1 is the commit backported to linux-6.1.y. Of course it will apply > > there. > > > > What I mean is that the upstream commit for 7c887efda1 is 8151a6c13111b465dbabe07c19f572f7cbd16fef. > > > > And cherry-picking 8151a6c13111b465dbabe07c19f572f7cbd16fef to linux-6.1.y > > on top of 282f0a482ee6 will not result in duplicating the change, at least > > with my git configuration. > > > > I just don't understand how a duplicating if-statement could be produced in > > result of those cherry-pick'ings and how the content of 7c887efda1 was > > generated. > > > > $ git checkout 282f0a482ee6 > > HEAD is now at 282f0a482ee6 drm/amd/display: Skip Recompute DSC Params if no Stream on Link > > > > $ git cherry-pick 8151a6c13111b465dbabe07c19f572f7cbd16fef > > Auto-merging drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c > > HEAD detached at 282f0a482ee6 > > You are currently cherry-picking commit 8151a6c13111. > > (all conflicts fixed: run "git cherry-pick --continue") > > (use "git cherry-pick --skip" to skip this patch) > > (use "git cherry-pick --abort" to cancel the cherry-pick operation) > > The previous cherry-pick is now empty, possibly due to conflict resolution. > > If you wish to commit it anyway, use: > > > > git commit --allow-empty > > > > Otherwise, please use 'git cherry-pick --skip' > > Sasha, > > my concern is that maybe there is some issue with the scripts used for the > preparation of backport patches. > > There are two different upstream commits performing the exact same change: > - 50e376f1fe3bf571d0645ddf48ad37eb58323919 > - 8151a6c13111b465dbabe07c19f572f7cbd16fef > > 50e376f1fe3bf571d0645ddf48ad37eb58323919 was backported to stable kernels > at first. After that, attempts to backport 8151a6c13111b465dbabe07c19f572f7cbd16fef > to those stables should be expected to fail, no? Git would have complained > about this - the patch was already applied. > > It is just strange that the (exact same) change made by the commits is > duplicated by backporting tools. As it is not the first case where DRM > patches are involved per Greg's statement [1], I wonder if something can be > done on stable-team's side to avoid such odd behavior in future. No, all of this mess needs to be fixed up on the drm developer's side, they are the ones doing this type of crazy "let's commit the same patch to multiple branches and then reference a commit that will show up at an unknown time in the future and hope for the best!" workflow. I'm amazed it works at all, they get to keep fixing up this mess as this is entirely self-inflicted. greg k-h
On Tue, 05. Nov 07:57, Greg Kroah-Hartman wrote: > On Mon, Nov 04, 2024 at 05:55:28PM +0300, Fedor Pchelkin wrote: > > It is just strange that the (exact same) change made by the commits is > > duplicated by backporting tools. As it is not the first case where DRM > > patches are involved per Greg's statement [1], I wonder if something can be > > done on stable-team's side to avoid such odd behavior in future. > > No, all of this mess needs to be fixed up on the drm developer's side, > they are the ones doing this type of crazy "let's commit the same patch > to multiple branches and then reference a commit that will show up at an > unknown time in the future and hope for the best!" workflow. > > I'm amazed it works at all, they get to keep fixing up this mess as this > is entirely self-inflicted. Thanks for reply, I get your remark. DRM people are mostly CC'ed here, hopefully it won't be that difficult to tune their established workflow to make the stable process easier and more straightforward. As of now, would you mind to take the revert for 6.1? It's [PATCH 1/1] in this thread. No point to keep it there, and the duplicated commits were already reverted from the fresher stable kernels.
On Fri, Nov 08, 2024 at 11:41:18AM +0300, Fedor Pchelkin wrote: > On Tue, 05. Nov 07:57, Greg Kroah-Hartman wrote: > > On Mon, Nov 04, 2024 at 05:55:28PM +0300, Fedor Pchelkin wrote: > > > It is just strange that the (exact same) change made by the commits is > > > duplicated by backporting tools. As it is not the first case where DRM > > > patches are involved per Greg's statement [1], I wonder if something can be > > > done on stable-team's side to avoid such odd behavior in future. > > > > No, all of this mess needs to be fixed up on the drm developer's side, > > they are the ones doing this type of crazy "let's commit the same patch > > to multiple branches and then reference a commit that will show up at an > > unknown time in the future and hope for the best!" workflow. > > > > I'm amazed it works at all, they get to keep fixing up this mess as this > > is entirely self-inflicted. > > Thanks for reply, I get your remark. DRM people are mostly CC'ed here, > hopefully it won't be that difficult to tune their established workflow to > make the stable process easier and more straightforward. > > As of now, would you mind to take the revert for 6.1? It's [PATCH 1/1] in > this thread. No point to keep it there, and the duplicated commits were > already reverted from the fresher stable kernels. > I don't see it in my review queue anymore, can you please resend it? thanks, greg k-h