Re: [PATCH v4 9/9] bus: mhi: ep: wake up host if the MHI state is in M3

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

 




On 7/28/2023 9:05 PM, Manivannan Sadhasivam wrote:
On Fri, Jul 28, 2023 at 08:50:55AM +0300, Dan Carpenter wrote:
On Fri, Jul 28, 2023 at 10:04:52AM +0530, Manivannan Sadhasivam wrote:
@@ -464,6 +484,13 @@ int mhi_ep_queue_skb(struct mhi_ep_device *mhi_dev, struct sk_buff *skb)
  	buf_left = skb->len;
  	ring = &mhi_cntrl->mhi_chan[mhi_chan->chan].ring;
+ if (mhi_cntrl->mhi_state == MHI_STATE_M3) {
+		if (mhi_ep_wake_host(mhi_cntrl)) {
Don't you need lock here in the case of multiple queue requests?

- Mani

+			dev_err(dev, "Failed to wakeup host\n");
+			return -ENODEV;
+		}
+	}
+
  	mutex_lock(&mhi_chan->lock);
         ^^^^^^^^^^^^^^^^^^^^^^^^^^
This lock isn't enough?

The position of this lock won't prevent cocurrent access to mhi_ep_wake_host().

- Mani
I will add the lock in the next series.
regards,
dan carpenter



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux