OpenAFS Master Repository branch, master, updated. BP--openafs-stable-1_6_x-183-gff89a32

Gerrit Code Review gerrit@openafs.org
Thu, 30 Sep 2010 06:10:36 -0700 (PDT)


The following commit has been merged in the master branch:
commit 37946ee1739aa22cb2f7330a37504d33a7733c9a
Author: Simon Wilkinson <sxw@your-file-system.com>
Date:   Wed Sep 29 00:11:53 2010 +0100

    rx: Make statistics interface use Atomics
    
    Make the rx_statistics statistics gathering infrastructure use
    atomics for all of its counters. This significantly reduces
    lock contention. However, it also (potentially) changes the format
    of the rx_stats variable which has been used by callers in the past.
    
    To simplify this process, and to aid with future changes, we remove
    direct access to rx_stats. Instead, two additional API functions
    rx_GetStatistics and rx_FreeStatistics are provided. These give the
    caller access to an 'normal' rx_statistics structure.
    
    Tom Keiser has suggested that we should explore using thread-local
    statistics structures, and just aggregating them when we are asked
    to report. This is a fine idea, and is equally possible with the
    new interface that this patch introduces.
    
    Change-Id: I859cea8f7354a655be007b95fa8a61f995308b35
    Reviewed-on: http://gerrit.openafs.org/2862
    Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
    Tested-by: Jeffrey Altman <jaltman@openafs.org>

 src/libafsrpc/Makefile.in      |    4 ++
 src/libafsrpc/NTMakefile       |    2 +-
 src/libafsrpc/afsrpc.def       |    2 +
 src/libuafs/Makefile.common.in |   10 ++++
 src/rx/Makefile.in             |    2 +-
 src/rx/NTMakefile              |    2 +-
 src/rx/rx.c                    |   75 +++++++++++++++++----------------
 src/rx/rx.h                    |   51 ----------------------
 src/rx/rx_globals.h            |    3 -
 src/rx/rx_kcommon.c            |    8 ++--
 src/rx/rx_lwp.c                |    8 +++-
 src/rx/rx_packet.c             |   55 ++++++++++++------------
 src/rx/rx_prototypes.h         |    4 ++
 src/rx/rx_stats.c              |   92 ++++++++++++++++++++++++++++++++++++++++
 src/rx/rx_stats.h              |   86 +++++++++++++++++++++++++++++++++++++
 src/rx/rx_user.c               |   14 +++----
 src/shlibafsrpc/Makefile.in    |    4 ++
 src/shlibafsrpc/libafsrpc.map  |    2 -
 src/viced/afsfileprocs.c       |   88 ++++++++++++++++++++------------------
 19 files changed, 334 insertions(+), 178 deletions(-)

-- 
OpenAFS Master Repository