On Tue, Jun 14, 2016 at 03:30:27PM -0600, Eric Blake wrote: > We were basing the advertisement of maximum discard and transfer > length off of UINT32_MAX, but since the rest of the block layer > has signed int limits on a transaction, nothing could ever reach > that maximum, and we risk overflowing an int once things are > converted to byte-based rather than sector-based limits. What's > more, we DO have a much smaller limit: both the current kernel > and qemu-nbd have a hard limit of 32M on a read or write > transaction, and while they may also permit up to a full 32 bits > on a discard transaction, the upstream NBD protocol is proposing > wording that without any explicit advertisement otherwise, > clients should limit ALL requests to the same limits as read and > write, even though the other requests do not actually require as > many bytes across the wire. So the better limit to tell the > block layer is 32M for both values. > > Signed-off-by: Eric Blake <ebl...@redhat.com> > > --- > v2: new patch > --- > block/nbd.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-)
Reviewed-by: Stefan Hajnoczi <stefa...@redhat.com>
signature.asc
Description: PGP signature