From: lishan <lishan24@huawei.com> To: <qemu-devel@nongnu.org> Cc: eric.fangyi@huawei.com Subject: [PATCH] block/file-posix: Limit max_iov to IOV_MAX Date: Sat, 18 Sep 2021 12:06:58 +0800 [thread overview] Message-ID: <20210918040658.19484-1-lishan24@huawei.com> (raw) AIO read/write. The size of iocb->aio_nbytes in the kernel cannot exceed UIO_MAXIOV = 1024. max_segments read from the block device layer may be greater than UIO_MAXIOV, this causes the ioq_submit interface to return a -22(-EINVAL) error result. --- block/file-posix.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/block/file-posix.c b/block/file-posix.c index d81e15efa4..137e27e47b 100644 --- a/block/file-posix.c +++ b/block/file-posix.c @@ -1273,7 +1273,8 @@ static void raw_refresh_limits(BlockDriverState *bs, Error **errp) ret = hdev_get_max_segments(s->fd, &st); if (ret > 0) { - bs->bl.max_iov = ret; + /* The maximum segment size allowed by the kernel is UIO_MAXIOV = 1024. */ + bs->bl.max_iov = MIN(ret, IOV_MAX); } } } -- 2.19.1.windows.1
next reply other threads:[~2021-09-18 8:22 UTC|newest] Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-09-18 4:06 lishan [this message] 2021-09-20 4:47 ` Markus Armbruster 2021-09-20 9:03 ` Daniel P. Berrangé 2021-09-18 7:33 lishan 2021-09-20 8:14 ` Kevin Wolf
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210918040658.19484-1-lishan24@huawei.com \ --to=lishan24@huawei.com \ --cc=eric.fangyi@huawei.com \ --cc=qemu-devel@nongnu.org \ --subject='Re: [PATCH] block/file-posix: Limit max_iov to IOV_MAX' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.