[PATCH linux dev-4.10 v3 00/31] drivers: fsi: client fixes and refactor
Eddie James
eajames at linux.vnet.ibm.com
Fri Oct 6 06:23:53 AEDT 2017
From: "Edward A. James" <eajames at us.ibm.com>
This series refactors the FSI client device drivers. It adds a number of fixes
discovered from bugs over the past several months. Most critically, it fixes
various race conditions in the unbind/remove pathway of the occ-hwmon, occ,
and sbefifo drivers.
Changes since v2:
* split "General clean-up" patches into many more patches
* Change to wake_up_all() in various places
* Set sbe pointer NULL and add check in occ-hwmon. For race safety.
Changes since v1:
* split into multiple patches.
* add memory management patch.
Edward A. James (31):
drivers: fsi: sbefifo: Fix includes
drivers: fsi: sbefifo: Use a defined reschedule length
drivers: fsi: sbefifo: Use __be32 for big endian values
drivers: fsi: sbefifo: white space fixes
drivers: fsi: sbefifo: replace awkward wait_event expression
drivers: fsi: sbefifo: remove redundant function
drivers: fsi: sbefifo: Use goto to reduce put statements
drivers: fsi: sbefifo: Do an earlier get_client call
drivers: fsi: sbefifo: Remove warning and user data access check
drivers: fsi: sbefifo: destroy the ida list on exit
drivers: fsi: sbefifo: Fix module authors and comments
drivers: fsi: sbefifo: Fix include guards in header file
drivers: fsi: SBEFIFO: Fix probe() and remove()
drivers: fsi: SBEFIFO: check for xfr complete in read wait_event
drivers: fsi: occ: Fix includes
drivers: fsi: occ: Fix errant kfree calls
drivers: fsi: occ: remove unused occ_command structure
drivers: fsi: occ: Use big-endian values
drivers: fsi: occ: Return ENODEV if client is NULL
drivers: fsi: occ: Remove early user buffer checking
drivers: fsi: occ: Switch to more logical errnos
drivers: fsi: occ: fix white space and bracket problems
drivers: fsi: occ: Destroy the ida list on exit
drivers: fsi: occ: Remove unnecessary platform_set_drvdata call
drivers: fsi: occ: Add comments for clarity
drivers: fsi: occ: Add OCC response definitions to header
drivers: fsi: occ: Poll while receiving "command in progress"
drivers: fsi: occ: Add cancel to remove() and fix probe()
drivers: fsi: occ: Fix client memory management
drivers/hwmon/occ: Remove repeated ops for OCC command in progress
drivers: hwmon: occ: Cancel occ operations in remove()
drivers/fsi/fsi-sbefifo.c | 311 ++++++++++++++++++++++------------------
drivers/fsi/occ.c | 340 ++++++++++++++++++++++++++------------------
drivers/hwmon/occ/p9_sbe.c | 47 +++---
include/linux/fsi-sbefifo.h | 6 +-
include/linux/occ.h | 20 ++-
5 files changed, 423 insertions(+), 301 deletions(-)
--
1.8.3.1
More information about the openbmc
mailing list