nbd: support NBD_SET_FLAGS ioctl
The nbd kernel module cannot enable DISCARD requests unless it is informed about it. The flags field in the header is used for this, and this patch adds support for it. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
bbb74edd40
commit
973b3d0a7b
8
nbd.c
8
nbd.c
@ -378,6 +378,14 @@ int nbd_init(int fd, int csock, uint32_t flags, off_t size, size_t blocksize)
|
||||
}
|
||||
}
|
||||
|
||||
if (ioctl(fd, NBD_SET_FLAGS, flags) < 0
|
||||
&& errno != ENOTTY) {
|
||||
int serrno = errno;
|
||||
LOG("Failed setting flags");
|
||||
errno = serrno;
|
||||
return -1;
|
||||
}
|
||||
|
||||
TRACE("Clearing NBD socket");
|
||||
|
||||
if (ioctl(fd, NBD_CLEAR_SOCK) == -1) {
|
||||
|
Loading…
Reference in New Issue
Block a user