From owner-freebsd-stable@FreeBSD.ORG Tue Jun 29 00:24:29 2010 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 01398106564A for ; Tue, 29 Jun 2010 00:24:29 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from esa-jnhn.mail.uoguelph.ca (esa-jnhn.mail.uoguelph.ca [131.104.91.44]) by mx1.freebsd.org (Postfix) with ESMTP id A46A28FC24 for ; Tue, 29 Jun 2010 00:24:27 +0000 (UTC) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvsEAP/ZKEyDaFvG/2dsb2JhbACfNnHAdYUkBJEP X-IronPort-AV: E=Sophos;i="4.53,500,1272859200"; d="scan'208";a="81998554" Received: from amazon.cs.uoguelph.ca ([131.104.91.198]) by esa-jnhn-pri.mail.uoguelph.ca with ESMTP; 28 Jun 2010 20:24:22 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by amazon.cs.uoguelph.ca (Postfix) with ESMTP id 27FF52101D5; Mon, 28 Jun 2010 20:24:24 -0400 (EDT) X-Virus-Scanned: amavisd-new at amazon.cs.uoguelph.ca Received: from amazon.cs.uoguelph.ca ([127.0.0.1]) by localhost (amazon.cs.uoguelph.ca [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ekvLdV2xnIte; Mon, 28 Jun 2010 20:24:23 -0400 (EDT) Received: from muncher.cs.uoguelph.ca (muncher.cs.uoguelph.ca [131.104.91.102]) by amazon.cs.uoguelph.ca (Postfix) with ESMTP id 21AD02101D3; Mon, 28 Jun 2010 20:24:23 -0400 (EDT) Received: from localhost (rmacklem@localhost) by muncher.cs.uoguelph.ca (8.11.7p3+Sun/8.11.6) with ESMTP id o5T0fHv20684; Mon, 28 Jun 2010 20:41:18 -0400 (EDT) X-Authentication-Warning: muncher.cs.uoguelph.ca: rmacklem owned process doing -bs Date: Mon, 28 Jun 2010 20:41:17 -0400 (EDT) From: Rick Macklem X-X-Sender: rmacklem@muncher.cs.uoguelph.ca To: Daniel Braniss In-Reply-To: Message-ID: References: <20100625152027.GA78442@mail.ulgsm.ru> <20100626113418.GA80299@mail.ulgsm.ru> <20100628061601.GA51359@mail.ulgsm.ru> <20100628102703.GA78354@mail.ulgsm.ru> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-stable@freebsd.org, alexs@ulgsm.ru Subject: Re: diskless boot, nfs server behind router X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Jun 2010 00:24:29 -0000 On Mon, 28 Jun 2010, Daniel Braniss wrote: >> >> >> On Mon, 28 Jun 2010, alexs@ulgsm.ru wrote: >> >>> >>> >>> kernel built with: >>> options BOOTP # Use BOOTP to obtain IP address/hostname >>> options BOOTP_NFSROOT # NFS mount root file system using BOOTP info >>> options BOOTP_NFSV3 >>> >> Try building a kernel without the above options, but with >> options NFS_ROOT >> specified. I think that's what most pxeboot users do and it was what >> I had assumed when I looked at the code. >> >> If that doesn't fix the problem...I haven't got a solution for you, rick > > I use: > options BOOTP_NFSV3 # Use NFS v3 to NFS mount root > Looking at the code, it appears that BOOTP_NFSROOT doesn't set mygateway in the nfs_diskless structure, which would explain why the mount of root in the kernel doesn't work. I think using NFS_ROOT but not the BOOTPxxx options will work around this or you could test the following patch and see if it helps. (Testing the patch would be appreciated, since I don't have any way to test across multiple subnets and it would be nice to have a fix for the BOOTPxxx cases.) rick --- untested patch for bootp_subr.c --- --- nfsclient/bootp_subr.c.sav 2010-06-28 19:16:02.000000000 -0400 +++ nfsclient/bootp_subr.c 2010-06-28 19:21:52.000000000 -0400 @@ -1524,6 +1524,7 @@ printf(" "); ifctx->gotgw = 1; gctx->gotgw = 1; + nd->mygateway = ifctx->gw; } }