Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bd8ed2fc authored by Vijayavardhan Vennapusa's avatar Vijayavardhan Vennapusa
Browse files

USB: u_data_ipa: Fix spinlock usage in resume_work handler



Fix spinlock usage in bam2bam_data_resume_work handler that could
cause error reported by static analysis tool.

Change-Id: I15bbb5abc98452fcfed2d98547a859a355a391d9
Signed-off-by: default avatarVijayavardhan Vennapusa <vvreddy@codeaurora.org>
parent 2f817b68
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -1107,18 +1107,18 @@ static void bam2bam_data_resume_work(struct work_struct *w)
	unsigned long flags;
	int ret;

	if (!port->port_usb->cdev) {
		pr_err("!port->port_usb->cdev is NULL");
	spin_lock_irqsave(&port->port_lock, flags);
	if (!port->port_usb || !port->port_usb->cdev) {
		pr_err("port->port_usb or cdev is NULL");
		goto exit;
	}

	if (!port->port_usb->cdev->gadget) {
		pr_err("!port->port_usb->cdev->gadget is NULL");
		pr_err("port->port_usb->cdev->gadget is NULL");
		goto exit;
	}

	pr_debug("%s: resume started\n", __func__);
	spin_lock_irqsave(&port->port_lock, flags);
	gadget = port->port_usb->cdev->gadget;
	if (!gadget) {
		spin_unlock_irqrestore(&port->port_lock, flags);