From patchwork Sun Oct 10 10:39:52 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "wangyanan (Y)" X-Patchwork-Id: 1538992 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4HRz4g6jM9z9sRN for ; Sun, 10 Oct 2021 21:41:38 +1100 (AEDT) Received: from localhost ([::1]:38718 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mZWGs-0008FS-3n for incoming@patchwork.ozlabs.org; Sun, 10 Oct 2021 06:41:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55264) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mZWFx-0008FA-Rx for qemu-devel@nongnu.org; Sun, 10 Oct 2021 06:40:37 -0400 Received: from szxga02-in.huawei.com ([45.249.212.188]:3151) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mZWFv-0005rN-42 for qemu-devel@nongnu.org; Sun, 10 Oct 2021 06:40:37 -0400 Received: from dggemv703-chm.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4HRyxd6Fgqz900H; Sun, 10 Oct 2021 18:35:33 +0800 (CST) Received: from dggpemm500023.china.huawei.com (7.185.36.83) by dggemv703-chm.china.huawei.com (10.3.19.46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.8; Sun, 10 Oct 2021 18:40:21 +0800 Received: from DESKTOP-TMVL5KK.china.huawei.com (10.174.187.128) by dggpemm500023.china.huawei.com (7.185.36.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.8; Sun, 10 Oct 2021 18:40:20 +0800 From: Yanan Wang To: Subject: [PATCH 0/2] hw/core/machine: An an unit test for smp_parse Date: Sun, 10 Oct 2021 18:39:52 +0800 Message-ID: <20211010103954.20644-1-wangyanan55@huawei.com> X-Mailer: git-send-email 2.8.4.windows.1 MIME-Version: 1.0 X-Originating-IP: [10.174.187.128] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To dggpemm500023.china.huawei.com (7.185.36.83) X-CFilter-Loop: Reflected Received-SPF: pass client-ip=45.249.212.188; envelope-from=wangyanan55@huawei.com; helo=szxga02-in.huawei.com X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Andrew Jones , =?utf-8?q?Daniel_P_=2E_Berrang=C3=A9?= , Eduardo Habkost , Pierre Morel , Yanan Wang , wanghaibin.wang@huawei.com, Paolo Bonzini , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Hi, This series introduces an unit test for generic smp_parse(). We have had enough discussions about what kind of SMP configurations by the user should be considered valid and what should be invalid. Since we have finished optimizing the SMP parsing code, then this test normatively listed all the possible valid/invalid configurations that the user can provide. This can be a testing tool when we introduce new topology members and need to touch the parsing code. For your reference, Some related discussion is here [1]: [1] https://lore.kernel.org/qemu-devel/YOxf+sxzUSJdbY+j@redhat.com/ The originally posted test is here [2]: [2] https://lore.kernel.org/qemu-devel/20210910073025.16480-17-wangyanan55@huawei.com/ Compared to [2], the test in this series is reworked and more brief. Yanan Wang (2): hw/core/machine: Split out smp_parse as an inline API tests/unit: Add an unit test for smp parsing MAINTAINERS | 2 + hw/core/machine.c | 160 +--------- include/hw/core/smp.h | 185 +++++++++++ tests/unit/meson.build | 1 + tests/unit/test-smp-parse.c | 613 ++++++++++++++++++++++++++++++++++++ 5 files changed, 802 insertions(+), 159 deletions(-) create mode 100644 include/hw/core/smp.h create mode 100644 tests/unit/test-smp-parse.c