From nobody Tue Apr 28 21:45:39 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4g4vBR2JrZz6c85k for ; Tue, 28 Apr 2026 21:45:51 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-qv1-f44.google.com (mail-qv1-f44.google.com [209.85.219.44]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4g4vBQ1lw3z3TYC for ; Tue, 28 Apr 2026 21:45:50 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; arc=pass ("google.com:s=arc-20240605:i=1"); dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=freebsd.org (policy=none); spf=pass (mx1.freebsd.org: domain of adrian.chadd@gmail.com designates 209.85.219.44 as permitted sender) smtp.mailfrom=adrian.chadd@gmail.com Received: by mail-qv1-f44.google.com with SMTP id 6a1803df08f44-8a48deebe95so93045686d6.0 for ; Tue, 28 Apr 2026 14:45:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777412749; cv=none; d=google.com; s=arc-20240605; b=f0siV62deWpjc37I+TIn7Un7skcIex02tFbSQFyJN22QF65jiEChYAPKte2xACEmNO +vhwjgDEoReV1z9VXLNsM9U4hRgEQWht1Y2V16hhYGKOT0z5jgIBEGVgfYUVStOtU67i kitUXFlAm0Yu+e6HF6p7U1WcfBQNMwXxjahnfwdB4t37x2mzLB4EwmgC7VAkgWcBJ2TT RRiHVh+jXePrja27MyL+s2zewfLBeyIENBM10t30VutlV0S7rPVpKlTs7vEB2wvNQRq7 GrC3yvCYFxelk2gAAgRxC94zQgSAJwJQViOolhvlDan3nPwaeCXaHyVqh5a6NRKqjAaw Ovlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version; bh=MWYAozdVXEoXrtVwJsWFO1aVDp3lRIgXjQrQcn2fdSk=; fh=ELgpJaMRV2zz7rw9yJyQKXCLoDb7J+6zOsdHE9xIYVc=; b=a89/iavZfGzrEeiVnZ9LQ6mr1i9iwWRjMPz7qebtUXpM0nCys0JzKKTRE8gv2PWGlG PZKLm/aZIYu9ruRyLjoNp02I9yba9br+5E+574Lbix/hDQhZ5WQ3mvny3DlquBuvvrFq nUVM4c96MGRbGwqiYa7aUOx+y58cUCdsGTsnXWOJHAzFp9foMPANFZnyHUPITvhbRALu WmnsWOsXQsVIZZ3BERt5aPKRRS1ulCIXQMvqeuQ4EaJ31I08zfwQZtB99Wwe3ZqM0cre 5p5A3D1aW6+NVMm4BbRR0zbsluXwJN+g7K8EbjVbVPbrz7kxv8q0X4+MtF1Ub/YC2Fnv HkNA==; darn=freebsd.org ARC-Authentication-Results: i=1; mx.google.com; arc=none X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777412749; x=1778017549; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=MWYAozdVXEoXrtVwJsWFO1aVDp3lRIgXjQrQcn2fdSk=; b=jupIY7oRGwD8tgmApt5lqX/0Df7rf2Z4dyjRbS9uSdw4p/e+eY8mI5Hqzrpzb0wIbn /FKaPQjIl3z84DMjc0NiMwEGou5B5HFCmM87XbH72i0E7urx78MdkPus4ESUaQ67iWXa pVPlLEpugbNcTSG5rnaGj2wG1JLkeqXxiods9qwdiRUqDdBNT5Vv0NP3A4xb1kDO865a YG9JIK6uVHI1SBFIOyEYtaokG0XTXXKz5YTj0jHAy5NY9V4JEl4m3kt9mZJ5iWrQfLDh 8g2DXWYHAr/GVhRwbvhfr/zTfXjkN4Qnl1seSthHNGDEPFhyjJeQ0r+fWAO88kULx+uo sizw== X-Forwarded-Encrypted: i=1; AFNElJ8/lmpg17W61foAwysx4PWjRznaAVJ5JUkiSUtdxZARyZrXFW+xM41GNgktoI27zzlp3o10SG13z+t2P1vTDdOcCo8f@freebsd.org X-Gm-Message-State: AOJu0Yxw/QAHA7CH0c41SmDJSQyRz14buat6+4rQActbxktdG8xTyVnn p4qhYqKHYSEIrby5khkQms9MH1v7dviEVGeDGKOD6RWjVHgSEHtLe5ZGAwBPZywa3H4vi9+osxG l+8XfqDOXhHgaSW3u6vrSg/QCaUvjEys= X-Gm-Gg: AeBDietezqgaa2SbdZCFhpOXJz8s0pVlxsaPuabre6kzyquW94okETd/6yNhPlE/rna 6OhSv9juDE+8y4dr+d7H3Z9UkNrlpyLXmLxIRhHDc9agHHv4qwzCn3XmXsTSc7TL7xDv9yiS4QJ zMjtryQQrNcT083XKte8zfeWGcx0gjRxR024Qdp1wDOibZMVl8SntTOAAHxAwG3X4nJya9NVAek 4RDmWJX197m84xuGJb+IczMBpX76rVrSqfm4xA/SPBMbOFbhrvDmKarOEv4h5NPMm3GeAqwOWHQ CtRBrIgulgrLdZKp2gJfBRksC7Iu/cqknPTWwkJLFl3+g1P/yugX9+CsS3IrFHH3QRlbUzequzo cqy67JrEpNV4gTfPaSBrfDhUjRbguXyoUzjKMAg== X-Received: by 2002:a05:6214:230e:b0:8ac:b1ad:3a1f with SMTP id 6a1803df08f44-8b3e308c2a7mr78288346d6.35.1777412749303; Tue, 28 Apr 2026 14:45:49 -0700 (PDT) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <69e37435.3b47e.5048e12@gitrepo.freebsd.org> In-Reply-To: <69e37435.3b47e.5048e12@gitrepo.freebsd.org> From: Adrian Chadd Date: Tue, 28 Apr 2026 14:45:39 -0700 X-Gm-Features: AVHnY4IlW_aD40VE4vTaWwmolx3hUQ7O-hrSZ0WeDcOwLaDZqFftQHB9ZSsfg2U Message-ID: Subject: Re: git: ba94d7574972 - main - stand/common/load_elf: Do kernel module relocations for PPC To: Lexi Winter Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Spamd-Result: default: False [-0.97 / 15.00]; ARC_ALLOW(-1.00)[google.com:s=arc-20240605:i=1]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_SPAM_MEDIUM(1.00)[1.000]; FORGED_SENDER(0.30)[adrian@freebsd.org,adrianchadd@gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; MIME_GOOD(-0.10)[text/plain]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), No valid DKIM,none]; NEURAL_HAM_SHORT(-0.07)[-0.073]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; MISSING_XM_UA(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; R_DKIM_NA(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FROM_NEQ_ENVFROM(0.00)[adrian@freebsd.org,adrianchadd@gmail.com]; FROM_HAS_DN(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.219.44:from]; TAGGED_FROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-all@freebsd.org]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org]; RCVD_IN_DNSWL_NONE(0.00)[209.85.219.44:from] X-Rspamd-Queue-Id: 4g4vBQ1lw3z3TYC X-Spamd-Bar: / hi, This somehow breaks booting in pseries VMs in virtualised ppc64 on qemu, both ppc64be and ppc64le. The loader gets through a bunch of kernel loading and then hangs before it jumps into the kernel. -adrian On Sat, 18 Apr 2026 at 05:08, Lexi Winter wrote: > > The branch main has been updated by ivy: > > URL: https://cgit.FreeBSD.org/src/commit/?id=ba94d75749721fae999f756cb227638f9d4398a8 > > commit ba94d75749721fae999f756cb227638f9d4398a8 > Author: Lexi Winter > AuthorDate: 2026-04-18 12:07:10 +0000 > Commit: Lexi Winter > CommitDate: 2026-04-18 12:07:10 +0000 > > stand/common/load_elf: Do kernel module relocations for PPC > > reloc_ptr() skips relocations for the kernel module, because on most > platforms the kernel is ET_EXEC and this is not required. On PPC, > the kernel is ET_DYN and we need to relocate here, otherwise the > module metadata will not be loaded properly and the kernel module > will have an incorrect version, preventing module dependencies from > resolving. > > This fixes loading kernel modules from loader.conf on powerpc. > > Diagnosed by: jrtc27 > Reviewed by: jrtc27, adrian > Sponsored by: https://www.patreon.com/bsdivy > Differential Revision: https://reviews.freebsd.org/D56457 > --- > stand/common/load_elf.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/stand/common/load_elf.c b/stand/common/load_elf.c > index 10131f7ccb88..a6ea60c74b84 100644 > --- a/stand/common/load_elf.c > +++ b/stand/common/load_elf.c > @@ -1282,10 +1282,11 @@ __elfN(reloc_ptr)(struct preloaded_file *mp, elf_file_t ef, > int error; > > /* > - * The kernel is already relocated, but we still want to apply > - * offset adjustments. > + * On most platforms, the kernel is already relocated, but we still > + * want to apply offset adjustments. For PowerPC, the kernel is > + * ET_DYN rather than ET_EXEC and we still need to relocate here. > */ > - if (ef->kernel) > + if (ef->kernel && ef->ehdr->e_type != ET_DYN) > return (EOPNOTSUPP); > > for (n = 0; n < ef->relsz / sizeof(r); n++) { >