[Differential] D2535: New, experimental PMAP implementation for MIPS64

sbruno (Sean Bruno) phabric-noreply at FreeBSD.org
Fri Sep 16 23:09:08 UTC 2016


sbruno added a comment.


  Seems this patch is a lot more "clang friendly" as the MIPS64 clang compiled kernel can now at least *get* to trying to start init:
  
    sbruno at tasty.ysv:~ % qemu-system-mips64 -m 512M -M malta -kernel /var/tmp/mips.mips64/home/sbruno/mips64-clang/sys/MALTA64/kernel -hda ./mips64_clang.img -nographic
    WARNING: Image format was not specified for './mips64_clang.img' and probing guessed raw.
             Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
             Specify the 'raw' format explicitly to remove the restrictions.
    entry: platform_start()
    cmd line: /var/tmp/mips.mips64/home/sbruno/mips64-clang/sys/MALTA64/kernel  
    envp:
            memsize = 268435456
            ememsize = 536870912
            modetty0 = 38400n8r
    memsize = 268435456 (0x10000000)
    ememsize = 536870912
    Cache info:
      icache is virtual
      picache_stride    = 8192
      picache_loopcount = 4
      pdcache_stride    = 4096
      pdcache_loopcount = 8
    cpu0: MIPS Technologies processor v160.130
      MMU: Standard TLB, 48 entries (4K 16K 64K 256K 1M 4M 16M 64M 256M pg sizes)
    (4K 16K 64K 256K 1M 16M 64M 256M pg sizes)
      L1 i-cache: 4 ways of 256 sets, 32 bytes per line
      L1 d-cache: 4 ways of 256 sets, 32 bytes per line
      L2 cache: disabled
      Config1=0xdea3519b<PerfCount,WatchRegs,EJTAG,FPU>
      Config2=0x80000000
    Physical memory chunk(s):
    0x72a000 - 0xfffffff, 260923392 bytes (63702 pages)
    0x90000000 - 0x9fffffff, 268435456 bytes (65536 pages)
    Maxmem is 0xa0000000
    KDB: debugger backends: ddb
    KDB: current backend: ddb
    Copyright (c) 1992-2016 The FreeBSD Project.
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
            The Regents of the University of California. All rights reserved.
    FreeBSD is a registered trademark of The FreeBSD Foundation.
    FreeBSD 12.0-CURRENT #9 r305890M: Fri Sep 16 22:52:02 UTC 2016
        sbruno at tasty.ysv.freebsd.org:/var/tmp/mips.mips64/home/sbruno/mips64-clang/sys/MALTA64 mips
    clang version 4.0.0 (trunk 281608)
    Preloaded elf kernel "kernel" at 0xffffffff8071e100.
    real memory  = 536870912 (524288K bytes)
    Physical memory chunk(s):
    0x00849000 - 0x0fffffff, 259747840 bytes (63415 pages)
    0x90000000 - 0x9f2b8fff, 254513152 bytes (62137 pages)
    avail memory = 511668224 (487MB)
    random: entropy device external interface
    null: <full device, null device, zero device>
    mem: <memory>
    nfslock: pseudo-device
    nexus0: <MIPS32 root nexus>
    random: harvesting attach, 8 bytes (4 bits) from nexus0
    gt0: <GT64120 chip> on nexus0
    pcib0: <GT64120 PCI bridge> on gt0
    pci0: <PCI bus> on pcib0
    pci0: domain=0, physical bus=0
    found-> vendor=0x11ab, dev=0x4620, revid=0x10
            domain=0, bus=0, slot=0, func=0
            class=06-00-00, hdrtype=0x00, mfdev=0
            cmdreg=0x0000, statreg=0x0280, cachelnsz=0 (dwords)
            lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
            intpin=a, irq=0
            map[14]: type Prefetchable Memory, range 32, base 0x1000000, size 24, memory disabled
            map[18]: type Memory, range 32, base 0x1c000000, size 26, memory disabled
            map[1c]: type Memory, range 32, base 0x1f000000, size 24, memory disabled
            map[20]: type Memory, range 32, base 0x14000000, size 26, memory disabled
            map[24]: type I/O Port, range 32, base 0x14000000, size 26, port disabled
    pcib0: no IRQ mapping for 0/0/0/1
    found-> vendor=0x8086, dev=0x7110, revid=0x00
            domain=0, bus=0, slot=10, func=0
            class=06-01-00, hdrtype=0x00, mfdev=1
            cmdreg=0x0000, statreg=0x0200, cachelnsz=0 (dwords)
            lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
    found-> vendor=0x8086, dev=0x7111, revid=0x00
            domain=0, bus=0, slot=10, func=1
            class=01-01-80, hdrtype=0x00, mfdev=0
            cmdreg=0x0000, statreg=0x0280, cachelnsz=0 (dwords)
            lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
            map[20]: type I/O Port, range 32, base 0, size  4, port disabled
    found-> vendor=0x8086, dev=0x7112, revid=0x01
            domain=0, bus=0, slot=10, func=2
            class=0c-03-00, hdrtype=0x00, mfdev=0
            cmdreg=0x0000, statreg=0x0000, cachelnsz=0 (dwords)
            lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
            intpin=d, irq=0
            map[20]: type I/O Port, range 32, base 0, size  5, port disabled
    pcib0: no IRQ mapping for 0/10/2/4
    found-> vendor=0x8086, dev=0x7113, revid=0x03
            domain=0, bus=0, slot=10, func=3
            class=06-80-00, hdrtype=0x00, mfdev=0
            cmdreg=0x0000, statreg=0x0280, cachelnsz=0 (dwords)
            lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
            intpin=a, irq=0
    pcib0: no IRQ mapping for 0/10/3/1
    found-> vendor=0x1022, dev=0x2000, revid=0x10
            domain=0, bus=0, slot=11, func=0
            class=02-00-00, hdrtype=0x00, mfdev=0
            cmdreg=0x0000, statreg=0x0280, cachelnsz=0 (dwords)
            lattimer=0x00 (0 ns), mingnt=0x06 (1500 ns), maxlat=0xff (63750 ns)
            intpin=a, irq=0
            map[10]: type I/O Port, range 32, base 0, size  5, port disabled
            map[14]: type Memory, range 32, base 0, size  5, memory disabled
    found-> vendor=0x1013, dev=0x00b8, revid=0x00
            domain=0, bus=0, slot=18, func=0
            class=03-00-00, hdrtype=0x00, mfdev=0
            cmdreg=0x0000, statreg=0x0000, cachelnsz=0 (dwords)
            lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
            map[10]: type Prefetchable Memory, range 32, base 0, size 25, memory disabled
            map[14]: type Memory, range 32, base 0, size 12, memory disabled
    obio0 irq 0 at device 0.0 on pci0
    uart0: <16550 or compatible> on obio0
    uart0: console (9600,n,8,1)
    uart0: fast interrupt
    uart0: PPS capture mode: DCD
    random: harvesting attach, 8 bytes (4 bits) from uart0
    random: harvesting attach, 8 bytes (4 bits) from obio0
    pci0: <bridge, PCI-ISA> at device 10.0 (no driver attached)
    atapci0: <Intel PIIX4 UDMA33 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376 at device 10.1 on pci0
    atapci0: Lazy allocation of 0x10 bytes rid 0x20 type 4 at 0x100
    ata0: <ATA channel> at channel 0 on atapci0
    random: harvesting attach, 8 bytes (4 bits) from ata0
    ata1: <ATA channel> at channel 1 on atapci0
    random: harvesting attach, 8 bytes (4 bits) from ata1
    random: harvesting attach, 8 bytes (4 bits) from atapci0
    pci0: <serial bus, USB> at device 10.2 (no driver attached)
    pci0: <bridge> at device 10.3 (no driver attached)
    le0: <AMD PCnet-PCI> irq 10 at device 11.0 on pci0
    le0: Lazy allocation of 0x20 bytes rid 0x10 type 4 at 0x120
    le0: 16 receive buffers, 4 transmit buffers
    le0: bpf attached
    le0: Ethernet address: 52:54:00:12:34:56
    random: harvesting attach, 8 bytes (4 bits) from le0
    vgapci0: <VGA-compatible display> at device 18.0 on pci0
    random: harvesting attach, 8 bytes (4 bits) from vgapci0
    random: harvesting attach, 8 bytes (4 bits) from pci0
    random: harvesting attach, 8 bytes (4 bits) from pcib0
    random: harvesting attach, 8 bytes (4 bits) from gt0
    clock0: <Generic MIPS32 ticker> on nexus0
    Timecounter "MIPS32" frequency 100000000 Hz quality 800
    Event timer "MIPS32" frequency 100000000 Hz quality 800
    random: harvesting attach, 8 bytes (4 bits) from clock0
    Device configuration finished.
    Timecounters tick every 10.000 msec
    lo0: bpf attached
    tcp_init: net.inet.tcp.tcbhashsize auto tuned to 8192
    ata0: reset tp1 mask=03 ostat0=50 ostat1=00
    ata0: stat0=0x50 err=0x01 lsb=0x00 msb=0x00
    ata0: stat1=0x00 err=0x00 lsb=0xff msb=0xff
    ata0: reset tp2 stat0=50 stat1=00 devices=0x1
    ata1: reset tp1 mask=03 ostat0=50 ostat1=00
    ata1: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb
    ata1: stat1=0x00 err=0x00 lsb=0xff msb=0xff
    ata1: reset tp2 stat0=00 stat1=00 devices=0x10000
    pass0 at ata0 bus 0 scbus0 target 0 lun 0
    pass0: <QEMU HARDDISK 2.5+> ATA-7 device
    pass0: Serial Number QM00001
    pass0: 33.300MB/s transfers (UDMA2, PIO 8192bytes)
    pass1 at ata1 bus 0 scbus1 target 0 lun 0
    pass1: <QEMU QEMU DVD-ROM 2.5+> Removable CD-ROM SCSI device
    pass1: Serial Number QM00003
    pass1: 13.300MB/s transfers (WDMA1, ATAPI 12bytes, PIO 65534bytes)
    ada0 at ata0 bus 0 scbus0 target 0 lun 0
    ada0: <QEMU HARDDISK 2.5+> ATA-7 device
    ada0: Serial Number QM00001
    ada0: 33.300MB/s transfers (UDMA2, PIO 8192bytes)
    ada0: 1024MB (2097152 512 byte sectors)
    taskqgroup_adjust failed cnt: 1 stride: 1 mp_ncpus: 1 smp_started: 0
    taskqgroup_adjust failed cnt: 1 stride: 1 mp_ncpus: 1 smp_started: 0
    Trying to mount root from ufs:ada0 []...
    GEOM: new disk cd0
    GEOM: new disk ada0
    cd0 at ata1 bus 0 scbus1 target 0 lun 0
    cd0: <QEMU QEMU DVD-ROM 2.5+> Removable CD-ROM SCSI device
    cd0: Serial Number QM00003
    cd0: 13.300MB/s transfers (WDMA1, ATAPI 12bytes, PIO 65534bytes)
    cd0: Attempt to query device size failed: NOT READY, Medium not present
    warning: no time-of-day clock registered, system time will not be set accurately
    start_init: trying /sbin/init
    ADDRESS_SPACE_ERR: pid 1 tid 100001 (init), uid 0: pc 0x12002fa78 got a read fault (type 0x4) at 0xffffffff806e91f0
    Trapframe Register Dump:
            zero: 0 at: 0xffffffff806e8510  v0: 0   v1: 0
            a0: 0x7fffffedf0        a1: 0x8 a2: 0   a3: 0x120110000
            a4: 0x3 a5: 0   a6: 0   a6: 0
            t0: 0   t1: 0   t2: 0   t3: 0
            t8: 0   t9: 0x12002fa08 s0: 0x7fffffede0        s1: 0x7fffffedc8
            s2: 0   s3: 0x2 s4: 0   s5: 0
            s6: 0   s7: 0   k0: 0   k1: 0
            gp: 0x120142de0 sp: 0x7fffffed50        s8: 0x7fffffed50        ra: 0x120005afc
            sr: 0x8084b3    mullo: 0x18     mulhi: 0        badvaddr: 0xffffffff806e91f0
            cause: 0x10     pc: 0x12002fa78

REPOSITORY
  rS FreeBSD src repository

REVISION DETAIL
  https://reviews.freebsd.org/D2535

EMAIL PREFERENCES
  https://reviews.freebsd.org/settings/panel/emailpreferences/

To: sbruno, sson
Cc: adrian, brooks, jmallett, markj, alc, sbruno, rwatson, emaste, imp, freebsd-mips-list, dnelson_1901_yahoo.com, mizhka_gmail.com


More information about the freebsd-mips mailing list