From: Greg KH <gregkh@linuxfoundation.org>
To: Kyle Tso <kyletso@google.com>
Cc: linux@roeck-us.net, heikki.krogerus@linux.intel.com,
badhri@google.com, linux-kernel@vger.kernel.org,
linux-usb@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH v2] usb: typec: tcpm: Correct the PDO counting in pd_set
Date: Thu, 4 Apr 2024 15:22:35 +0200 [thread overview]
Message-ID: <2024040417-ice-decal-b37e@gregkh> (raw)
In-Reply-To: <20240326151909.440275-1-kyletso@google.com>
On Tue, Mar 26, 2024 at 11:19:09PM +0800, Kyle Tso wrote:
> Off-by-one errors happen because nr_snk_pdo and nr_src_pdo are
> incorrectly added one. The index of the loop is equal to the number of
> PDOs to be updated when leaving the loop and it doesn't need to be added
> one.
>
> When doing the power negotiation, TCPM relies on the "nr_snk_pdo" as
> the size of the local sink PDO array to match the Source capabilities
> of the partner port. If the off-by-one overflow occurs, a wrong RDO
> might be sent and unexpected power transfer might happen such as over
> voltage or over current (than expected).
>
> "nr_src_pdo" is used to set the Rp level when the port is in Source
> role. It is also the array size of the local Source capabilities when
> filling up the buffer which will be sent as the Source PDOs (such as
> in Power Negotiation). If the off-by-one overflow occurs, a wrong Rp
> level might be set and wrong Source PDOs will be sent to the partner
> port. This could potentially cause over current or port resets.
>
> Fixes: cd099cde4ed2 ("usb: typec: tcpm: Support multiple capabilities")
> Cc: stable@vger.kernel.org
> Signed-off-by: Kyle Tso <kyletso@google.com>
> ---
> v1 -> v2:
> - update the commit message (adding the problems this patch solves)
>
> drivers/usb/typec/tcpm/tcpm.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
This fails to apply to my usb-linus branch :(
Can you rebase and resend?
thanks,
greg k-h
next prev parent reply other threads:[~2024-04-04 13:22 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-26 15:19 [PATCH v2] usb: typec: tcpm: Correct the PDO counting in pd_set Kyle Tso
2024-03-27 11:10 ` Heikki Krogerus
2024-04-04 13:22 ` Greg KH [this message]
2024-04-04 13:39 ` Kyle Tso
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2024040417-ice-decal-b37e@gregkh \
--to=gregkh@linuxfoundation.org \
--cc=badhri@google.com \
--cc=heikki.krogerus@linux.intel.com \
--cc=kyletso@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.