Signal 12 on make update (or any target in /usrc/src)

Konstantin Belousov kostikbel at gmail.com
Wed Aug 10 15:03:59 UTC 2016


On Wed, Aug 10, 2016 at 10:49:40AM -0400, Matteo Riondato wrote:
> 
> > On Aug 10, 2016, at 10:41 AM, Konstantin Belousov <kostikbel at gmail.com> wrote:
> > On Wed, Aug 10, 2016 at 10:33:23AM -0400, Matteo Riondato wrote:
> >> Hi all,
> >> 
> >> I recently upgraded from a late June (pre 11-branch, as far as I can tell) revision to r303771.
> >> 
> >> Now, running ???make update??? (or buildworld, ???) in /usr/src fails with a signal 12:
> >> 
> >> matteo at triton:/usr/src$ sudo make update
> >> Password:
> >> *** Signal 12
> > 
> > You did not updated, I think.  You, most likely, inly updated the kernel,
> > but left the old userspace in place, at least libc.
> 
> That would be surprising but it may have happened, as I don???t remember without doubts to have run installworld :/
> 
> > Signal 12 is SIGSYS, which means that the program tries to use a syscall
> > not implemented by the kernel.  My guess is that your kernel lacks option
> > COMPAT_FREEBSD10, and the failing syscall is pipe(2).
> 
> Indeed I do not have COMPAT_FREEBSD10, because I believed my previous world revision was >302092, as noted by the entry about pipe(2) in UPDATING.
> 
> Any suggestion on how to fix this?
> Boot the old kernel, add COMPAT_FREEBSD10 to kernel config, and rebuild/install world and kernel perhaps?
> 

If old kernel works, then this would allow you to recover.

Take libc.so.7 from the BETA-4, and put it into /lib, taking backup of
your current libc first.  I suspect this is the easiest route if old
kernel does not match with your world.


More information about the freebsd-current mailing list