sparc64/71729: printf in kernel thread causes panic on SPARC

Doug Haigh cd_freebsd at gatorzone.com
Tue Sep 14 08:50:27 PDT 2004


>Number:         71729
>Category:       sparc64
>Synopsis:       printf in kernel thread causes panic on SPARC
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-sparc64
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Sep 14 15:50:17 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Doug Haigh
>Release:        SPARC 5.2.1
>Organization:
>Environment:
FreeBSD stesthost 5.2.1-RELEASE FreeBSD 5.2.1-RELEASE #12: Mon Sep 13 10:35:08 EDT 2004     cd at stesthost:/usr/src/sys/sparc64/compile/DBGKERNEL  sparc64

THis is an Ultra-60 dual proc machine
>Description:
I create a kernel thread in my driver using kthread_create. When the thread routine executes, it tries to print out a debug message using 'printf'. When this executes, I trap in a panic with the following trace:

panic() at panic+0x174
trap() at trap+0x3b4
-- fast data access mmu miss tar=0 %o7=0xf000d784
_end() at 0xf0008fd0
openfirmware() at openfirmware+0x18
OF_write() at OF_write+0x14
ofw_cons_putc() at ofw_cons_putc+0x3c
cnputc() at cnputc+0x7c
putchar() at putchar+0x5c
kvprintf() at kvprintf+0x648
printf() at printf+0x4C

Same code works fine on i386 machines.

>How-To-Repeat:
Create a driver that creates a thread and do a printf in the thread routine.
>Fix:
      
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-sparc64 mailing list