[PATCH V2] staging: gpib: Fix lpvo request_system_control

Dave Penkler posted 1 patch 7 months, 3 weeks ago
drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c | 1 -
1 file changed, 1 deletion(-)
[PATCH V2] staging: gpib: Fix lpvo request_system_control
Posted by Dave Penkler 7 months, 3 weeks ago
The IEEE-488 GPIB standard was designed to ensure that there is only ever
one controller-in-charge on the bus at any one time. If a board becomes
controller-in-charge on request_system_control there is no way to ensure
that there is not another board also acting as controller-in-charge.
This can lead to bus conflicts and hangs.

Remove the setting of controller-in-charge from request_system_control.

Fixes: fce79512a96a ("staging: gpib: Add LPVO DIY USB GPIB driver")
Signed-off-by: Dave Penkler <dpenkler@gmail.com>
---

Changes V1->V2: Expand commit message to include user impact of bug

 drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c b/drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c
index 2e315c7756c4..3cf5037c0cd2 100644
--- a/drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c
+++ b/drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c
@@ -916,7 +916,6 @@ static int usb_gpib_request_system_control(struct gpib_board *board, int request
 	if (!request_control)
 		return -EINVAL;
 
-	set_bit(CIC_NUM, &board->status);
 	DIA_LOG(1, "done with %d -> %lx\n", request_control, board->status);
 	return 0;
 }
-- 
2.49.0