From patchwork Thu Nov 15 14:31:14 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 998379 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="INQjdduz"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 42wkNK23VFz9s3C for ; Fri, 16 Nov 2018 01:32:33 +1100 (AEDT) Received: from localhost ([::1]:39181 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gNIh4-0002Ej-Kf for incoming@patchwork.ozlabs.org; Thu, 15 Nov 2018 09:32:30 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34844) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gNIgD-0002DZ-KZ for qemu-devel@nongnu.org; Thu, 15 Nov 2018 09:31:38 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gNIg5-0003rK-IE for qemu-devel@nongnu.org; Thu, 15 Nov 2018 09:31:35 -0500 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]:55297) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gNIg5-0003pz-B3 for qemu-devel@nongnu.org; Thu, 15 Nov 2018 09:31:29 -0500 Received: by mail-wm1-x32f.google.com with SMTP id y139so1666740wmc.5 for ; Thu, 15 Nov 2018 06:31:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=2OhVsvEeCS0WG9aIPTBk6Fd380He6HuejU7Xwk+BAMs=; b=INQjdduzqCIb+VQBjtJ0TWXbHxP8qjjZ6qqRFBRcVqVrGbt+aOAW0CS4LKtmDtYLUM GQbhN1q+fgoSEaeTSt8JyrDHEgsfW7CvDQ27grV7MSN4/4yP6FfR/HXgZIW6UXW9PiTU WvtOaTIitmO+hRUhDv1Pskp4VzkoNLIWy06ET0j3QrCTh1peLZIAA3rvHn7u3G8F05bL L1JI3V+vomJ6uO7ZvuYygZeBNUKY3zeXj/X57Hw08e8hQcvVZxxT9NM8ijkdoI5PYEBW 3wTXD79Ukk/3kuEhs/N6OEaD2tz/cNBzM1F7vCSp7G35D9gY4U9N+c3UIUkMVN0aasrY 6coA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :mime-version:content-transfer-encoding; bh=2OhVsvEeCS0WG9aIPTBk6Fd380He6HuejU7Xwk+BAMs=; b=Xx+dtSmQxJPspWNhnCvKaGBDCAJ3pD8fciGkmIz9zMZ39NlzfQMt/hEDuU/XRis7L1 5FWHCZ1a8paF5xW9A5ctRAj4wgxgLD3+mRGXkgCUUJ2va1vQzInj5BKO5CznX99oX5hC g/xHQg+GtToBxDtyZCU4j7CTw3Tpgci+RDBMM0rUfi44nexytB+CAdil+cm3b63TqNC4 QsOMDfeIa+gAEGOEiZdqJsoJ+AglZuzBtHIFKHv1E+Tl8i4tPt2gG5V25VIw9librH+D LHbOqt26SyZ7IKevcvZa0xSJOcZ4N2BODYFbA2/dx6Z0RZ+MVIaFSTCobyqOvq4sQ4ZT 3sYg== X-Gm-Message-State: AGRZ1gJIW2T6ZkqlUKjRsb9xFqD0YqWSTFQibo7rvMEzE+r+BqEVv0NT Kme54ZKWa/tv3sGrKTlOOvXCg8Ym X-Google-Smtp-Source: AJdET5fHF+0O7ya3QX88bXBmDy7mHEtIscNIXfgz5dn9PmxKfAbwNR08f3Elg1wDqXj1VjA1+0jhFQ== X-Received: by 2002:a1c:b645:: with SMTP id g66-v6mr5650430wmf.25.1542292285935; Thu, 15 Nov 2018 06:31:25 -0800 (PST) Received: from localhost.localdomain ([93.56.166.5]) by smtp.gmail.com with ESMTPSA id x194-v6sm55262620wmd.41.2018.11.15.06.31.24 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 15 Nov 2018 06:31:25 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Thu, 15 Nov 2018 15:31:14 +0100 Message-Id: <20181115143124.19234-1-pbonzini@redhat.com> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::32f Subject: [Qemu-devel] [PATCH for-3.2 00/10] vhost: preparation for qgraph conversion of vhost-user-test X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , jasowang@redhat.com, mst@redhat.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" The vhost-user-test is one of the most complex qtests in the tree, and converting it to qgraph poses some unique challenges. This series addresses them in a way that does not depend on the qgraph conversion itself, but prepares for it. First of all, vhost-user-test is slow and that is a pain when debugging it. :) So patches 1 and 2 fix this bug. Second, qgraph will be able to test vhost-user-test on pSeries and ARM virt (with virtio-mmio) machine types. Patches 3 and 4 prepares for this by compiling vhost-net even on TCG-only targets, and by supporting wrong-endianness vnet headers. Patches 5 and 6 instead make the test more robust, so that it can run on those machines too. Third, vhost-user-test is a bit strange in that it has more global state than other tests (in particular a GMainLoop, but also a directory in /tmp and some weird uses of global_qtest). Patches 7 to 10 thus remove this global state already, which simplifies the code and also will reduce the diff for the qgraph conversion. Please review and ack! Thanks, Paolo Paolo Bonzini (10): vhost-user-test: use g_cond_broadcast vhost-user-test: signal data_cond when s->rings changes vhost-net: compile it for all targets vhost-user: support cross-endian vnet headers vhost-user-test: support VHOST_USER_PROTOCOL_F_CROSS_ENDIAN vhost-user-test: skip if there is no memory at address 0 vhost-user-test: reduce usage of global_qtest vhost-user-test: create a main loop per TestServer vhost-user-test: small changes to init_hugepagefs vhost-user-test: create a temporary directory per TestServer configure | 13 +-- include/exec/poison.h | 1 - net/net.c | 2 +- net/vhost-user.c | 13 +++ tests/Makefile.include | 5 +- tests/vhost-user-test.c | 234 ++++++++++++++++++++++------------------ 6 files changed, 147 insertions(+), 121 deletions(-)