OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-3713-geb5190e

Gerrit Code Review gerrit@openafs.org
Wed, 17 Apr 2013 07:07:33 -0700 (PDT)


The following commit has been merged in the master branch:
commit eb5190eb4a7cd95166866a89e0a8f3a69bbc6e8f
Author: Andrew Deason <adeason@sinenomine.net>
Date:   Fri Mar 29 13:40:41 2013 -0500

    Make ihandle sync behavior runtime-configurable
    
    The actual behavior of FDH_SYNC has changed a bit over the years, and
    some people want one behavior, and some want another. Make it possible
    to make this choice at runtime with the new -sync option, instead of
    making this decision by running with different patches.
    
    Note that FDH_SYNC is not a macro anymore, nor is it an inline
    function. While it could be a macro, it would look a bit complex, and
    there are some oddities with trying to use vol_io_params inside the
    FDH_SYNC expansion (vol_io_params is not declared for LWP, for
    example). And having it be an inline function causes problems with
    some odd linking dependencies. For example, vlib.a contains volume.o,
    but does not contain a definition for DFlushVolume (dir/buffer.c),
    which is referenced in volume.o.  'vos' uses vlib.a, but does not
    bring in anything that defines DFlushVolume. Currently this appears to
    not cause a problem because 'vos' uses nothing from volume.o, so the
    dependencies of volume.o don't matter. Adding an inline FDH_SYNC for
    platforms that don't support 'static inline' would add a dependency to
    volume.o (via vol_io_params), which causes an error for the lack of a
    DFlushVolume.
    
    Those are possibly just some problems, and may not be all. So instead,
    make it so we don't have to deal with that and just have a normal
    function. While FDH_SYNC may be called in a performance-critical
    section, the overhead of a real function call is nowhere near the
    delay of an actual fsync(), so presumably any overhead doesn't matter.
    
    Change-Id: I23620bd8ac31b9019e9d55cb46ec9f3a75f5675c
    Reviewed-on: http://gerrit.openafs.org/9694
    Reviewed-by: Andrew Deason <adeason@sinenomine.net>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

 .../pod8/fragments/fileserver-options.pod          |   89 ++++++++++++++++++++
 .../pod8/fragments/fileserver-synopsis.pod         |    1 +
 doc/man-pages/pod8/fragments/volserver-options.pod |    5 +
 .../pod8/fragments/volserver-synopsis.pod          |    1 +
 src/viced/viced.c                                  |   12 +++-
 src/vol/ihandle.c                                  |   46 ++++++++++
 src/vol/ihandle.h                                  |   23 +++++-
 src/vol/vol-salvage.c                              |   13 +---
 src/volser/volmain.c                               |   12 +++
 9 files changed, 188 insertions(+), 14 deletions(-)

-- 
OpenAFS Master Repository