Re: [PATCH] staging: vt6655: replace spin_lock_irqsave with spin_lock

From: Greg KH
Date: Thu Sep 15 2022 - 04:44:50 EST


On Wed, Sep 14, 2022 at 10:00:17AM +0200, Nam Cao wrote:
> In vt6655 driver, there is a single interrupt handler: vnt_interrupt(),
> and it does not take the spinlock. The interrupt handler only schedules
> a workqueue, and the spinlock is taken in this workqueue. Thus, there is
> no need to use spin_lock_irqsave, as the spinlock is never taken by an
> interrupt. Replace spin_lock_irqsave (and spin_unlock_irqsave) with
> spin_lock (and spin_unlock).

What is the speed difference before and after this change? And how are
interrupts properly handled anymore in this driver if you took away the
lock that was being accessed in the irq?

thanks,

greg k-h