Message ID | 20200720190736.180297-5-lyude@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/vblank: Cleanup spin_(un)lock_irqsave() calls | expand |
On Mon, Jul 20, 2020 at 03:07:35PM -0400, Lyude Paul wrote: > This one's easy - we're already calling kzalloc() in this function, so Nit: "kzalloc(GFP_KERNEL)", since kzalloc(GFP_ATOMIC) is perfectly fine in interrupt context. With that clarified for the entire series: Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > we must already be guaranteed to have IRQs enabled when calling this. > So, use the plain _irq() variants of spin_(un)lock() to make this more > obvious. > > Signed-off-by: Lyude Paul <lyude@redhat.com> > Cc: Daniel Vetter <daniel@ffwll.ch> > --- > drivers/gpu/drm/drm_vblank.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c > index 51f2e988205e7..64610070ba473 100644 > --- a/drivers/gpu/drm/drm_vblank.c > +++ b/drivers/gpu/drm/drm_vblank.c > @@ -1611,7 +1611,6 @@ static int drm_queue_vblank_event(struct drm_device *dev, unsigned int pipe, > struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; > struct drm_pending_vblank_event *e; > ktime_t now; > - unsigned long flags; > u64 seq; > int ret; > > @@ -1633,7 +1632,7 @@ static int drm_queue_vblank_event(struct drm_device *dev, unsigned int pipe, > e->event.vbl.crtc_id = crtc->base.id; > } > > - spin_lock_irqsave(&dev->event_lock, flags); > + spin_lock_irq(&dev->event_lock); > > /* > * drm_crtc_vblank_off() might have been called after we called > @@ -1670,12 +1669,12 @@ static int drm_queue_vblank_event(struct drm_device *dev, unsigned int pipe, > vblwait->reply.sequence = req_seq; > } > > - spin_unlock_irqrestore(&dev->event_lock, flags); > + spin_unlock_irq(&dev->event_lock); > > return 0; > > err_unlock: > - spin_unlock_irqrestore(&dev->event_lock, flags); > + spin_unlock_irq(&dev->event_lock); > kfree(e); > err_put: > drm_vblank_put(dev, pipe); > -- > 2.26.2 >
diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c index 51f2e988205e7..64610070ba473 100644 --- a/drivers/gpu/drm/drm_vblank.c +++ b/drivers/gpu/drm/drm_vblank.c @@ -1611,7 +1611,6 @@ static int drm_queue_vblank_event(struct drm_device *dev, unsigned int pipe, struct drm_vblank_crtc *vblank = &dev->vblank[pipe]; struct drm_pending_vblank_event *e; ktime_t now; - unsigned long flags; u64 seq; int ret; @@ -1633,7 +1632,7 @@ static int drm_queue_vblank_event(struct drm_device *dev, unsigned int pipe, e->event.vbl.crtc_id = crtc->base.id; } - spin_lock_irqsave(&dev->event_lock, flags); + spin_lock_irq(&dev->event_lock); /* * drm_crtc_vblank_off() might have been called after we called @@ -1670,12 +1669,12 @@ static int drm_queue_vblank_event(struct drm_device *dev, unsigned int pipe, vblwait->reply.sequence = req_seq; } - spin_unlock_irqrestore(&dev->event_lock, flags); + spin_unlock_irq(&dev->event_lock); return 0; err_unlock: - spin_unlock_irqrestore(&dev->event_lock, flags); + spin_unlock_irq(&dev->event_lock); kfree(e); err_put: drm_vblank_put(dev, pipe);
This one's easy - we're already calling kzalloc() in this function, so we must already be guaranteed to have IRQs enabled when calling this. So, use the plain _irq() variants of spin_(un)lock() to make this more obvious. Signed-off-by: Lyude Paul <lyude@redhat.com> Cc: Daniel Vetter <daniel@ffwll.ch> --- drivers/gpu/drm/drm_vblank.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)