On Thu, Mar 1, 2018 at 4:19 PM, Sergey Senozhatsky
<[email protected]> wrote:
> On (03/01/18 09:51), Dmitry Vyukov wrote:
>> > https://marc.info/?l=linux-kernel&m=151200883525299
>> >
>> > [..]
>> >> I feel lost a bit.
>> >
>> > Yeah... can't understand what's going on there.
>> >
>> > The last time kasan didn't like this part
>> >
>> > [    0.003333]  ? console_unlock+0x605/0xcc0:
>> >                               atomic_read at 
>> > arch/x86/include/asm/atomic.h:27
>> >                                (inlined by) static_key_count at 
>> > include/linux/jump_label.h:191
>> >                                (inlined by) static_key_false at 
>> > include/linux/jump_label.h:201
>> >                                (inlined by) trace_console_rcuidle at 
>> > include/trace/events/printk.h:10
>> >                                (inlined by) call_console_drivers at 
>> > kernel/printk/printk.c:1556
>> >                                (inlined by) console_unlock at 
>> > kernel/printk/printk.c:2233
>> >
>> > complaining that there was a write of size 4... at atomic_read().
>>
>> Hi Sergey,
>>
>> Where is that report?
>> I doubt that KASAN has instrumented a read as a write (at least there
>> are no such known cases), so perhaps it's pointing to some other
>> memory access.
>
> Hello Dmitry,
>
> I believe it's this one
>
> https://marc.info/?l=linux-kernel&m=151200883525299


Thanks, but now that I debugged this one, I think that one is the same issue.
Amusingly a write in READ_ONCE is actually legitimate because
GCC_PLUGIN_STRUCTLEAK emits an initializing write for __u variable in
READ_ONCE implementation.

Reply via email to