Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 07 Mar 2016 08:39:47 -0700
From:      Ian Lepore <ian@freebsd.org>
To:        Dimitry Andric <dim@FreeBSD.org>, Julian Elischer <julian@FreeBSD.ORG>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r296428 - head/sys/boot/common
Message-ID:  <1457365187.13785.174.camel@freebsd.org>
In-Reply-To: <AC0A9708-B618-4D05-8532-BD451AB94A60@FreeBSD.org>
References:  <201603061557.u26FvhMi033982@repo.freebsd.org> <56DCD52F.4010709@freebsd.org> <AC0A9708-B618-4D05-8532-BD451AB94A60@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 2016-03-07 at 08:41 +0100, Dimitry Andric wrote:
> On 07 Mar 2016, at 02:11, Julian Elischer <julian@FreeBSD.ORG> wrote:
> > 
> > On 6/03/2016 7:57 AM, Dimitry Andric wrote:
> > > Author: dim
> > > Date: Sun Mar  6 15:57:43 2016
> > > New Revision: 296428
> > > URL: https://svnweb.freebsd.org/changeset/base/296428
> > > 
> > > Log:
> > >   Since kernel modules can now contain sections of type
> > > SHT_AMD64_UNWIND,
> > >   the boot loader should not skip over these anymore while
> > > loading images.
> > >   Otherwise the kernel can still panic when it doesn't find the
> > > .eh_frame
> > >   section belonging to the .rela.eh_frame section.
> > >      Unfortunately this will require installing boot loaders from
> > > sys/boot
> > >   before attempting to boot with a new kernel.
> > 
> > what happens to someone who doesn't replace their bootblocks?
> > Or is this just the loader?
> 
> This just about the loaders, e.g. loader, loader.efi and zfsloader.
> 
> 
> > The general way we have handled this sort of thing in the past is
> > that we do something
> > that produces a nagging message for a decent time before it becomes
> > mandatory.
> > 
> > I don't like the idea of people being caught unaware by this..
> > 
> > Can you please give a more detailed description of what happens?
> 
> If you preload modules with .eh_frame sections in them (such as
> aesni.ko) from your loader.conf, your kernel will panic very early in
> the boot.
> 
> If you don't preload any modules, or load only modules without
> .eh_frame
> sections (most of of them), there is no issue at all.
> 
> -Dimitry
> 

Is there no way to prevent the panic other than making the unwind data
be present?  Why can't the kernel be fixed to cope with the missing
data in some gentler way during a transition period?  Perhaps valid-but
-fake data could be generated if necessary?  Being unable to get a
stack traceback through a loaded module would be a small price to pay
for trouble-free updgrades.

-- Ian




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