diff options
author | Linus Torvalds | 2008-02-10 09:04:35 +0100 |
---|---|---|
committer | Linus Torvalds | 2008-02-10 09:04:35 +0100 |
commit | 25f666300625d894ebe04bac2b4b3aadb907c861 (patch) | |
tree | 47547369f2d6eb366268e85252444ecb1bdcfab5 /net/sctp/proc.c | |
parent | Merge git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 (diff) | |
parent | [NET_SCHED] sch_htb: htb_requeue fix (diff) | |
download | kernel-qcow2-linux-25f666300625d894ebe04bac2b4b3aadb907c861.tar.gz kernel-qcow2-linux-25f666300625d894ebe04bac2b4b3aadb907c861.tar.xz kernel-qcow2-linux-25f666300625d894ebe04bac2b4b3aadb907c861.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (28 commits)
[NET_SCHED] sch_htb: htb_requeue fix
[IPV6]: Replace using the magic constant "1024" with IP6_RT_PRIO_USER for fc_metric.
starfire: secton fix
via-velocity: section fix
natsemi: section fix
typhoon: section fix
isdn: fix section mismatch warning for ISACVer
isdn: fix section mismatch warnings from hisax_cs_setup_card
isdn: fix section mismatch warnings in isac.c and isar.c
isdn: fix section mismatch warning in hfc_sx.c
[PKT_SCHED] ematch: tcf_em_destroy robustness
[PKT_SCHED]: deinline functions in meta match
[SCTP]: Convert sctp_dbg_objcnt to seq files.
[SCTP]: Use snmp_fold_field instead of a homebrew analogue.
[IGMP]: Optimize kfree_skb in igmp_rcv.
[KEY]: Convert net/pfkey to use seq files.
[KEY]: Clean up proc files creation a bit.
pppol2tp: fix printk warnings
bnx2: section fix
bnx2x: section fix
...
Diffstat (limited to 'net/sctp/proc.c')
-rw-r--r-- | net/sctp/proc.c | 31 |
1 files changed, 6 insertions, 25 deletions
diff --git a/net/sctp/proc.c b/net/sctp/proc.c index 249973204070..69bb5a63fd8b 100644 --- a/net/sctp/proc.c +++ b/net/sctp/proc.c @@ -1,15 +1,15 @@ -/* SCTP kernel reference Implementation +/* SCTP kernel implementation * Copyright (c) 2003 International Business Machines, Corp. * - * This file is part of the SCTP kernel reference Implementation + * This file is part of the SCTP kernel implementation * - * The SCTP reference implementation is free software; + * This SCTP implementation is free software; * you can redistribute it and/or modify it under the terms of * the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * - * The SCTP reference implementation is distributed in the hope that it + * This SCTP implementation is distributed in the hope that it * will be useful, but WITHOUT ANY WARRANTY; without even the implied * ************************ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. @@ -38,6 +38,7 @@ #include <linux/seq_file.h> #include <linux/init.h> #include <net/sctp/sctp.h> +#include <net/ip.h> /* for snmp_fold_field */ static struct snmp_mib sctp_snmp_list[] = { SNMP_MIB_ITEM("SctpCurrEstab", SCTP_MIB_CURRESTAB), @@ -75,26 +76,6 @@ static struct snmp_mib sctp_snmp_list[] = { SNMP_MIB_SENTINEL }; -/* Return the current value of a particular entry in the mib by adding its - * per cpu counters. - */ -static unsigned long -fold_field(void *mib[], int nr) -{ - unsigned long res = 0; - int i; - - for_each_possible_cpu(i) { - res += - *((unsigned long *) (((void *) per_cpu_ptr(mib[0], i)) + - sizeof (unsigned long) * nr)); - res += - *((unsigned long *) (((void *) per_cpu_ptr(mib[1], i)) + - sizeof (unsigned long) * nr)); - } - return res; -} - /* Display sctp snmp mib statistics(/proc/net/sctp/snmp). */ static int sctp_snmp_seq_show(struct seq_file *seq, void *v) { @@ -102,7 +83,7 @@ static int sctp_snmp_seq_show(struct seq_file *seq, void *v) for (i = 0; sctp_snmp_list[i].name != NULL; i++) seq_printf(seq, "%-32s\t%ld\n", sctp_snmp_list[i].name, - fold_field((void **)sctp_statistics, + snmp_fold_field((void **)sctp_statistics, sctp_snmp_list[i].entry)); return 0; |