Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Dec 2011 19:52:41 -0600
From:      Brooks Davis <brooks@FreeBSD.org>
To:        Gleb Smirnoff <glebius@FreeBSD.org>
Cc:        freebsd-current <freebsd-current@FreeBSD.org>, Doug Barton <dougb@FreeBSD.org>, Dimitry Andric <dim@FreeBSD.org>
Subject:   Re: r228700 can't dhclient em0
Message-ID:  <20111221015241.GE68792@lor.one-eyed-alien.net>
In-Reply-To: <20111220191520.GA70684@FreeBSD.org>
References:  <4EEF0124.4000902@FreeBSD.org> <4EEF3B22.8010401@FreeBSD.org> <4EF0499D.4070000@FreeBSD.org> <20111220191520.GA70684@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--HnQK338I3UIa/qiP
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Dec 20, 2011 at 11:15:20PM +0400, Gleb Smirnoff wrote:
>   Doug,
>=20
> On Tue, Dec 20, 2011 at 12:38:53AM -0800, Doug Barton wrote:
> D> > I saw this too, when my kernel and userland were out of sync (e.g. j=
ust
> D> > after installing a new kernel, and before installworld).  I suspect =
it
> D> > is caused by the changes in r228571, which cause old ifconfig and
> D> > dhclient to not recognize any interfaces.  I'm not 100% sure though.=
=2E.
> D>=20
> D> I tried replacing both ifconfig and dhclient with the versions that we=
re
> D> built along with the new kernel, and that didn't work.
>=20
> This shouldn't happen. If you did 'make buildworld buildkernel', then
> your world in objdir would have binaries compiled with includes from
> source tree, not from /usr/include, thus compatible with new kernel.
>=20
> 'make buildworld buildkernel' always produces compatible kernel and
> worlds.
>=20
> However, if you did 'cd /usr/src/sbin/ifconfig && make all install' then
> that didn't work, since used headers from /usr/include.
>=20
> D> The traditional (and documented) upgrade process for many years has be=
en
> D> to boot the new kernel, make sure it's Ok, then update world. Obviously
> D> something different is needed this time, so it needs an UPDATING entry
> D> (assuming that all this is not just a bug).
>=20
> The documented one says 'Reboot into single user mode' and then install
> new world. This path was not broken, since single user mode doesn't
> imply network support.

While this is the documented path, it's not actually been required
except in edge cases for ages (the last I can remember is a.out->elf).
It's been long enough that I don't think we can really make people do
it except for a short period of time in HEAD.  I believe it's
unacceptable for a release to release upgrade.

> The undocumented brave way 'make installkernel installworld && reboot'
> works also, without any problems.

At least until someone screws up something else and you now can't use
kernel.old either.  This is somewhat ok for HEAD users, but I think we
should try harder to avoid this sort of situation.

-- Brooks

--HnQK338I3UIa/qiP
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (FreeBSD)

iD8DBQFO8TvoXY6L6fI4GtQRAiJBAJ0VBuNCY6QOQIiDwKwqgHpI8gxTewCfZkHW
9PWeXG2xUFPzDC+xOvaZaTc=
=8sY3
-----END PGP SIGNATURE-----

--HnQK338I3UIa/qiP--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20111221015241.GE68792>