[OSy] msim Machine check exception

Petr Tůma petr.tuma at d3s.mff.cuni.cz
Mon Jan 6 08:53:00 CET 2014


Dobry den,

pohledem do zdrojaku msimu mate pravdu, TLBW mozny prekryv zaznamu 
netestuje. Je to neco, co potrebujete kvuli fungovani vaseho reseni, 
nebo jste na tento problem narazil jen behem ladeni ?

Diky, Petr Tuma


On 05/01/14 18:17, Jan Smrčina wrote:
> Zdravím všechny,
>
> zdá se mi, že msim nesimuluje vyjímku Machine check exception. Je to jen
> můj dojem a špatné chápání manuálu, nebo tato vlastnost doopravdy v msimu
> není implementována?
>
>
> Vycházím z informací v sekci 4.6.6 manuálu k MIPSu staženého ze stránek
> předměnu (strana 56 resp. 68. strana pdf) a dále sekce 5.2.11 téhož manuálu
> (strana 84 resp. 96).
>
> Následuje výpis ladicích informací z msimu bezprostředně po zápisu do TLB (na
> konci obslužné rutiny wrapped_tlbrefill() - absence nastaveného bitu EXL
> je předmětem ladění, netřeba jí věnovat pozornost).
>
>
> [msim] cpu0 tlbd
>   [             general             ][    subp 0    ][    subp 1    ]
>    no    vpn      mask        g asid  v d   pfn    c  v d   pfn    c
>    00  00000000 FFFFE000:4k   0  00   0 0 00000000 0  0 0 00000000 0
>    01  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    02  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    03  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    04  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    05  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    06  C0000000 FFFFE000:4k   0  01   1 1 0008F000 0  0 0 00000000 0
>    07  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    08  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    09  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    0a  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    0b  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    0c  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    0d  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    0e  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    0f  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    10  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    11  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    12  C0000000 FFFFE000:4k   0  01   1 1 0008F000 0  1 1 00091000 0
>    13  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    14  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    15  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    16  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    17  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    18  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    19  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    1a  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    1b  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    1c  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    1d  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    1e  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    1f  C0000000 FFFFE000:4k   0  01   1 1 0008F000 0  1 1 00091000 0
>    20  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    21  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    22  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    23  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    24  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    25  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    26  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    27  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    28  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    29  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    2a  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    2b  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    2c  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    2d  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    2e  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
>    2f  00000000 FFFFE000:4k   0  ff   0 0 00000000 0  0 0 00000000 0
> [msim] cpu0 cp0d
>    no name       hex dump  readable dump
>    00 Index      00000000  index: 00 res: 0 p: 0
>    01 Random     00000017  random: 17, res: 0000000
>    02 EntryLo0   000023C6  g: 0 v: 1 d: 1 c: 0 pfn: 00008F res: 0
>    03 EntryLo1   00002446  g: 0 v: 1 d: 1 c: 0 pfn: 000091 res: 0
>    04 Context    00600000  res: 0 badvpn2: 60000 ptebase: 000
>    05 PageMask   00000000  res1: 0000 mask: 000 (4k) res2: 00
>    06 Wired      00000000  wired: 0 res: 0000000
>    08 BadVAddr   C0001000
>    09 Count      0001198A
>    0a EntryHi    00000001  asid: 01 res: 0 vpn2: 00000
>    0b Compare    000120DF
>    0c Status     1000FF00  ie: 0 exl: 0 erl: 0 ksu: 0 ux: 0 sx: 0 kx: 0
>                            im: FF de: 0 ce: 0 ch: 0 res1: 0 sr: 0 ts: 0
>                            bev: 0 res2: 0 re: 0 fr: 0 rp: 0 cu: 1
>    0d Cause      0000000C  res1: 0 exccode: 03 res2: 0 ip: 00 res3: 00
>                            ce: 0 res4: 0 bd: 0
>    0e EPC        80014244
>    0f PRId       00000400  rev: 00 imp: 04 res: 0000
>    10 Config     00000000  k0: 0 cu: 0 db: 0 b: 0 dc: 0 ic: 0 res: 0 eb: 0
>                            em: 0 be: 0 sm: 0 sc: 0 ew: 0 sw: 0 ss: 0 sb: 0
>                            ep: 0 ec: 0 cm: 0
>    11 LLAddr     00000000
>    12 WatchLo    00000000  w: 0 r: 0 res: 0 paddr0: 00000000
>    13 WatchHi    00000000  res: 00000000 paddr1: 0
>    14 XContext
>    1e ErrorEPC   00000000  errorepc: 00000000
> [msim]
>
>
> Jak je vidno, v TLB jsou nejméně dva záznamy, které jistě "matchují"
> neboť jsou zcela shodné. Chápu-li text v sekci 4.6.6 dobře, tato situace
> v procesoru podle manuálu nastatnemůže.
>
> Dokonce i TS bit status registeru zůstal 0, ačkoliv k zápisu do status
> registeru od instrukce  tlbwr  nedošlo. (Rozpor se 4.6.6 i 5.2.11).
>
>
> S pozdravem,
> Jan Smrčina
>
>
>
> _______________________________________________
> OSy mailing list
> OSy at d3s.mff.cuni.cz
> https://d3s.mff.cuni.cz/mailman/listinfo/osy
>




More information about the NSWI004 mailing list