From nobody Fri Apr 19 23:00:02 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9F5C6C433F5 for ; Sat, 14 May 2022 16:23:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229822AbiENQXi (ORCPT ); Sat, 14 May 2022 12:23:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50058 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233985AbiENQXe (ORCPT ); Sat, 14 May 2022 12:23:34 -0400 Received: from mail-lf1-x12a.google.com (mail-lf1-x12a.google.com [IPv6:2a00:1450:4864:20::12a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A4DAB2CE2D for ; Sat, 14 May 2022 09:23:32 -0700 (PDT) Received: by mail-lf1-x12a.google.com with SMTP id c24so9795819lfv.11 for ; Sat, 14 May 2022 09:23:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=openvz-org.20210112.gappssmtp.com; s=20210112; h=message-id:date:mime-version:user-agent:from:subject:to:cc :content-language:content-transfer-encoding; bh=W5F0uGwuAL8pTZ+Hf+pCcDwDg2tH8pzMKHWva8EgvhE=; b=zCqSFU3L2yPqDpA9e6zkSdFzMlewSbDHui1YgNVZgkEOYdLOoLz3x7AsC+W2olBLwt IThcy1Re3FAhxcn/Tl75bzDyYHshYQx05ySzBpWntoqEYwEJYqiFUvEcTIeAijtIz0MM 8Q4gOzHipiFNoWRdcrvQWkpNy1W4/xFgddUVDg8/gb5nwpP4g95HpB5VKSiOJtl/Xyed CQbtMh9HQUQlCqqrGfPPW4b12dfTsuPubqMnXjg7TdmTo/gR2WfAKyFTFZaqdVnsx0Nv zsv4pUR8DUIOTWwXceE5IVzux5Yo7gLwP7z8I6Ee0TsAP5DFjFudWpvTkJ64F8ZIjNLY VaCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:from :subject:to:cc:content-language:content-transfer-encoding; bh=W5F0uGwuAL8pTZ+Hf+pCcDwDg2tH8pzMKHWva8EgvhE=; b=ZgV2EP75DnQbrP+KJoEUTG0qOUz68V9wOsnFI7Khtu4xEQg8iZTHUXBXDM5paac6dm GzZi4ZFjkYlwGU8U+NNBakSqfgN2NZ2tYDyPhM0ucVG9iYK12SV3sbon8nNAiXSqh7lm lVaAha5TTSEf9MyjuJ1sOdWBep5EWKhrJ5rIaoFTxAIeWoH7ctO2T/Yl32PG/T827zLK u3d8VnJEYcv8FPNpGxVAzi19SiMgyztQ7sqTdLLVQgbgoPnw/49qUYbaBN0QQPEBjjL9 GPNV5neD0yElfTrx7rMrDYoYEFFa07CoI1nV+fwQGmyHA/oMzvTtUBGBP0cLuIfoyBaL niRg== X-Gm-Message-State: AOAM5316pY0sHOv19N22kkB2b8fzy0Bhsd8IqUTp3IT+G43scyCDNJGI Cks2mxBbLNHBvSoLpSdNMWaBaXfiFwwIww== X-Google-Smtp-Source: ABdhPJyzA3gBu6tJoV7aXuYH4hYAVPI7IiUCE5GtiiWU2bTMC48HhY0m5tzuX2uMo3QxpvekwlBCqQ== X-Received: by 2002:ac2:5237:0:b0:471:fe52:9a82 with SMTP id i23-20020ac25237000000b00471fe529a82mr7133701lfl.624.1652545411030; Sat, 14 May 2022 09:23:31 -0700 (PDT) Received: from [192.168.1.65] ([46.188.121.177]) by smtp.gmail.com with ESMTPSA id p23-20020a2e8057000000b0024f3d1dae7csm891077ljg.4.2022.05.14.09.23.29 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 14 May 2022 09:23:30 -0700 (PDT) Message-ID: <45e8576e-5fcc-bc52-8805-0b5cc3fc1a84@openvz.org> Date: Sat, 14 May 2022 19:23:29 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.1 From: Vasily Averin Subject: [PATCH] sparse: use force attribute for __kernel_rwf_t casts To: Jens Axboe , Pavel Begunkov Cc: kernel@openvz.org, linux-kernel@vger.kernel.org, Steven Rostedt , Ingo Molnar , io-uring@vger.kernel.org Content-Language: en-US Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Fixes sparse warnings: fs/io_uring.c: note: in included file (through include/trace/perf.h, include/trace/define_trace.h, include/trace/events/io_uring.h): ./include/trace/events/io_uring.h:488:1: sparse: warning: incorrect type in assignment (different base types) expected unsigned int [usertype] op_flags got restricted __kernel_rwf_t const [usertype] rw_flags fs/io_uring.c:3164:23: sparse: warning: incorrect type in assignment (different base types) expected unsigned int [usertype] flags got restricted __kernel_rwf_t fs/io_uring.c:3769:48: sparse: warning: incorrect type in argument 2 (different base types) expected restricted __kernel_rwf_t [usertype] flags got unsigned int [usertype] flags __kernel_rwf_t type is bitwise and requires __force attribute for casts Signed-off-by: Vasily Averin --- fs/io_uring.c | 4 ++-- include/trace/events/io_uring.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/fs/io_uring.c b/fs/io_uring.c index 91de361ea9ab..5ca4a6e91884 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -3161,7 +3161,7 @@ static int io_prep_rw(struct io_kiocb *req, const str= uct io_uring_sqe *sqe) req->imu =3D NULL; req->rw.addr =3D READ_ONCE(sqe->addr); req->rw.len =3D READ_ONCE(sqe->len); - req->rw.flags =3D READ_ONCE(sqe->rw_flags); + req->rw.flags =3D (__force u32)READ_ONCE(sqe->rw_flags); req->buf_index =3D READ_ONCE(sqe->buf_index); return 0; } @@ -3766,7 +3766,7 @@ static int io_rw_init_file(struct io_kiocb *req, fmod= e_t mode) req->flags |=3D io_file_get_flags(file) << REQ_F_SUPPORT_NOWAIT_BIT; =20 kiocb->ki_flags =3D iocb_flags(file); - ret =3D kiocb_set_rw_flags(kiocb, req->rw.flags); + ret =3D kiocb_set_rw_flags(kiocb, (__force rwf_t)req->rw.flags); if (unlikely(ret)) return ret; =20 diff --git a/include/trace/events/io_uring.h b/include/trace/events/io_urin= g.h index cddf5b6fbeb4..df4b89a79764 100644 --- a/include/trace/events/io_uring.h +++ b/include/trace/events/io_uring.h @@ -520,7 +520,7 @@ TRACE_EVENT(io_uring_req_failed, __entry->off =3D sqe->off; __entry->addr =3D sqe->addr; __entry->len =3D sqe->len; - __entry->op_flags =3D sqe->rw_flags; + __entry->op_flags =3D (__force u32)sqe->rw_flags; __entry->buf_index =3D sqe->buf_index; __entry->personality =3D sqe->personality; __entry->file_index =3D sqe->file_index; --=20 2.31.1