Added a detailed comment explaining the role of the mutex in serializing firmware management ioctl() operations. The mutex prevents concurrent access to firmware operations and protects the 'disabled' state flag during disconnection.
Signed-off-by: Sridhar Arra sridhar.arra@yahoo.com --- drivers/staging/greybus/fw-management.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/drivers/staging/greybus/fw-management.c b/drivers/staging/greybus/fw-management.c index a47385175582..56725b711a17 100644 --- a/drivers/staging/greybus/fw-management.c +++ b/drivers/staging/greybus/fw-management.c @@ -28,6 +28,19 @@ struct fw_mgmt {
/* Common id-map for interface and backend firmware requests */ struct ida id_map; + /* + * Mutex to serialize firmware management ioctl() operations and + * protect against concurrent access. + * + * Ensures that user-space cannot perform multiple firmware + * operations in parallel (e.g., updating interface firmware) + * for the same Interface, avoiding race conditions and reducing + * code complexity. + * + * Also protects the 'disabled' state flag, preventing new + * operations from starting when the firmware management + * connection is being disconnected. + */ struct mutex mutex; struct completion completion; struct cdev cdev;