Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: VIA Padlock on AMD64
On Mon, Jul 20, 2020 at 8:38 AM Taylor R Campbell <riastradh%netbsd.org@localhost> wrote:
> >
> > I am planning to submit PR once I will retest the driver with the latest
> > images. Actually, it may not be amd64 specific after all. Crash happens
> > during boot on match function, likely newer graphics are unsupported and
> > triggers some kassert?
>
> Can't say without the specific kassert (and ideally stack trace too).
> I don't see anything obvious in viadrm_match that would be
> problematic.
After a bit more investigation, yes, it is kassert (kernel diagnostic
assertion "viadrm_pci_ids[i].subvendor == PCI_ANY_ID" ), doesn't
matter amd64/i386. The cause seems pretty obvious: viadrv_PCI_IDS
doesn't include some chrome graphics like 0x7122 from VX900 or 0x122
from VX800, thus subvendor value is 0 by default, PCI_ANY_ID is 1 on
the other hand, if I am not mistaken. Adding 0x7122 to the list allows
viadrmums to attach and boot, but with some errors in the logs.
Crash log:
[ 1.2755067] vga0 at pci0 dev 1 function 0: VIA Technologies VX900
Graphics [Chrome9 HD] (rev. 0x00)
[ 1.2755067] wsdisplay0 at vga0 kbdmux 1
[ 1.2755067] wsmux1: connecting to wsdisplay0
[ 1.2755067] panic: kernel diagnostic assertion
"viadrm_pci_ids[i].subvendor == PCI_ANY_ID" failed: file
"/home/andriusv/workspace/netbsd-src/sys/e
[ 1.2755067] cpu0: Begin traceback...
[ 1.2755067] vpanic() at netbsd:vpanic+0x152
[ 1.2755067] __x86_indirect_thunk_rax() at
netbsd:__x86_indirect_thunk_rax
[ 1.2755067] viadrm_lookup.isra.0() at
netbsd:viadrm_lookup.isra.0+0xf0
[ 1.2755067] viadrm_match() at netbsd:viadrm_match+0x1e
[ 1.2755067] mapply() at netbsd:mapply+0x3f
[ 1.2755067] config_search_loc() at netbsd:config_search_loc+0xfd
[ 1.2755067] config_found_sm_loc() at
netbsd:config_found_sm_loc+0x2b
[ 1.2755067] config_attach_loc() at netbsd:config_attach_loc+0x182
[ 1.2755067] pci_probe_device() at netbsd:pci_probe_device+0x574
[ 1.2755067] pci_enumerate_bus() at netbsd:pci_enumerate_bus+0x1b7
[ 1.2755067] pcirescan() at netbsd:pcirescan+0x4e
[ 1.2755067] pciattach() at netbsd:pciattach+0x186
[ 1.2755067] config_attach_loc() at netbsd:config_attach_loc+0x182
[ 1.2755067] mp_pci_scan() at netbsd:mp_pci_scan+0xa4
[ 1.2755067] amd64_mainbus_attach() at
netbsd:amd64_mainbus_attach+0x237
[ 1.2755067] mainbus_attach() at netbsd:mainbus_attach+0x83
[ 1.2755067] config_attach_loc() at netbsd:config_attach_loc+0x182
[ 1.2755067] cpu_configure() at netbsd:cpu_configure+0x38
[ 1.2755067] main() at netbsd:main+0x2ec
[ 1.2755067] cpu0: End traceback...
[ 1.2755067] fatal breakpoint trap in supervisor mode
[ 1.2755067] trap type 1 code 0 rip 0xffffffff80221a25 cs 0x8 rflags
0x202 cr2 0 ilevel 0x8 rsp 0xffffffff81d028b0
[ 1.2755067] curlwp 0xffffffff8188d740 pid 0.0 lowest kstack
0xffffffff81cfd2c0
Stopped in pid 0.0 (system) at netbsd:breakpoint+0x5: leave
breakpoint() at netbsd:breakpoint+0x5
vpanic() at netbsd:vpanic+0x152
__x86_indirect_thunk_rax() at netbsd:__x86_indirect_thunk_rax
viadrm_lookup.isra.0() at netbsd:viadrm_lookup.isra.0+0xf0
viadrm_match() at netbsd:viadrm_match+0x1e
mapply() at netbsd:mapply+0x3f
config_search_loc() at netbsd:config_search_loc+0xfd
config_found_sm_loc() at netbsd:config_found_sm_loc+0x2b
config_attach_loc() at netbsd:config_attach_loc+0x182
pci_probe_device() at netbsd:pci_probe_device+0x574
pci_enumerate_bus() at netbsd:pci_enumerate_bus+0x1b7
pcirescan() at netbsd:pcirescan+0x4e
pciattach() at netbsd:pciattach+0x186
config_attach_loc() at netbsd:config_attach_loc+0x182
mp_pci_scan() at netbsd:mp_pci_scan+0xa4
amd64_mainbus_attach() at netbsd:amd64_mainbus_attach+0x237
mainbus_attach() at netbsd:mainbus_attach+0x83
config_attach_loc() at netbsd:config_attach_loc+0x182
cpu_configure() at netbsd:cpu_configure+0x38
main() at netbsd:main+0x2ec
ds 28c0
es 2870
fs 28b0
gs 10
rdi 8
rsi 0
rbp ffffffff81d028b0
rbx 104
rdx 1
rcx 8
rax 1
r8 104
r9 0
r10 ffffffffffff
r11 0
r12 ffffffff81348170 ostype+0xa90
r13 ffffffff81d028f8
r14 ffffffff81d02b7c
r15 0
rip ffffffff80221a25 breakpoint+0x5
cs 8
rflags 202
rsp ffffffff81d028b0
ss 10
netbsd:breakpoint+0x5: leave
Home |
Main Index |
Thread Index |
Old Index