Re: [PATCH 1/2] drivers: staging: wilc1000: Move spin lock to the start of critical section

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

 





On 2015년 10월 04일 17:43, Greg KH wrote:
On Sat, Oct 03, 2015 at 02:57:29PM +0530, Chandra S Gorentla wrote:
The spin_lock_irqsave is moved to just beginning of critical section.
This change moves a couple of return statements out of the lock.

Signed-off-by: Chandra S Gorentla <csgorentla@xxxxxxxxx>
---
  drivers/staging/wilc1000/wilc_msgqueue.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/wilc1000/wilc_msgqueue.c b/drivers/staging/wilc1000/wilc_msgqueue.c
index d5ebd6d..284a3f5 100644
--- a/drivers/staging/wilc1000/wilc_msgqueue.c
+++ b/drivers/staging/wilc1000/wilc_msgqueue.c
@@ -72,8 +72,6 @@ int wilc_mq_send(WILC_MsgQueueHandle *pHandle,
  		goto ERRORHANDLER;
  	}
- spin_lock_irqsave(&pHandle->strCriticalSection, flags);
-
  	/* construct a new message */
  	pstrMessage = kmalloc(sizeof(Message), GFP_ATOMIC);
As you have moved the lock, can you also change this to GFP_KERNEL as
well because we do not have a lock held?

And how have you tested that this is ok?  What is this lock trying to
protect?

This function is called even in interrupt context, so GFP_ATOMIC should be called. The spinlock
also should protect pstrMessage from allocating the memory, so we don't place it to the beginning
of critical section as Chandra said.

Thanks,
Tony.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux