[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-2.5 1/4] block: add BlockLimits.max_iov fiel
From: |
Peter Lieven |
Subject: |
Re: [Qemu-devel] [PATCH for-2.5 1/4] block: add BlockLimits.max_iov field |
Date: |
Thu, 09 Jul 2015 06:39:02 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 |
Am 08.07.2015 um 17:30 schrieb Stefan Hajnoczi:
The maximum number of struct iovec elements depends on the
BlockDriverState. The raw-posix protocol has a maximum of IOV_MAX but
others could have different values.
Instead of assuming raw-posix and hardcoding IOV_MAX in several places,
put the limit into BlockLimits.
Cc: Peter Lieven <address@hidden>
Suggested-by: Kevin Wolf <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
Peter Lieven: I think the SCSI LUN level does not have a maximum
scatter-gather segments constraint. That is probably only at the HBA
level. CCed you anyway in case you think block/iscsi.c should set the
max_iov field.
libiscsi will send the iovec array straight to readv and writev to
read/write from the TCP socket. So we need IOV_MAX here as well.
Kevin: The default is now INT_MAX. This means non-raw-posix users will
now be able to merge more requests than before. They were limited to
IOV_MAX previously. This could expose limits in other BlockDrivers
which we weren't aware of...
Why rise the default to INT_MAX and not leave it at IOV_MAX?
Is there any case where we except that much iovectors coming in?
Peter