diff options
| author | 项小羽 <[email protected]> | 2022-07-20 09:07:01 +0000 |
|---|---|---|
| committer | 项小羽 <[email protected]> | 2022-07-20 09:07:01 +0000 |
| commit | c54215b07299f28d5c2414bce9aa63d6a566c369 (patch) | |
| tree | 425d7b00e56f1d7fb081057586e7c6c6ece39908 | |
| parent | f2d3ab90569a070a37860635d4d460d339560859 (diff) | |
for debug uring
| -rw-r--r-- | hw/intc/apic.c | 2 | ||||
| -rw-r--r-- | target/i386/tcg/misc_helper.c | 5 | ||||
| -rw-r--r-- | target/i386/tcg/seg_helper.c | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/hw/intc/apic.c b/hw/intc/apic.c index 4a0545d8cb..c8435a88b2 100644 --- a/hw/intc/apic.c +++ b/hw/intc/apic.c @@ -958,7 +958,7 @@ static void apic_deliver2(uint8_t dest, uint8_t dest_mode, uint32_t deliver_bitmask[MAX_APIC_WORDS]; int dest_shorthand = (s->icr[0] >> 18) & 3; APICCommonState *apic_iter; - + qemu_log("dest_shorthand:%d\n", dest_shorthand); switch (dest_shorthand) { case 0: apic_get_delivery_bitmask(deliver_bitmask, dest, dest_mode); diff --git a/target/i386/tcg/misc_helper.c b/target/i386/tcg/misc_helper.c index 3a216b0a59..663a3b8086 100644 --- a/target/i386/tcg/misc_helper.c +++ b/target/i386/tcg/misc_helper.c @@ -92,7 +92,6 @@ void helper_senduipi(CPUX86State *env ,int reg_index){ raise_exception_ra(env, EXCP0D_GPF, GETPC()); } - qemu_log("senduipi core: %d uitte index:%d\n", get_apic_id(cpu_get_current_apic()), uitte_index); CPUState *cs = env_cpu(env); // read tempUITTE from 16 bytes at UITTADDR+ (reg « 4); @@ -121,12 +120,14 @@ void helper_senduipi(CPUX86State *env ,int reg_index){ cpu_physical_memory_rw(upid_phyaddress, &upid, 16, true); qemu_mutex_unlock_iothread(); + qemu_log("senduipi core: %d uitte index:%d dist core: %d ifsend: %d, nv: %d\n", get_apic_id(cpu_get_current_apic()), uitte_index, upid.nc.ndst >> 8, sendNotify,upid.nc.nv); if(sendNotify){ uint8_t realdst = upid.nc.ndst >> 8; - send_ipi(realdst, upid.nc.nv); + send_ipi(realdst, 0xec); } + } diff --git a/target/i386/tcg/seg_helper.c b/target/i386/tcg/seg_helper.c index 46ee9cca5e..d79f1caa07 100644 --- a/target/i386/tcg/seg_helper.c +++ b/target/i386/tcg/seg_helper.c @@ -969,6 +969,7 @@ static void do_interrupt64(CPUX86State *env, int intno, int is_int, } bool send = false; if(intno == UINTR_UINV ){ + qemu_log("receive, cur core:%d\n",get_apic_id(cpu_get_current_apic())); recognized = true; cpl = env->hflags & HF_CPL_MASK; if(!uif_enable(env)){ @@ -1005,6 +1006,7 @@ static void do_interrupt64(CPUX86State *env, int intno, int is_int, cpu_physical_memory_rw(upid_phyaddress, &upid, 16, true); // write back helper_clear_eoi(env); if(send)helper_rrnzero(env); + else qemu_log("do not go to handler\n"); return; } |
