On Sat, Nov 14 2020 at 11:22, Christoph Hellwig wrote:
>> +#ifdef CONFIG_GENERIC_ENTRY
>> +static inline void __set_task_syscall_work(struct thread_info *ti, int flag)
>> +{
>> + set_bit(flag, (unsigned long *)&ti->syscall_work);
>> +}
>> +static inline int __test_task_syscall_work(struct thread_info *ti, int flag)
>> +{
>> + return test_bit(flag, (unsigned long *)&ti->syscall_work);
>> +}
>> +static inline void __clear_task_syscall_work(struct thread_info *ti, int
>> flag)
>> +{
>> + return clear_bit(flag, (unsigned long *)&ti->syscall_work);
>
> The casts here look bogus.
Making sure that &(unsigned long) results in a pointer to unsigned long
is indeed silly.
Thanks,
tglx