io_uring/net: use the correct msghdr union member in io_sendmsg_copy_hdr
authorJens Axboe <axboe@kernel.dk>
Tue, 20 Jun 2023 22:11:51 +0000 (16:11 -0600)
committerJens Axboe <axboe@kernel.dk>
Wed, 21 Jun 2023 13:34:17 +0000 (07:34 -0600)
Rather than assign the user pointer to msghdr->msg_control, assign it
to msghdr->msg_control_user to make sparse happy. They are in a union
so the end result is the same, but let's avoid new sparse warnings and
squash this one.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202306210654.mDMcyMuB-lkp@intel.com/
Fixes: cac9e4418f4c ("io_uring/net: save msghdr->msg_control for retries")
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/net.c

index 2bc2cb2..c8a4b2a 100644 (file)
@@ -203,7 +203,7 @@ static int io_sendmsg_copy_hdr(struct io_kiocb *req,
        ret = sendmsg_copy_msghdr(&iomsg->msg, sr->umsg, sr->msg_flags,
                                        &iomsg->free_iov);
        /* save msg_control as sys_sendmsg() overwrites it */
-       sr->msg_control = iomsg->msg.msg_control;
+       sr->msg_control = iomsg->msg.msg_control_user;
        return ret;
 }
 
@@ -302,7 +302,7 @@ int io_sendmsg(struct io_kiocb *req, unsigned int issue_flags)
 
        if (req_has_async_data(req)) {
                kmsg = req->async_data;
-               kmsg->msg.msg_control = sr->msg_control;
+               kmsg->msg.msg_control_user = sr->msg_control;
        } else {
                ret = io_sendmsg_copy_hdr(req, &iomsg);
                if (ret)