Dobry den,<br>
<br>
    mame problem se zabijenim vlakna v TLB Refill nebo TLB Invalid v pripade, ze mapovani neni nalezeno.<br>
<br>
    konkretne mame problem s tim, abychom preplanovali
na jine vlakno a vratili se po obslouzeni vyjimky do tohoto vlakna.
Kdyz pozadame scheduler o dalsi vlakno a zavolame switch_context(t),
tak nam to zamrzne a simulator cykli takto:<br>
<br>
/*******************************************************************************<br>
 (ptr=0xc0010778) should cause exception<br>
TLB REFILL: vaddr: 0xc0010778, ASID: 2<br>
TLB REFILL: BAD ADDRESS<br>
Current thread (0x80028004) will be killed.<br>
kill_now: next_thread: 0x8004e004<br>
thread.c/context_switch: Ready to switch context...<br>
thread.c/context_switch: Switched!<br>
<br>
<br>
[msim] set trace on<br>
[msim] step 6<br>
    80000184    swl   t5,
0xffffefab(fp)# 0xffffefab=-4181, at: 0x0->0xa1000000, v0:
0x0->0x1, v1: 0x0->0x8004ef38, a0: 0x0->0x25000000, a1:
0x0->0x3b000, a3: 0x0->0xffffffff, t1: 0x0->0x8004ef38, t2:
0x0->0x39, t3: 0x0->0x8, t4: 0x0->0x8, t5: 0x0->0x20000,
s0: 0x0->0x8000d522, s1: 0x0->0x8004ef84, s2: 0x0->0xe, s3:
0x0->0x2, s4: 0x0->0x4, s5: 0x0->0x80024fa0, s6:
0x0->0x8000d4ec, s7: 0x0->0xbb, k0: 0x0->0x1000ff03, k1:
0x0->0x80000200, gp: 0x0->0xa0000000, sp: 0x0->0x8004ef50, ra:
0x0->0x8000242c, cp0_index: 0x00000000->0x80000000, cp0_context:
0x00000000->0x007ffff0, cp0_badvaddr: 0x00000000->0xffffefa8,
cp0_entryhi: 0x00000000->0xffffe004, cp0_compare:
0x00000000->0x06fe4d9d, cp0_status: 0x00400004->0x1000ff03,
cp0_cause: 0x00000000->0x00008008, cp0_epc: 0x00000000->0x80002438<br>
<br>
Raised exception: TLB (load or instruction fetch)<br>
<br>
    80000180    slt   0, 0, 0<br>
    80000184    swl   t5, 0xffffefab(fp)# 0xffffefab=-4181<br>
<br>
Raised exception: TLB (load or instruction fetch)<br>
<br>
    80000180    slt   0, 0, 0<br>
    80000184    swl   t5, 0xffffefab(fp)# 0xffffefab=-4181<br>
*****************************************************************************************/<br>
<br>
Nemuze byt problem treba v tom, ze se nikdy nevratime z obsluhy vyjimky (swich_context skoci na novou adresu) ?<br>
<br>
Diky za jakykoliv hint.<br>
<br>
Premek Paska za KoolPa-rtu<br>