From nobody Sun May 24 15:44:11 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 4gNjxD66CGz6g53K for ; Sun, 24 May 2026 15:44:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gNjxD4Mvxz3JZW for ; Sun, 24 May 2026 15:44:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1779637456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ebEfz9MdtyJW3IJ54ekGQhjEI8LDuXS8VAXsXoj/Nkk=; b=Z81hG5EiXnNBSkoeJOoek05bVHDzxZYfjMq7FmW2czd9m1vv6K78+rbVyR8zJ6rWg+PAsm g5vKy1qMsgp+VGNDzvkG1vK05uymKW8obVUd559X6SfZemXPw3XphxV0dZ1FIcyKPuF8z0 aXvvJRmS9GyKPJhFz/KMimAJb9sAUTW5UnWdfAjW6no8diIubgWD1IwdYxKELjBxHRO5iO JlyxLzmB9nV5TDm85Ka1D3f+2JlRAdtuhsSRicO1eR9WeNPWkNeeEPkodA9AQfC6YGZcqH FvsV0lDK4tdWkaxyGJ1Ja3Dev/uaNaJE6mUQaDVJPbpVTqPEdfF5T8ooke1QHg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1779637456; a=rsa-sha256; cv=none; b=Oa79GeOFXAZ3sreiopkKI925gMYHcN4J4dweCiz6vhKW0w1N7XqXe0rv2ZCDPYUejLvq3l Ngw5BRWMukCDZgk9ZAE1lZygNB+VFBjXwfW86dV9I+F04wyxGcFodQbSL6tgw5mBfNe1Km LMRUL4HOXoLWbu5uBx2SpxmzYB3/1rrMmYlWVwgXk+b+JRegQpDCohXMFXKWHDVmcu2G6+ dFzF/EF+WTk254c1mjgcQ0b+qeBEk8CRb4fHLp7hnppN+nFAszPYH80QYGi+QpqbmgtSXV QIb2r4TSRWH2im0U2U5Q2+2910PhERNC7AVnBvGSbHpGRKTDfeHZnQWcNXK26Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1779637456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ebEfz9MdtyJW3IJ54ekGQhjEI8LDuXS8VAXsXoj/Nkk=; b=deNCn64Iu9/B9bU1zZFu3+BrMSqCFAJLOnj7nZkYEDfFHD+nO1AK8kDA0fA4DGOM3GA8fc zBMhKmayuYJVpaWzO4TXDDHbh+FA5/Q1On5vzrX5kEbSUpPQbtIU685LLi93XQMkrp21yd En4Pkl8/Fb/0jMJv+4Oxz+564qEUBS05EwRwC9+bSJ5o1mdwPOKrOuqjeUJlGk4+E1pG9n iqPjGFi/g03b5ks3r+dilRQ/0/LCH9c1PFc80qeWTO1SCCDbUPUv9a1Dk57cc2cGzPlL02 fi3ifut3Nfs1+FUpWxQLIt9aSDjevYxWiLTBcv14Ekxz7LadZtozoQhl8Y/R+w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gNjxD3wWfz10mB for ; Sun, 24 May 2026 15:44:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 262a1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 24 May 2026 15:44:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Martin Cracauer Subject: git: d2c21935e866 - main - pxeboot: warn and abort on TCP-only NFS server, which doesn't work for pxeboot 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 List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cracauer X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d2c21935e8666f5e9a38e27701445f5acc82465d Auto-Submitted: auto-generated Date: Sun, 24 May 2026 15:44:11 +0000 Message-Id: <6a131ccb.262a1.1bf2c54a@gitrepo.freebsd.org> The branch main has been updated by cracauer: URL: https://cgit.FreeBSD.org/src/commit/?id=d2c21935e8666f5e9a38e27701445f5acc82465d commit d2c21935e8666f5e9a38e27701445f5acc82465d Author: Martin Cracauer AuthorDate: 2026-05-24 15:43:00 +0000 Commit: Martin Cracauer CommitDate: 2026-05-24 15:43:00 +0000 pxeboot: warn and abort on TCP-only NFS server, which doesn't work for pxeboot When pxeboot gets a 0 as a port number from portmapper (indicating an error), it currently happily sends NFS packets to the server's port 0 in an endless loop. Change this to instead bail out with a useful message. This happens, for example, with recent Linux NFS servers as many distributions switched to TCP only NFS serving by default. FreeBSD's pxeboot must have UDP. In this situation pxeboot asks the server's portmapper for the UDP NFS port and since there is none gets 0. Also add a hint to the manpage explaining this and how to fix it. Reviewed by: ziaee, kevans, imp --- stand/i386/pxeldr/pxeboot.8 | 8 ++++++++ stand/libsa/rpc.c | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/stand/i386/pxeldr/pxeboot.8 b/stand/i386/pxeldr/pxeboot.8 index 496b244cf00f..aa6a5d5c5f7f 100644 --- a/stand/i386/pxeldr/pxeboot.8 +++ b/stand/i386/pxeldr/pxeboot.8 @@ -130,6 +130,14 @@ In all other respects, acts just like .Xr loader 8 . .Pp +.Nm +requires NFS over UDP. +Many recent distributions of Linux only serve NFS over TCP. +Enable UDP in some distributions by uncommenting +.Ql udp=y +in +.Pa /etc/nfs.conf . +.Pp For further information on Intel's PXE specifications and Wired for Management (WfM) systems, see .Li http://www.pix.net/software/pxeboot/archive/pxespec.pdf . diff --git a/stand/libsa/rpc.c b/stand/libsa/rpc.c index 6b11282a10be..bc5412f1efeb 100644 --- a/stand/libsa/rpc.c +++ b/stand/libsa/rpc.c @@ -415,6 +415,11 @@ rpc_getport(struct iodesc *d, n_long prog, n_long vers) return (-1); } port = (int)ntohl(res->port); + if (port == 0) { + printf("Portmapper returned 0. TCP-only NFS server?\n"); + free(pkt); + return (-1); + } free(pkt); rpc_pmap_putcache(d->destip, prog, vers, port);