From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rusty Russell Subject: Re: [PATCH] virtio-blk: allow toggling host cache between writeback and writethrough Date: Wed, 25 Jul 2012 10:32:27 +0930 Message-ID: <87boj4ps9o.fsf@rustcorp.com.au> References: <1341321577-24435-1-git-send-email-pbonzini@redhat.com> <1341419217.18786.3.camel@lappy> <4FF47023.7080206@redhat.com> <1341436285.18786.6.camel@lappy> <4FF5388C.5010306@redhat.com> <1341471743.18786.12.camel@lappy> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-kernel@vger.kernel.org, kvm@vger.kernel.org To: Sasha Levin , Paolo Bonzini Return-path: In-Reply-To: <1341471743.18786.12.camel@lappy> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On Thu, 05 Jul 2012 09:02:23 +0200, Sasha Levin wrote: > On Thu, 2012-07-05 at 08:47 +0200, Paolo Bonzini wrote: > > Il 04/07/2012 23:11, Sasha Levin ha scritto: > > > There are two things going on here: > > > 1. Rename VIRTIO_BLK_F_FLUSH to VIRTIO_BLK_F_WCE > > > 2. Add a new VIRTIO_BLK_F_CONFIG_WCE > > > > > > I'm concerned that the first change is going to break compilation for > > > any code that included linux/virtio-blk.h and used VIRTIO_BLK_F_FLUSH. > > > > That would be nlkt, right? :) > > nlkt, lguest, and probably others. > > linux/virtio_blk.h is a public kernel header, which is supposed to be > used from userspace - so I assume many others who implemented virtio-blk > for any reason took advantage of that header. BTW, I have patched this myself now: From: Rusty Russell Subject: virtio-blk: return VIRTIO_BLK_F_FLUSH to header. This got renamed and clarified, but let's not break any userspace out there. Signed-off-by: Rusty Russell --- include/linux/virtio_blk.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/include/linux/virtio_blk.h b/include/linux/virtio_blk.h --- a/include/linux/virtio_blk.h +++ b/include/linux/virtio_blk.h @@ -41,6 +41,11 @@ #define VIRTIO_BLK_F_TOPOLOGY 10 /* Topology information is available */ #define VIRTIO_BLK_F_CONFIG_WCE 11 /* Writeback mode available in config */ +#ifndef __KERNEL__ +/* Old (deprecated) name for VIRTIO_BLK_F_WCE. */ +#define VIRTIO_BLK_F_FLUSH VIRTIO_BLK_F_WCE +#endif + #define VIRTIO_BLK_ID_BYTES 20 /* ID string length */ struct virtio_blk_config {