From patchwork Mon Apr 7 23:08:44 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sami Tolvanen X-Patchwork-Id: 14041951 Received: from mail-pf1-f201.google.com (mail-pf1-f201.google.com [209.85.210.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 16AF721421A for ; Mon, 7 Apr 2025 23:08:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744067333; cv=none; b=mkZrD+pdfRz40B5j5VqH4/EUpyu0AKS0Yfemj77WIWYt+24+tE9HbjMjLibhQScTpJ/BG4NgDanZotGuYykTBT3Rq0utw/dJ37naw/f69hUaaEyYXNm0MPSuJbRYq8zfoeynkO/vR/vg7CLd+390odFGdlZpw1EdRcqKcoXh2OE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744067333; c=relaxed/simple; bh=XMGA1c1pFh3lZFyhGlH2mKmzvBPoGQZqtVsn2MD7PhE=; h=Date:Mime-Version:Message-ID:Subject:From:To:Cc:Content-Type; b=OCbwhmz9mR+Qac9Jwu27LlIeRDMHco0gaP/J7m9vRhJwgaalfpS51jdkUYrTQzzYEMDkD/HRtAceUUUccRflDlr9mpfzbHradfJPcEDUHCoElaDGCW/iRWHD/QS97f6deNkiydTtzBEi5UnzF9ZfQeF3oQSBL/azOQS5lHn2xxw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--samitolvanen.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=wRLP/oOg; arc=none smtp.client-ip=209.85.210.201 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--samitolvanen.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="wRLP/oOg" Received: by mail-pf1-f201.google.com with SMTP id d2e1a72fcca58-736c0306242so6636413b3a.1 for ; Mon, 07 Apr 2025 16:08:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1744067327; x=1744672127; darn=vger.kernel.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=aaM7XhOiO56IA4YPL35GKWLbBEG8M8dX5KAjEjvLLp4=; b=wRLP/oOgCcDpVg9ltwVM+2+E6nrNVo4lkw1dXZRagD0LlknYbQYsSwzgxYGo+SWPRE veX98p2DFpZLivcg1DF39tT9Z4iGrSP6EQkM4vZr99g6SYa+odDt1/VdHNYKXltnDfv+ siyT/IO/fKTk1cKmKna5NQPfmj6GfNvvo0k9ldYE9FZioiM7dG6S4wQ+au3nc4Uab3l3 Jc64WPi7a9JHkRtMfctZ9MbGOkiT3o1igQpyA0u3gzLdx6yiRjyedviA9/6Eu9csXzNe V7iCWBG1SSJ29zZ5vuwpRKMr0lErCZuJhG8eWKNenwsFjca3ODRyVF24wSmKjgeM2bwB OOOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744067327; x=1744672127; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=aaM7XhOiO56IA4YPL35GKWLbBEG8M8dX5KAjEjvLLp4=; b=J1JoX1hAdZW7bYe5CGpEpX9oMvjNZlt0ZNCPE1LCdk/GDaw9JPki4Z6xckbf85/o8c H4ooA/mgrwND3xBPb1z7tSrlDSPOhH4uNmlBfOEuqhE2zJqzkzapcGXhPiK/tuDk1mxM KdHiWpixKJAEwVGuN/vsbhBMk7TcScr1wBPjrDMM/ivF4cU1XWOH4uUm2/TAW85g2LCr 3ZNxdfrgnd3dXi2BDY9VKbC82Dppl/KtENkQL/suGGMRspNFEE/Q/ARTa/3vhohMQsHZ 9UerXjNIzWiM91UrchABB23rD0Cjc2oRiGWJNBonGRustb+NWpnxZxYJFGRzY5a0mKKh +BTg== X-Forwarded-Encrypted: i=1; AJvYcCW8vINNMg9AjvQpu9tpnhS/34i2JaYmgP92B9QwaF0pt+Bp/trdd1iDed4OCGUg9+MDHqg//DTMK5572EE=@vger.kernel.org X-Gm-Message-State: AOJu0Ywg6oK1dlhaJs3Tm1WjeEyB2h0MM4ihFRqMVyolxh7rXOxlwgj9 V/WW1Umk3wgCdWKetFKyqfB3un4Pts84z3a7pZy9hNTUejwLvwcSRYISl/eAnskQUw0pku3dHVn UfYXABD6lP9Ffsbxi5HnRHnAvrw== X-Google-Smtp-Source: AGHT+IHGD1fnOZirnSWffQqJsQ+XNtsjfNV17kYKBnJj9gDOj9DYeZFe74FqcBdJnepH63c1aEHwz8JPrJi1wwvP5rE= X-Received: from pfbfd35.prod.google.com ([2002:a05:6a00:2ea3:b0:736:a70b:53c7]) (user=samitolvanen job=prod-delivery.src-stubby-dispatcher) by 2002:aa7:888e:0:b0:736:3d7c:236c with SMTP id d2e1a72fcca58-739e4b58df9mr18283273b3a.14.1744067327333; Mon, 07 Apr 2025 16:08:47 -0700 (PDT) Date: Mon, 7 Apr 2025 23:08:44 +0000 Precedence: bulk X-Mailing-List: linux-kbuild@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 X-Developer-Key: i=samitolvanen@google.com; a=openpgp; fpr=35CCFB63B283D6D3AEB783944CB5F6848BBC56EE X-Developer-Signature: v=1; a=openpgp-sha256; l=2284; i=samitolvanen@google.com; h=from:subject; bh=XMGA1c1pFh3lZFyhGlH2mKmzvBPoGQZqtVsn2MD7PhE=; b=owGbwMvMwCEWxa662nLh8irG02pJDOlfov50FW6dlNm5uiqnZt4B/flph1tzDrAFHrnDbXOGL Wz7IcZPHaUsDGIcDLJiiiwtX1dv3f3dKfXV5yIJmDmsTCBDGLg4BWAiAd6MDJMOmvwpkeRI6TX4 2aSwSUtl9qtWzd7PHls3z9ryRS08fxbD/6B9Bx/GBDvoP5yWbcCSm6n5Q0BrZ+4z/na+vpdvbph qcgIA X-Mailer: git-send-email 2.49.0.504.g3bcea36a83-goog Message-ID: <20250407230843.1952850-2-samitolvanen@google.com> Subject: [PATCH v2] kbuild: Require pahole v1.29 with GENDWARFKSYMS on X86 From: Sami Tolvanen To: Masahiro Yamada Cc: Luis Chamberlain , Petr Pavlu , Daniel Gomez , linux-modules@vger.kernel.org, linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, Sami Tolvanen , Paolo Pisati With CONFIG_GENDWARFKSYMS, __gendwarfksyms_ptr variables are added to the kernel in EXPORT_SYMBOL() to ensure DWARF type information is available for exported symbols in the TUs where they're actually exported. These symbols are dropped when linking vmlinux, but dangling references to them remain in DWARF. With CONFIG_DEBUG_INFO_BTF enabled on X86, pahole versions after commit 47dcb534e253 ("btf_encoder: Stop indexing symbols for VARs") and before commit 9810758003ce ("btf_encoder: Verify 0 address DWARF variables are in ELF section") place these symbols in the .data..percpu section, which results in an "Invalid offset" error in btf_datasec_check_meta() during boot, as all the variables are at zero offset and have non-zero size. If CONFIG_DEBUG_INFO_BTF_MODULES is enabled, this also results in a failure to load modules with: failed to validate module [$module] BTF: -22 As the issue occurs in pahole v1.28 and the fix was merged after v1.29 was released, require pahole v1.29 when GENDWARFKSYMS is enabled with DEBUG_INFO_BTF on X86. Reported-by: Paolo Pisati Signed-off-by: Sami Tolvanen --- Changes in v2: - Also allow pahole 129 help Calculate symbol versions from DWARF debugging information using gendwarfksyms. Requires DEBUG_INFO to be enabled.