[PATCH] Switch Alpha to new cpu_switch/throw conventions

Marcel Moolenaar marcel at xcllnt.net
Fri Aug 8 16:24:30 PDT 2003


On Fri, Aug 08, 2003 at 05:14:59PM -0400, John Baldwin wrote:
> I have a completely untested (but should work :-P) patch to convert
> Alpha over to the new cpu_throw/switch conventions of passing the
> threads in as arguments to the function.  The patch is at
> http://www.FreeBSD.org/~jhb/patches/alpha_switch.patch  I would
> appreciate it if someone could test it.  Success would be making
> it to multiuser mode.  Failure would probably be panic'ing very early
> after starting init since failure means context switches are broken.

Kaboom:

	:
FreeBSD 5.1-CURRENT #19: Fri Aug  8 15:22:59 PDT 2003
    marcel at alpha.pn.xcllnt.net:/nfs/freebsd/5.x/src/sys/alpha/compile/ALPHA
Preloaded elf kernel "/boot/kernel/kernel" at 0xfffffc0000718000.
Digital Personal Workstation (Miata)
Digital Personal WorkStation 433au, 432MHz
	:
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "alpha"  frequency 433203210 Hz
Timecounters tick every 0.976 msec
acd0: CDROM <TOSHIBA CD-ROM XM-5702B> at ata0-master PIO3
Waiting 3 seconds for SCSI devices to settle
da0 at isp0 bus 0 target 0 lun 0
da0: <QUANTUM ATLAS IV 9 WLS 0B0B> Fixed Direct Access SCSI-3 device
da0: 40.000MB/s transfers (20.000MHz, offset 8, 16bit), Tagged Queueing Enabled
da0: 8761MB (17942584 512 byte sectors: 255H 63S/T 1116C)
Mounting root from ufs:/dev/da0a
                                                                                
fatal kernel trap:
                                                                                
    trap entry     = 0x2 (memory management fault)
    faulting va    = 0x138
    type           = access violation
    cause          = load instructon
    pc             = 0xfffffc000057e6ec
    ra             = 0xfffffc0000580174
    sp             = 0xfffffe0013f75be0
    usp            = 0x11fffc58
    curthread      = 0xfffffc0003c9abe0
        pid = 37, comm = stty
                                                                                
Stopped at      pmap_deactivate+0xc:    ldq     t1,0x138(t0) <0x138>    <t1=0x2>
db> trace
pmap_deactivate() at pmap_deactivate+0xc
Lcs1() at Lcs1+0x20
--- root of call graph ---

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel at xcllnt.net


More information about the freebsd-alpha mailing list