Re: A potential race in drivers/staging/speakup/speakup.ko

From: Samuel Thibault
Date: Mon Sep 05 2016 - 05:48:15 EST


Hello,

Pavel Andrianov, on Mon 05 Sep 2016 11:51:50 +0300, wrote:
> There is a potential race in drivers/staging/speakup/speakup.ko.
> All operations with global pointers buff_in and buff_out are performed
> without any locks. Thus, a simultaneous write (via synth_buffer_clear or
> synth_buffer_add) to the pointers may lead to inconsistent data.
>
> Should a local lock be used here?

AIUI, all callers of these functions have speakup_info.spinlock held.

Samuel