!14 Automatically generate code patches with openeuler
From: @zhendongchen Reviewed-by: @yorifang Signed-off-by: @yorifang
This commit is contained in:
commit
31f67fb95c
49
display-modify-filter-display-to-support-more-displa.patch
Normal file
49
display-modify-filter-display-to-support-more-displa.patch
Normal file
@ -0,0 +1,49 @@
|
||||
From c1083be42e3ad71971193e025c95a866a6207e7f Mon Sep 17 00:00:00 2001
|
||||
From: Jiajun Chen <1250062498@qq.com>
|
||||
Date: Wed, 28 Oct 2020 16:38:12 +0800
|
||||
Subject: [PATCH] display: modify filter display to support more display fields
|
||||
items
|
||||
|
||||
If display fields items is more than screen rows, some of fields items
|
||||
can't be displayed in screen.
|
||||
So, start another col to show fields items if screen can't show all content in one col.
|
||||
|
||||
Signed-off-by: Jiajun Chen <1250062498@qq.com>
|
||||
---
|
||||
src/vmtop.c | 17 +++++++++++++++--
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/vmtop.c b/src/vmtop.c
|
||||
index 12b073d..501cea9 100644
|
||||
--- a/src/vmtop.c
|
||||
+++ b/src/vmtop.c
|
||||
@@ -287,11 +287,24 @@ static void show_domains(struct domain_list *list)
|
||||
*/
|
||||
static void print_field(int high_light)
|
||||
{
|
||||
- int x = 3; /* display x local */
|
||||
- int y = 4; /* display y local */
|
||||
+ int x, y, x_local, y_local;
|
||||
unsigned int attr_flag;
|
||||
|
||||
+ getyx(stdscr, y_local, x_local); /* get cursor coordinates */
|
||||
+ y = y_local;
|
||||
+ x = x_local + 3; /* leave 3 spaces in the beginning for beauty */
|
||||
+
|
||||
for (int i = 0; i < FD_END; i++) {
|
||||
+ /*
|
||||
+ * if y local is more than scr_row_size, fields list display will
|
||||
+ * out of screen range. So start another col to show fields list
|
||||
+ * with 20 intervals.
|
||||
+ */
|
||||
+ if (y >= scr_row_size) {
|
||||
+ y = y_local;
|
||||
+ x = x + 20;
|
||||
+ }
|
||||
+
|
||||
attr_flag = A_NORMAL;
|
||||
if (i == high_light) {
|
||||
attr_flag |= A_REVERSE; /* high light chosen field */
|
||||
--
|
||||
2.23.0
|
||||
|
||||
127
vcpu_stat-add-remaining-kvm-exits-items-to-display.patch
Normal file
127
vcpu_stat-add-remaining-kvm-exits-items-to-display.patch
Normal file
@ -0,0 +1,127 @@
|
||||
From 9ce07679bec0796af03f79c28aae7fb178ff7fa2 Mon Sep 17 00:00:00 2001
|
||||
From: Jiajun Chen <1250062498@qq.com>
|
||||
Date: Wed, 28 Oct 2020 15:58:04 +0800
|
||||
Subject: [PATCH] vcpu_stat: add remaining kvm exits items to display
|
||||
|
||||
Add remaining kvm exits items to display, include:
|
||||
EXTerr, EXTukn, EXTcp153, EXTcp156, EXTcp14m,
|
||||
EXTcp14l, EXTcp146, EXTsmc, EXTsve, EXTdbg, EXTfail
|
||||
|
||||
Set dafault width to 10 space, and set these items default hidden.
|
||||
|
||||
Signed-off-by: Jiajun Chen <1250062498@qq.com>
|
||||
---
|
||||
src/field.c | 49 ++++++++++++++++++++++++++++++-------------------
|
||||
src/field.h | 11 +++++++++++
|
||||
src/vmtop.c | 13 ++++++++++++-
|
||||
3 files changed, 53 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/src/field.c b/src/field.c
|
||||
index 1fc2fee..8793977 100644
|
||||
--- a/src/field.c
|
||||
+++ b/src/field.c
|
||||
@@ -38,25 +38,36 @@ FID fields[] = {
|
||||
#define GDF(f) (void *)GET_DELTA_NAME(f)
|
||||
#define GF(f) (void *)GET_NAME(f)
|
||||
/* name . flag . align */
|
||||
- {"DID", FIELDS_DISPLAY, 5, NULL },
|
||||
- {"VM/task-name", FIELDS_DISPLAY, 14, NULL },
|
||||
- {"PID", FIELDS_DISPLAY, 8, NULL },
|
||||
- {"%CPU", FIELDS_DISPLAY, 8, NULL },
|
||||
- {"EXThvc", FIELDS_DISPLAY, 10, GDF(hvc_exit_stat) },
|
||||
- {"EXTwfe", FIELDS_DISPLAY, 10, GDF(wfe_exit_stat) },
|
||||
- {"EXTwfi", FIELDS_DISPLAY, 10, GDF(wfi_exit_stat) },
|
||||
- {"EXTmmioU", FIELDS_DISPLAY, 10, GDF(mmio_exit_user) },
|
||||
- {"EXTmmioK", FIELDS_DISPLAY, 10, GDF(mmio_exit_kernel) },
|
||||
- {"EXTfp", FIELDS_DISPLAY, 10, GDF(fp_asimd_exit_stat)},
|
||||
- {"EXTirq", FIELDS_DISPLAY, 10, GDF(irq_exit_stat) },
|
||||
- {"EXTsys64", FIELDS_DISPLAY, 10, GDF(sys64_exit_stat) },
|
||||
- {"EXTmabt", FIELDS_DISPLAY, 10, GDF(mabt_exit_stat) },
|
||||
- {"EXTsum", FIELDS_DISPLAY, 10, GDF(exits) },
|
||||
- {"S", FIELDS_DISPLAY, 5, GF(state) },
|
||||
- {"P", FIELDS_DISPLAY, 5, GF(processor) },
|
||||
- {"%ST", FIELDS_DISPLAY, 8, GDF(steal) },
|
||||
- {"%GUE", FIELDS_DISPLAY, 8, GDF(gtime) },
|
||||
- {"%HYP", FIELDS_DISPLAY, 8, NULL}
|
||||
+ {"DID", FIELDS_DISPLAY, 5, NULL },
|
||||
+ {"VM/task-name", FIELDS_DISPLAY, 14, NULL },
|
||||
+ {"PID", FIELDS_DISPLAY, 8, NULL },
|
||||
+ {"%CPU", FIELDS_DISPLAY, 8, NULL },
|
||||
+ {"EXThvc", FIELDS_DISPLAY, 10, GDF(hvc_exit_stat) },
|
||||
+ {"EXTwfe", FIELDS_DISPLAY, 10, GDF(wfe_exit_stat) },
|
||||
+ {"EXTwfi", FIELDS_DISPLAY, 10, GDF(wfi_exit_stat) },
|
||||
+ {"EXTmmioU", FIELDS_DISPLAY, 10, GDF(mmio_exit_user) },
|
||||
+ {"EXTmmioK", FIELDS_DISPLAY, 10, GDF(mmio_exit_kernel) },
|
||||
+ {"EXTfp", FIELDS_DISPLAY, 10, GDF(fp_asimd_exit_stat) },
|
||||
+ {"EXTirq", FIELDS_DISPLAY, 10, GDF(irq_exit_stat) },
|
||||
+ {"EXTsys64", FIELDS_DISPLAY, 10, GDF(sys64_exit_stat) },
|
||||
+ {"EXTmabt", FIELDS_DISPLAY, 10, GDF(mabt_exit_stat) },
|
||||
+ {"EXTsum", FIELDS_DISPLAY, 10, GDF(exits) },
|
||||
+ {"EXTerr", FIELDS_HIDDEN, 10, GDF(internal_error_exit_stat)},
|
||||
+ {"EXTukn", FIELDS_HIDDEN, 10, GDF(unknown_ec_exit_stat) },
|
||||
+ {"EXTcp153", FIELDS_HIDDEN, 10, GDF(cp15_32_exit_stat) },
|
||||
+ {"EXTcp156", FIELDS_HIDDEN, 10, GDF(cp15_64_exit_stat) },
|
||||
+ {"EXT14m", FIELDS_HIDDEN, 10, GDF(cp14_mr_exit_stat) },
|
||||
+ {"EXT14l", FIELDS_HIDDEN, 10, GDF(cp14_ls_exit_stat) },
|
||||
+ {"EXT146", FIELDS_HIDDEN, 10, GDF(cp14_64_exit_stat) },
|
||||
+ {"EXTsmc", FIELDS_HIDDEN, 10, GDF(smc_exit_stat) },
|
||||
+ {"EXTsve", FIELDS_HIDDEN, 10, GDF(sve_exit_stat) },
|
||||
+ {"EXTdbg", FIELDS_HIDDEN, 10, GDF(debug_exit_stat) },
|
||||
+ {"EXTfail", FIELDS_HIDDEN, 10, GDF(fail_entry_exit_stat) },
|
||||
+ {"S", FIELDS_DISPLAY, 5, GF(state) },
|
||||
+ {"P", FIELDS_DISPLAY, 5, GF(processor) },
|
||||
+ {"%ST", FIELDS_DISPLAY, 8, GDF(steal) },
|
||||
+ {"%GUE", FIELDS_DISPLAY, 8, GDF(gtime) },
|
||||
+ {"%HYP", FIELDS_DISPLAY, 8, NULL }
|
||||
#undef GDF
|
||||
};
|
||||
|
||||
diff --git a/src/field.h b/src/field.h
|
||||
index 88808e7..1fc7182 100644
|
||||
--- a/src/field.h
|
||||
+++ b/src/field.h
|
||||
@@ -31,6 +31,17 @@ enum fields_type {
|
||||
FD_EXTSYS64,
|
||||
FD_EXTMABT,
|
||||
FD_EXTSUM,
|
||||
+ FD_EXTERR,
|
||||
+ FD_EXTUKN,
|
||||
+ FD_EXTCP153,
|
||||
+ FD_EXTCP156,
|
||||
+ FD_EXTCP14M,
|
||||
+ FD_EXTCP14L,
|
||||
+ FD_EXTCP146,
|
||||
+ FD_EXTSMC,
|
||||
+ FD_EXTSVE,
|
||||
+ FD_EXTDBG,
|
||||
+ FD_EXTFAIL,
|
||||
FD_STATE,
|
||||
FD_P,
|
||||
FD_ST,
|
||||
diff --git a/src/vmtop.c b/src/vmtop.c
|
||||
index 12b073d..d22ddfd 100644
|
||||
--- a/src/vmtop.c
|
||||
+++ b/src/vmtop.c
|
||||
@@ -195,7 +195,18 @@ static void print_domain_field(struct domain *dom, int field)
|
||||
case FD_EXTIRQ:
|
||||
case FD_EXTSYS64:
|
||||
case FD_EXTMABT:
|
||||
- case FD_EXTSUM: {
|
||||
+ case FD_EXTSUM:
|
||||
+ case FD_EXTERR:
|
||||
+ case FD_EXTUKN:
|
||||
+ case FD_EXTCP153:
|
||||
+ case FD_EXTCP156:
|
||||
+ case FD_EXTCP14M:
|
||||
+ case FD_EXTCP14L:
|
||||
+ case FD_EXTCP146:
|
||||
+ case FD_EXTSMC:
|
||||
+ case FD_EXTSVE:
|
||||
+ case FD_EXTDBG:
|
||||
+ case FD_EXTFAIL: {
|
||||
print_scr("%*llu", fields[i].align, *(u64 *)(*fields[i].get_fun)(dom));
|
||||
break;
|
||||
}
|
||||
--
|
||||
2.23.0
|
||||
|
||||
10
vmtop.spec
10
vmtop.spec
@ -1,6 +1,6 @@
|
||||
Name: vmtop
|
||||
Version: 1.1
|
||||
Release: 0
|
||||
Release: 1
|
||||
Summary: A tool for collecting and analyzing data of virtual machine
|
||||
License: Mulan PSL V2
|
||||
Group: Application/System
|
||||
@ -17,6 +17,8 @@ Patch0006: vcpustat-modify-vcpu-info-acquirement-from-debugfs.patch
|
||||
Patch0007: display-expand-CPU-display.patch
|
||||
Patch0008: display-add-limit-to-usage-display.patch
|
||||
Patch0009: vmtop-simplify-print_domain_field.patch
|
||||
Patch0010: vcpu_stat-add-remaining-kvm-exits-items-to-display.patch
|
||||
Patch0011: display-modify-filter-display-to-support-more-displa.patch
|
||||
|
||||
Requires: libvirt, ncurses
|
||||
|
||||
@ -57,6 +59,12 @@ install -m 550 vmtop ${RPM_BUILD_ROOT}/usr/bin/%{name}
|
||||
%{_bindir}/vmtop
|
||||
|
||||
%changelog
|
||||
* Wed Oct 28 2020 Huawei Technologies Co., Ltd <alex.chen@huawei.com>
|
||||
- display: modify filter display to support more display fields items
|
||||
|
||||
* Wed Oct 28 2020 Huawei Technologies Co., Ltd <alex.chen@huawei.com>
|
||||
- vcpu_stat: add remaining kvm exits items to display
|
||||
|
||||
* Sat Oct 10 2020 Jiajun Chen <1250062498@qq.com> -1.1-0
|
||||
- spec: modify source url
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user