Implement -e kvm= option on all architectures
Make -e kvm= interface available on all architectures by adding a stub on those architectures that do not have <linux/kvm.h>. * filter_qualify.c (qualify_kvm): Define unconditionally. (qual_options): Define qualify_kvm entry unconditionally. * strace.c (usage): Mention kvm argument of -e option unconditionally.
This commit is contained in:
parent
7374607613
commit
048d1885fa
@ -405,20 +405,24 @@ qualify_inject(const char *const str)
|
||||
qualify_inject_common(str, false, "inject argument");
|
||||
}
|
||||
|
||||
#ifdef HAVE_LINUX_KVM_H
|
||||
static void
|
||||
qualify_kvm(const char *const str)
|
||||
{
|
||||
if (strcmp(str, "vcpu") == 0) {
|
||||
#ifdef HAVE_LINUX_KVM_H
|
||||
if (os_release >= KERNEL_VERSION(4, 16, 0))
|
||||
kvm_run_structure_decoder_init();
|
||||
else
|
||||
error_msg("-e kvm=vcpu option needs Linux 4.16.0 or higher");
|
||||
error_msg("-e kvm=vcpu option needs"
|
||||
" Linux 4.16.0 or higher");
|
||||
#else
|
||||
error_msg("-e kvm=vcpu option is not implemented"
|
||||
" for this architecture");
|
||||
#endif
|
||||
} else {
|
||||
error_msg_and_die("invalid -e kvm= argument: '%s'", str);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
static const struct qual_options {
|
||||
const char *name;
|
||||
@ -443,9 +447,7 @@ static const struct qual_options {
|
||||
{ "w", qualify_write },
|
||||
{ "fault", qualify_fault },
|
||||
{ "inject", qualify_inject },
|
||||
#ifdef HAVE_LINUX_KVM_H
|
||||
{ "kvm", qualify_kvm },
|
||||
#endif
|
||||
};
|
||||
|
||||
void
|
||||
|
5
strace.c
5
strace.c
@ -278,10 +278,7 @@ Statistics:\n\
|
||||
\n\
|
||||
Filtering:\n\
|
||||
-e expr a qualifying expression: option=[!]all or option=[!]val1[,val2]...\n\
|
||||
options: trace, abbrev, verbose, raw, signal, read, write, fault, inject"
|
||||
#ifdef HAVE_LINUX_KVM_H
|
||||
", kvm"
|
||||
#endif
|
||||
options: trace, abbrev, verbose, raw, signal, read, write, fault, inject, kvm"
|
||||
"\n\
|
||||
-P path trace accesses to path\n\
|
||||
\n\
|
||||
|
Loading…
x
Reference in New Issue
Block a user