Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 04 Nov 2018 06:25:17 +0000
From:      bugzilla-noreply@freebsd.org
To:        toolchain@FreeBSD.org
Subject:   [Bug 230857] loading carp module panic i386 kernel (VIMAGE related)
Message-ID:  <bug-230857-29464-Q1LNmG6kQk@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-230857-29464@https.bugs.freebsd.org/bugzilla/>
References:  <bug-230857-29464@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D230857

--- Comment #11 from commit-hook@freebsd.org ---
A commit references this bug:

Author: bz
Date: Sun Nov  4 06:25:07 UTC 2018
New revision: 340109
URL: https://svnweb.freebsd.org/changeset/base/340109

Log:
  MFC r340009:

    carpstats are the last virtualised variable in the file and end up at t=
he
    end of the vnet_set.  The generated code uses an absolute relocation at
    one byte beyond the end of the carpstats array.  This means the relocat=
ion
    for the vnet does not happen for carpstats initialisation and as a resu=
lt
    the kernel panics on module load.

    This problem has only been observed with carp and only on i386.
    We considered various possible solutions including using linker scripts
    to add padding to all kernel modules for pcpu and vnet sections.

    While the symbols (by chance) stay in the order of appearance in the fi=
le
    adding an unused non-file-local variable at the end of the file will ex=
tend
    the size of set_vnet and hence make the absolute relocation for carpsta=
ts
    work (think of this as a single-module set_vnet padding).

    This is a (tmporary) hack.  It is the least intrusive one as we need a
    timely solution for the upcoming release.  We will revisit the problem =
in
    HEAD.  For a lot more information and the possible alternate solutions
    please see the PR and the references therein.

  PR:           230857
  Approved by:  re (kib)

Changes:
_U  stable/12/
  stable/12/sys/netinet/ip_carp.c

--=20
You are receiving this mail because:
You are on the CC list for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-230857-29464-Q1LNmG6kQk>