From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4173B1E4AE for ; Mon, 28 Jul 2025 00:18:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.137.202.133 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753661887; cv=none; b=gs0+UWf+cdHcisjVnBAUvmaLBC4DWATBfa8XzsDhVW+5cgwJioqLcmgURB4Q27m8gnyxPJaGPmbRV7xDyBVXwYTnNOImtLX6C/3fQbLzHIwrNwojc4yWMdRMcnWVx0+btuNLZ4qWgic2o9GTss8bgb5CCfiWGsu0cJaAuRSD4tE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753661887; c=relaxed/simple; bh=jgbYPFOXXbKndfZdpU8pRqwifQuOb/gHSQsBZ7MJI8w=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=l9nRRvD3Xx8Us3sWuZHYf8rXIcyqf1hQPHtt2rfTWTpsQkXtJhKpFTh82S98o4Sb8d5zxoDrQtc5iH4mJuOEp0GAFSFw7m9tIpKcI8YgCSdOpt8LJLiCTFhJI8u+hixe/dbItYYQXWIERZSSJ/AOpiaDGuLhzNdguauwfwxeJQk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=kernel.org; spf=none smtp.mailfrom=infradead.org; dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b=Vu7b8WIE; arc=none smtp.client-ip=198.137.202.133 Authentication-Results: smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=kernel.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=infradead.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="Vu7b8WIE" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Sender:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description; bh=A3HV4lb4cRe/+NmghE9sajeqkph6q9RzQwz8hlNnMkQ=; b=Vu7b8WIEkvbVg6pkzCLCmV9n01 cgxkCDsUZ8M7dqQ+J/RGzgYomrXxD6jZCsqD23T0L+o+0D/gInXlWUD7Jw8FG0aUTFMhlFOAiewzR 31Ylq3bX1iFk9HhBw0YyGt5PWjdu4QVrtIEACyu0RBlDsH7EEVSykICqcjZdFbLPCg36AInZW46sA 5MVw1s2FJgSgxPZZQsVpzwFF2+i9EdCXmFIzbEad2nzTK5356TljA61XGv3Whn4yVKCfOnzjmXYvt DOBc36Z0YYvqVt1V+hP0LmaIiji9ymVVn8BZ0ggWxYORcsklpkCJrQchWaeZTvIFhSTGGB7ry36xh wvTzOXRg==; Received: from mcgrof by bombadil.infradead.org with local (Exim 4.98.2 #2 (Red Hat Linux)) id 1ugBZ4-0000000DNWR-1x6e; Mon, 28 Jul 2025 00:18:02 +0000 From: Luis Chamberlain To: Chuck Lever , Daniel Gomez , kdevops@lists.linux.dev Cc: Chuck Lever Subject: [PATCH 17/40] Kconfig: Convert the 9p option to a choice menu Date: Sun, 27 Jul 2025 17:17:36 -0700 Message-ID: <20250728001800.3188617-18-mcgrof@kernel.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250728001800.3188617-1-mcgrof@kernel.org> References: <20250728001800.3188617-1-mcgrof@kernel.org> Precedence: bulk X-Mailing-List: kdevops@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: Luis Chamberlain From: Chuck Lever I'm about to add a third method for building the kernel that excludes the use of 9p. As a pre-requisite to that change, wrap the two existing options with a choice menu, since they are exclusive of each other. This introduces a boolean for non-9p build configurations, to be used in subsequent patches. No behavior change is expected. Signed-off-by: Chuck Lever --- workflows/linux/Kconfig | 55 +++++++++++++++++++++++++++++----------- workflows/linux/Makefile | 1 - 2 files changed, 40 insertions(+), 16 deletions(-) diff --git a/workflows/linux/Kconfig b/workflows/linux/Kconfig index 183ac777..e198005c 100644 --- a/workflows/linux/Kconfig +++ b/workflows/linux/Kconfig @@ -31,27 +31,52 @@ config BOOTLINUX_PURE_IOMAP bool "Use a kernel configuration which disables buffer heads" default HAVE_SUPPORTS_PURE_IOMAP depends on BOOTLINUX_HAS_PURE_IOMAP_CONFIG - help - This will let you choose use 9p to build Linux. What this does is endif # HAVE_SUPPORTS_PURE_IOMAP +choice + prompt "Kernel build location" + default BOOTLINUX_TARGETS + help + Choose where you want to compile the test kernel. The help + for the choices below explain how each alternative works. + +config BOOTLINUX_TARGETS + bool "Target nodes" + output yaml + help + Choosing this option clones and builds the test kernel on + each target node, then installs the test kernel and + reboots each target node. These actions are triggered by + using "make linux". + + This choice is best when the target node configuration is + vastly different than the controller node's configuration. + It is the only choice available when the target nodes + reside in the cloud. + config BOOTLINUX_9P - bool "Use 9p to build Linux" + bool "Controller node" + output yaml depends on LIBVIRT && !GUESTFS_LACKS_9P - default LIBVIRT help - This will let you choose use 9p to build Linux. What this does is - use your localhost to git clone Linux under the assumption your - host is more powerful than the guests you are going to instantiate. - The localhost then will be used to build Linux using all threads - possible. The installation of Linux on the guest is done only with - the install target, the guest gets read-only access to the host's - path where Linux is closed using 9p. - - You should not have to modify any default 9p settings except maybe - where your localhost path for your git tree is. You should keep - the other settings as-is unless you know what you are doing. + Choosing this option clones and builds the test kernel on + the Ansible controller node. Once the test kernel is + built, the target nodes access the controller node's build + directory via 9p to install the test kernel, then each + target node is rebooted into the new kernel. These actions + are triggered by using "make linux". + + This is quick and efficient (since the kernel is built only + once, and the build has access to all compute resources on + the controller node). The source tree and compiled artifacts + are not removed when the test runners are destroyed, so + subsequent builds can be fast. + + However, 9p is available only when using a local + virtualization method such as libvirt. + +endchoice if BOOTLINUX_9P diff --git a/workflows/linux/Makefile b/workflows/linux/Makefile index f68c0905..f5bc6490 100644 --- a/workflows/linux/Makefile +++ b/workflows/linux/Makefile @@ -42,7 +42,6 @@ endif LINUX_CLONE_DEFAULT_TYPE := linux-clone-clients ifeq (y,$(CONFIG_BOOTLINUX_9P)) -BOOTLINUX_ARGS += bootlinux_9p=True BOOTLINUX_ARGS += bootlinux_9p_host_path='$(subst ",,$(CONFIG_BOOTLINUX_9P_HOST_PATH))' BOOTLINUX_ARGS += bootlinux_9p_msize='$(subst ",,$(CONFIG_BOOTLINUX_9P_MSIZE))' BOOTLINUX_ARGS += bootlinux_9p_fsdev='$(subst ",,$(CONFIG_BOOTLINUX_9P_FSDEV))' -- 2.47.2