From: Dafna Hirschfeld Date: Tue, 22 Sep 2020 11:33:59 +0000 (+0200) Subject: media: staging: rkisp1: stats: protect write to 'is_streaming' in start_streaming cb X-Git-Tag: v5.10-rc1~175^2~90 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=acb00111e906be800cf4b26625e1e0e42d123289;p=thirdparty%2Fkernel%2Flinux.git media: staging: rkisp1: stats: protect write to 'is_streaming' in start_streaming cb The field stats->is_streaming is written in 'start_streaming' callback without the stats->lock protection. The isr might run together with the callback so 'spin_lock_irq' should be used. Signed-off-by: Dafna Hirschfeld Acked-by: Helen Koike Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/staging/media/rkisp1/rkisp1-stats.c b/drivers/staging/media/rkisp1/rkisp1-stats.c index 6aa18d970f2bc..51c64f75fe29a 100644 --- a/drivers/staging/media/rkisp1/rkisp1-stats.c +++ b/drivers/staging/media/rkisp1/rkisp1-stats.c @@ -157,7 +157,9 @@ rkisp1_stats_vb2_start_streaming(struct vb2_queue *queue, unsigned int count) { struct rkisp1_stats *stats = queue->drv_priv; + spin_lock_irq(&stats->lock); stats->is_streaming = true; + spin_unlock_irq(&stats->lock); return 0; }