Commit 605a9bbc authored by Geetha sowjanya's avatar Geetha sowjanya Committed by David S. Miller
Browse files

net: thunderx: Reduce mbox wait response time.



Replace msleep() with usleep_range() as internally it uses hrtimers.
This will put a cap on maximum wait time.

Signed-off-by: default avatarGeetha sowjanya <gakula@marvell.com>
Signed-off-by: default avatarSunil Goutham <sgoutham@marvell.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c0d2507a
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -126,8 +126,7 @@ static void nicvf_write_to_mbx(struct nicvf *nic, union nic_mbx *mbx)

int nicvf_send_msg_to_pf(struct nicvf *nic, union nic_mbx *mbx)
{
	int timeout = NIC_MBOX_MSG_TIMEOUT;
	int sleep = 10;
	unsigned long timeout;
	int ret = 0;

	mutex_lock(&nic->rx_mode_mtx);
@@ -137,6 +136,7 @@ int nicvf_send_msg_to_pf(struct nicvf *nic, union nic_mbx *mbx)

	nicvf_write_to_mbx(nic, mbx);

	timeout = jiffies + msecs_to_jiffies(NIC_MBOX_MSG_TIMEOUT);
	/* Wait for previous message to be acked, timeout 2sec */
	while (!nic->pf_acked) {
		if (nic->pf_nacked) {
@@ -146,11 +146,10 @@ int nicvf_send_msg_to_pf(struct nicvf *nic, union nic_mbx *mbx)
			ret = -EINVAL;
			break;
		}
		msleep(sleep);
		usleep_range(8000, 10000);
		if (nic->pf_acked)
			break;
		timeout -= sleep;
		if (!timeout) {
		if (time_after(jiffies, timeout)) {
			netdev_err(nic->netdev,
				   "PF didn't ACK to mbox msg 0x%02x from VF%d\n",
				   (mbx->msg.msg & 0xFF), nic->vf_id);