Re: [PATCH 0/2] UCSI race condition resulting in wrong port state

From: Benjamin Berg
Date: Fri Aug 20 2021 - 09:29:35 EST


Hi,

On Fri, 2021-08-20 at 15:01 +0200, Salvatore Bonaccorso wrote:
> Hi Greg,
>
> On Fri, Nov 06, 2020 at 11:47:25AM +0100, Greg Kroah-Hartman wrote:
> > On Wed, Oct 28, 2020 at 10:10:43AM +0100, Greg Kroah-Hartman wrote:
> > > On Fri, Oct 09, 2020 at 04:40:45PM +0200, Benjamin Berg wrote:
> > > > From: Benjamin Berg <bberg@xxxxxxxxxx>
> > > >
> > > > Hi all,
> > > >
> > > > so, I kept running in an issue where the UCSI port information was saying
> > > > that power was being delivered (online: 1), while no cable was attached.
> > > >
> > > > The core of the problem is that there are scenarios where UCSI change
> > > > notifications are lost. This happens because querying the changes that
> > > > happened is done using the GET_CONNECTOR_STATUS command while clearing the
> > > > bitfield happens from the separate ACK command. Any change in between will
> > > > be lost.
> > > >
> > > > Note that the problem may be almost invisible in the UI as e.g. GNOME will
> > > > still show the battery as discharging. But some policies like automatic
> > > > suspend may be applied incorrectly.
> > > >
> > > > Cc: Hans de Goede <hdegoede@xxxxxxxxxx>
> > > > Cc: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> > > >
> > > > Benjamin Berg (2):
> > > > usb: typec: ucsi: acpi: Always decode connector change information
> > > > usb: typec: ucsi: Work around PPM losing change information
> > >
> > > Do these need to be backported to stable kernel releases? If so, how
> > > far back?
> >
> > Due to the lack of response, I guess they don't need to go to any stable
> > kernel, so will queue them up for 5.11-rc1.
>
> At least one user in Debian (https://bugs.debian.org/992004) would be
> happy to have those backported as well to the 5.10.y series (which we
> will pick up).
>
> So if Benjamin ack's this, this would be great to have in 5.10.y.

Sure, it is reasonable to pull it into 5.10. At the time it just seemed
to me that it was enough of a corner case to not bother.

Note that there was a somewhat related fix later on (for Qualcomm UCSI
firmware), which probably makes sense to pull in too then.

Including Bjorn into the CC list for that.

commit 8c9b3caab3ac26db1da00b8117901640c55a69dd
Author: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
Date: Sat May 15 21:09:53 2021 -0700

usb: typec: ucsi: Clear pending after acking connector change

Benjamin

Attachment: signature.asc
Description: This is a digitally signed message part