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 A0034185B48 for ; Mon, 28 Jul 2025 01:14:36 +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=1753665281; cv=none; b=n7fn2u/BzzV+PXUmNCeRLfvcU1KnYhZpAMak/VCc5lcyV3TfjXTlA4R42tEkLEACqRtAUkk384pgj87jsStE9YzOuA8Vd7bmnmADBHYNP5B0He1y6svFo04uGSOSh98I85oukBhk/N8JKa74AHfrlGb88Mr/Lwkx0iv5zoLnZrE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753665281; c=relaxed/simple; bh=jgbYPFOXXbKndfZdpU8pRqwifQuOb/gHSQsBZ7MJI8w=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ToD8CbCeWBwhzQTmIZljR6MPx90Tu98yeKpZ/eWCJSv41QuyS/IMVlGfS9pfljz1kcx0xqYgproExm+Rlq+5nYkjuhmMNc2bbRc62hP4HeDFpQs4BGZ8rT7VwQrageAtIQF/smPTVYwdWWzc5c78Il03egxY8WnOWefli+89lao= 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=15eOUfOL; 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="15eOUfOL" 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=15eOUfOL3yPB4uNwM92pFZCcgH SzfSQoaDECqAuueytwFyRCvKowLrIHtqoGHAOgNMYDW5J9ap1pgwmHI/qlENW2ZtAEsFfHTwvmLtQ AQZ182EjvNzlRrUCsiJ0maTbwJRxxqqjFWghsNwY4RRCIO5eaTjCmR851VDzqYp2ege1/1C9BxyNA h69/l0bUWVcOw3qvXh4pK3tnWNCaligsFHtkvxjUrTy37OtevjRQzvayQhG02YLap50HfufwVPtUK sAEjWbq/oeNTr5k+AwwBkcWC1KMP3mbo9ZS8iusqBOjBueU6tc1/L2TlXLDeZeY2g4EUNSD9ewFnd s5Uy4yRA==; Received: from mcgrof by bombadil.infradead.org with local (Exim 4.98.2 #2 (Red Hat Linux)) id 1ugCRo-0000000DPjo-0101; Mon, 28 Jul 2025 01:14:36 +0000 From: Luis Chamberlain To: Chuck Lever , Daniel Gomez , kdevops@lists.linux.dev Cc: Chuck Lever Subject: [PATCH v2 14/33] Kconfig: Convert the 9p option to a choice menu Date: Sun, 27 Jul 2025 18:14:14 -0700 Message-ID: <20250728011434.3197091-15-mcgrof@kernel.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250728011434.3197091-1-mcgrof@kernel.org> References: <20250728011434.3197091-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