From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sasha Levin Subject: [PATCH 2/2] kvm tools: support 9p flush command Date: Fri, 15 Jun 2012 13:34:17 +0200 Message-ID: <1339760057-17969-2-git-send-email-levinsasha928@gmail.com> References: <1339760057-17969-1-git-send-email-levinsasha928@gmail.com> Cc: kvm@vger.kernel.org, Sasha Levin To: penberg@kernel.org, mingo@elte.hu, gorcunov@gmail.com, asias.hejun@gmail.com Return-path: Received: from mail-ob0-f174.google.com ([209.85.214.174]:38205 "EHLO mail-ob0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756556Ab2FOLdY (ORCPT ); Fri, 15 Jun 2012 07:33:24 -0400 Received: by mail-ob0-f174.google.com with SMTP id tb18so3854798obb.19 for ; Fri, 15 Jun 2012 04:33:23 -0700 (PDT) In-Reply-To: <1339760057-17969-1-git-send-email-levinsasha928@gmail.com> Sender: kvm-owner@vger.kernel.org List-ID: While we process 9p requests serially, so there's no point for implementing flush, we still need to answer it to prevent guest kernel from hanging waiting for it. Signed-off-by: Sasha Levin --- tools/kvm/virtio/9p.c | 15 ++++++++++++++- 1 files changed, 14 insertions(+), 1 deletions(-) diff --git a/tools/kvm/virtio/9p.c b/tools/kvm/virtio/9p.c index b4341b9..830fc50 100644 --- a/tools/kvm/virtio/9p.c +++ b/tools/kvm/virtio/9p.c @@ -1071,6 +1071,19 @@ err_out: return; } +static void virtio_p9_flush(struct p9_dev *p9dev, + struct p9_pdu *pdu, u32 *outlen) +{ + u16 tag, oldtag; + + virtio_p9_pdu_readf(pdu, "ww", &tag, &oldtag); + virtio_p9_pdu_writef(pdu, "w", tag); + *outlen = pdu->write_offset; + virtio_p9_set_reply_header(pdu, *outlen); + + return; +} + static void virtio_p9_eopnotsupp(struct p9_dev *p9dev, struct p9_pdu *pdu, u32 *outlen) { @@ -1105,7 +1118,7 @@ static p9_handler *virtio_9p_dotl_handler [] = { [P9_TCLUNK] = virtio_p9_clunk, [P9_TFSYNC] = virtio_p9_fsync, [P9_TREAD] = virtio_p9_read, - [P9_TFLUSH] = virtio_p9_eopnotsupp, + [P9_TFLUSH] = virtio_p9_flush, [P9_TLINK] = virtio_p9_link, [P9_TSYMLINK] = virtio_p9_symlink, [P9_TLCREATE] = virtio_p9_create, -- 1.7.8.6