Hi Christoffer
On 12/14/2017 9:09 PM, Christoffer Dall Wrote:
On Thu, Dec 14, 2017 at 12:57:54PM +0800, Jia He wrote:
Hi Jia,
I have tried your newer level-mapped-v7 branch, but bug is still there.
There is no special load in both host and guest. The guest (kernel
4.14) is often hanging
Hi Christoffer
On 12/14/2017 9:09 PM, Christoffer Dall Wrote:
On Thu, Dec 14, 2017 at 12:57:54PM +0800, Jia He wrote:
Hi Jia,
I have tried your newer level-mapped-v7 branch, but bug is still there.
There is no special load in both host and guest. The guest (kernel
4.14) is often hanging
Hi
On 12/14/2017 12:57 PM, Jia He Wrote:
Hi Christoffer
I have tried your newer level-mapped-v7 branch, but bug is still there.
There is no special load in both host and guest. The guest (kernel
4.14) is often hanging when booting
the guest kernel log
[ OK ] Reached target Remote File
Hi
On 12/14/2017 12:57 PM, Jia He Wrote:
Hi Christoffer
I have tried your newer level-mapped-v7 branch, but bug is still there.
There is no special load in both host and guest. The guest (kernel
4.14) is often hanging when booting
the guest kernel log
[ OK ] Reached target Remote File
stoffer Dall Wrote:
On Tue, Dec 12, 2017 at 11:00:07PM -0800, Jia He wrote:
In our Armv8a server (qualcomm Amberwing, non VHE), after applying
Christoffer's timer optimizing patchset(Optimize arch timer register
handling), the guest is hang during kernel booting.
The erro
stoffer Dall Wrote:
On Tue, Dec 12, 2017 at 11:00:07PM -0800, Jia He wrote:
In our Armv8a server (qualcomm Amberwing, non VHE), after applying
Christoffer's timer optimizing patchset(Optimize arch timer register
handling), the guest is hang during kernel booting.
The erro
mer
kvm_timer_is_pending
kvm_timer_should_fire
3. Thus, the kvm hyp code can not break the loop in kvm_vcpu_block (halt
poll process) and the guest is hang forever
Fixes: b103cc3f10c0 ("KVM: arm/arm64: Avoid timer save/restore in vcpu
entry/exit")
Signed-off-by: Jia H
mer
kvm_timer_is_pending
kvm_timer_should_fire
3. Thus, the kvm hyp code can not break the loop in kvm_vcpu_block (halt
poll process) and the guest is hang forever
Fixes: b103cc3f10c0 ("KVM: arm/arm64: Avoid timer save/restore in vcpu
entry/exit")
Signed-off-by: Jia He
Thanks, got it
Cheers,
Jia
On 11/20/2017 10:04 PM, Mark Rutland Wrote:
On Mon, Nov 20, 2017 at 09:50:15PM +0800, Jia He wrote:
On 11/20/2017 8:32 PM, Mark Rutland Wrote:
On Thu, Nov 16, 2017 at 06:27:28AM +, Jia He wrote:
Sometimes userspace need a high resolution cycle counter
Thanks, got it
Cheers,
Jia
On 11/20/2017 10:04 PM, Mark Rutland Wrote:
On Mon, Nov 20, 2017 at 09:50:15PM +0800, Jia He wrote:
On 11/20/2017 8:32 PM, Mark Rutland Wrote:
On Thu, Nov 16, 2017 at 06:27:28AM +, Jia He wrote:
Sometimes userspace need a high resolution cycle counter
Hi Mark
Thanks for your review.
On 11/20/2017 8:32 PM, Mark Rutland Wrote:
Hi,
On Thu, Nov 16, 2017 at 06:27:28AM +, Jia He wrote:
Sometimes userspace need a high resolution cycle counter by reading
pmccntr_el0.
In commit da4e4f18afe0 ("drivers/perf: arm_pmu: implement CPU_PM
not
Hi Mark
Thanks for your review.
On 11/20/2017 8:32 PM, Mark Rutland Wrote:
Hi,
On Thu, Nov 16, 2017 at 06:27:28AM +, Jia He wrote:
Sometimes userspace need a high resolution cycle counter by reading
pmccntr_el0.
In commit da4e4f18afe0 ("drivers/perf: arm_pmu: implement CPU_PM
not
registers and counter before CPU_PM_ENTER and
restore them after CPU_PM_EXIT.
Fixes: da4e4f18afe0 ("drivers/perf: arm_pmu: implement CPU_PM notifier")
Signed-off-by: Jia He <jia...@hxt-semitech.com>
---
drivers/perf/arm_pmu.c | 72
registers and counter before CPU_PM_ENTER and
restore them after CPU_PM_EXIT.
Fixes: da4e4f18afe0 ("drivers/perf: arm_pmu: implement CPU_PM notifier")
Signed-off-by: Jia He
---
drivers/perf/arm_pmu.c | 72 +-
1 file changed, 66 insert
Thanks Mikael
It is a known gcc bug, please see
https://gcc.gnu.org/ml/gcc-patches/2017-03/msg00790.html
Cheers,
Jusitn(Jia He)
在 9/21/2017 3:53 PM, Mikael Pettersson Wrote:
Jia He writes:
> I tried to build kernel 4.14-rc1 on a arm64 server in distro centos 7.3.
> The gcc v
Thanks Mikael
It is a known gcc bug, please see
https://gcc.gnu.org/ml/gcc-patches/2017-03/msg00790.html
Cheers,
Jusitn(Jia He)
在 9/21/2017 3:53 PM, Mikael Pettersson Wrote:
Jia He writes:
> I tried to build kernel 4.14-rc1 on a arm64 server in distro centos 7.3.
> The gcc v
h cause the compiler bug:
commit c350c008297643dad3c395c2fd92230142da5cf6
srcu: Prevent sdp->srcu_gp_seq_needed counter wrap
In this bug, srcu uses a percpu ptr which will call RELOC_HIDE. After I
remove
the RELOC_HIDE code, this bug disappearred.
This bug is not in latest gcc version
Cheers,
Justin(Jia He)
dad3c395c2fd92230142da5cf6
srcu: Prevent sdp->srcu_gp_seq_needed counter wrap
In this bug, srcu uses a percpu ptr which will call RELOC_HIDE. After I
remove
the RELOC_HIDE code, this bug disappearred.
This bug is not in latest gcc version
Cheers,
Justin(Jia He)
s to also include the time elapsed in host. get_vtb is not correct in
this case.
Also, the TB_OFFSET is well saved and restored by qemu after commit [1].
So we can use get_tb here.
[1] http://git.qemu.org/?p=qemu.git;a=commit;h=42043e4f1
Signed-off-by: Jia He <hejia...@gmail.com>
---
arch
s to also include the time elapsed in host. get_vtb is not correct in
this case.
Also, the TB_OFFSET is well saved and restored by qemu after commit [1].
So we can use get_tb here.
[1] http://git.qemu.org/?p=qemu.git;a=commit;h=42043e4f1
Signed-off-by: Jia He
---
arch/powerpc/kernel/time.c | 7 +
ion better
Signed-off-by: Jia He <hejia...@gmail.com>
---
mm/vmscan.c | 11 ++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/mm/vmscan.c b/mm/vmscan.c
index 532a2a7..7c5a563 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -3139,7 +3139,8 @@ static bool prepare_ksw
ion better
Signed-off-by: Jia He
---
mm/vmscan.c | 11 ++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/mm/vmscan.c b/mm/vmscan.c
index 532a2a7..7c5a563 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -3139,7 +3139,8 @@ static bool prepare_kswapd_sleep(pg_data_t *pgdat, int
or
4 used, 6206720 free. 131328 cached Mem
PID USER PR NIVIRTRESSHR S %CPU %MEM TIME+ COMMAND
77 root 20 0 0 0 0 S 0.000 0.000 0:00.00 kswapd3
Signed-off-by: Jia He <hejia...@gmail.com>
---
mm/vmscan.c | 11 ++-
1 file changed, 1
4 used, 6206720 free. 131328 cached Mem
PID USER PR NIVIRTRESSHR S %CPU %MEM TIME+ COMMAND
77 root 20 0 0 0 0 S 0.000 0.000 0:00.00 kswapd3
Signed-off-by: Jia He
---
mm/vmscan.c | 11 ++-
1 file changed, 10 insertions(+), 1 de
40 40 40 10
In this case node 5 has less memory and we will alloc the hugepages
from these nodes one by one.
After this patch, we will not trigger too early direct memory/kswap
reclaim for node 5 if there are enough memory in other nodes.
Signed-off-by: Jia He <hejia...@gmail.com>
-
40 40 40 10
In this case node 5 has less memory and we will alloc the hugepages
from these nodes one by one.
After this patch, we will not trigger too early direct memory/kswap
reclaim for node 5 if there are enough memory in other nodes.
Signed-off-by: Jia He
---
mm/hugetlb.c | 9
e 4 size: 24815 MB
node 4 free: 20704 MB
node 5 cpus:
node 5 size: 4095 MB
node 5 free: 61 MB
node 6 cpus:
node 6 size: 22750 MB
node 6 free: 18716 MB
The cause is kswapd will loop for long time even if there is no progress in
balance_pgdat.
Signed-off-by: Jia He <hejia...@gmail.com>
---
mm
e 4 size: 24815 MB
node 4 free: 20704 MB
node 5 cpus:
node 5 size: 4095 MB
node 5 free: 61 MB
node 6 cpus:
node 6 size: 22750 MB
node 6 free: 18716 MB
The cause is kswapd will loop for long time even if there is no progress in
balance_pgdat.
Signed-off-by: Jia He
---
mm/vmscan.c |
When there is no reclaimable pages in the zone, even the zone is
not balanced, we let kswapd go sleeping. That is prepare_kswapd_sleep
will return true in this case.
Signed-off-by: Jia He <hejia...@gmail.com>
---
mm/vmscan.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff
4000 > /proc/sys/vm/nr_hugepages
Then the kswapd5 will take 100% cpu for a long time. This is a livelock
issue in kswapd. This patch set fixes it.
The 3rd patch improves the kswapd's bad performance significantly.
Jia He (3):
mm/hugetlb: split alloc_fresh_huge_page_node into fast and slow p
4000 > /proc/sys/vm/nr_hugepages
Then the kswapd5 will take 100% cpu for a long time. This is a livelock
issue in kswapd. This patch set fixes it.
The 3rd patch improves the kswapd's bad performance significantly.
Jia He (3):
mm/hugetlb: split alloc_fresh_huge_page_node into fast and slow p
When there is no reclaimable pages in the zone, even the zone is
not balanced, we let kswapd go sleeping. That is prepare_kswapd_sleep
will return true in this case.
Signed-off-by: Jia He
---
mm/vmscan.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/mm/vmscan.c b/mm
use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Already tested in both of big and little endian(ppc64 and ppc64le)
Jia He (2):
sysctl: introduce new proc handler proc_dobool
lockd: change the proc_handle
.
This patch use a new proc_handler proc_dobool to fixe it.
Signed-off-by: Jia He <hejia...@gmail.com>
---
fs/lockd/svc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index fc4084e..bd6fcf9 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd
This is to let bool variable could be correctly displayed in
big/little endian sysctl procfs. sizeof(bool) is arch dependent,
proc_dobool should work in all arches.
Suggested-by: Pan Xinhui <xin...@linux.vnet.ibm.com>
Signed-off-by: Jia He <hejia...@gmail.com>
---
include/linux/s
use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Already tested in both of big and little endian(ppc64 and ppc64le)
Jia He (2):
sysctl: introduce new proc handler proc_dobool
lockd: change the proc_handle
.
This patch use a new proc_handler proc_dobool to fixe it.
Signed-off-by: Jia He
---
fs/lockd/svc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index fc4084e..bd6fcf9 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@ -561,7 +561,7
This is to let bool variable could be correctly displayed in
big/little endian sysctl procfs. sizeof(bool) is arch dependent,
proc_dobool should work in all arches.
Suggested-by: Pan Xinhui
Signed-off-by: Jia He
---
include/linux/sysctl.h | 2 ++
kernel/sysctl.c| 41
-f /root/my/hello.ko nsm_use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Already tested v4 in both of big and little endian(ppc64 and ppc64le)
Jia He (2):
sysctl: introduce new proc handler proc_dobool
lockd: chang
-f /root/my/hello.ko nsm_use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Already tested v4 in both of big and little endian(ppc64 and ppc64le)
Jia He (2):
sysctl: introduce new proc handler proc_dobool
lockd: chang
This is to let bool variable could be correctly displayed in
big/little endian sysctl procfs.
sizeof(bool) is arch dependent, proc_dobool should work in all
arches.
Suggested-by: Pan Xinhui <xin...@linux.vnet.ibm.com>
Signed-off-by: Jia He <hejia...@gmail.com>
---
include/linux/s
.
This patch use a new proc_handler proc_dobool.
Signed-off-by: Jia He <hejia...@gmail.com>
---
fs/lockd/svc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index fc4084e..bd6fcf9 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@
This is to let bool variable could be correctly displayed in
big/little endian sysctl procfs.
sizeof(bool) is arch dependent, proc_dobool should work in all
arches.
Suggested-by: Pan Xinhui
Signed-off-by: Jia He
---
include/linux/sysctl.h | 2 ++
kernel/sysctl.c| 35
.
This patch use a new proc_handler proc_dobool.
Signed-off-by: Jia He
---
fs/lockd/svc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index fc4084e..bd6fcf9 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@ -561,7 +561,7 @@ static struct
be
incorrect.
Fixes: commit b9f00e147f27 ("mm, page_alloc: reduce branches in
zone_statistics")
Signed-off-by: Jia He <hejia...@gmail.com>
---
mm/page_alloc.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 6de9440..474757e 1
be
incorrect.
Fixes: commit b9f00e147f27 ("mm, page_alloc: reduce branches in
zone_statistics")
Signed-off-by: Jia He
---
mm/page_alloc.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 6de9440..474757e 100644
--- a/mm/page_alloc.c
++
718 711
726 858 712 719
Jia He (1):
mm, page_alloc: fix incorrect zone_statistics data
mm/page_alloc.c | 3 +++
1 file changed, 3 insertions(+)
--
2.5.5
718 711
726 858 712 719
Jia He (1):
mm, page_alloc: fix incorrect zone_statistics data
mm/page_alloc.c | 3 +++
1 file changed, 3 insertions(+)
--
2.5.5
gendian my]# insmod -f /root/my/hello.ko nsm_use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Jia He (1):
lockd: Change nsm_use_hostnames from bool to u32
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +
gendian my]# insmod -f /root/my/hello.ko nsm_use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Jia He (1):
lockd: Change nsm_use_hostnames from bool to u32
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +
.
This patch changes the type definition of nsm_use_hostnames.
V2: Changes extern type in lockd.h
Signed-off-by: Jia He <hejia...@gmail.com>
---
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +-
include/linux/lockd/lockd.h | 2 +-
3 files changed, 3 insertions(+), 3 del
.
This patch changes the type definition of nsm_use_hostnames.
V2: Changes extern type in lockd.h
Signed-off-by: Jia He
---
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +-
include/linux/lockd/lockd.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/fs
.
This patch changes the type definition of nsm_use_hostnames.
Signed-off-by: Jia He <hejia...@gmail.com>
---
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
index 19166d4..3e7ff4d 100644
--- a/fs
.
This patch changes the type definition of nsm_use_hostnames.
Signed-off-by: Jia He
---
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
index 19166d4..3e7ff4d 100644
--- a/fs/lockd/mon.c
+++ b/fs/lockd
gendian my]# insmod -f /root/my/hello.ko nsm_use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Jia He (1):
lockd: Change nsm_use_hostnames from bool to u32
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
--
2.5.5
gendian my]# insmod -f /root/my/hello.ko nsm_use_hostnames=1
[root@bigendian my]# cat /proc/sys/mysysctl/nsm_use_hostnames
1
In little endian system, there is no such issue.
Jia He (1):
lockd: Change nsm_use_hostnames from bool to u32
fs/lockd/mon.c | 2 +-
fs/lockd/svc.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
--
2.5.5
Fixes: a4b349540a ("powerpc/mm: Cleanup LPCR defines")
Signed-off-by: Jia He <hejia...@gmail.com>
---
arch/powerpc/include/asm/reg.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h
index 9e1499f
Fixes: a4b349540a ("powerpc/mm: Cleanup LPCR defines")
Signed-off-by: Jia He
---
arch/powerpc/include/asm/reg.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h
index 9e1499f..93ec25e 100644
--- a/ar
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 de
The parameter items(is always ICMP6_MIB_MAX) is useless for
__snmp6_fill_statsdev
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..3
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/ne
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 deletions(-)
diff --git
The parameter items(is always ICMP6_MIB_MAX) is useless for
__snmp6_fill_statsdev
Signed-off-by: Jia He
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..35d4baa 100644
--- a/net
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/sctp/proc.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/net/sctp/proc.c b/net/sctp
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/xfrm/xfrm_proc.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/net/xfrm/xfrm_proc.c b
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
Suggested-by: M
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He
Suggested-by: Marcelo Ricardo Leitner
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show is split into 2 parts to avoid build warning "the frame
size" larger than 1024.
Signed-off-by: Jia He <hejia...@gmail.
eq_show considerred the stack usage is too
large
v3:
- introduce generic interface (suggested by Marcelo Ricardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is split into 2 parts
Jia He (7):
net:snmp: Introduce
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show is split into 2 parts to avoid build warning "the frame
size" larger than 1024.
Signed-off-by: Jia He
---
net/ipv4/p
eq_show considerred the stack usage is too
large
v3:
- introduce generic interface (suggested by Marcelo Ricardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is split into 2 parts
Jia He (7):
net:snmp: Introduce
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 30 ++
1 file changed, 22 insertions(+), 8 del
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/ipv6/proc.c | 30 ++
1 file changed, 22 insertions(+), 8 deletions(-)
diff --git a/net
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show is split into 2 parts to avoid build warning "the frame
size" larger than 1024.
Signed-off-by: Jia He <hejia...@gmail.
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 de
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show is split into 2 parts to avoid build warning "the frame
size" larger than 1024.
Signed-off-by: Jia He
---
net/ipv4/p
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 deletions(-)
diff --git
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 10 +++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..3
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/sctp/proc.c | 10 +++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/net/sctp/proc.c b/net/sctp
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..35d4baa 100644
--- a/net/ipv6
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/xfrm/xfrm_proc.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/net/xfrm/xfrm_proc.c
nsiderred the stack usage is too
large
v3:
- introduce generic interface (suggested by Marcelo Ricardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is split into 2 parts
Jia He (7):
net:snmp: Introduce generic interfaces
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
Suggested-by: M
nsiderred the stack usage is too
large
v3:
- introduce generic interface (suggested by Marcelo Ricardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is split into 2 parts
Jia He (7):
net:snmp: Introduce generic interfaces
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He
Suggested-by: Marcelo Ricardo Leitner
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 32 +++-
1 file changed, 23 insertions(+), 9 del
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/ipv6/proc.c | 32 +++-
1 file changed, 23 insertions(+), 9 deletions(-)
diff --git a/net
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/xfrm/xfrm_proc.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/net/xfrm/xfrm_proc.c b
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 32 +++-
1 file changed, 23 insertions(+), 9 del
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..3
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He
---
net/ipv6/proc.c | 32 +++-
1 file changed, 23 insertions(+), 9 deletions(-)
diff --git a/net
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..35d4baa 100644
--- a/net/ipv6
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 de
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
Suggested-by: M
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 deletions(-)
diff --git
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He
Suggested-by: Marcelo Ricardo Leitner
401 - 500 of 626 matches
Mail list logo