From nobody Mon Feb 9 08:47:42 2026 Received: from relay-us1.mymailcheap.com (relay-us1.mymailcheap.com [51.81.35.219]) (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 83F791EF0B9 for ; Wed, 3 Dec 2025 09:18:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=51.81.35.219 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764753490; cv=none; b=b5yVzuCSeE6gxpI7vgZZD7RBf03Z1JH43pCxr6ows2ut38W+YpfaJmKu2+pceeWE7oGjp6zKhy3/1XhK8Wydf+dqQai5B4SHMje8QvfEWXcLIIKz4KM89xTvBmvudtLhnrba+9vde4UuSdkua4h1X0FnBBQ4m/C3coE0iRmYnS8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764753490; c=relaxed/simple; bh=UoH7J0oEBDN34+51ceJIwHqRobz1aoc3VNpYnNPpb0c=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=UCPwbm8IJBvXNjRIbCbumKJ12w5y9ob9x12MTZMD6uWP/sVvg3gKfGfpoZmGC76bAHW1F+hD1LxvfVozktX1DU0XJROP7drXofqhyLnVGchGLPcH9sufKcwm9wlY2EjUD//+uu5UKseicdIEwpAx19nmZogxVPAC4x1slk2NE9g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aosc.io; spf=pass smtp.mailfrom=aosc.io; dkim=pass (1024-bit key) header.d=aosc.io header.i=@aosc.io header.b=ZTwah7Sd; arc=none smtp.client-ip=51.81.35.219 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aosc.io Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aosc.io Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=aosc.io header.i=@aosc.io header.b="ZTwah7Sd" Received: from relay5.mymailcheap.com (relay5.mymailcheap.com [159.100.241.64]) by relay-us1.mymailcheap.com (Postfix) with ESMTPS id 77B9221EF2 for ; Wed, 3 Dec 2025 09:11:38 +0000 (UTC) Received: from relay3.mymailcheap.com (relay3.mymailcheap.com [217.182.66.161]) by relay5.mymailcheap.com (Postfix) with ESMTPS id BBEB120229 for ; Wed, 3 Dec 2025 09:11:29 +0000 (UTC) Received: from nf1.mymailcheap.com (nf1.mymailcheap.com [51.75.14.91]) by relay3.mymailcheap.com (Postfix) with ESMTPS id 818793E8D1; Wed, 3 Dec 2025 09:11:22 +0000 (UTC) Received: from mail20.mymailcheap.com (mail20.mymailcheap.com [51.83.111.147]) by nf1.mymailcheap.com (Postfix) with ESMTPSA id A2C6140086; Wed, 3 Dec 2025 09:11:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=aosc.io; s=default; t=1764753077; bh=UoH7J0oEBDN34+51ceJIwHqRobz1aoc3VNpYnNPpb0c=; h=From:To:Cc:Subject:Date:From; b=ZTwah7Sdo+Chr6cIeFlzf9ntW5sQLqujdS8TO0I70XdW1BeUOlKe/tdrgQLqXlBWc aAJhK2iSrHeXmjdDb2lObyDtB3Noq9JL4MgSj1AvcwXQ0LA4+wNnCXMdjCNn+56ArB Z5A2f1kgfpJ6bn6i12TqLQ8yWego195CqlI5Ge7E= Received: from avenger-XINGYAO-Series (unknown [39.144.78.157]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail20.mymailcheap.com (Postfix) with ESMTPSA id 5A6B0407D7; Wed, 3 Dec 2025 09:11:12 +0000 (UTC) From: WangYuli To: jpoimboe@kernel.org, peterz@infradead.org, chenhuacai@kernel.org, kernel@xen0n.name Cc: yangtiezhu@loongson.cn, pmladek@suse.com, alexandre.chartre@oracle.com, wangyuli@aosc.io, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, guanwentao@uniontech.com, WangYuli Subject: [PATCH] LoongArch: Add klp-build support for live patching Date: Wed, 3 Dec 2025 17:10:39 +0800 Message-ID: <20251203091039.125259-1-wangyuli@aosc.io> X-Mailer: git-send-email 2.51.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: nf1.mymailcheap.com X-Rspamd-Queue-Id: A2C6140086 X-Rspamd-Action: no action X-Spamd-Result: default: False [1.40 / 10.00]; MID_CONTAINS_FROM(1.00)[]; R_MISSING_CHARSET(0.50)[]; MIME_GOOD(-0.10)[text/plain]; MIME_TRACE(0.00)[0:+]; RCPT_COUNT_TWELVE(0.00)[12]; RCVD_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:16276, ipnet:51.83.0.0/16, country:FR]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; FUZZY_RATELIMITED(0.00)[rspamd.com]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_ALL(0.00)[] Content-Type: text/plain; charset="utf-8" From: WangYuli Add klp-build support for the LoongArch architecture, enabling automated live patch module generation using objtool. Signed-off-by: WangYuli --- arch/loongarch/Kconfig | 1 + tools/objtool/Makefile | 3 ++- tools/objtool/arch/loongarch/decode.c | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig index 1a0a5f9def33..7b5f2a329908 100644 --- a/arch/loongarch/Kconfig +++ b/arch/loongarch/Kconfig @@ -159,6 +159,7 @@ config LOONGARCH select HAVE_KPROBES select HAVE_KPROBES_ON_FTRACE select HAVE_KRETPROBES + select HAVE_KLP_BUILD select HAVE_LIVEPATCH select HAVE_MOD_ARCH_SPECIFIC select HAVE_NMI diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile index ad6e1ec706ce..cead37c25a69 100644 --- a/tools/objtool/Makefile +++ b/tools/objtool/Makefile @@ -8,7 +8,8 @@ ifeq ($(SRCARCH),x86) endif =20 ifeq ($(SRCARCH),loongarch) - BUILD_ORC :=3D y + BUILD_ORC :=3D y + ARCH_HAS_KLP :=3D y endif =20 ifeq ($(ARCH_HAS_KLP),y) diff --git a/tools/objtool/arch/loongarch/decode.c b/tools/objtool/arch/loo= ngarch/decode.c index 6cd288150f49..674e4efd138f 100644 --- a/tools/objtool/arch/loongarch/decode.c +++ b/tools/objtool/arch/loongarch/decode.c @@ -34,6 +34,11 @@ s64 arch_insn_adjusted_addend(struct instruction *insn, = struct reloc *reloc) return reloc_addend(reloc); } =20 +u64 arch_adjusted_addend(struct reloc *reloc) +{ + return reloc_addend(reloc); +} + bool arch_pc_relative_reloc(struct reloc *reloc) { return false; --=20 2.51.0