Commit 6fbc2770 authored by Xiao Guangrong's avatar Xiao Guangrong Committed by Avi Kivity

KVM: MMU: fix kvm_mmu_pagetable_walk tracepoint

The P bit of page fault error code is missed in this tracepoint, fix it by
passing the full error code
Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>
Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
parent a72faf25
...@@ -54,8 +54,8 @@ ...@@ -54,8 +54,8 @@
*/ */
TRACE_EVENT( TRACE_EVENT(
kvm_mmu_pagetable_walk, kvm_mmu_pagetable_walk,
TP_PROTO(u64 addr, int write_fault, int user_fault, int fetch_fault), TP_PROTO(u64 addr, u32 pferr),
TP_ARGS(addr, write_fault, user_fault, fetch_fault), TP_ARGS(addr, pferr),
TP_STRUCT__entry( TP_STRUCT__entry(
__field(__u64, addr) __field(__u64, addr)
...@@ -64,8 +64,7 @@ TRACE_EVENT( ...@@ -64,8 +64,7 @@ TRACE_EVENT(
TP_fast_assign( TP_fast_assign(
__entry->addr = addr; __entry->addr = addr;
__entry->pferr = (!!write_fault << 1) | (!!user_fault << 2) __entry->pferr = pferr;
| (!!fetch_fault << 4);
), ),
TP_printk("addr %llx pferr %x %s", __entry->addr, __entry->pferr, TP_printk("addr %llx pferr %x %s", __entry->addr, __entry->pferr,
......
...@@ -154,8 +154,7 @@ static int FNAME(walk_addr_generic)(struct guest_walker *walker, ...@@ -154,8 +154,7 @@ static int FNAME(walk_addr_generic)(struct guest_walker *walker,
const int fetch_fault = access & PFERR_FETCH_MASK; const int fetch_fault = access & PFERR_FETCH_MASK;
u16 errcode = 0; u16 errcode = 0;
trace_kvm_mmu_pagetable_walk(addr, write_fault, user_fault, trace_kvm_mmu_pagetable_walk(addr, access);
fetch_fault);
retry_walk: retry_walk:
eperm = false; eperm = false;
walker->level = mmu->root_level; walker->level = mmu->root_level;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment