Subject: Re: linux-next: manual merge of the thermal tree with the pm tree

From: "Wysocki, Rafael J" <[email-masked]>
Date: Thu, 5 Jan 2023 21:13:55 +0100

On 1/5/2023 4:30 PM, Daniel Lezcano wrote:
> On 05/01/2023 15:27, Wysocki, Rafael J wrote:
>>
>> On 1/5/2023 12:35 AM, Stephen Rothwell wrote:
>>> Hi all,
>>>
>>> On Thu, 5 Jan 2023 10:10:54 +1100 Stephen Rothwell 
>>> <[email-masked]> wrote:
>>>> Today's linux-next merge of the thermal tree got a conflict in:
>>>>
>>>>    drivers/thermal/intel/x86_pkg_temp_thermal.c
>>>>
>>>> between commit:
>>>>
>>>>    58374a3970a0 ("thermal/x86_pkg_temp_thermal: Add support for 
>>>> handling dynamic tjmax")
>>>>
>>>> from the pm tree and commit:
>>>>
>>>>    03b2e86a24aa ("thermal/drivers/intel: Use generic 
>>>> thermal_zone_get_trip() function")
>>>>
>>>> from the thermal tree.
>>
>> I'm wondering why the above commit is in the linux-next branch of the 
>> thermal tree, though.
>
> If you are referring to commit 03b2e86a24aa, it is part of the series 
> which was reviewed but got some locking conflict issues just before 
> the merge window so we dropped it. You asked me to reintroduce it with 
> the fixes after v6.2-rc1 is out [1].
>
Ah, sorry.  I confused it with the new work posted recently. Apologies.

> The previous conflict and this one is because some changes were picked 
> in the linux-pm branch instead of the thermal/linux-branch.
>
So to be precise, I picked up some new material including fixes into 
linux-pm while you were away, and that should work, because linux-pm is 
an upstream for thermal anyway.

Things are slightly complicated by the fact that thermal/linux-next is 
merged directly into linux-next without going into linux-pm/linux-next.  
However, this also happens with other trees I pull from, like cpufreq 
and devfreq.  In particular, both Viresh and I sometimes apply core 
cpufreq changes and it all works.

> We find thermal Intel changes going directly in linux-pm and thermal 
> changes going through the thermal tree. And sometime thermal core 
> changes picked through linux-pm and sometime through thermal/linux-next.
>
And because effectively linux-pm is the thermal's upstream, it all 
should work.

> In order to prevent these conflicts in the future, I suggest to always 
> merge thermal patches through the thermal tree.
>
There are multiple ways to avoid such conflicts, we just need to be more 
careful IMV.

I may as well merge thermal/linux-next into linux-pm/linux-next before 
pushing it and let you know if there are any conflicts.

>> It is still under review AFAICS.
>
> The series including the patch "thermal/drivers/intel: Use generic 
> ..." are reviewed and ready for inclusion AFAICT.
>
> I'm was waiting for an update of linux-pm/thermal to send a PR against 
> this branch.
>
I see.  I didn't know that, though.

>> Daniel, can you possibly create a bleeding-edge branch for such 
>> things? I can merge it into my bleeding-edge branch on a daily basis.
>
> Yes, I can create a bleeding-edge branch for other patches. Some 
> questions about it:
>
>  - thermal/linux-next will be based on linux-pm/thermal, and 
> thermal/bleeding-edge will be based on thermal/linux-next, right?
>
thermal/bleeding-edge is what will go into thermal/linux-next after 
getting some 0-day coverage.  So the flow may look like this:

- Add stuff to thermal/bleeding-edge.

- It is merged into linux-pm/bleeding-edge (note that this will happen 
every time afresh, so you can rebase it etc. before pushing, no problem).

- Give it a couple of days to get tested.

- Move it into thermal/linux-next if all goes well (they need not be the 
same commits, rebasing is fine).

- Repeat.

There will be some topic thermal branches in linux-pm (eg. Intel thermal 
drivers), but this should not be a problem. We'll see conflicts and 
address them as they appear.

>  - When patches can be considered for the bleeding-edge?

Anything regarded as possible future linux-next material.

>  - When patches can be considered moving from bleeding-edge to 
> linux-next?
>
When they are regarded as ready to go into the mainline during the 
subsequent merge window (or during the ongoing one if there is one in 
progress ATM).  IOW, the normal linux-next rules apply I believe.

> (the questions above are for the thermal tree).
>
Sure.

Thanks!