[DragonFlyBSD - Bug #2597] panic building devel/gettext

bugtracker-admin at leaf.dragonflybsd.org bugtracker-admin at leaf.dragonflybsd.org
Mon Oct 28 18:10:30 PDT 2013


Issue #2597 has been updated by davshao.


I have bisected the problem to NOT occur with

commit 00891516deedeeb5735ac0fb922e0a2823334f55
Date:   Mon Oct 14 16:34:32 2013 -0700

    kernel - Use per-cpu token for deadlwps list

and to occur with

commit d83c62446a4a82336e1942dd088225f3e1d78891
Date:   Mon Oct 14 16:54:37 2013 -0700

    kernel - Fix bug last commit (2)

I have also observed that the systems where the problem occurs appear to have ufs as the filesystem, whereas some other systems with hammer do not exhibit the same problem.

----------------------------------------
Bug #2597: panic building devel/gettext
http://bugs.dragonflybsd.org/issues/2597#change-11624

* Author: davshao
* Status: New
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
----------------------------------------
Using current master at least updated through
commit e8be1190de880a82da339c7b763cadb8bd48e960

Date:   Fri Oct 18 10:59:57 2013 +0800

    vga_pci: Fix cached resources cleanup and setup driver's softc size

build either dports or pkgsrc from scratch, then build say devel/gettext.  On multiple machines there is a panic similar to:

Fatal trap 12: page fault while in kernel mode
cpuid = 2; lapic.id = 02000000
fault virtual address  = 0.18
fault code             = supervisor read, page not present
instruction pointer    = 0x8:0xa04c6b38
stack pointer          = 0x10:0xba845d40
frame pointer          = 0x10:0x1e
code segment           = base 0x0, limit 0xfffff, type 0x1b
                       = DPL 0, pres 1, def32 1, gran 1
processor eflags       = interrupt enabled, resume, IOPL = 0
current process        = Idle
current thread         = pri 12
 <- SMP: XXX
kernel: type 12 trap, code=0

CPU2 stopping CPUs: 0x0000000b
 stopped
Stopped at   vn_syncer_add+0x1e:   movl  0x18(%eax),%esi

The reason I mention m4 1.4.17 is that a recent upgrade appears to use __fpending which on DragonFly is defined contrary to how it is apparently defined in Linux, with the most serious potential problem that DragonFly's __fpending returns a signed value.  The panics are not observed building perl or even building world and kernel, so it does not appear to be a general problem with the new syncer code.

dports m4 is patched to paper over the differing signatures of __fpending in order to even get m4 1.4.17 to build.  I get the same panics when I applied the dports patch to pkgsrc to get its m4 1.4.17 to build.

It is possible m4 is blameless, but whatever the problem is, it seems fairly serious since it manifests in the build path of git which would enable further updates to src or dports if there is a fix ...


-- 
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account



More information about the Bugs mailing list