Date: Mon, 28 Jun 2010 20:41:17 -0400 (EDT) From: Rick Macklem <rmacklem@uoguelph.ca> To: Daniel Braniss <danny@cs.huji.ac.il> Cc: freebsd-stable@freebsd.org, alexs@ulgsm.ru Subject: Re: diskless boot, nfs server behind router Message-ID: <Pine.GSO.4.63.1006282038070.20639@muncher.cs.uoguelph.ca> In-Reply-To: <E1OTFDh-000OrT-LR@kabab.cs.huji.ac.il> References: <20100625152027.GA78442@mail.ulgsm.ru> <Pine.GSO.4.63.1006252008340.8512@muncher.cs.uoguelph.ca> <20100626113418.GA80299@mail.ulgsm.ru> <Pine.GSO.4.63.1006261020100.15701@muncher.cs.uoguelph.ca> <20100628061601.GA51359@mail.ulgsm.ru> <20100628102703.GA78354@mail.ulgsm.ru> <Pine.GSO.4.63.1006281011180.8202@muncher.cs.uoguelph.ca> <E1OTFDh-000OrT-LR@kabab.cs.huji.ac.il>
next in thread | previous in thread | raw e-mail | index | archive | help
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;
}
}
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.63.1006282038070.20639>
