[PATCH 0/4] usb: typec: ucsi: Fix various locking issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Heikki, et al.,

As discussed before here is my fix for the AB BA lock inversion issue
which lockdep found in the ucsi code.

While working on the AB BA fix I added a
WARN_ON(!mutex_is_locked(&ucsi->ppm_lock)) to ucsi_run_command() and
that found me some more unrelated issues of ucsi_run_command() getting
called without the ppm_lock held. This is fixed in the second patch.
This made me realize that the ppm_lock handling should probably just
be pushed down to inside ucsi_run_command() instead of letting the
callers worry about this.

In essence the first 3 patches are all related and all boil down to
push the ppm_lock handling down into ucsi_run_command(), removing the
difference between ucsi_run_command() and ucsi_send_command(). I have
been thinking that we may want to just squash these 3 together. I've
left them as separate patches now as thet document how I go to the
end result after the 3th patch and having them separate might be
easier for reviewing purposes. Let me know if you want a v2 of this
patchset with them squashed into a single "usb: typec: ucsi: Rework
ppm_lock handling" commit (with the commit messages merged).

The 4th patch makes the also already discussed change of holding
con->lock for the entire duration of ucsi_register_port().

Regards,

Hans




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux