Port-m68k archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: New pmap status update
Ok, I am on a cross-USA flight all day today so I’ll have some time to look at this :-)
-- thorpej
Sent from my iPhone.
> On Dec 14, 2025, at 9:26 AM, Izumi Tsutsui <tsutsui%ceres.dti.ne.jp@localhost> wrote:
>
> Hi,
> (sorry for a late trial, now Open Source Conference Hiroshima was over)
>
>> Ok, I have pushed a modified version of your NO_CAS patch and
>> also made a tweak to pmap_motorola.c to avoid the atomic functions
>> that use CAS under the covers. I'd like to pull those change into
>> netbsd-11 possibly, if they work on your 313 / 330 with the old pmap.
>
> I've tried SMALL020 kernel (i.e. traditional pmap) around 20251207
> (via netboot) and unfortunately it gets panic() due to another
> TAS instruction in _kernel_lock() (maybe __cpu_simple_lock_try()?):
>
> ---
>
>>> NetBSD/hp300 Primary Boot, Revision 1.22 (Sat May 31 17:00:41 UTC 2025) (from NetBSD 10.99.14)
>>> HP 9000/318/319/330 SPU
>>> Enter "reset" to reset system.
> Boot: [[[le0a:]netbsd][-a][-c][-d][-s][-v][-q]] :- le0a:netbsd.small020 -s
> WARNING: bad date in battery clock
> boot: client IP address: 192.168.20.74
> root addr=192.168.20.1 path=/r/export/NetBSD/hp300/root
> 2292116+99012 [211280+198022]=0x2abf50
> Start @ 0xff803000 [1=0xffa49c58-0x2abf50]...
> Entry point: 0xff803000
> [ 1.0000000] bootinfo found at 0xff802000
> [ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
> [ 1.0000000] 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013,
> [ 1.0000000] 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023,
> [ 1.0000000] 2024, 2025
> [ 1.0000000] The NetBSD Foundation, Inc. All rights reserved.
> [ 1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 1993
> [ 1.0000000] The Regents of the University of California. All rights reserved.
>
> [ 1.0000000] NetBSD 11.99.4 (SMALL020) #0: Sun Dec 7 14:35:21 JST 2025
> [ 1.0000000] tsutsui@mirage:/s/tsutsui/netbsd/src/sys/arch/hp300/compile/SMALL020
> [ 1.0000000] HP 9000/318/319/330 (16.67MHz MC68020 CPU, MC68851 MMU, 16.67MHz MC68881 FPU)
> [ 1.0000000] total memory = 8180 KB
> [ 1.0000000] avail memory = 4552 KB
> [ 1.0000000] mainbus0 (root)
> [ 1.0000000] intio0 at mainbus0
> [ 1.0000000] rtc0 at intio0 addr 0x420000
> [ 1.0000000] hil0 at intio0 addr 0x428000 ipl 1
> [ 1.0000000] nhpib1 at intio0 addr 0x478000 ipl 3: internal HP-IB
> [ 1.0000000] hpibbus1 at nhpib1
> [ 1.0000000] dma0 at intio0 addr 0x500000 ipl 1: 98620C, 2 channels, 32-bit DMA
> [ 1.0000000] topcat0 at intio0 addr 0x560000: 1024x768x6 HP98549 catseye frame buffer
> [ 1.0000000] wsdisplay0 at topcat0 kbdmux 1
> [ 1.0000000] dio0 at mainbus0
> [ 1.0000000] com0 at dio0 scode 9 ipl 5: ns8250 or ns16450, no fifo
> [ 1.0000000] com0: console
> [ 1.0000000] fhpib0 at dio0 scode 14 ipl 4: 98625A/98625B HP-IB
> [ 1.0000000] hpibbus2 at fhpib0
> [ 1.0000000] le0 at dio0 scode 21 ipl 5: address 08:00:09:02:6a:99
> [ 1.0000000] le0: 8 receive buffers, 2 transmit buffers
> [ 1.0000000] WARNING: system needs entropy for security; see entropy(7)
> [ 2.1739230] hil0: no devices
> [ 5.7425910] boot device: le0
> [ 5.7625750] root on le0
> [ 5.7853590] nfs_boot: trying DHCP/BOOTP
> [ 8.8310390] trap type 0, code = 0x1d5, v = 0x224340
> [ 8.8443470] kernel program counter = 0x1153bc
> [ 8.8563110] kernel: Bus error trap
> [ 8.8668830] pid = 0, lid = 3, pc = 001153BC, ps = 2500, sfc = 1, dfc = 1
> [ 8.8668830] Registers:
> [ 8.8668830] 0 1 2 3 4 5 6 7
> [ 8.8668830] dreg: 00000001 00002104 00002004 00000001 00115DC8 03470170 00000000 00115380
> [ 8.8668830] areg: 0132A300 03470170 03470368 03470170 0132A300 0012BBA6 0302AEA4 FFEFFFFC
>
> [ 8.8668830] Kernel stack (0302AD14):
> [ 8.8668830] 02AD14: 00010882 0302ADEC 00000080 00002004 00000001 00115DC8 03470170 00000000
> [ 8.8668830] 02AD34: 00115380 03470368 03470170 0132A300 0012BBA6 001332B7 001332B3 001332AF
> [ 8.8668830] 02AD54: 001332AB 00000001 00000000 00000000 00000000 00000000 00000000 00000000
> [ 8.8668830] 02AD74: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
> [ 8.8668830] 02AD94: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
> [ 8.8668830] 02ADB4: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0013322F
> [ 8.8668830] 02ADD4: 0302AEA4 00001524 0302ADEC 00000000 000001D5 00224340 00000001 00002104
> [ 8.8668830] 02ADF4: 00002004 00000001 00115DC8 03470170 00000000 00115380 0132A300 03470170
> [ 8.8668830] 02AE14: 03470368 03470170 0132A300 0012BBA6 0302AEA4 FFEFFFFC 00000000 25000011
> [ 8.8668830] 02AE34: 53BCB008 0D6C01D5 67027000 00224340 00224340 00000000 4AF94340 001153C6
> [ 8.8668830] 02AE54: 001153C4 001153C2 00000070 00800080 000F11A9 00000000 0302AEA8 00000080
> [ 8.8668830] 02AE74: 00002500 80200000 001153A8 00000000 00000080 001153A0 00002004 0011A118
> [ 8.8668830] 02AE94: 00115DC8 03470368 03470170 0132A300 0302AF74 000585B0 00000001 01317200
> [ 8.8668830] 02AEB4: 00002004 0011A118 00115DC8 03470170 00000000 00115380 03470368 03470170
> [ 8.8668830] 02AED4: 0132A300 0012BBA6 00000000 00115380 01317D80 0132BB80 0011A25C 0012BBA6
> [ 8.8668830] 02AEF4: 00000001 06708000 FA000000 0302AF18 000116C2 01345000 00002004 00225280
> [ 8.8804950] panic: Bus error
> [ 8.8848070] cpu0: Begin traceback...
> [ 8.8974230] ?(?)
> [ 9.0010350] db_panic(0,14ecdc,302ad14,14eed4,1eb5c0) at 0
> [ 9.1608790] vpanic(1eb5c0,302ad20,302add4,1089e,1eb5c0) + 188
> [ 9.4307710] panic(1eb5c0,2004,1,115dc8,3470170) + c
> [ 9.6906670] trap(302adec,0,1d5,224340) + 288
> [ 10.0405270] _kernel_lock(1,1317200) + 3c
> [ 10.2904270] ipintr(0) + 18
> [ 10.4503630] softint_thread(3470170) + b8
> [ 10.5803110] lwp_trampoline() + e
> [ 10.6008030] cpu0: End traceback...
> Stopped in pid 0.3 (system) at netbsd:cpu_Debugger+0x6: unlk a6
> db>
>
> ---
>
> 'm68k--netbsdelf-objdump -d netbsd' shows:
>
> ---
> 00115380 <_kernel_lock>:
> 115380: 4e56 0000 linkw %fp,#0
> 115384: 48e7 3838 moveml %d2-%d4/%a2-%a4,%sp@-
> 115388: 262e 0008 movel %fp@(8),%d3
> 11538c: 2879 0022 0b2c moveal 220b2c <curlwp>,%a4
> 115392: 4282 clrl %d2
> 115394: 40c2 movew %sr,%d2
> 115396: 0c42 24ff cmpiw #9471,%d2
> 11539a: 6204 bhis 1153a0 <_kernel_lock+0x20>
> 11539c: 46fc 2500 movew #9472,%sr
> 1153a0: 2039 0023 0948 movel 230948 <cpu_info_store+0x108>,%d0
> 1153a6: 6712 beqs 1153ba <_kernel_lock+0x3a>
> 1153a8: d083 addl %d3,%d0
> 1153aa: 23c0 0023 0948 movel %d0,230948 <cpu_info_store+0x108>
> 1153b0: d76c 01f6 addw %d3,%a4@(502)
> 1153b4: 46c2 movew %d2,%sr
> 1153b6: 6000 00a4 braw 11545c <_kernel_lock+0xdc>
> 1153ba: 7001 moveq #1,%d0
> 1153bc: 4af9 0022 4340 tas 224340 <kernel_lock>
> ^^^ pc = 001153BC is here
> 1153c2: 6702 beqs 1153c6 <_kernel_lock+0x46>
> 1153c4: 7000 moveq #0,%d0
> 1153c6: 4a80 tstl %d0
> 1153c8: 6710 beqs 1153da <_kernel_lock+0x5a>
> ---
>
> Thanks,
> ---
> Izumi Tsutsui
Home |
Main Index |
Thread Index |
Old Index