From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:42780) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R1gTl-0003AF-BY for qemu-devel@nongnu.org; Thu, 08 Sep 2011 11:25:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R1gTh-0000qR-BK for qemu-devel@nongnu.org; Thu, 08 Sep 2011 11:25:25 -0400 Received: from mail-vx0-f173.google.com ([209.85.220.173]:34597) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R1gTh-0000pt-7k for qemu-devel@nongnu.org; Thu, 08 Sep 2011 11:25:21 -0400 Received: by mail-vx0-f173.google.com with SMTP id 32so830358vxi.4 for ; Thu, 08 Sep 2011 08:25:21 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Thu, 8 Sep 2011 17:24:56 +0200 Message-Id: <1315495505-28906-4-git-send-email-pbonzini@redhat.com> In-Reply-To: <1315495505-28906-1-git-send-email-pbonzini@redhat.com> References: <1315495505-28906-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH 03/12] nbd: support NBD_SET_FLAGS ioctl List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org 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 --- nbd.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/nbd.c b/nbd.c index 9ed2239..30cd78f 100644 --- a/nbd.c +++ b/nbd.c @@ -377,6 +377,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) { -- 1.7.6