https://bugs.dragonflybsd.org/
https://bugs.dragonflybsd.org/favicon.ico?1629395208
2007-11-29T09:17:00Z
DragonFlyBSD bugtracker
DragonFlyBSD - Bug #867: kill db_print_backtrace()
https://bugs.dragonflybsd.org/issues/867?journal_id=3870
2007-11-29T09:17:00Z
qhwt+dfly
<ul></ul><p>You can drop this prototype declaration and the surrounding #ifdef too.</p>
<p>Cheers.</p>
DragonFlyBSD - Bug #867: kill db_print_backtrace()
https://bugs.dragonflybsd.org/issues/867?journal_id=3872
2007-11-29T20:24:02Z
aoiko
<ul></ul><p>Oops. Updated patch follows.</p>
<p>Index: dev/acpica5/Osd/OsdSynch.c
===================================================================<br />retrieving revision 1.11<br />diff <del>u -p -u -r1.11 OsdSynch.c<br />--</del> dev/acpica5/Osd/OsdSynch.c<br />+++ dev/acpica5/Osd/OsdSynch.c<br /><code>@ -355,9 +355,6 </code>@ AcpiOsDeleteLock (ACPI_SPINLOCK Spin)<br /> kfree(Spin, M_ACPISEM);<br /> }</p>
<p><del>#ifdef ACPI_DEBUG_LOCKS<br />-void db_print_backtrace(void);<br /></del>#endif<br /> /*
* OS-dependent locking primitives. These routines should be able to be
* called from an interrupt-handler or cpu_idle thread.<br /><code>@ -379,7 +376,7 </code>@ AcpiOsAcquireLock (ACPI_SPINLOCK Spin)<br /> kprintf("%p(%s:%d): acpi_spinlock %p already held by %p(%s:%d)\n",<br /> curthread, func, line, Spin, Spin->owner, Spin->func,<br /> Spin->line);<br />- db_print_backtrace();<br />+ backtrace();<br /> } else {<br /> Spin->owner = curthread;<br /> Spin->func = func;<br /><code>@ -397,7 +394,7 </code>@ AcpiOsReleaseLock (ACPI_SPINLOCK Spin, U<br /> if (Spin->owner != NULL) {<br /> kprintf("%p: acpi_spinlock %p is unexectedly held by %p(%s:%d)\n",<br /> curthread, Spin, Spin->owner, Spin->func, Spin->line);<br />- db_print_backtrace();<br />+ backtrace();<br /> } else<br /> return;<br /> }<br />Index: kern/kern_shutdown.c
===================================================================<br />retrieving revision 1.61<br />diff <del>u -p -u -r1.61 kern_shutdown.c<br />--</del> kern/kern_shutdown.c<br />+++ kern/kern_shutdown.c<br /><code>@ -103,8 +103,6 </code>@ int debugger_on_panic = 1;<br /> SYSCTL_INT(_debug, OID_AUTO, debugger_on_panic, CTLFLAG_RW,<br /> &debugger_on_panic, 0, "Run debugger on kernel panic");</p>
<p><del>extern void db_print_backtrace(void);<br /></del><br /> #ifdef DDB_TRACE<br /> int trace_on_panic = 1;<br /> #else<br /><code>@ -788,9 +786,9 </code>@ panic(const char *fmt, ...)<br /> kprintf("cpuid = %d\n", mycpu->gd_cpuid);<br /> #endif</p>
<p><del>#if defined(DDB)<br /> if (newpanic && trace_on_panic)<br /></del> db_print_backtrace();<br />+ backtrace();<br />+#if defined(DDB)<br /> if (debugger_on_panic)<br /> Debugger("panic");<br /> #endif<br />Index: kern/kern_spinlock.c
===================================================================<br />retrieving revision 1.11<br />diff <del>u -p -u -r1.11 kern_spinlock.c<br />--</del> kern/kern_spinlock.c<br />+<ins>+ kern/kern_spinlock.c<br /><code>@ -273,16 +273,16 </code>@ exponential_backoff(struct exponential_b<br /> kprintf("spin_lock: <span>p, indefinite wait!\n", bo->mtx);<br /> if (panicstr)<br /> return (TRUE);<br /><del>#if defined(INVARIANTS) &x%x</span> defined(DDB)<br /></ins>#if defined(INVARIANTS)<br /> if (spin_lock_test_mode) {<br /></del> db_print_backtrace();<br />+ backtrace();<br /> return (TRUE);<br /> }<br /> #endif<br /> +<ins>bo->nsec;<br /><del>#if defined(INVARIANTS) && defined(DDB)<br /></ins>#if defined(INVARIANTS)<br /> if (bo</del>>nsec 11)<br />- db_print_backtrace();<br />+ backtrace();<br /> #endif<br /> if (bo->nsec 60)<br /> panic("spin_lock: %p, indefinite wait!\n", bo->mtx);<br />Index: kern/kern_timeout.c
===================================================================<br />retrieving revision 1.27<br />diff <del>u -p -u -r1.27 kern_timeout.c<br />--</del> kern/kern_timeout.c<br />+<ins>+ kern/kern_timeout.c<br /><code>@ -360,9 +360,7 </code>@ callout_reset(struct callout <strong>c, int to_<br /> kprintf(<br /> "callout_reset(%p) from %p: callout was not initialized\n",<br /> c, ((int *</strong>)&c)[-1]);<br /><del>#ifdef DDB<br /></del> db_print_backtrace();<br /><del>#endif<br /></ins> backtrace();<br /> }<br /> #endif<br /> gd = mycpu;<br /><code>@ -415,9 +413,7 </code>@ callout_stop(struct callout <strong>c)<br /> kprintf(<br /> "callout_stop(%p) from %p: callout was not initialized\n",<br /> c, ((int *</strong>)&c)[-1]);<br /></del>#ifdef DDB<br />- db_print_backtrace();<br />-#endif<br />+ backtrace();<br /> }<br /> #endif<br /> crit_enter_gd(gd);<br />Index: kern/lwkt_thread.c
===================================================================<br />retrieving revision 1.110<br />diff <del>u -p -u -r1.110 lwkt_thread.c<br />--</del> kern/lwkt_thread.c<br />+<ins>+ kern/lwkt_thread.c<br /><code>@ -500,9 +500,7 </code>@ lwkt_switch(void)<br /> td->td_flags |= TDF_PANICWARN;<br /> kprintf("Warning: thread switch from interrupt or IPI, " <br /> "thread %p (%s)\n", td, td->td_comm);<br /><del>#ifdef DDB<br /></del> db_print_backtrace();<br /><del>#endif<br /></ins> backtrace();<br /> }<br /> lwkt_switch();<br /> gd</del>>gd_intr_nesting_level = savegdnest;<br />Index: kern/uipc_mbuf.c
===================================================================<br />retrieving revision 1.65<br />diff <del>u -p -u -r1.65 uipc_mbuf.c<br />--</del> kern/uipc_mbuf.c<br />+++ kern/uipc_mbuf.c<br /><code>@ -850,8 +850,6 </code>@ m_mclfree(void *arg)<br /> objcache_put(mclmeta_cache, mcl);<br /> }</p>
<p><del>extern void db_print_backtrace(void);<br /></del><br /> /*
* Free a single mbuf and any associated external storage. The successor,
* if any, is returned.<br /><code>@ -881,14 +879,12 </code>@ m_free(struct mbuf *m)<br /> <abbr title="m->m_nextpkt == NULL">KKASSERT</abbr>;<br /> #else<br /> if (m->m_nextpkt != NULL) {<br />-#ifdef DDB<br /> static int afewtimes = 10;
===================================================================<br />retrieving revision 1.32<br />diff <del>u -p -u -r1.32 route.c<br />--</del> net/route.c<br />+++ net/route.c<br /><code>@ -1302,7 +1302,7 </code>@ rt_addrinfo_print(int cmd, struct rt_add
===================================================================<br />retrieving revision 1.14<br />diff <del>u -p -u -r1.14 vm_vmspace.c<br />--</del> vm/vm_vmspace.c<br />+<ins>+ vm/vm_vmspace.c<br /><code>@ -481,9 +481,7 </code>@ vkernel_lwp_exit(struct lwp *lp)<br /> if ((ve = vklp->ve) != NULL) {<br /> kprintf("Warning, pid %d killed with " <br /> "active VC!\n", lp->lwp_proc->p_pid);<br /><del>#ifdef DDB<br /></del> db_print_backtrace();<br /><del>#endif<br /></ins> backtrace();<br /> pmap_setlwpvm(lp, lp</del>>lwp_proc->p_vmspace);<br /> vklp->ve = NULL;<br /> <abbr title="ve->refs > 0">KKASSERT</abbr>;</p>
<pre><code>#ifdef ROUTE_DEBUG<br /> if (cmd RTM_DELETE && route_debug > 1)<br />- db_print_backtrace();<br />+ backtrace();<br /> #endif
<p>switch(cmd) {<br />Index: platform/pc32/i386/pmap.c<br />=================================================================<br />retrieving revision 1.81<br />diff <del>u -p -u -r1.81 pmap.c<br />--</del> platform/pc32/i386/pmap.c<br />+<ins>+ platform/pc32/i386/pmap.c<br /><code>@ -1930,15 +1930,11 </code>@ pmap_enter(pmap_t pmap, vm_offset_t va, <br /> #endif<br /> if (va < UPT_MAX_ADDRESS && pmap == &kernel_pmap) {<br /> kprintf("Warning: pmap_enter called on UVA with kernel_pmap\n");<br /><del>#ifdef DDB<br /></del> db_print_backtrace();<br /><del>#endif<br /></ins> backtrace();<br /> }<br /> if (va >= UPT_MAX_ADDRESS && pmap != &kernel_pmap) {<br /> kprintf("Warning: pmap_enter called on KVA without kernel_pmap\n");<br /></del>#ifdef DDB<br />- db_print_backtrace();<br />-#endif<br />+ backtrace();<br /> }</p>
<p>mpte = NULL;<br /><code>@ -2089,15 +2085,11 </code>@ pmap_enter_quick(pmap_t pmap, vm_offset_</p>
<p>if (va < UPT_MAX_ADDRESS && pmap == &kernel_pmap) {<br /> kprintf("Warning: pmap_enter_quick called on UVA with kernel_pmap\n");<br /><del>#ifdef DDB<br /></del> db_print_backtrace();<br /><del>#endif<br />+ backtrace();<br /> }<br /> if (va >= UPT_MAX_ADDRESS && pmap != &kernel_pmap) {<br /> kprintf("Warning: pmap_enter_quick called on KVA without kernel_pmap\n");<br /></del>#ifdef DDB<br />- db_print_backtrace();<br />-#endif<br />+ backtrace();<br /> }</p>
<p>/*<br />Index: vm/vm_vmspace.c</p>
</code></pre>
DragonFlyBSD - Bug #867: kill db_print_backtrace()
https://bugs.dragonflybsd.org/issues/867?journal_id=5855
2009-01-20T19:18:39Z
hasso
<ul></ul><p>What's the opinion regarding this? It should be either committed or closed.</p>
DragonFlyBSD - Bug #867: kill db_print_backtrace()
https://bugs.dragonflybsd.org/issues/867?journal_id=5859
2009-01-20T19:56:44Z
sepherosa
<ul></ul><p>On Tue, Jan 20, 2009 at 7:18 PM, Hasso Tepper (via DragonFly issue<br />tracker) <<a class="email" href="mailto:sinknull@crater.dragonflybsd.org">sinknull@crater.dragonflybsd.org</a>> wrote:</p>
<blockquote>
<p>Hasso Tepper <<a class="email" href="mailto:hasso@estpak.ee">hasso@estpak.ee</a>> added the comment:</p>
<p>What's the opinion regarding this? It should be either committed or closed.</p>
</blockquote>
<p>Looks good to me. However, should ddb/ddb.h uninclude in these files<br />after this patch?</p>
<p>Best Regards,<br />sephe</p>
DragonFlyBSD - Bug #867: kill db_print_backtrace()
https://bugs.dragonflybsd.org/issues/867?journal_id=6105
2009-02-06T02:40:29Z
aoiko
<ul></ul><p>This report today:</p>
<p><jwh> hm, guys<br /><jwh> linking kernel.nodebug<br /><jwh> route.o: In function `rtfree_remote':<br /><jwh> route.c:(.text+0xfb): undefined reference to `db_print_backtrace'<br /><jwh> ip_output.o: In function `ip_output':<br /><jwh> ip_output.c:(.text+0x5c2): undefined reference to `db_print_backtrace'<br /><jwh> building vkernel</p>
<p>prompted me to produce a new patch, which indeed removes some #ifdef DDB<br />and #include <ddb/ddb.h> lines. Compile tested w/ LINT and my regular<br />kernel config without DDB.</p>
<p>Opinions? Otherwise in it goes, should be trivial enough for the soft<br />freeze :)</p>
<p>Sorry this is not inline, icedove sucks quite a bit for serious email<br />usage...</p>
<p>Aggelos</p>
DragonFlyBSD - Bug #867: kill db_print_backtrace()
https://bugs.dragonflybsd.org/issues/867?journal_id=6107
2009-02-06T06:38:27Z
aoiko
<ul></ul><p>Committed, renamed backtrace() to print_backtrace() to be future-compatible as <br />requested by corecode.</p>