linux/fs/gfs2/lock_dlm.c
<<
>>
Prefs
   1/*
   2 * Copyright (C) Sistina Software, Inc.  1997-2003 All rights reserved.
   3 * Copyright 2004-2011 Red Hat, Inc.
   4 *
   5 * This copyrighted material is made available to anyone wishing to use,
   6 * modify, copy, or redistribute it subject to the terms and conditions
   7 * of the GNU General Public License version 2.
   8 */
   9
  10#include <linux/fs.h>
  11#include <linux/dlm.h>
  12#include <linux/slab.h>
  13#include <linux/types.h>
  14#include <linux/delay.h>
  15#include <linux/gfs2_ondisk.h>
  16
  17#include "incore.h"
  18#include "glock.h"
  19#include "util.h"
  20#include "sys.h"
  21#include "trace_gfs2.h"
  22
  23extern struct workqueue_struct *gfs2_control_wq;
  24
  25/**
  26 * gfs2_update_stats - Update time based stats
  27 * @mv: Pointer to mean/variance structure to update
  28 * @sample: New data to include
  29 *
  30 * @delta is the difference between the current rtt sample and the
  31 * running average srtt. We add 1/8 of that to the srtt in order to
  32 * update the current srtt estimate. The varience estimate is a bit
  33 * more complicated. We subtract the abs value of the @delta from
  34 * the current variance estimate and add 1/4 of that to the running
  35 * total.
  36 *
  37 * Note that the index points at the array entry containing the smoothed
  38 * mean value, and the variance is always in the following entry
  39 *
  40 * Reference: TCP/IP Illustrated, vol 2, p. 831,832
  41 * All times are in units of integer nanoseconds. Unlike the TCP/IP case,
  42 * they are not scaled fixed point.
  43 */
  44
  45static inline void gfs2_update_stats(struct gfs2_lkstats *s, unsigned index,
  46                                     s64 sample)
  47{
  48        s64 delta = sample - s->stats[index];
  49        s->stats[index] += (delta >> 3);
  50        index++;
  51        s->stats[index] += ((abs64(delta) - s->stats[index]) >> 2);
  52}
  53
  54/**
  55 * gfs2_update_reply_times - Update locking statistics
  56 * @gl: The glock to update
  57 *
  58 * This assumes that gl->gl_dstamp has been set earlier.
  59 *
  60 * The rtt (lock ass="comment"> * The rtt (lock 
  v2.6.19.5
  
  ->stats[index]) >> 2);
  52}

  
  
inux/d3ktimao per3/41/b " n "L52" equ"> 
,

  e_reply_6imes - Update locking s6atist6ref="+code=inline" class="sref" nam" clae the  nn  s,

  #L56" id6"L56" class="line" name6"L56"6gfs2_lkstats" class="sref">gf  s,

  : The gl6ck to update
 ent"> * This assumes that gl->gl_ds6n class=6comment"> *
 s" claeine"ss=5" sn  s,

  "line" naame="L8">   8 s"we"se current vari"L52"ass=d="L4exclusive, is a bit
  39 9" id="d="L4nus2/(/4 ungfs2ed)dlm.we"se currTRYdlma bit
 * 6he rt6 (lock 
  v2.6.19.RY_1CBlflag_dlm.c32.4aspan>

6> s"aspanclat9" .22("+servias2y)2b,

 7ex" clas7="sref">index]) >7> 7);

7
	  >71ss="line" name="L46">  46                                     s64 sample)
s64  * gfs2_ulef">s64 index];
sample)
 * gfs2_ref/gfs2/lock_dlm.ref

s64 stats[s64 valan>
ef">s64 
->.mment"> * gfs2_rn_a href">s64  *
stats[ _bine" name="L26"> t"> _bin53">  53
 GLF_BLOCKINGvaef">s64 valflag_ef">s64    8de 53
 GFS2_LKS_SRTTB"+cod:e 53
 GFS2_LKS_SRTT
  10.c#L677name="L49">  49        s->" ihref="+code=s" " i
 * 7he rt78 56 * @g7lock_dre7="+code=s" class="sref"7s7 pan class="comment"> * gfs2_upda8ex" clas8="sref">index]) >8> 8de=delta" class="sref">delta" ihref="+code=s" " i
stats[s64   53
s64   53
s64  p,ef">stats[s64 value="v2ef">s64  * gfs2_upda8
  
8
	  >8"+code=index" class="sref">iref/gfs2/lock_dlm.ref
stats[ this_cpuhptr53">  53
s64 valsbdef">s64 /dhref="fs/gfs2/lock_dlm./dhref="fs id="an class="comment"> * gfs2_upda8e_reply_8imes - Update locking s8atist82+code=index" class="sref">ide=s64" class="sref">s64 vaef">s64 vals="sref">s64 stats[delta" ihref="+code=s" " i
de /lock_dlm.c#L57" id="L5 Localm.s2_lkstats *ide=s64" class="sref">s64 ref/gfs2/lock_dlm.ref
ref="fs/gfs2/lock_dlm.ref="fs id=ock_dlm.c#L55" igla href">s64 stats[delta" ihref="+code=s" " i

 pan class="comment"> * gfs2_upda8n class=8comment"> *
 * @g8"line" n8ame="L8">   8 tock_dlm.c=ss="l_s="l_="L553">  53
s64 delta" ihref="+code=s" " i
 * @g8class="l8ine" name="L10">  10
  11he rt88 56 * @g8lock_dre8="+code=s" class="sref"8s8>  57index]) >9> 9);
 e="L58">  58 * This assumes that gl->gl_ds9
  
9
	  >9  v2.6.18.32.43
inux/"L59" class="line" name="L59">  59 9e_reply_9imes - Update locking s9atist9ref="+code=inline" class="sre"L59">  59 9#L56" id9"L56" class="line" name9"L56"9  35 clairid="L52"s="li-" qu"> /lock_)f="fsurete thee compliref="fs,

 9: The gl9ck to update
 s" * Note" nn It="L4 name=d i"L3dime=2y2befor="fs,

 9n class=9comment"> *
  38   8linux/dlm.h&gclass="l9ine" name="L10">  10 * @g9class="l9ine" name="L11">  11  46                                      e="L58ef">s64  e="L58e" class="sref">sample)
s64  * gfs2_ulef">s64 99s="sref">index];
sample)
 * gfs2_ref/gfs2/lock_dlm.ref
  130#include <s64 stats[s64 valan>
ef">s64 
->.mment"> * gfs2_rn_a href">s64   140#include <ik="L5_tef">s64 s->ue="v2ef">s64   015#include <is->iri                ri
  16
index,
incore0.h"
ipreempt_disse vhref="+code=s" preempt_disse v53"> pan class="comment"> * gfs2_upda10;
s64 stats[s64 value="v2ef">s64  * gfs2_upda10>#include0 "  49        ulef">s64 value="v2ef">s64 stats[s64  pan class="comment"> * gfs2_upda10clude &qu0ot;  49        iri                ri
stats[s64   53
s64   53
s64 value="v2ef">s64 deltaue="v2ef">s64  * gfs2_upda10e "<0a href="fs/gfs2/trace_gf09gt;destats[ this_cpuhptr53">  53
s64 valsbdef">s64 /dhref="fs/gfs2/lock_dlm./dhref="fs id="an class="comment"> * name="L13">2#incclude <deltade=s64" class="sref">s64 vaef">s64 vals="sref">s64 stats[ GFS2_LKS_SIRTe" c,ef">stats[de /lock_dlm.c#L57" id="L5 Localm.s2_lkstats *  13##include <ide=s64" class="sref">s64 ref/gfs2/lock_dlm.ref
ref="fs/gfs2/lock_dlm.ref="fs id=ock_dlm.c#L55" igla href">s64 stats[ GFS2_LKS_SIRTe" c,ef">stats[  144#include <ipreempt_ense vhref="+code=s" preempt_ense v53"> pan class="comment"> * gfs2_upda1e="L15">   15#include <  16
incoree.h"
      omment"> * gfs2_arg               arg->index];
 ass="sref">sample)
s64  * gfs2_ulef">s64 stats[ * gfs2_upda1eclude &quuot; f="fs/gfs2/lock_dlm.c#L4reihref="+code=s" "ei
stats[s64 vals="s
ef">s64  * gfs2_upda1ee "<  122
deltade=s64" clas" name="L58ef">s64  * gfs2_ulef">s64 iBUG_ONef">s64   53
s64 valrefbef">s64  * gfs2_sblflag_ef">s64 iDLM_SBF_DEMOTEDef">s64   14<#include <  215/**
123+code=index"ifass="sref">statss64 valrefbef">s64  * gfs2_sblflag_ef">s64 iDLM_SBF_VALNOTVALIDef">s64  1 27imem18s="sref">de 53
 1 lass="s1d="L27" c1lassvi>bSIRTe"0s="],ef">stats in mean/variance structure1 to u12="f85 56 1ame="L28"1>  28statss64 valrefbef">s64  * gfs2 hlluflag_ef">s64 index];
 *
iEUNLF_BALIDef">s64  *s64  * gfs2_ulef">s64  * running average srtt1. We 129/124a href="fs/ge=in_3/0">lm.c#L15" id="L15" class="line" n  1222" id="L32" class="line"1* run130lass="comment"> *
s64  *statss64 * gfs2_udlm.c#L341" id="L34" class="line" 1name=132/124a href="fs/ge=ingotoa sref">stats * gfs2_udname="L15"">  15#include < *
s64EAGAIUl117:);s=" /lock_dlm.c#L57" id=Tryaclassfailssbalm.s2_lkstats * *
 *
s64EDEADLBl117:);s=" /lock_dlm.c#L57" id=Dead2y2b *
1stats * gfs2_udme="L28"1mment"> * mean value, an1d the136lass="comment"> *
s64ETIMEDOUTl117:);s=" /lock_dlm.c#L57" id=C#L41l dospa duanameouLobalm.s2_lkstats *statss64 * gfs2_ude betwee1* Reference: TCP/IP Illu1strat138/124a href="fs/ge=ingotoa sref">stats * gfs2_udda1ee &qure in units of integer n1anose139lass="comment"> *0:);s=" /lock_dlm.c#L57" id=Successsbalm.s2_lkstats *  140/124a href="fs/ge=inbreak/gfs2/lock_dlm.c#L16" id="L16" cl_dlm.c#L1name="L43">  43 *  451stati142/124a href="fs/ge=index" class="sref">G_ONef">s64  pan class="comment"> * gfs2_ugfs2_upda1te_stats(struct 
s, unsigned index,
1stats[s64  * gfs2_uref="+cod1e=s64" class="sref">s64<1/a> <1 href="+code=ddex"ifass="sref">statss64 valrefbef">s64  * gfs2_sblflag_ef">s64 iDLM_ALTMODESIRTe" name="L2f">iDLM_ALTMODEOTED- 19" ref">index];
1stats[statss64 statss64statss64 * gfs2_urda1ee &que=index" class="sref">in1dex *dex"ifass="sref">statss64 statss64abs64(<1a hre150/124a href="fs/ge=in+code=index" class="srec#L4reihref="+code=s" "ei
statss64stats[G_ONef">s64  pan class="comment"> * gfs2_udlm.c#L561" id="L56" class="line" 1name=153lass="commenludepan>
index,
1> *
1 _bine" name="L2seat"> "L58e" clmment"> * g6"> INITIALALIDef">s646"> INITIALSIRTe" hre&"v2class="comment">vaef">s64 valflag_ef">s64  pan class="comment"> * gfs2_udef="+cod1has been set earlier.
15t;de6a href="fs/gfs2/lock_dl s64  * gfs2_ulef">s64 de#L4reihref="+code=s" "ei "> pan class="comment"> * gfs2_ud="sref">1an>
lm.c#L15" id="L15" class="line" t"> * The1 rtt (lock ass="comment"1> * T1e rtt (sref">stats159/124a href="dex"!(sref">stats[ _bine" name="L26"> t"> _bin53">  53
s646"> INITIALSIRTe" hre&"v2class="comment">vaef">s64 valflag_ef">s64 index])1 >160/124a href="fs/ge=inifass="sref">statss64 valrefbef">s64  * gfs2lkialsbdef">s64fs2lkia "ei
glock.h&q_dlm.c#L1option value="v2.6.23"
	1  >
 16t;d1"+code=index" class="sref">idref=ss* totels="s
ef">s64  * gfs2_ulef">s64 de#L4reihref="+code=s" "ei "> pan class="comment"> * gfs2_un>
  e_re1ply_6imes - Update locki1ng s616istics
  56 1n>
  : Th1e gl6ck to update1
      omment"> * gfs2_arg               arg,"L52ndex" class="sref"srm18s="sref">de 5ods-> *
1index];

16t;de6a href="s"> ass="sref">sample)
s64  * gfs2_ulef">s64 stats[ * gfs2_uk_dl6
6a href="fs/gfs2/loc1k_dl616#L697 56 1k_dl6 The1 rtt6(lock ass="comment"1> * 6168/124a href="switchx"ifass="sref">stf"srm18s="sref">de 5ods- 19" ref">index];
 *v2c" class="sref">iLF_B_EXSIRTe" name="L2f">iLF_B_EX="s
:m.c#L15" id="L15" class="line" n>
 7ex" 1clas7="sref">index])1 >7170/124a href="fs/ge=inifass="sref">stas64  * gfs2_ulef">s64 ds64 pan class="comment"> * gfs2_uclas7
  <1opti7n value="v2.6.23"
	1  >
7171/124a href="fs/ge=inbreak/gfs2/lock_dlm.c#L16" id="L16" cs="s7e_re1ply_7imes - Update locki1ng s7172lass="comment"> *v2c" class="sref">iLF_B_CWSIRTe" name="L2f">iLF_B_CW="s
:m.c#L15" id="L15" class="line" n>
  #L561" id7"L56" class="line" 1name71L56"73+code=infs/ge=inifass="sref">stas64  * gfs2_ulef">s64 ds64
  : Th1e gl7ck to update1
 *
1 *v2c" class="sref">iLF_B_PROTEDef">s64f">iLF_B_PR="s
:m.c#L15" id="L15" class="line" nquot;
   8stas64  * gfs2_ulef">s64 ds64#incllude " * 7178/124a href="default:gfs2/lock_dlm.c#L16" id="L16" cs_dl6lock1_dre7="+code=s" class="s1ref"7179/124a href="fs/ge=ingt=ass="sref">dprL52ss="lef">s64prL52s"L58e" clmment"> * gKERN_ERRs="lef">s64KERN_ERR/124a;s=" /lock_dlc#L9ng"L24" idunknowndlm.tref=e %dq" clasm.s2_l->=ass="sref">df"srm18s="sref">de 5ods- class="line" name="L20">  20>
 7ex" 1clas8="sref">index])1 >8180/124a href="fs/ge=inifass="sref">stf">G_ONef">s64  pan class="comment"> * gfs2_uupda8
  <1opti8n value="v2.6.23"
	1  >
81	  >8"+code=ins
  56 1clas8: Th1e gl8ck to update1
 * *
1 1* @g8"lin1e" n8ame="L8">   8de 5ake_f"srse v5dex"constef="fsL52ndex" class="srelm>vals="s
ef">s64lm>vals->  110index];
  111188/124a href="switchx"ifass="sref">stlm>vals="s
ef">s64lm>vals- 19" ref">index];
 *v2c" class="sres64index])1 >9190/124a href="fs/ge=in_3/0">*v2c" class="sref">iLF_B_NLALIDef">s64  * gfs2_ul_ds9
  <1opti9n value="v2.6.23"
	1  >
9191lass="comment"> *v2c" class="srepda8e_re1ply_9imes - Update locki1ng s9192/124a href="fs/ge=in_3/0">*v2c" class="sref">iLF_B_EXSIRTe" name="L2f">iLF_B_EX="s
->an class="comment"> * gfs2_ullas8#L561" id9"L56" class="line" 1name9193lass="comment"> *gt=ass="sref">ds64las8: Th1e gl9ck to update1
*v2c" class="sref">iLF_B_CWSIRTe" name="L2f">iLF_B_CW="s
->an class="comment"> * gfs2_ulpda8n cl1ass=9comment"> *
1 *v2c" class="sres64 @g8"lin1e" n9ame="L8">   8*v2c" class="sref">iLF_B_PROTEDef">s64f">iLF_B_PR="s
->an class="comment"> * gfs2_ul @g8clas1s="l9ine" name="L10">  1108"+code=ins
  111  49    prL52ss="lef">s64prL52s"L58e" clmment"> * gKERN_ERRs="lef">s64KERN_ERR/124a;s=" /lock_dlc#L9ng"L24" idunknowndLM> 9" id%dq" clasm.s2_l->=ass="sref">dlm>vals="s
ef">s64lm>vals-->an class="comment"> * gfs2_ulclude &quoot;G_ONef">s64  pan class="comment"> * gfs2_2/gf102*-1"> pan class="comment"> * gfs2_2/">workque0#include <
#include <" i10="L12">  015#include <2a hr02gt;de3ss="line" name="L46"> u" id="L34" 64u32/124adex" class="srefake_>valflag_ef">s64fake_>valfse v5s"> ass="sref">sample)
s64  * gfs2_ulef">s64 valflag_ef">s64 valfa hl,="L25" class="line" name="L25">"" id="L27e" n0ame="L16">  16
2a hr020i2core0.h"
index];
u32/124adex" class="srelkf="s
ef">s64lkfa hl->sref">statsiLKM_SBFBLBALIDef">s64f">iLKM_SBFBLB="s
->an class="comment"> * gfs2_2pda10>#in2lude0 "  49    u" id="L34" 64u32/124adex" class="srelkialsbdef">s64lkia "ei
statss64 valrefbef">s64  * gfs2lkialsbdef">s64fs2lkia "ei->an class="comment"> * gfs2_2pe between &qu0ot; 2pda10e &q2ot;<0a href="fs/gfs2/tra2e_gf0209/124a href="dex"dex" class="sre valflag_ef">s64 valfa hl+code&"v2c" class="sre">iFLAG_TRYOTEDef">s642stlkf="s
ef">s64lkfa hl-|statsiLKM_NOQUEUESIRTe" name="L2f">iLKM_NOQUEUE "ei->an class="comment"> * gfs2_2las1">  12##include < * gfs2_2l i10L14"2  144#include <valflag_ef">s64 valfa hl+code&"v2c" class="sre">iFLAG_TRY9.RYOTEDef">s64- 19" ref">index];
   15#include <2a hrr2156"73+code=infs/ge=inifass="sref">stlkf="s
ef">s64lkfa hl-|statsiLKM_NOQUEUESIRTe" name="L2f">iLKM_NOQUEUE "ei->an class="comment"> * gfs2_2l" id="L27e" nname="L16">  16
2a hrr21s64lkfa hl-|statsiLKM_NOQUEUEBASTALIDef">s64f">iLKM_NOQUEUEBAST "ei->an class="comment"> * gfs2_2l h10f">i2coree.h"


valflag_ef">s64 valfa hl+code&"v2c" class="sre">iFLAG_PRIORITYOTEDef">s64- 19" ref">index];
s64lkfa hl-|statsiLKM_NOORDEROTEDef">s64f">iLKM_NOORDER "ei->an class="comment"> * gfs2_2lda10e &q2ot;<dlkf="s
ef">s64lkfa hl-|statsiLKM_HEADQUESIRTe" name="L2f">iLKM_HEADQUE "ei->an class="comment"> * gfs2_2>  122
  12struct * * gfs2_2me="LL14"2  14<#include <valflag_ef">s64 valfa hl+code&"v2c" class="sre">iFLAG_ANYOTEDef">s64- 19" ref">index];
/*2statsiLF_B_PROTEDef">s64f">iLF_B_PR="s
-> 1 27dlkf="s
ef">s64lkfa hl-|statsiLKM_ALTCWSIRTe" name="L2f">iLKM_ALTCW "ei->an class="comment"> * gfs2_2> h10f">i2 mean/variance structure2 to u225/124a href="fs/ge=inel> *dex"ifass="sref">strets - Update timeret="s
 =statsiLF_B_CWSIRTe" name="L2f">iLF_B_CW="s
->dlkf="s
ef">s64lkfa hl-|statsiLKM_ALTPROTEDef">s64f">iLKM_ALTPR "ei->an class="comment"> * gfs2_2>da10>#in2class="comment"> *
df">G_ONef">s64  pan class="comment"> * gfs2_2mda1ee &q2> * running average srtt2. We 229/124a href="s

  1233" id="L33" class="line2" nam231/124a href="dex"ifass="sref">stlkialsbdef">s64lkia "ei
!= 0- 19" ref">index];
dlkf="s
ef">s64lkfa hl-|statsiLKM_CONVES_SIRTe" name="L2f">iLKM_CONVES_ "ei->an class="comment"> * gfs2_2dname="L12"">  15#include <2a/s1p2356"73+code=infs/ge=index"dex" class="sre>[ _bine" name="L26"> t"> _bin53">  53
 GLF_BLOCKINGvaef">s64 valflag_ef">s64  *
dlkf="s
ef">s64lkfa hl-|statsiLKM_QUECV_SIRTe" name="L2f">iLKM_QUECV_ "ei->an class="comment"> * gfs2_2d h10f">i2ing the smoothed
2 * mean value, an2d the23id1"L
ngt=ass="sref">dlkf="s
ef">s64lkfa hl->an class="comment"> * gfs2_2de betwee2* Reference: TCP/IP Illu2strat238/124s
  240/124ss="line" n         * gc" id="L48" clascKING  49    u">is-valus="s
ef">s64valus="s
->  43index];
  452stati242/124a href="L58le 53">  53
s64valus="s
- 19" ref">index];
 * gc" id="L48" clascKING--
stha8_asc" id="L48" clasha8_ascKING id=ock_dlm.c#L5valus="s
ef">s64valus="s
+code&"0x0f]->an class="comment"> * gfs2_2class="sr2ef">s, unsigned s64valus="s
+cgtpcgtp= 4->an class="comment"> * gfs2_2c h10f">i2fs/gfs2/lock_dlm.c#L46" 2id="L24="f75+code=ins
s64<2/a> <2 href=s
 2s/gfs2/lo2ck_dlm.c#L49" id="L49" c2lass=24 rt98ss="linL52ndex" class="sre    da hss="lef">s64    da hsse v5s"> ass="sref">sample)
s64  * gfs2_ulef">s64 vals="s
ef">s64ret">valsa hl,="L25" class="line" name="L25">rda1ee &q2e=index" class="sref">in2dexvalflag_ef">s64 hllflag_ ="L25" class="line" name="L25">e=abs64" 2class="sref">abs64(<2a hre250/12419" ref">index];
stats[ ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
vaef">s64 valsbdef">s64  hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> * gfs2_2"class="l2ply_times - Update locki2ng st252/124a href="L52ndex" class="srerets - Update timeret="s
->an class="comment"> * gfs2_2"fs2_upda2" id="L56" class="line" 2name=253lass="commenfs/gfs2/lock_dlu" id="L34" 64u32/124adex" class="srelkf="s
ef">s64lkfa hl->an class="comment"> * gfs2_2"lass="sr2e glock to update2
s64ntr * gfs2_2" h10f">i2ass="comment"> *
2 2def="+cod2has been set earlier.
25t;de6a href="fs/gfs2/lock_dlrets - Update timeret="s
 =ndex" class="srefake_f"srm18s="sref">de 5ake_f"srse v5dex" class="sreret">vals="s
ef">s64ret">valsa hl3"> pan class="comment"> * gfs2_2d="sref">2an>
  49    lkf="s
ef">s64lkfa hl->sref">statsvalflag_ef">s64fake_>valfse v5="comment"> * gfs2_ulef">s64 s64 hllflag_->=ass="sref">de#ts - Update timeret="s
-"> pan class="comment"> * gfs2_2d/gfs2/lo2 rtt (lock ass="comment"2> * T25t;de name="L49">  49      * gfs2_ulef">s64  GFS2_DCOUN_SIRTe" name="L26"> GFS2_DCOUN_="s
-"> pan class="comment"> * gfs2_2dda1ee &q2_dref="+code=s" class="s2ref">25t;de * gfs2_ulef">s64  GFS2_DCOUN_SIRTe" name="L26"> GFS2_DCOUN_="s
-"> pan class="comment"> * gfs2_2e=index" 2class="sref">index])2 >260/124a href="dex"ifass="sref">statss64 valrefbef">s64  * gfs2lkialsbdef">s64fs2lkia "ei- 19" ref">index];

 261/124a href="fs/ge=index" class="sre  e="L58ef">s64  e="L58eifass="sref">statss64  pan class="comment"> * gfs2_2eclass="l2ply_6imes - Update locki2ng s6262/124a href="}nel> *19" ref">index];
stf">imem18s="sref">de 53
s64ntrd6  pan class="comment"> * gfs2_2elass="sr2e gl6ck to update2
s64ntr pan class="comment"> * gfs2_2e h10f">i2ass=6comment"> *
2s64ntr p,ef">stats[s64 s64 
->.mment"> * gfs2_rn_a href">s64  pan class="comment"> * gfs2_2eef="+cod2hhref="fs/gfs2/lock_dlm.2#an>
26 hr7="+code=delta" clifass="sref">stas64ntr p,ef">stats[s64 s64 
->.mment"> * gfs2numbeuhptre" name="L2fs2numbeua hr-"> pan class="comment"> * gfs2_2e="sref">2an>
6a href="fs/gfs2/loc2k_dl6267/124a href="fs/ge=index" class="sre    ulef">s64 value="v2ef">s64 stats[s64  pan class="comment"> * gfs2_2k_dl6 The2 rtt6(lock ass="comment"2> * 6268/124a href="s
 *
 7ex" 2clas7="sref">index])2 >727t; 9);
  38
727  >9  v2.6.18.32.43kkkkkkkkdalm.s2_lkstats *n>
  #L562" id7"L56" class="line" 2name72L56"73+code=in_3/0">ngt=ass="sref">d   da hss="lef">s64   da hsse v5="comment"> * glf="fs/gfs2/lock_dm.ref
de#ts - Update timeret="s
vaef">s64 valrefbef">s64 dlkf="s
ef">s64lkfa hl->=ass="sref">dntrs64ntrnlass="sr2e gl7ck to update2
stats p,ef">stats[s64 stats pan class="comment"> * gfs2_2s_ds6n cl2ass=7comment"> *
2   8
s64    dputda hsse v5s"> ass="sref">sample)
s64  * gfs2_ulef">s64 s_dl6 The2 rtt7(lock ass="comment"2> * 7278/12419" ref">index];
 ass="sref">sample)
>valsbdef">s64 a>)
>vas="lss="comment"> * gsde="v2ef">s64sde="v2 id=sref">statsvaef">s64 valsbdef">s64  pan class="comment"> * gfs2_2>>
 7ex" 2clas8="sref">index])2 >828t;de&+code=index"ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sde="v2a> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> * gfs2_2upda8
  <2opti8n value="v2.6.23"
	2  >
82	  >8"+code=inL52ndex" class="sreerrouhptre" name="L2erroua hl->an class="comment"> * gfs2_2u="s7e_re2ply_8imes - Update locki2ng s8285" id="L25" class="line" name="L25">clas8#L562" id8"L56" class="line" 2name828>
123+code=index"ifass="sref">statss64 valrefbef">s64  * gfs2lkialsbdef">s64fs2lkia "ei
<= 0- 19" ref">index];
s64  * gfs2_ulef">s64  *
2lm.c#L15" id="L15" class="line"2* @g8"lin2e" n8ame="L8">   8  120 2dlm.8clas2s="liine" name="L11">  12128t;de name="L49">  49    cleart"> _bine" name="L2cleart"> "L58e" clmment"> * ghrefGLF_BLOCKINGe" name="L26"> GLF_BLOCKINGvaef">s64 valflag_ef">s64  * gfs2_ulef">s64  GFS2_DCOUN_SIRTe" name="L26"> GFS2_DCOUN_="s
-"> pan class="comment"> * gfs2_2>index])2 >9292312de=delta" class="sref">deltadsbm.ref_inc" id="L48" clas  * gfs2_ulef">s64  GFS2_DCOUN_SIRTe" name="L26"> GFS2_DCOUN_="s
-"> pan class="comment"> * gfs2_2l_ds9
  <2opti9n value="v2.6.23"
	2  >
929t;d1"+code=index" class="sref">ide=s64" clas" qu"> e="L58ef">s64  e="L58eifass="sref">statss64  pan class="comment"> * gfs2_2>pda8e_re2ply_9imes - Update locki2ng s9292/124a href="dex" class="sreerrouhptre" name="L2erroua hl id=sref">statss64   duna hsse v5="comment"> * glf="fs/gfs2/lock_dm.ref
datss64 valrefbef">s64  * gfs2lkialsbdef">s64fs2lkia "ei->=ass="sref">df">iLKM_SBFBLBALIDef">s64f">iLKM_SBFBLB="s
,="L25" class="line" name="L25">llas8#L562" id9"L56" class="line" 2name92956"73+code=infs/ge=inf="fs/ge=index" class="sreNULLALIDef">s64NULLlag_->=ass="sref">datss64  pan class="comment"> * gfs2_2>las8: Th2e gl9ck to update2
sterrouhptre" name="L2erroua hl- 19" ref">index];
 *
2s64prL52s"L58e" clmment"> * gKERN_ERRs="lef">s64KERN_ERR/124a;s=" /lock_dlc#L9ng"L24" idg   duna hsd%x,%llx err=%d\nq" clasm.s2_l-9" ref">index];
   8s64 s64 
->.mment"> * gfs2_rn_a href">s64 index];
  120stats[s64 s64 
->.mment"> * gfs2numbeuhptre" name="L2fs2numbeua hr->=ass="sref">derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_2>lm.8clas2s="l9ine" name="L11">  121lm.c#L15" id="L15" class="line"2lclude &q2oot; * gfs2_3" i10L14"3  140#include <s64    dc#L41lse v5s"> ass="sref">sample)
s64  * gfs2_ulef">s64   015#include <3a hr03gt;de319" ref">index];
  16
3a hr030sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
vaef">s64 valsbdef">s64  hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> * gfs2_3a h10f">i3core0.h"
s64   duna hsse v5="comment"> * glf="fs/gfs2/lock_dm.ref
datss64 valrefbef">s64  * gfs2lkialsbdef">s64fs2lkia "ei->=ass="sref">df">iLKM_CONCELALIDef">s64 dNULLALIDef">s64NULLlag_->=ass="sref">datss64  pan class="comment"> * gfs2_3pda10;

 3pe betwee3 &qu0ot; * *2 *  13##include <#include <*  2.a   dcontrold bclasva   -kernelaclas *   15#include <3a hrr3156"73 v2.6.18.32.43*  3.a   dcontrold wi2f *  16
3a hrr31f="fs/gfs2/lock_dlm.c#L57" >*  4.a   dcontrold starts and finishe.aits ownduser levela_3coverylm.s2_lkstats *i3coree.h"
*  5.a   dcontrold starts    -kernela   d_3coverddto41o kernela_3coverylm.s2_lkstats **  6.a   d_3coverddnotifie.aa hrnofsfaileddnode.a(_3cover_slot)lm.s2_lkstats *#in3ludee "*  7.a   d_3coverdddoe.aits owndclassodcoverylm.s2_lkstats **  8.a   d_3coverddunbclasva   -kernelaclas * *  122 hs lvbawi2f new gener="lon and j n bitslm.s2_lkstats *as1">  13struct *9  v2.6.18.32.43* 11.aa hrdcontrol enqueu+s jo0">als for " * i10L14"3  14<#include <* 12. "als ofsfaileddnode.lm.s2_lkstats * i10="L13spa1n class="comment">/*3* 13. " *" id="L23" c1lass="line" name="L23"> 1 32f="fs/gfs2/lock_dlm.c#L57" >* 14.aa hrdcontrol ref="+s control"> hs lvbaj n bits for _3covereddjo0">alslm.s2_lkstats * h10f">i3 mean/variance structure3 to u32="f75/gfs2/lock_dlm.c#L57" >* 15.aa hrdcontrol rnbclasvanormalaclasals are _3coveredlm.s2_lkstats *da10;
  28*lm.s2_lkstats *da10>#in3class="comment"> *
* -sfailures duL9ngsodcoverylm.s2_lkstats **lm.s2_lkstats * * running average srtt3. We 329/124 v2.6.18.32.43*4_3cover_prep() may set GLF_BiLF_BS (step 3) aga * *  1333" id="L33" class="line3" nam33  >9  v2.6.18.32.43* _3cover9ngsfor a prior failure. aa hrdcontrol needs a way to41eteasa .s2_lkstats ** 2f *  15#include <3a/s1p3356"73 v2.6.18.32.43* rete_3cover_bclas and recover_start valusscalss="line" name="L38">  38 *
*alss="line" name="L38">  38i3ing the smoothed
3* _3cover_ one() provide.aa new clasv2.ce gener="lon numbeu each "> e isa .s2_lkstats * * mean value, an3d the33id1"L/gfs2/lock_dlm.c#L57" >*   38#in3#L39" id="L39" class="li3ne" n33il117/gfs2/lock_dlm.c#L57" >* Whesa_3cover_prep()   38* _3cover_bclas = recover_startc  So,"L58le _3cover_bclas   38*4_3cover_start, GLF_BiLF_BS should rema *  34t; 9);
  439  v2.6.18.32.43*lm.s2_lkstats *  453stati34in112 v2.6.18.32.43* - moreaspecificaa hrnsteps  **lm.s2_lkstats *s, unsigned *  3. _3cover_prep sets GLF_BiLF_BS and sets _3cover_bclas = recover_startlm.s2_lkstats *i3fs/gfs2/lock_dlm.c#L46" 3id="L34="f75/gfs2/lock_dlm.c#L57" >*  6. _3cover_slot _3cords anysfaileddj ns (maybednone)lm.s2_lkstats *s64<3/a> <34id1"L/gfs2/lock_dlm.c#L57" >*  9. _3cover_ one sets _3cover_start = new gener="lon numbeua .s2_lkstats *#in3stats[* 10.aa hrdcontrol sets control"> hs lvba= new gen + bits for faileddj nsa .s2_lkstats ** 12. "al _3cover9es for faileddj nsbetL57ified abovelm.s2_lkstats *in3dex*414.aa hrdcontrol clears control"> hs lvbabits for _3covereddj nsa .s2_lkstats *abs64(<3a hre35t; 9);
stats[9  v2.6.18.32.43*     aga *dexrecover_start >p _3cover_bclaslm.s2_lkstats **     retsaclear GLF_BiLF_BScalss="line" name="L38">  38*lm.s2_lkstats ** - parallela_3coverynsteps acrossaall node.lm.s2_lkstats *i3ass="comment"> *
3*lm.s2_lkstats ** All node. attempt to4ref="+ retecontrol"> hs lvbawi2f retenew gener="lonlm.s2_lkstats *#in3an>
* numbeu and j n bits, but only retefirst to4get retecontrol"> hs EXawilllm.s2_lkstats * * T35 rt88/gfs2/lock_dlm.c#L57" >*  odso; othersawill see reatait2#39;saalreadya onea(lvbaalreadyaconta *359/124 v2.6.18.32.43*4gener="lon numbeu.)lm.s2_lkstats *index])3 >36t; 9);

 36  >9  v2.6.18.32.43* . All node. get retes.23 _3cover_prep/_3cover_slot/_3cover_ one callbahsslm.s2_lkstats * hs lvbagen + bits for retenew genlm.s2_lkstats ** . One nodesgets control"> hs first and wri"+s retelvb, othersasee it2#39;sa onelm.s2_lkstats ** . All node. attempt to4recover j nsbfor whicf retyasee control"> hs bits /a>
<.s2_lkstats *i3ass=6comment"> *
3* . One nodessucceeds for a j n, and reataone clears retej n bit  *
36id1"L/gfs2/lock_dlm.c#L57" >* . All node. will evL57uallyasee all lvbabits clear and rnbclas clasv
<.s2_lkstats *#in3an>
6a href="fs/gfs2/loc3k_dl636il117/gfs2/lock_dlm.c#L57" >*
<.s2_lkstats * * 636 rt88/gfs2/lock_dlm.c#L57" >* - 
<.s2_lkstats **4  and missal _3covery?
<.s2_lkstats *
 7ex" 3clas7="sref">index])3 >737t; 9);

737  >9  v2.6.18.32.43* 1.aj n fails
<.s2_lkstats ** 3.aj n _3covereddfor step 1
<.s2_lkstats ** 4.aj n takesaaga * *
3* 5.aj n fails (for step 4)lm.s2_lkstats *   8* 6. lvbabit set for step 5 (will alreadyabe /a>)lm.s2_lkstats *#in3llude "* 7. lvbabit cleareddfor step 3lm.s2_lkstats * * 737 rt88/gfs2/lock_dlm.c#L57" >*lm.s2_lkstats **4Tf *>
 7ex" 3clas8="sref">index])3 >838t; 9);

838  >9  v2.6.18.32.43* progresseddfar enough to4rnbclas clasv and access retefs. aTfelm.s2_lkstats * ** for retel="+st clasv2.ce gener="lon beforeaever4rnbclasispaclasv
<.s2_lkstats *3
* and re/0">isp. aTfeemount  * *
3* step 1   38   8*lm.s2_lkstats *  130* -sspecial cas+ ofsfirst mounter:sfirst nodesto4mount retefslm.s2_lkstats *  13138 rt88/gfs2/lock_dlm.c#L57" >*lm.s2_lkstats **4Tfesfirst nodesto4mount aaa hrnfs needs to4cheas all retejo0">alslm.s2_lkstats *index])3 >939t; 9);

939  >9  v2.6.18.32.43* to4mount retefsc  (Othersamay beg ** or accessisparetefsc) aTf *3
*alss="line" name="L38">  38 *
3* 1.aTfeemountet"> hs tell.aa nodesit2#39;saretefirst to4mount retefscalss="line" name="L38">  38   8* Each nodesholds retemountet"> hs   38  130* Each nodestr9es to4ace=ire retemountet"> hs   38  131* Ifaa nodesis grantet retemountet"> hs EXait means there are noalss="line" name="L38">  38*4other mountetdnode.a(noaPR"clasvaexist), and it   38 hs   38  38*alss="line" name="L38">  38* 2.aTfeecontrol"> hs bclasvaothersa  384a hr040f="fs/gfs2/lock_dlm.c#L57" >* mounter alscalss="line" name="L38">  38 *
4="fs040="f75/gfs2/lock_dlm.c#L57" >* Aamount hs   38   8*  hs   38  14fs2/040il117/gfs2/lock_dlm.c#L57" >* retefirst mount _3covery,abclasispamounts fromaother nodes, retsa emoteslm.s2_lkstats ** control"> hs to NLawetsait2#39;sa one (others_may"mount/first_ one),lm.s2_lkstats *  382 *  14##include <#include <* control"> hs EX/NOQUEUEssuccesslm.s2_lkstats *   15#include <4a hrr4156"73 v2.6.18.32.43* mountet"> hs EX/NOQUEUEssuccessa(noaother PR, so noaother mounters)lm.s2_lkstats *  16
4a hrr41f="fs/gfs2/lock_dlm.c#L57" >* set first=1
<.s2_lkstats *i4coree.h"
* doefirst mounter odcoverylm.s2_lkstats ** mountet"> hs EX->pPR ".s2_lkstats ** control"> hs EX->pNL, wri"+ lvbagener="lonlm.s2_lkstats **lm.s2_lkstats *  122 hs EX/NOQUEUEssuccess (ifsfail -EAGAIN, re/ry)lm.s2_lkstats *as1">  14struct *9  v2.6.18.32.43* mountet"> hs EX/NOQUEUEsfail -EAGAIN (expectet duesto4other mounters PR)lm.s2_lkstats *2f102#include <* mountet"> hs PR/NOQUEUEssuccesslm.s2_lkstats * i10="L14spa1n class="comment">/*4* read lvbagener="lonlm.s2_lkstats *" id="L24" c1lass="line" name="L24"> 1 42f="fs/gfs2/lock_dlm.c#L57" >* control"> hs EX->pNLlm.s2_lkstats * h10f">i4 mean/variance structure4 to u42="f75/gfs2/lock_dlm.c#L57" >* set first=0lm.s2_lkstats *da10;
  28*lm.s2_lkstats *da10>#in4class="comment"> *
* -smount duL9ngsodcoverylm.s2_lkstats **lm.s2_lkstats * * running average srtt4. We 429/124 v2.6.18.32.43*4Ifaa nodesmounts L58le othersaare  o9ngs_3covery (not first mounter),lm.s2_lkstats *  38  1433" id="L33" class="line4" nam43  >9  v2.6.18.32.43* hav  38*alss="line" name="L38">  38  15#include <4a/s1p4356"73 v2.6.18.32.43* Itamuss wait for all _3cover9es preced * *
* beforeait rnbclasvaclasv. aItado+s 2f *i4ing the smoothed
4* steps above until retelvbagener="lon numbeu  * mean value, an4d the43id1"L/gfs2/lock_dlm.c#L57" >* numbeu (fromainitial _3cover_ one) and all lvbabits are clearcalss="line" name="L38">  38#in4#L39" id="L39" class="li4ne" n43il117/gfs2/lock_dlm.c#L57" >*alss="line" name="L38">  38* - control"> hs lvbaformatalss="line" name="L38">  38*alss="line" name="L38">  38  44t; 9);
  38  14name="L43">  439  v2.6.18.32.43* froma_3cover_ one callbahs. aIndica"+s retej n bitmap has beesaref="+dlm.s2_lkstats *  454stati44in112 v2.6.18.32.43* to4reflect all slot failures through teatagener="loncalss="line" name="L38">  38* 4 bytes unusetcalss="line" name="L38">  38s, unsigned * 6   38i4fs/gfs2/lock_dlm.c#L46" 4id="L44="f75/gfs2/lock_dlm.c#L57" >* teataj n Nsneeds _3coverycalss="line" name="L38">  38s64<4/a> <44id1"L/gfs2/lock_dlm.c#L57" >*alm.s2_lkstats *#in4stats[ 4re betwee4ck_dlm.c#L49" id="L49" c4lass=44 rt88#define>=ass="sref">dJID_BITMAP_OFFSE_SIRTe" name="L2JID_BITMAP_OFFSE_rt88 8n/gfs2/lock_dlm.c#L57" id 4 byteagener="lon numbeu + 4 byteaunuset>*alm.s2_lkstats *in4dex *abs64(<4a hre45t; 9)ss="line" n        vb_getalsbdef">s64control">vb_geta; 9)5s"> ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref->=ass="sref">duint32_s="s
ef">s64uint32_ss="lss="comment"> * glvb_gen="fs/gfs2/lock_dvb_gen.ref-kstats *  14ts" class="sref">stats[ * glvb_bits="fs/gfs2/lock_dvb_bitslmhl ="L25" class="line" name="L25"4" i10L14"4ply_times - Update locki4ng st45in11219" ref">index];
duint32_s="s
ef">s64uint32_ss="lsgt=ass="sref">dgen="fs/gfs2/lock_gen.ref"> pan class="comment"> * gfs2_4"lass="sr4e glock to update4
dmemcpy="fs/gfs2/lock_memcpy; 9)5="comment"> * glvb_bits="fs/gfs2/lock_dvb_bitslmhl->=ass="sref">dlf="fs/gfs2/lock_dm.ref
vb="fs/gfs2/lock_dmmcontrol">vblmhl->=ass="sref">d6  pan class="comment"> * gfs2_4" h10f">i4ass="comment"> *
4dlvb_bits="fs/gfs2/lock_dvb_bitslmhl-&sizeof5="comment"> * guint32_s="s
ef">s64uint32_ss="l) "> pan class="comment"> * gfs2_4"da10;

45 hr7="+code=ds="comment"> * glvb_gen="fs/gfs2/lock_dvb_gen.ref id=sref">stats * gnen="fs/gfs2/lock_gen.ref "> pan class="comment"> * gfs2_4"da10>#in4an>
 * T45 rt88
459/124ss="line" n        vb_wri"+lsbdef">s64control">vb_wri"+; 9)5s"> ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref->=ass="sref">duint32_s="s
ef">s64uint32_ss="ls="comment"> * glvb_gen="fs/gfs2/lock_dvb_gen.ref-kstats *index])4 >460/124a href="fs/ge=innnnnnnnnnnnnnncharss="comment"> * glvb_bits="fs/gfs2/lock_dvb_bitslmhl ="L25" class="line" name="L25"4q_dlm.c#L4option value="v2.6.23"
	4  >
 46  >9 19" ref">index];
s64uint32_ss="lsgt=ass="sref">dgen="fs/gfs2/lock_gen.ref"> pan class="comment"> * gfs2_4efs2_upda4" id6"L56" class="line" 4name64656"73+code=ingt=ass="sref">dmemcpy="fs/gfs2/lock_memcpy; 9)5="comment"> * glf="fs/gfs2/lock_dm.ref
vb="fs/gfs2/lock_dmmcontrol">vblmhl->=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl->=ass="sref">d6  pan class="comment"> * gfs2_4elass="sr4e gl6ck to update4
dgen="fs/gfs2/lock_gen.ref id=sref">statss64cpu_so_de32; 9)5="comment"> * glvb_gen="fs/gfs2/lock_dvb_gen.ref "> pan class="comment"> * gfs2_4e h10f">i4ass=6comment"> *
4 * glf="fs/gfs2/lock_dm.ref
vb="fs/gfs2/lock_dmmcontrol">vblmhl-&" cl&"v2class="commenen="fs/gfs2/lock_gen.ref-&sizeof5="comment"> * guint32_s="s
ef">s64uint32_ss="l) "> pan class="comment"> * gfs2_4eef="+cod4hhref="fs/gfs2/lock_dlm.4#an>
46href=s
 4e/gfs2/lo4 rtt6(lock ass="comment"4> * 646 rt88ss="linL52ndex" class="sreall_jid_bits_clear="s
ef">s64all_jid_bits_clear; 9)5charss="comment"> * glvb="fs/gfs2/lock_dvblmhl ="L25" class="line" name="L25"4qda10e &q4_dre6="+code=s" class="s4ref"6469/12419" ref">index];
index])4 >7470/124a href="L52ndex" class="srei="fs/gfs2/lock_i.ref"> pan class="comment"> * gfs2_4clas7
  <4opti7n value="v2.6.23"
	4  >
7471/124a href="for 5="comment"> * gi="fs/gfs2/lock_i.ref id=sref">statsindex];
stlvb="fs/gfs2/lock_dvblmhl[dex" class="srei="fs/gfs2/lock_i.ref] ="L25" class="line" name="L25"4cfs2_upda4" id7"L56" class="line" 4name74756"73+code=infs/ge=inf="fs/gere/0"> 0"> pan class="comment"> * gfs2_4class="sr4e gl7ck to update4

 *
4 1"> pan class="comment"> * gfs2_4cef="+cod4e" n7ame="L8">   8
 4s/gfs2/lo4 rtt7(lock ass="comment"4> * 747 rt88ss="line" n         * garg="s
ef">s64arglmhl ="L25" class="line" name="L25"4s_dl6lock4_dre7="+code=s" class="s4ref"7479/12419" ref">index];
index])4 >8480/124a href="dex"ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
 * garg="s
ef">s64arglmhl"> pan class="comment"> * gfs2_4upda8
  <4opti8n value="v2.6.23"
	4  >
848t;d1"+code=index" class="srecompletelsbdef">s64completelm9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_4uclass="l4ply_8imes - Update locki4ng s848in112s

4
s64sync_una hs; 9)5s"> ass="sref">samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref-&s"> ass="sref">samples64dlmdavals="lss="comment"> * glvalrefbef">s64avals="l,ncharss="comment"> * gs64 *
4index];
   8sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> * gfs2_4* @g8clas4s="l8ine" name="L10">  140 * gfs2_4*/gfs2/lo4s="liine" name="L11">  14148 rt88
statss64   duna hsse v5="comment"> * glf="fs/gfs2/lock_dm.ref
dlvalrefbef">s64avals="la>s64fs2lkia "ei-&0->=ass="sref">dlvalrefbef">s64avals="l->=ass="sref">dlf="fs/gfs2/lock_dm.ref "> pan class="comment"> * gfs2_4>index])4 >9490/124a href="Lex"ifass="sref">sterrouhptre" name="L2erroua hl- 19" ref">index];

9491/124a href="fs/ge=inifass="sref">stfs_errhptre" name="L2fs_errse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id%s lkiad%x errou %d\nq" clasm.s2_l-9" ref">index];
sts64dlvalrefbef">s64avals="la>s64fs2lkia "ei-&ifass="sref">sterrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_4>fs2_upda4" id9"L56" class="line" 4name94956"73+code=infs/ge=inre/0"> dex" class="sreerrouhptre" name="L2erroua hl->an class="comment"> * gfs2_4llas8: Th4e gl9ck to update4

 *
4   8 pan class="comment"> * gfs2_4l @g8clas4s="l9ine" name="L10">  140 4l/gfs2/lo4s="l9ine" name="L11">  141stlvalrefbef">s64avals="la>index];
stfs_errhptre" name="L2fs_errse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id%s lkiad%x ss="uf %d\nq" clasm.s2_l-9" ref">index];
sts64dlvalrefbef">s64avals="la>s64fs2lkia "ei-&ifass="sref">stlvalrefbef">s64avals="la> pan class="comment"> * gfs2_5/1f102 -1"> pan class="comment"> * gfs2_5/2f102
 0"> pan class="comment"> * gfs2_5/4f1025a hr050f="fss
 *
5="fs050="f75
   8s64sync_a hs; 9)5s"> ass="sref">samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref-&L52ndex" class="sref"sr="fs/gfs2/lock_m"sr.ref->=ass="sref">duint32_s="s
ef">s64uint32_ss="ls="comment"> * gflagf="fs/gfs2/lock_flagf.ref-kstats *  15fs2/0507/124a href="fs/ge=innnnnnunsigned&L52ndex" class="srenu"="fs/gfs2/lock_nu".ref-&s"> ass="sref">samples64dlmdavals="lss="comment"> * glvalrefbef">s64avals="l,ncharss="comment"> * gs64index];
sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> * gfs2_5L13">2s64ntr * gfs2_5L1f102##include <dss="uf="fs/gfs2/lock_ns="uf/124->an class="comment"> * gfs2_5L2f102#include < * gfs2_5L3f102   15#include <5a hrr5156"73+code=ingt=ass="sref">dmemses="s
ef">s64memsesse v5="comment"> * gstrs64ntrd6  pan class="comment"> * gfs2_5l" id="L25e" nname="L16">  16
5a hrr5146"73+code=ingt=ass="sref">dsnpL9ntfrefbef">s64nnpL9ntfse v5="comment"> * gstrs64ntrd6 ddnu"="fs/gfs2/lock_nu".ref "> pan class="comment"> * gfs2_5l5f102"

statss64   da hsse v5="comment"> * glf="fs/gfs2/lock_dm.ref
df"sr="fs/gfs2/lock_m"sr.ref->=ass="sref">dlvalrefbef">s64avals="l->=ass="sref">dflagf="fs/gfs2/lock_flagf.ref-kstats *dstrs64ntrd6 dsync_wait_cb="fs/gfs2/lock_sync_wait_cb; 9)->=ass="sref">dlf="fs/gfs2/lock_dm.ref->=ass="sref">dNULL="fs/gfs2/lock_NULL.ref "> pan class="comment"> * gfs2_5l9 betwee5ot;<sterrouhptre" name="L2erroua hl- 19" ref">index];
stfs_errhptre" name="L2fs_errse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id%s lkiad%x flagfd%x f"sr %d errou %d\nq" clasm.s2_l-9" ref">index];
  15struct *sts64dlvalrefbef">s64avals="la>s64fs2lkia "ei-&ifass="sref">stflagf="fs/gfs2/lock_flagf.ref->=ass="sref">df"sr="fs/gfs2/lock_m"sr.ref->=ass="sref">derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_5>2f102#include < dex" class="sreerrouhptre" name="L2erroua hl->an class="comment"> * gfs2_5> i10="L15spa1n class="comment">/*5
 1 52f="fs
 pan class="comment"> * gfs2_5>da10;
  28 pan class="comment"> * gfs2_5>7f102 *
statss64avals="la> pan class="comment"> * gfs2_5>e betwee5n the current rtt sample5 and 52 rt88
stss="uf="fs/gfs2/lock_ns="uf/124 " cl&" cl&ndex" class="sress="uf="fs/gfs2/lock_ns="uf/124 != -an class="commeEAGAIN="fs/gfs2/lock_EAGAINa hl- 19" ref">index];
stfs_errhptre" name="L2fs_errse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id%s lkiad%x flagfd%x f"sr %d ss="uf %d\nq" clasm.s2_l-9" ref">index];
  1533" id="L33" class="line5" nam531/124a href="fs/ge=innnnnnnnifass="sref">sts64dlvalrefbef">s64avals="la>s64fs2lkia "ei-&ifass="sref">stflagf="fs/gfs2/lock_flagf.ref->=ass="sref">df"sr="fs/gfs2/lock_m"sr.ref-ndex" class="sress="uf="fs/gfs2/lock_ns="uf/124 "> pan class="comment"> * gfs2_5n i10L14"5" id="L34" class="line" 5name=5326"73+code=ins
  15#include <5a/s1p5356"73
 *
 dex" class="sress="uf="fs/gfs2/lock_ns="uf/124->an class="comment"> * gfs2_5k h10f">i5ing the smoothed
5 * mean value, an5d the53id1"L> pan class="comment"> * gfs2_5nda10>#in5#L39" id="L39" class="li5ne" n53il117ss="linL52ndex" class="sremountet"una hss="lef">s64mountet"una hs; 9)5s"> ass="sref">samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref ="L25" class="line" name="L25"5ne betwee5* Reference: TCP/IP Illu5strat53 rt8819" ref">index];
sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> *ref="f52" id="L452" class="line" name="L452">  5406"73+code=inre/0"> dex" class="sresync_una hss="lef">s64sync_una hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
valrefbef">s64asmmountet">val.ref-&/gfs2/lock_dlc#L9ng"L24" idmountet"> hsq" clasm.s2_l "> pan class="comment"> * gfs2_52as1">  15name="L43">  439 s
  455stati54in112>an class="comment"> * gfs2_5l i10="L15te_stats(struct s64mountet"a hs; 9)5s"> ass="sref">samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref-&L52ndex" class="sref"sr="fs/gfs2/lock_m"sr.ref->=ass="sref">duint32_s="s
ef">s64uint32_ss="ls="comment"> * gflagf="fs/gfs2/lock_flagf.ref ="L25" class="line" name="L25"5l"s1d="L25ef">s, unsigned index];
i5fs/gfs2/lock_dlm.c#L46" 5id="L545/124a href="dex"ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> *ref="f5lda10;
s64<5/a> <5466"73+code=inre/0"> dex" class="sresync_a hss="lef">s64sync_a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sref"sr="fs/gfs2/lock_m"sr.ref->=ass="sref">dflagf="fs/gfs2/lock_flagf.ref->=ass="sref">dGFS2_MOUNTED_LF_B="fs/gfs2/lock_GFS2_MOUNTED_LF_B.ref-kstats *#in5stats[valrefbef">s64asmmountet">val.ref-&/gfs2/lock_dlc#L9ng"L24" idmountet"> hsq" clasm.s2_l "> pan class="comment"> * gfs2_52e betwee5ck_dlm.c#L49" id="L49" c5lass=54 rt88s
in5dex *abs64(<5a hre55t; 9)ss="linL52ndex" class="srecontrol"una hss="lef">s64control"una hs; 9)5s"> ass="sref">samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref ="L25" class="line" name="L25"5eas1">  15ts" class="sref">stats[9 19" ref">index];
sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> *ref="f5" i10="L15" id="L56" class="line" 5name=5556"73+code=inre/0"> dex" class="sresync_una hss="lef">s64sync_una hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
valrefbef">s64asmcontrol">val.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrol"> hsq" clasm.s2_l "> pan class="comment"> * gfs2_5"lass="sr5e glock to update5
i5ass="comment"> *
5
55id1"Lss="linL52ndex" class="srecontrol"> hss="lef">s64control"a hs; 9)5s"> ass="sref">samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref-&L52ndex" class="sref"sr="fs/gfs2/lock_m"sr.ref->=ass="sref">duint32_s="s
ef">s64uint32_ss="ls="comment"> * gflagf="fs/gfs2/lock_flagf.ref ="L2an>
#in5an>
index];
 * T558/124a href="dex"ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> *ref="f5"da10e &q5_dref="+code=s" class="s5ref">5596"73+code=inre/0"> dex" class="sresync_a hss="lef">s64sync_a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sref"sr="fs/gfs2/lock_m"sr.ref->=ass="sref">dflagf="fs/gfs2/lock_flagf.ref->=ass="sref">dGFS2_CONTROL_LF_B="fs/gfs2/lock_GFS2_CONTROL_LF_B.ref-kstats *index])5 >560/124a href="fs/ge=innnnnnnnnn" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
valrefbef">s64asmcontrol">val.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrol"> hsq" clasm.s2_l "> pan class="comment"> * gfs2_5q_dlm.c#L5option value="v2.6.23"
	5  >
 56  >9 s
 * gfs2_5efs2_upda5" id6"L56" class="line" 5name65656"73ss="line" n        s64 f=""control"func; 9)5s"> ass="sref">sample as="s
ef">s64work_s"> ass="lss="comment"> * gwork="s
ef">s64work.ref ="L2an>
5
index];
i5ass=6comment"> *
5samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref id=sref">stats r_ofrefbef">s64conta"> r_of; 9)5="comment"> * gwork="s
ef">s64work.ref-&s"> ass="sref">samplevalsbdef">s64 f="">vas="l-ndex" class="sresd"control"work="s
ef">s64sd"control"works="l.="comment"> * gwork="s
ef">s64work.ref "> pan class="comment"> * gfs2_5qda10;

566/124a href="dex"ass="sref">sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> * gfs2_5qda10>#in5an>
6a href="fs/gfs2/loc5k_dl6567/124a href="charsan class="commelvb_bits="fs/gfs2/lock_dvb_bitslmhl[dex" class="sre6  * gfs2_5e/gfs2/lo5 rtt6(lock ass="comment"5> * 6568/124a href="gt=ass="sref">duint32_s="s
ef">s64uint32_ss="ls="comment"> * gbclas_gen="fs/gfs2/lock_bclas_gen.ref-ndex" class="sress=rt_gen="fs/gfs2/lock_ss=rt_genlmhl->=ass="sref">dlvb_gen="fs/gfs2/lock_dvb_gen.ref->=ass="sref">dflagf="fs/gfs2/lock_flagf.ref->an class="comment"> * gfs2_5eda10e &q5_dre6="+code=s" class="s5ref"6569/124a href="L52ndex" class="sre_3cover_ses="s
ef">s64_3cover_ses.ref
 pan class="comment"> * gfs2_5n>
 7ex" 5clas7="sref">index])5 >7570/124a href="L52ndex" class="srewri"+">vb="fs/gfs2/lock_wri"+">vb.ref
 pan class="comment"> * gfs2_5n_dlm.c#L5opti7n value="v2.6.23"
	5  >
7571/124a href="L52ndex" class="sre_3cover_sizr="fs/gfs2/lock__3cover_sizr.ref->an class="comment"> * gfs2_5cclass="l5ply_7imes - Update locki5ng s7572/124a href="L52ndex" class="srei="fs/gfs2/lock_i.ref->=ass="sref">derrouhptre" name="L2erroua hl->an class="comment"> * gfs2_5cfs2_upda5" id7"L56" class="line" 5name75756"73
5
dspin_a hss="lef">s64spin_a hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_5s_ds6n cl5ass=7comment"> *
5 *   8>>>>>>>>* No MOUNT_DONE means we2#39;re"deill mount *#in5llude ">>>>>>>>* will set 2f * * 757 rt88/gfs2/lock_dlm.c#L57" >>>>>>>>>* all further clearispaof BLF_B_LF_BScalss="line" name="L38">  38>>>>>>>>*alss="line" name="L38">  38>
 7ex" 5clas8="sref">index])5 >858t; 9);

858  >9  v2.6.18.32.43>>>>>>>>* for which _3covery controls *  38>>>>>>>>*alm.s2_lkstats *s64"+st_bit; 9)5="comment"> * gDFL_MOUNT_DONErefbef">s64DFL_MOUNT_DONE.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 * *
5d"+st_bitrefbef">s64"+st_bit; 9)5="comment"> * gDFL_FIRST_MOUNTrefbef">s64DFL_FIRST_MOUNT.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
index];
   8dspin_una hss="lef">s64spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_5* @g8clas5s="l8ine" name="L10">  150"> pan class="comment"> * gfs2_5*/gfs2/lo5s="liine" name="L11">  151588/124a href="s
statss64nsm_3cover_ba hsa hl->an class="comment"> * gfs2_5>index])5 >9590/124a href="dex" class="sress=rt_gen="fs/gfs2/lock_ss=rt_genlmhl id=sref">statss64asm_3cover_ss=rta hl->an class="comment"> * gfs2_5>pda8
  <5opti9n value="v2.6.23"
	5  >
959t;d1"+code=index" class="srespin_una hss="lef">s64spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_5lclass="l5ply_9imes - Update locki5ng s959in112>an class="comment"> * gfs2_5>fs2_upda5" id9"L56" class="line" 5name95956"73+code=in/gfs2/lock_dlm.c#L57" idlm.s2_lkstats *5
>>>>>>>>* Equal bclas_gen and ss=rt_gen impl9es we are betweenlm.s2_lkstats * *
5>>>>>>>>* _3cover_prep and _3cover_ one callbahss, which meanslm.s2_lkstats *   8>>>>>>>>* ode _3covery is in progress and d  38  150>>>>>>>>* There2#39;s no poL52ntryisparo  oaanydwork until _3cover_ onecalss="line" name="L38">  38  151>>>>>>>>*alm.s2_lkstats * *stbclas_gen="fs/gfs2/lock_bclas_gen.ref iid=sref">stats
"> pan class="comment"> * gfs2_6/2f102 * gfs2_6/3f102 *6a hr060f="fs/gfs2/lock_dlm.c#L57" >>>>>>>>>* Propagate _3cover_submit[] and _3cover_result[] ro lvb:lm.s2_lkstats * *
6="fs060="f75/gfs2/lock_dlm.c#L57" >>>>>>>>>*    d_3coverd adds to4recover_submit[] jids needispa_3coverylm.s2_lkstats *   8>>>>>>>>*  f=""_3cover adds to4recover_result[] jo0">al _3covery resultslm.s2_lkstats *  16fs2/060il117/gfs2/lock_dlm.c#L57" >>>>>>>>>*lm.s2_lkstats *  16sys.060 rt88/gfs2/lock_dlm.c#L57" >>>>>>>>>* set lvbabit for jids in recover_submit[] Lexretelvbahas notalss="line" name="L38">  38  382>>>>>>>*alss="line" name="L38">  38##include <  38#include <>>>>>>>>* retejo0">al _3covery is SUCCESS; ss="line" name="L38">  38   15#include <6a hrr6156"73 v2.6.18.32.43>>>>>>>>*alm.s2_lkstats *  16
6a hrr61f="fs
stats hss="lef">s64control"a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64Ds64D pan class="comment"> * gfs2_6lda10;
sterrouhptre" name="L2erroua hl- 19" ref">index];
dfs_errhptre" name="L2fs_errse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_6le betwee6 &quuot;"> pan class="comment"> * gfs2_6l9 betwee6ot;<

vb_getalsbdef">s64control">vb_geta; 9)5"v2class="commelf="fs/gfs2/lock_dm.ref-&" cl&"v2class="commelvb_gen="fs/gfs2/lock_dvb_gen.ref->=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl "> pan class="comment"> * gfs2_6>2f102#include < * gfs2_6> i10="L16spa1n class="comment">/*6dspin_a hss="lef">s64spin_a hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_6>" id="L26" c1lass="line" name="L26"> 1 6246"73+code=inLex"ifass="sref">stbclas_gen="fs/gfs2/lock_bclas_gen.ref !id=sref">statss64nsm_3cover_ba hsa hl ||kstats *5f102statss64asm_3cover_ss=rta hl- 19" ref">index];
dfs_infohptre" name="L2fs_infose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %u bclas1 %u %u\nq" clasm.s2_l-9" ref">index];
 *
dbclas_gen="fs/gfs2/lock_bclas_gen.ref-ndex" class="srelf="fs/gfs2/lock_dm.ref
s64nsm_3cover_ba hsa hl "> pan class="comment"> * gfs2_6>e betwee6n the current rtt sample6 and 628/124a href="fs/ge=index" class="srespin_una hss="lef">s64spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_6cda10e &q6> * running average srtt6. We 629/124a href="fs/ge=inifass="sref">stcontrol"> hss="lef">s64control"a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D pan class="comment"> * gfs2_6n  122"> pan class="comment"> * gfs2_6nas1">  1633" id="L33" class="line6" nam631/124a href="s
 * gfs2_6n i10="L16"">  15#include <6a/s1p6356"73+code=ingt=ass="sref">d_3cover_sizr="fs/gfs2/lock__3cover_sizr.ref id=sref">stats * gfs2_6k"s1d="L26comment"> *

i6ing the smoothed
6stlvb_gen="fs/gfs2/lock_dvb_gen.ref <id=sref">statsindex];
 * mean value, an6d the636/124a href="+code=inggfs2/lock_dlm.c#L57" idlm.s2_lkstats *#in6#L39" id="L39" class="li6ne" n63il117/gfs2/lock_dlm.c#L57" >>>>>>>>>>>>>>>>>* Clear lvbabits for jids we2#39;ve successfully _3coveretcalss="line" name="L38">  38>>>>>>>>>>>>>>>>* Because all nodes attempt to4recoverefailedejo0">als,lm.s2_lkstats *>>>>>>>>>>>>>>>>* aejo0">al c.6.be _3coveret multiple times successfullylm.s2_lkstats *  64t; 9);
  16name="L43">  439  v2.6.18.32.43>>>>>>>>>>>>>>>>* reteothers find it clean, but"deill report aesuccessfullm.s2_lkstats *  456stati64in112 v2.6.18.32.43>>>>>>>>>>>>>>>>* odcovery.  So, another nodesmay have algetay _3coveretlm.s2_lkstats *>>>>>>>>>>>>>>>>* retejid and clearet retelvbabit for itcalss="line" name="L38">  38s, unsigned >>>>>>>>>>>>>>>>*alm.s2_lkstats *i6fs/gfs2/lock_dlm.c#L46" 6id="L64t;de5+code=inde=innnnfor "ifass="sref">sti="fs/gfs2/lock_i.ref index];
s64<6/a> <646/124a href="+code=innnnnnnnnLex"ifass="sref">stlf="fs/gfs2/lock_dm.ref
stats
 * gfs2_62e betwee6ck_dlm.c#L49" id="L49" c6lass=64 rt88
in6dexstlf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_6e=abs64" 6class="sref">abs64(<6a hre650/124
  16ts" class="sref">stats[ * gi="fs/gfs2/lock_i.ref->=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl +>=ass="sref">dJID_BITMAP_OFFSETrefbef">s64JID_BITMAP_OFFSETlmhl  ="L2an>
 * gfs2_6" i10="L16" id="L56" class="line" 6name=6556"73
st__clear_bit_lr="fs/gfs2/lock___clear_bit_lr; 9)5="comment"> * gi="fs/gfs2/lock_i.ref->=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl +>=ass="sref">dJID_BITMAP_OFFSETrefbef">s64JID_BITMAP_OFFSETlmhl ->an class="comment"> * gfs2_6" h10f">i6ass="comment"> *
6stwri"+">vb="fs/gfs2/lock_wri"+">vb.ref
 pan class="comment"> * gfs2_6"da10;

656/124a href="+code=ins
#in6an>

 * T65 rt88
659/124a href="Lex"ifass="sref">stlvb_gen="fs/gfs2/lock_dvb_gen.ref iid=sref">statsindex];
index])6 >660/124a href="fs/ge=inggfs2/lock_dlm.c#L57" idlm.s2_lkstats *
 66  >9  v2.6.18.32.43>>>>>>>>>>>>>>>>* Failedeslots.before ss=rt_gen are algetay set in dvbcalss="line" name="L38">  38sti="fs/gfs2/lock_i.ref index];
6
i6ass=6comment"> *
6 * gfs2_6qda10;

666/124a href="+code=innnnnnnnnLex"ifass="sref">stlf="fs/gfs2/lock_dm.ref
#in6an>
6a href="fs/gfs2/loc6k_dl6667/124a href="fs/ge=innnnnne=innnnnnnnifass="sref">stlf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_6e/gfs2/lo6 rtt6(lock ass="comment"6> * 6668/124a href="fs/ge=ins
stlvb_gen="fs/gfs2/lock_dvb_gen.ref <d=sref">statsindex];
index])6 >7670/124a href="fs/ge=inggfs2/lock_dlm.c#L57" idlm.s2_lkstats *
767  >9  v2.6.18.32.43>>>>>>>>>>>>>>>>* Failedeslots.before ss=rt_gen are not yet set in dvbcalss="line" name="L38">  38sti="fs/gfs2/lock_i.ref index];
6
 *
6 * gfs2_6cef="+cod6e" n7ame="L8">   8stlf="fs/gfs2/lock_dm.ref
index];
stlf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_6c/gfs2/lo6 rtt7(lock ass="comment"6> * 7678/124a href="fs/ge=innnnnne=innnnnnnnifass="sref">st__ses_bit_lr="fs/gfs2/lock___ses_bit_lr; 9)5="comment"> * gi="fs/gfs2/lock_i.ref->=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl +>=ass="sref">dJID_BITMAP_OFFSETrefbef">s64JID_BITMAP_OFFSETlmhl ->an class="comment"> * gfs2_6s_dl6lock6_dre7="+code=s" class="s6ref"7679/124a href="fs/ge=innnnnnnnns
index])6 >8680/124a href="fs/ge=ins

8681/124a href="fs/ge=inggfs2/lock_dlm.c#L57" id even iexretre are noabits to set, we need to wri"+xretlm.s2_lkstats *stwri"+">vb="fs/gfs2/lock_wri"+">vb.ref
 pan class="comment"> * gfs2_6ulass="sr6e gl8ck to update6
index];
 *
6 *   8>>>>>>>>>>>>>>>>* we should.be gett *  160>>>>>>>>>>>>>>>>*alm.s2_lkstats *  161688/124a href="s
s64spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_6>index])6 >9690/124

969t;d1"+code=inLex"ifass="sref">stwri"+">vb="fs/gfs2/lock_wri"+">vb.ref  19" ref">index];
stcontrol">vb_wri"+="fs/gfs2/lock_control">vb_wri"+; 9)5="comment"> * glf="fs/gfs2/lock_dm.ref->=ass="sref">dss=rt_gen="fs/gfs2/lock_ss=rt_genlmhl->=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl "> pan class="comment"> * gfs2_6>fs2_upda6" id9"L56" class="line" 6name96956"73+code=infs/ge=inifass="sref">stflagf="fs/gfs2/lock_flagf.ref id=sref">statss64Dstats pan class="comment"> * gfs2_6>lass="sr6e gl9ck to update6
index];
 *
6stflagf="fs/gfs2/lock_flagf.ref id=sref">statss64D pan class="comment"> * gfs2_6>ef="+cod6e" n9ame="L8">   8  160
  161derrouhptre" name="L2erroua hl id=sref">stats hss="lef">s64control"a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre  pan class="comment"> * gfs2_6>_dl6lock6oot;sterrouhptre" name="L2erroua hl- 19" ref">index];
 * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f102"> pan class="comment"> * gfs2_7/2f102

 * *
7="fs070="f75/gfs2/lock_dlm.c#L57" >>>>>>>>>* Everyone will setejid bits set in retelvb, run  f=""_3cover_ses(),lm.s2_lkstats *   8>>>>>>>>* and clear aejid bit in retelvb Lexreterecovery is aesuccesscalss="line" name="L38">  38  17fs2/070il117/gfs2/lock_dlm.c#L57" >>>>>>>>>* Eventutlly all jo0">als will be _3coveret, all jid bits willalss="line" name="L38">  38  17sys.070 rt88/gfs2/lock_dlm.c#L57" >>>>>>>>>* be clearet in retelvb, and everyone will clear BLF_B_LF_BScalss="line" name="L38">  382##include <sti="fs/gfs2/lock_i.ref index];
st"+st_bit_lr="fs/gfs2/lock_"+st_bit_lr; 9)5="comment"> * gi="fs/gfs2/lock_i.ref->=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl +>=ass="sref">dJID_BITMAP_OFFSETrefbef">s64JID_BITMAP_OFFSETlmhl   19" ref">index];
   15#include <7a hrr7156"73+code=infs/ge=infs/ge=ingex" class="srefs_infohptre" name="L2fs_infose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %u jid %d\nq" clasm.s2_l-9" ref">index];
  16
7a hrr714/124a href="fs/ge=innnnnnnnnfs/ge=ingex" class="sress=rt_gen="fs/gfs2/lock_ss=rt_genlmhl->=ass="sref">di="fs/gfs2/lock_i.ref-"> pan class="comment"> * gfs2_7l5f102"
st f=""_3cover_ses="fs/gfs2/lock_ f=""_3cover_ses; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="srei="fs/gfs2/lock_i.ref-"> pan class="comment"> * gfs2_7l6f102s64_3cover_ses.ref++"> pan class="comment"> * gfs2_7l7f102
st_3cover_ses="s
ef">s64_3cover_ses.ref ="L2an>
"> pan class="comment"> * gfs2_7>1f102struct * pan class="comment"> * gfs2_7>2f102#include < * i10="L17spa1n class="comment">/*7>>>>>>>>* No more jid bits set in lvb, all _3covery is  one, unba hss;
 *" id="L27" c1lass="line" name="L27"> 1 72f="fs/gfs2/lock_dlm.c#L57" >>>>>>>>>* (unless a new _3cover_prep callbahsahas occuret ba hs *5f102>>>>>>>>* again whiledwork *da10;
  28>>>>>>>>*alm.s2_lkstats *7f102 *

dspin_a hss="lef">s64spin_a hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running average srtt7. We 729/124a href="Lex"ifass="sref">stlf="fs/gfs2/lock_dm.ref
s64nsm_3cover_ba hsa hl iid=sref">stats pan class="comment"> * gfs2_7n  122s64asm_3cover_ss=rta hl iid=sref">statsindex];
  1733" id="L33" class="line7" nam731/124a href="fs/ge=ingsref">statss64clear_bit; 9)5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lock_ FL_BLF_B_LF_BS.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7n2f102stspin_una hss="lef">s64spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7n i10="L17"">  15#include <7a/s1p7356"73+code=infs/ge=inifass="sref">stfs_infohptre" name="L2fs_infose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %u  one\nq" clasm.s2_l->=ass="sref">dss=rt_gen="fs/gfs2/lock_ss=rt_genlmhl "> pan class="comment"> * gfs2_7n" id="L27comment"> *
st f=""gnt"> thaw="fs/gfs2/lock_ f=""gnt"> thawse v5="comment"> * gsdps="lef">s64sdp.ref "> pan class="comment"> * gfs2_7n5f102
7index];
 * mean value, an7d the736/124a href="+code=ingfass="sref">stfs_infohptre" name="L2fs_infose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %u bclas2 %u %u\nq" clasm.s2_l-9" ref">index];
dbclas_gen="fs/gfs2/lock_bclas_gen.ref-ndex" class="srelf="fs/gfs2/lock_dm.ref
s64nsm_3cover_ba hsa hl "> pan clasdex];
s64spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of integer n7anose739/124a href="s
  74t; 9)s
  17name="L43">  43 pan class="comment"> * gfs2_7>2f10L14"6ine3tejid and clearet retelv7i64in712 v2.line" ndex" class="srei="frol"mount()/cef">s64control"a hst()/c5" class="sref">samplevalsbdef">s64 f="">vas="lss="comment"> * gsdps="lef">s64sdp.ref id=2an>
(struct index];
, unsigned sample<  da hss"> as="s
ef">s64lmda hss"> ass="lss="comment"> * glf="fs/gfs2/lock_dm.ref
s64sdp.refa> hss"> as="s
ef">s64nt"> hss"> asa hl->an class="comment"> * gfs2_5qda70f">i6fs/7fs2/lock_dlm.c#L46" 6id=7L64t;7e5+code=inde=isan class="commelvb_bits="fs/gfs2/lock_dvb_bitslmhl[dex" class="sre6  * gfs2_5e/g70;
s64<6/a>7<646/724a href="+cod class="sre6 s64uint32_ss="ls="comment"> * gbclat_gen="fs/gfs2/lock_ss=rt_genlmhl->=ass="sref">dbclas_gen="fs/gfs2/lock_bclas_gen.ref-ndex" class="srelf="t()/c="fs/gfs2/lock_bclat()/c="fs->=ass="sref">dlvb_bits"fs/gfs2/lock_dvb_gen.ref <an class="comment"> * gfs2_5e/g70>#in7#L39s[ * gfs2_5e/g70twee7* Relm.c#L49" id="L49" c6las7=64 r748a href="fs/gdex" class="srei="freg"Les/gfs2/lock_dvb_reg"Les  * gfs2_5e/g70e &q7re idex" class="sref">in6dex7/649/724a href="fs/gdex" class="srei="fuhptre" name="L2erroua hl->an class="comment"> * gfs2_5cfs7s64" 6cla7s="sref">abs64(<6a h7e650/724
  16ts"7class="sref">stats[7a651/75"+code=index" class="srecontmem"s
ef">s64_3comem"s
5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
sample * gfs2_5cfs7sL14"6ine3times - Update locki6ng 7t652/724a href="a hr class="srecontmem"s
ef">s64_3comem"s
5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
sample * gfs2_5cfs7s="L16te_7="L56" class="line" 6nam7=6556753+code=ingt=ass="sref">d_3comem"s
ef">s64_3comem"s
5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 * gfs2_5cfs7s="L26ef"7ock to update6
 * gbclatbs;fsptre" name="L2errotbs;fsptr  * gfs2_5cfs7sf">i6fs/7"comment"> *
6 * gfs2_5cfs7s;
 * gfs2_5cfs7s>#in7#L39 * gbclatetrefbef">s64"+sttetrefb5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lock_ FL_BLF_B_LF_BS.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7n2f1etwee6 rt7 (lock ass="comment"6> *7T65 r788
stats hss="lef">s64control"a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre  pan class="comment"> * gfs2_6lda7dex" 6cla7s="sref">index])6 &g7;660/764a href="Lex"ifass="sref">stbclauhptre" name="L2erroua hl- 19" ref">index];
7 66  764a href="fs/ge=ingsref">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f1ss="l6ply76imes - Update locki6ng 7666in764a href="a href="ifas">"> p" class="srei="fuhptre" name="L2erroua hl->an class="comment"> * gfs2_5cfs7_upda6" i76"L56" class="line" 6nam766656773+code=infs/gpan>
6

i6ass76comment"> *
6statss64contter oddsl="l5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre  * gfs2_7/1f1s;
sterrouhptre" name="L2erroua hl- 19" ref">index];
stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f1stwee6 rt76(lock ass="comment"6> *76668/724a href="fs/ge=insstats hshss="lef">s64spinrol"> hshss="l5="comment"> * gsdps="lef">s64sdp.ref "> pan class="comment"> * gfs2_7n5f10e &q6_dr76="+code=s" class="s6ref76669/764a href="fs/ge=innnnn">"> p" class="srei="fuhptre" name="L2erroua hl->an class="comment"> * gfs2_5cfs77ex" 6cla77="sref">index])6 &g77670/724a href="fs/gpan>
7767  77"+code=index" class="srecontmer oddst(ds/gfs2/lock_"+stter oddst(ds <sref">stats * gfs2_5cfs77s="l6ply77imes - Update locki6ng 7767in772>an class="comment"> * gfs2_6n i7_upda6" i77"L56" class="line" 6nam776756773+cod class="srei="fretrefbef">s64asm_retrefb+cod:n class="comment"> * gfs2_6n i7_="sr6e g77ck to update6
st_3coveg"Les/gfs2/lock_dvb_reg"Les  pasmment"> * gbclatignal_pena_3cef">s64sdp.rignal_pena_3c5="comment"> * gsdpscurre/cef">s64contrurre/c   19" ref">index];
 *
6 * gfs2_5cfs77;
   8stats * gfs2_5cfs77>#in6an>7e "
 *77678/778
 * i17ex" 6cla78="sref">index])6 &g78680/78);
 alvb,NL. rol"a hs; 9)eis2_lkstats *5f1m.c#L6opt78n value="v2.6.23"
	6  >78681/78  v2.6.18.32.43>>>>>>>>* cleademoto wri"rrobelow soshoudon;ve std to wri"doclea ares="line" name="L38">  387f1_upda6" i78"L56" class="line" 6nam786856783
6
st_3comer oddst(ds/gfs2/lock_"+stter oddst(ds <ssref">statsindex];
 *
6statss64contter oddsl="l5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D pan class="comment"> * gfs2_6n  7"+cod6e" 78ame="L8">   8sterrouhptre" name="L2erroua hl- 19"n class="comment"> * gfs2_6n  7">#in6an>78ine" name="L10">  160stats * gfs2_5cfs7s2/lo6s="7iine" name="L11">  161688/784a href="fs/ge=insstatsstats * gfs2_5cfs76lock6_dr78="+code=s" class="s6ref78689;784a href="s
index])6 &g79690/724
7969t;71"+code=inLex"2/lock_dlm.c#L57" idlm.s2_lkstats * i1ss="l6ply79imes - Update locki6ng 79692/792 v2.6.18.32.43>>>>>>>>>>>>. O nodesmaysd to wri"docsomrkvasrol"a h2_lkstats * i1supda6" i79"L56" class="line" 6nam796956793 v2.6.18.32.43>>>>>>>>* No mbe ss=rrecovery ise()nf clearol"a hs; 9)e be _3coveset "ifausobelows="line" name="L38">  38>>>>>>>>* (unlAadelave are is yet requiba hsut oftre nvowe2#havabovecovetrys="line" name="L38">  38 *
6>>>>>>>>* agas2_lkstats *7f1"+cod6e" 79ame="L8">   8 * gfs2_5cfs78clas6s="79ine" name="L10">  160 * gbclamsleep_i odrruptibfs/gfs2/lock_"+stmsleep_i odrruptibfs5="co500pan class="comment"> * gfs2_7/1f1s2/lo6s="79ine" name="L11">  161
 * i802>>>>>>>*alss Acquiba rol"a hs; 9)ein EX cleater oddsl="lein ei nodeEX ifaPRs="line" name="L38">  38al c.6.very isiess="line" name="L38">  38>>>>>>>>>>>>. ter oddsl="leindict genifacly o nodesmaysd algefirsts ter odds="line" name="L38">  38>>>>>>>>* No s2_lkstats *7f8027a h80704680s
 *
7="f8070="805+code=index" class="sreerrouhptre" name="L2erroua hl id=sref">stats hss="lef">s64control"a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D | class="sreflagLKF_VALBNOQUEUs/gfs2/lock_6  | class="sreflagLKF_VALBLB="fs/gfs2/lock_  pan class="comment"> * gfs2_6lda802   8sterrouhptre" name="L2erroua hl- 19=sre- class="sreerroEAGAINe" name="L2erroEAGAIN-&/e" ref">index];
  17fs28070il804a href="fs/ge=innnnngotonf">statss64asm_retrefb+codan class="comment"> * gfs2_6lda808  161stlvb_uhptre" name="L2erroua hl- 19" ref">index];
stcontrrhptre" name="L2fs_errse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f8>2stats * gfs2_5cfs802
 * gfs2_6n i802 8 15#include <7a h8r7156813+code=ingt=ass="sref">d_3couhptre" name="L2erroua hl id=sref">statss64contter oddsl="l5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D | class="sreflagLKF_VALBNOQUEUs/gfs2/lock_6  pan class="comment"> * gfs2_7/1f8>2  16
7a h8r714/814a href="fs/gifasclass="commelf="uhptre" name="L2erroua hl- 19" ref">index];
statsstats * gfs2_7/1f8>2stats ae()nf/gfs2/lock_nsm_3"> ae()nf-&/ean class="comment"> * gfs2_7/1f8>2stlvb_uhptre" name="L2erroua hl- 19ssre- class="sreerroEAGAINe" name="L2erroEAGAIN-&/e" ref">index];
stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f8>twee7 ot8stats * gfs2_5cfs822
 pan class="comment"> * gfs2_7>2f802#include <d_3couhptre" name="L2erroua hl id=sref">statss64contter oddsl="l5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D | class="sreflagLKF_VALBNOQUEUs/gfs2/lock_6  pan class="comment"> * gfs2_7/1f80="L17spa8n class="comment">/*7index];
 8 72f=824a href="fs/ge=inifass="sref">st f="mer oddst(ds/gfs2/lock_"+stter oddst(ds <sref">stats * gfs2_7/1f802stats ae()nf/gfs2/lock_nsm_3"> ae()nf-&/ean class="comment"> * gfs2_7/1f80;
  88index];
 *
<8 72il824a href="fs/ge=innnnnf/lock_dlm.c#L57" id evenyet  iexr-EAGAINuld.be ghappexr are  s2_lkstats *7f8etwee7n t8e current rtt sample7 an8 728/824a href="fs/ge=insstats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f80e &q7> *8running average srtt7. W8 729/824a href="fs/ge=inifasgotonf">stats * gfs2_5cfs822  1733"8id="L33" class="line7" n8m731/83"> pan class="comment"> * gfs2_7>2f802stats ae()nf/gfs2/lock_nsm_3"> ae()nf-&/e:n class="comment"> * gfs2_6n i80="L17"">8 15#include <7a/s8p7356873+code=infs/g2/lock_dlm.c#L57" idlm.s2_lkstats * i8d="L27com8ent"> *
>>>>>>>>* (unlIfshougot both s"> ale)lm.ein EX,efirnsho;ve ss=rrecofirso ter odrs="line" name="L38">  38
7>>>>>>>>* agaiIfsyet,efirnshod to wri"+ait "ifarecorol"a hs; 9)eLexrri"bs2_lkstats * * mean value, an7d t8e736/83L/gfs2/lock_dlm.c#L57" >>>>>>>>>* and updato wby o nodeter oddesmaysdecoveflect oudeter oer="lon s="line" name="L38">  38>>>>>>>>* Eve="line" name="L38">  38>>>>>>>>* be cIn simpleofirso ter odr cases,ofirso ter odr  setejid zero_gen soos2_lkstats *>>>>>>>>*alm.hsut in cases w are neteexis a _3smaysdleave/railmbe ss=rter o_3c5=lkstats *8 74t;84);
  1733"8="L43">  43>>>>>>>>* cleagen soon be _3conon-zeros="line" name="L38">  38>>>>>>>>>>>>.s2_lkstats *7f80="L16te_8tats(struct 
, unsigned vb_wri"veseef">s64control"a hs;ri"vese5="comment"> * gsdpsfs/gfs2/lock_dm.ref->=a&"v2class="commelf="fits"fs/gfs2/lock_dvb_gen.ref <=ass="sref">dlvb_bits="fs/gfs2/lock_dvb_bitslmhl "> pan class="comment"> * gfs2_6>fs80f">i6fs/8fs2/lock_dlm.c#L46" 6id=8L64t;8e5+codn class="comment"> * gfs2_6>fs80;
s64<6/a>8<646/84"+code=inLex"ifass="sref">sterrogen="fs/gfs2/lock_dvb_gen.ref <== 0xFFFFFFFF" ref">index];
 *7f80twee7n t8lm.c#L49" id="L49" c6las8=64 r844a href="fs/ge=insstats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
 * gfs2_6>fs80e &q7re 8dex" class="sref">in6dex8/649/844a href="fs/ge=inifass="sref">stcontuhptre" name="L2erroua hl id=sre- class="sreerroEINVAs/gfs2/lock_  * gfs2_5cfs8s64" 6cla8s="sref">abs64(<6a h8e650/854a href="fs/ge=inre/0gotonf">stats * gfs2_5cfs8">  16ts"8class="sref">stats[8a651/854a href="s
s8532/ass="srecass="commensm__7/1f8>2stats * href="f6l7f80>#in7#L38s[8
st f="mer oddvenspecial valuedeco sscd zero_gen so,ena_3EX,efiEX2_lkstado*7f80twee7n t8lm.c#L49" i*
8statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av8rlier.stfs_infohptre" name="L2fs_lear_bit; 9)5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lock_ FL_BLF_B_LF_BS.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7n2f102stats * gDFL_BLF_B_LF_BS="fs/gfs2/lockMOUNT_DONALBNOQUEUs "> panockMOUNT_DONAelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7n2f102 *7T65 r788
s64tetrefb5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lockFIRSTkMOUNTLBNOQUEUs "> panockFIRSTkMOUNTelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7n2f102in6ref7>659/75"+code=index"8class85s="sref">stcontuhptre" name="L2errou>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of8dex])8 &g7;660/764a href="Lex"8fass=86gotonf">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %ufirso ter odr  ;d\nq" %u %u\nq"sref">derrouhptre" name="L2errou_gen.ref <== 0xFFFFFFFF" ref">* gfs2_7nda10e &q7re in units of8d>stats7 66  764a href="fs/g8=ings8ef">stats"> p" class/lock_6n i8sL14"6ine8times - Upds="line" 8nam766656773+code=infs/g8an>
<86gfs2/lock_7/4f8d="L26ef"8s, unsite8

vb_wri"veseef">sa hl id=sref">stats hss="lef">s64control"a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D pan class="comment"> * gfs2_6n  7"+cod6e" 78ame="L8">8*
8 * gfs2_6n  7">#in6an>78ine" name8lock_dlm.8#an7
666/76"+code=inLex"8fass=86gotonf">stats * gfs2_5cfs77>#in6an>7e " *76668/724a href="fs/g8=ins<8sf">stats * i8d="L27com8ent"> *>>>>>>>>*alm.hsut in cases w are nebothrebe ghd zero_gen so,enowrecorol"a hs; 9)eLexrri"bs2_lkstats i8d="L27com8ent"> *])8 &g77670/724a href="fs/g8an>
<87ock>>>>>>>>*alss smaysdfinish rols;
 *<%u %a hre over=rri"b%u %froms="lid zero"a h2_lmment">"+code=s" 7> i8d="L27com8ent"> *stats7767  77"+code=index"8class87on>>>>>>>>>* cleagen soon be _3conon-zi no o_3> *  ef="+code=s" 7>da10;
  28>>>>>>>>>>>>.s2_lkstats *7f80="L16te_8tats(sts="line" 8nam776756773+cod class="8rei="87gfs2/lock_7/4f8d="L26ef"8s, unsite8
st_3coveg"Lee" name="L2errou o__jidommen_ine" /ean class="com o__jidommen_ine" s/gfs2/lock_dm.ref-&g_bitslmhl "> pan class="comment"> * href="f6l7f80>#in7#L38s[
8 *lo o_3hrebine" nref="+code=s" 7>7f80="L16te_8tats(stsock_dlm.8pan77676/724a href="+cod8=innn8ngotonf">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %us; 9)edisable"; 9)eLexrline" name="L38yass="comment"> * gfs2_6>fs80e &q7re 8dex" class=href="fs/8f_d76677/774a href="s
<87gotonf">statss64asm_retrefb+codan class="comment"> * gfs2_6lda808 *77678/778
])8 &g78680/78);
vb_wri"veseef">spin_a hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av82.6.23"
	8  >78681/78  v2.6.18.32.83 pan class="cofs2/lock_dm.ref
nsm_3cover_ba hsa hl "> pan clasdex];
 * running av82te locki8ng 7868in712 v2.6.18.32.83d_3couhptre" name="L2errous=rt_genlmhl->=ass="sref">dbclas_geofs2/lock_dm.ref
nsm_3cover_ss=rta hl iid=sref">stats * running av82="line" 8nam786856783
d_3comem"s
ef">s64_3comlat()/c="fs->=ass="sref">dlvb_bitsofs2/lock_dm.ref
nsm_3ol"a hst()/c5" classock/a>nsm_3ol"a =rt_ gfs2_7cda10e &q7> * running av82e8
 *
8ier_sizr="fs/gfs2/locmlat()/c="fs->=ass="sref">dlvb_bits href="f6l7f80>#in7#L38s[sterrouh"venspecial valuedeco ssc; 9)eLexrect oudeter oer="oddesmbs2_lkstats *7f80="L16te_8tats(st"L10">  180>>>>>>>>* Eve="line" name="L38"> ts7f80="L16te_8tats(st"L11">  181688/784a href="fs/g8=ins<8sf">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %us; 9)edisable"; 9)1 clasms2_l-9" lvb,NL2_l-9" sable"2_l-9" r="comment"> e=s" 7>7f80="L16te_8tats(st"class="s8ref78689;784a href="s
<88s="sref">stcontuhptresterrouh"venspecial ver="lon %u> *<2_l-9" ommen<2_l-9lxsref">derrouhptre" name="L2errouclas_gen.ref-ndex" class="srelf="t()/c="fs/gfs2/lock_bs=rt_genlmhl->=ass="sref">dbclas_gen="fs/gfs2/lock_bclat()/c="fs->=ass="sref">dlvb_bits"e=s" 7>7f80="L16te_8tats(stdex])8 &g79690/724
statsdlvb_bits="fs/gfs2/lock_dvb pan class="commensm_3cover_flagf="fs/gfs2/lock_nsm_3cover_flagf.ref &> pan class="comment"> * gfs2_7n2f1027969t;71"+code=inLex"8/lock89f">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of8ate locki8ng 79692/792 v2.6.18.32.83"> p" class="srei="etrefbef">s64asm_retrefb+codan class="comment"> * gfs2_6lda8088
 *
8i_CNL="fs/gfs2/locks=rt_genlmhl  19" ref">index];
  1733" id="L33" c8  8sterrouh"venspecial valuedeco ssc; 9)eLexrect oudeter oer="oddesmbs2_lkstats *"+code=s" 7> i8d="L27com8ent"> *  180>>>>>>>>* Eve="line" name="L38"> ts7f80="L16te_8tats(st"L11">  181
stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %us; 9)edisable"; 9)2 clasms2_l-9" lvb,NL2_l-9" sable"2_l-9" r="comment"> e=s" 7>7f80="L16te_8tats(st/gfs2/tra8eef78699/794a href="fs/g8/lock89s="sref">stcontuhptresterrouh"venspecial ver="lon %u> *<2_l-9" ommen<2_l-9lxsref">derrouhptre" name="L2errouclas_gen.ref-ndex" class="srelf="t()/c="fs/gfs2/lock_bs=rt_genlmhl->=ass="sref">dbclas_gen="fs/gfs2/lock_bclat()/c="fs->=ass="sref">dlvb_bits"e=s" 7>7f80="L16te_8tats(s9a href="i9clu8e700/80);
statsdlvb_bits="fs/gfs2/lock_dvb pan class="commensm_3cover_flagf="fs/gfs2/lock_nsm_3cover_flagf.ref &> pan class="comment"> * gfs2_7n2f102statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of9ate locki9hre807026802 v2.6.18.32.93"> p" class="srei="etrefbef">s64asm_retrefb+codan class="comment"> * gfs2_6lda8089a h80704680s
9*
9="f8070="805+code=index"9class90sreerrouhptreptre" name="L2errouclas_gen.ref " cl&" cl&> pan class="cofCNL="fs/gfs2/locks=rt_genlmhl  19" ref">index];
  1733" id="L33" c9  8sterrouh"venspecial valuedeco sscsrol"a h2_lksin progcoms,c; 9)eLexr9)ea> *firnsnref="+code=s" 7>7f80="L16te_8tats(s9"L10">  19fs28070il804a href="fs/g9=innn9ngotonf">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %us; 9)edisable"; 9)3 clasms2_l-9" lvb,NL2_l-9" sable"2_l-9" r="comment"> e=s" 7>7f80="L16te_8tats(s9"L11">  191statsderrouhptre" name="L2errouclas_gen.ref-ndex" class="srelf="t()/c="fs/gfs2/lock_bs=rt_genlmhl->=ass="sref">dbclas_gen="fs/gfs2/lock_bclat()/c="fs->=ass="sref">dlvb_bits"e=s" 7>7f80="L16te_8tats(s9"911">  191ef78699/794a href="fs/g9=inif9ss="sref">stcontrrhptrntmer oddst(ds/gfs2/loc_gen.ref <=ass="sref">dlvb_bits="fs/gfs2/lock_dvb pan class="commensm_3cover_flagf="fs/gfs2/lock_nsm_3cover_flagf.ref &> pan class="comment"> * gfs2_7n2f102statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of9lt;
<91f">statss64asm_retrefb+codan class="comment"> * gfs2_6lda808"> p" class/lock_6n i8sL14"6ine8times - Up9lude <9a h8r7156813+code=ingt=a9s="sr91gfs2/lock_7/4f8d="L26ef"8s, uns9  16
9a h8r714/814a href="fs/g9fascl91mmelf="rol">vb_wri"veseef">s6ear_bit; 9)5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lock_ FL_BLF_B_LF_BS.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7n2f102 * gDFL_BLF_B_LF_BS="fs/gfs2/lockMOUNT_DONALBNOQUEUs "> panockMOUNT_DONAelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7n2f102s64uimem"s
5" cl&"v2class="commelf="f2/lock_dm.ref
s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf="fB_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3coize()nf-&/e:n classasm_3coizesm_3*ples6nt32_ss="ls="comment"> * gbclat_gen * gfs2_5cfs7s="L16te_7="L56" cla9href="fs/9fs28/717/824a href="fs/g9enLex91* gbclamsleep_i odrruptibfs/gem"s
5" cl&"v2class="commelf="f2/lock_dm.ref
s64asm_3ccomulnc_wafs]-&g"an clasa>asm_3ccomulnelf="fB_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3coize()nf-&/e:n classasm_3coizesm_3*ples6nt32_ss="ls="comment"> * gbclat_gen * gfs2_5cfs7s="L16te_7="L56" cla9hL11">  19sys8.718/814a href="fs/g9=ins<9sf">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of9l911">  19e_g8f719/814a href="fs/g9=inif9sgotonf">statsfuhptre* gfs2_5e/g70e &q7re idex" class9fs2/lock_9lm.8c720/824a href="fs/g9an>
<92gfs2/lock_6>pd78
  <6opt79n value="9* pan class=9comme9t"> * dst(ds/gfs2/locrl-&/ean class="comment"> * gfs2_6n i80="L17"">8 15#in9de <d_3couhptre" name="L2errou>statsstatss64sdp.ref-&/gfs2/lock_dlc#L9ng"L24* gfs2_7nda10e &q7re in units of9mment">/*9d_3comem"s
ef">s64_3cospinrol"> hshss="l5="comment"> * gsdps="lef">s64sdp.ref "> pan class="comment"> * gfs2_7n5f10e &q6_dr76="+code=s9 name="L29"> 8 72f=824a href="fs/g9=inif9ss="sref">st ffuhptre" name="L2erroua hl->an class="comment"> * gfs2_5cfs77ex" 6cla77="sref">i9structure9 to8u72="825+code=inde=i9nnnnn9ngoton/lock_6n i8sL14"6ine8times - Up9class="co9mme8t72id826a href="fs/g9enLex92"> * gfs2_5cfs78clas6s="79ine" name9> *
<8 72il824a href="fs/g9=innn9nf/locmmetic  gbkss/gfs2/lock_wri"d "a h2_lkcosync_wafs]-&g"an ci"d "a h2_lkcosyn"lef"s="l *ss/gfs2/lock_wrwor hs;ri"vese5="cowor t"> *gfs2_5cfs78clas6s="79ine" name9>L11">  19 an8 728/824a href="fs/g9=ins<9sf">stref="f7nas1">  1733" id="L33" c9rage srtt9. W8 729/824a href="fs/g9=inif92srespinuhptre" name="L2errouscheduep_i odrruptibfs5scheduep"lef"* gfs2_7n5f10e &q6_dr76="+code=s9ss="line"9* r8n730/834a href="fs/g9an>
<9 href="fs/gfs2fuhptre* gfs2_5e/g70e &q7re idex" class9ass="line9" n8m731/83"> pan class=9comme9t"> * /lock_6n i8sL14"6ine8times - Up9s="line" 9nam8=732/824a hrf">stats9/acle93srecontmem"s
ef">s8532/ass="srecass9lude <9a/s8p7356873+code=infs/g9/lock9dlm.c#mmetic  gbkss/gfs2/lock_wrent"> * d zer"> ae()nf-&/e:n clasent"> * d zer"> ae"lef"strucbkss/gfs2/lock_wr8532_sb hs;ri"vese5="co8532_sb ref="*ss/gfs2/lock_wr "> pan class="comment"> *ntmem"s
ef">s8532/ass="srecass9lname="L29ef=8f734/83s/gfs2/lock_d9m.c#L97" >>>ref="f7nas1">  1733" id="L33" c9d
9 pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sref">i9value, an9d t8e736/83L/gfs2/lock_d9m.c#L93sre6  pan class="comment"> [fs/gfs2/lock_dvGn claVB_SIZALBNOQUEUs "> paGn claVB_SIZAt"> ] gfs2_5cfs77ex" 6cla77="sref">i9v * * gbclat_gen="fs/gfs2/lock_bs=rt_genlmhl->=ass="sref">dbclas_gen="fs/gfs2/lock_bclas_gen.ref-ndex" class="srelf="t()/ gfs2_5cfs77ex" 6cla77="sref">i9vL11">  19str8t738/838/gfs2/lock_d9m.c#L93f">stats * gfs2_5cfs77ex" 6cla77="sref">i9integer n9ano8e739/834 v2.6.18.32.938 74t;84);
s64asm_retrefb+codan class="comment"> * gfs2_6n i80="L17"">8 15#in9s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av9learet re9elv8i64in842 v2.6.18.32.93d_3couhptre" name="L2errous=rt_genlmhl->=ass="sref">dbclas_geofs2/lock_dm.ref
nsm_3cover_ss=rta hl iid=sref">stats * running av9ruct 
d_3comem"s
ef">s64_3coclas_gen.ref " cl&" cl&> pan class="cofs2/lock_dm.ref
nsm_3cover_ba hsa hl "> pan clasdex];
 * running av9gned 9m.c#L46" 9id=8L64t;8e5+codn class=9comme94sreerrouhptreptre" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lock_ FL_BLF_B_LF_BS.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * ||lock_6k h8029malue, an9/a>8<646/84"+code=inLex"9fass=94ifass="sref">stere" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockMOUNT_DONALBNOQUEUs "> panockMOUNT_DONAelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * ||lock_6k h8029m * *sd rtrefLF_B_LF_BS="fs/gfs2/lockFIRSTkMOUNTLBNOQUEUs "> panockFIRSTkMOUNTelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * href="f7nas1">  1733" id="L33" c9d="L49" c9las8=64 r844a href="fs/g9=ins<9sf">stats ref="+code=s" 7>7f80="L16te_8tats(s9"sref">in9dex8/649/844a href="fs/g9=inif9ss="sref">stcontuhptre" name="L2errourrse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
 ae lvb,NL2_l-9" clasms2_l-9" ommen<2_l-9lxsref">derrouhptre=s" 7>7f80="L16te_8tats(s9s64(<9a h8e650/854a href="fs/g9=inre90gotonf">statsdbclas_gere" name="L2errouclas_gen.ref-ndex" class="srelf="t()/c="fs/gfs2/lock_ba pan class="commensm_3cover_flagf="fs/gfs2/lock_nsm_3cover_flagf.ref &> pan class="comment"> * gfs2_7n2f102stats[8a651/854a href="s
<95f">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of9ate locki9ng 7t652/724a href="a hr9class95">"> p" class="srei="ef">s64_3cospinrol"> hshss="l5="comment"> * gsdps="lef">s64sdp.ref "> pan class="comment"> * gfs2_7n5f10e &q6_dr76="+code=s9"commensm9_7/1f8>2st f/lock_6n i8sL14"6ine8times - Up9*
9 * gfs2_6>fs80;
sterrogen="fs/gfs2/lock_dvbs=rt_genlmhl->=ass="sref">dbclas_geoffs2/lock_dm.ref
  1733" id="L33" c9/gfs2/loc9k_d7m657/724a href="sstats * i8d="L27com8ent"> * *7T65 r788
>>>>>>>>* be cIn simpleofirso terrrrrrrrr* W 9)eLexrri"bend.6.vecsrol"a h2_lkscyclmpo sswitch7fromf="+code=s" 7> i8d="L27com8ent"> *in9ref7>659/75"+code=index"9class95on>>>>>>>>>*alm.hsut in cases w are rrrrrrrr* firso ter odr "a h2_lk. ebotc>>>ignfirslass="comlotf="+code=s" 7> i8d="L27com8ent"> *])9 &g7;660/764a href="Lex"9fass=96ock>>>>>>>>*alss smaysdfinish rols;
rrrrrrrr* callbasho;betwea> rol"a hs; 9)prepzi nonexro"a h2_lmment">"+code=s" 7> i8d="L27com8ent"> *stats7 66  764a href="fs/g9=ings96on>>>>>>>>>* cleagen soon be _3cononrrrrrrrr* becauserecohrebste" nine" name="L38"> zi no irsmentudeter o">"+code=s" 7> i8d="L27com8ent"> *>>>>>>>>>>>>.s2_lkstats *
<96on>>>>>>>>>* No s2_lkstats *7f80="L16te_8tats(s9te9

vearrhptre" name="L2fs_e>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of9*
9stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %us; 9)edid zer"> ae ; 9)e="li;u\nq"sref">derrouhptre" name="L2errous=rt_genlmhl  19" ref">index];
 * gfs2_5cfs78clas6s="79ine" name9/gfs2/loc9k_d76667/724a href="fs/g9=innn96gotonf">stats *; 9)_ontreflf="fs/gfs2/lock_dm.ref
s64asm_3ccover_flagf.ref &> pan class="comment"> VALBERTrefbef">s64ockn clRECOVERYLBNOQUEUs "> panockn clRECOVERYt"> Vgfs2_5cfs78clas6s="79ine" name9/="L49" c9> *76668/724a href="fs/g9=ins<96f">statss6TASK_UNINTERRUPTIBLALBNOQUEUs "> paTASK_UNINTERRUPTIBLA;
in9ref76669/764a href="fs/g9=innn96gotonf">stats * gfs2_6lda808])9 &g77670/724a href="fs/g9an>
<97href="fs/gfs2/lock_72as8">  1733"8id="L33" c9d>stats7767  77"+code=index"9class97"> * gfs2_7>2f802d_3couhptre" name="L2errou6ear_bit; 9)5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lockFIRSTkMOUNTLBNOQUEUs "> panockFIRSTkMOUNTelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_6lda808d_3comem"s
ef">s64_3co>tetrefb5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lockFIRSTkMOUNT_DONALBNOQUEUs "> panockFIRSTkMOUNT_DONAelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_6lda8089
st_3cove_flagf="fs/gfs2mem"s
5" cl&"v2class="commelf="f2/lock_dm.ref
s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf="fB_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3coize()nf-&/e:n classasm_3coizesm_3*ples6nt32_ss="ls="comment"> * gbclat_gen * gfs2_5cfs7s="L16te_7="L56" cla9*
9s64asm_3ccomulnc_wafs]-&g"an clasa>asm_3ccomulnelf="fB_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3coize()nf-&/e:n classasm_3coizesm_3*ples6nt32_ss="ls="comment"> * gbclat_gen * gfs2_5cfs7s="L16te_7="L56" cla9*lier.s64ui>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of9href="fs/9f_d76677/774a href="s
<97gfs2/lock_7>e betwee7n the current 9"comment"9> *77678/778
stats pan class="comment"> "fB_Sples6g_bitslmhl "> pan class="comment"> *  gfs2_7nda10e &q7re in units of9hsref">in9ref77679/724a href="fs/g9/lock97srespinuhptre" name="L2erroumment"> * gswrite()nf-&/e:n clasent"> * * gswritelf="f2/lock_dm.ref
dbclas_gen="fs/gfs2/lock_bb_bitslmhl "> pan class="comment"> * gfs2_6>fs80f">i6fs/8fs2/lock_d9dex])9 &g78680/78);
78681/78  v2.6.18.32.93statss64contter oddsl="l5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D | class="sreflagLKF_V* gfs2_6>fs80f">i6fs/8fs2/lock_d9dte locki9ng 7868in712 v2.6.18.32.93d_3couhptreptre" name="L2erroua hl- 19"n class="comment"> * gfs2_6n  7">#in6an>78ine" name92="line" 9nam786856783
 * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
 ae ect oude.s2_l->=ass="sref">derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f80e &q7> *8running av92e9
9*
9stats hss="lef">s64control"a hs; 9)5="comment"> * gsdps="lef">s64sdp.ref-&/ex" class="sre s64D pan class="comment"> ALBNOQUEUs/gfs2/lock_6  pan class=VALBLKt"> * gfs2_7/1f80e &q7> *8running av92lier.sterrogen="fs/gfs2/lock_dvba hl- 19"n class="comment"> * gfs2_6n  7">#in6an>78ine" name92ref="fs/90stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
 ae  ;d\nq" NL2_l->=ass="sref">derrouhptre" name="L2erroua hl-"> pan class="comment"> * gfs2_7/1f80e &q7> *8running av92comment"91688/784a href="fs/g9=ins<9sf">stgfs2_7/1f80e &q7> *8running av92sref">in9ref78689;784a href="s
<98gotonf">statsfuhptre" name="L2erroua hl-"> pan class="comment">  gfs2_7/1f80e &q7> *8running av9dex])9 &g79690/724
  1733"8id="L33" c92.6.23"
	9  >7969t;71"+code=inLex"9/lock99"> * gfs2_7>2f802>>>>>>>>>>>>.s2_lkstats i8d="L27com8ent"> *>>>>>>>>* No s2_lkstatsda10;
  289
>>>>>>>>* (unlIfshougot b*po sacfshodesmbine"largd romlot number.  (NBcsrolmlot numbers lvb,NLat 1ef="+code=s" 7/6f80e &q7re 8n units of9*
9>>>>>>>>* agaiIfsyet,efir* &q7r jids lvb,NLat 0,s2 hjid =lmlot - 1ef="+code=s" 7>da10;
  28>>>>>>>>* and updato wby *ef="+code=s" 7>7f80="L16te_8tats(s9"L10">  190e betwee7n the current 9"L11">  191
st#def pan class="cRECOVER_SIZA_INCotonf16lock_7>e betwee7n the current 9"sref">in9eef78699/794a href="fs/g9/lock99lm.c#lock_7l9 betwee7ot;< pan class="comment"> ,estrucbkss/gfs2/lock_wri"d mlotc_wafs]-&g"an ci"d mlotf=f="*ss/gfs2/lock_wr lotmhl "> pan class lotmt"> Vgf/pre> pan> ae()ef="03/41/bca801807c83252fdf8a1894fd96e8bd80b6_3/10a h>ock_7l9 betwee7ot;<7969t;71"+code=inLex"10a >>10af">stats pan classnum_ lotm"> * gfs2_6n  7">#in6an>78ine" name10a2href="i10ag 79692/792 v2.6.18.32.10ag >10aon>>>ref="f7nas1">  1733" id="L33" c10a3href="i10aam796956793 v2.6.18.32.10aam>10as="commelf="ustrucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sref">i10a4href="i10a10aref">st_3cove_flagf="fs/gfs2nt32_ss="ls="comment"> * gbclat_gen=*ss/gfs2/lock_wr ubmync_wafs]-&g"an coubmynelf="> hss="lef">s64 * gfs2_5cfs77ex" 6cla77="sref">i10a5href="i10aa 7969t;795/gfs2/lock_d10aa >10asreerrouhptre" name="L2errount32_ss="ls="comment"> * gbclat_gen=*ss/gfs2/lock_wrcomulnc_wafs]-&g"an ccomulnelf="> hss="lef">s64 * gfs2_5cfs77ex" 6cla77="sref">i10a6href="i10aan79696/794a hrn class=10aan>10asre6 s64uint32_ss="ls="comment"> * gbclat_gen="fs/gfs2/lock_boldcoize()nf-&/e:n clasoldcoizeLKF_VALBERTrefbef">s6newcoize()nf-&/e:n clasnewcoize"> * gfs2_5cfs77ex" 6cla77="sref">i10a7href="i10a10agotonf">stats gbkss/gfs2/lock_wri()nf-&/e:n clasiLKF_VALBERTrefbef">s6max_jiddsl="l5="commentax_jid"> * gfs2_5cfs77ex" 6cla77="sref">i10a8href="i10a
10af">stgfs2_7/1f80e &q7> *8running av10a9href="i10aef78699/794a href="fs/g10aef>10asrespinuhptre" name="L2erroumax_jiddsl="l5="commentax_jid"> *"> * gfs2_5e/g70e &q7re idex" class101 href="i10clu8d710/814a href="fs/g10clu>10clrespinuhptreLexr">s64sdp.refi()nf-&/e:n clasiLKF_"> * kss/gfs2/lock_wri()nf-&/e:n clasiLKF_ier_sizr="fs/gfs2/locnum_ lotmhl "> pan classnum_ lotm"> * kss/gfs2/lock_wri()nf-&/e:n clasiLKF_++ href="f7nas1">  1733" id="L33" c10c1href="i10="i8c711/814a href="s10cf">stats *"er_sizr="fs/gfs2/loc lotmhl "> pan class lotmt"> [fs/gfs2/lock_dvi()nf-&/e:n clasiLKF_].zr="fs/gfs2/loc lothl "> pan class lot"> *"- 1eef="f7nas1">  1733" id="L33" c10c2href="i10hre8f712/812>an class=10hre>10c">"> p" class="srei="inuhptre" name="L2erroumax_jiddsl="l5="commentax_jid"> *"> zr="fs/gfs2/loc lotmhl "> pan class lotmt"> [fs/gfs2/lock_dvi()nf-&/e:n clasiLKF_].zr="fs/gfs2/loc lothl "> pan class lot"> *"- 1 gfs2_5e/g70e &q7re idex" class1013href="i10a h8r7156813+code=ingt=a10a h>10chref="fs/gfs2/lock_72as1s="sr6e g76ck to upd10c4href="i10a h8r714/814a href="fs/g10a h>10cgfs2/lock_6k h80210c5href="i10="f8s71t;8e5+code=inde=i10="f>10csreerrouhptre" name="L2errouoldcoize()nf-&/e:n clasoldcoizeLKF_ofs2/lock_dm.ref
nsm_3cize()nf-&/e:n classasm_3coizesm_3 gfs2_5e/g70e &q7re idex" class1016href="i10#L189716/824a href="+cod10#L1>10c"> * gfs2_5cfs78clas6s="79ine" name10c7href="i10fs28/717/824a href="fs/g10fs2>10cgotonf">stats ptrdst(ds/gfs2/locoldcoize()nf-&/e:n clasoldcoizeLKF_oover=r" name="L2erroumax_jiddsl="l5="commentax_jid"> *"+ 1eef="f7nas1">  1733" id="L33" c10c8href="i10sys8.718/814a href="fs/g10sys>10cf">stats10clm.c#lock_7l9 betwee7ot;< *ofs2/lock_dm.ref
 pan class="cRECOVER_SIZA_INCoton gfs2_5e/g70e &q7re idex" class1021href="i10+co8d72t;81"> pan class=10+co>10l"> * gfs2_7>2f80210l">d_3couhptre" name="L2errousubmync_wafs]-&g"an coubmynelf="> hss="lef">s64s64sdp.refnewcoize()nf-&/e:n clasnewcoize"> *o*Sples6nt32_ss="ls="comment"> * gbclat_gen VALBERTrefbef">s6GFP_NOF_LF_BS.ref-&" clGFP_NOF_t"> * gfs2_7/1f80e &q7> *8running av10l3href="i10d_3comem"s
ef">s64_3cocomulnc_wafs]-&g"an ccomulnelf="> hss="lef">s64s64sdp.refnewcoize()nf-&/e:n clasnewcoize"> *o*Sples6nt32_ss="ls="comment"> * gbclat_gen VALBERTrefbef">s6GFP_NOF_LF_BS.ref-&" clGFP_NOF_t"> * gfs2_7/1f80e &q7> *8running av10l4href="i10"> 8 72f=824a href="fs/g10"> >10lref">st_3coveg"Lee" name="L2errousubmync_wafs]-&g"an coubmynelf="||"e" name="L2erroucomulnc_wafs]-&g"an ccomulnelf= href="f7nas1">  1733" id="L33" c1025href="i10 to8u72="825+code=inde=i10 to>10lf">statss64sdp.ref-ubmync_wafs]-&g"an coubmynelf=* gfs2_7/1f80e &q7> *8running av10l6href="i10mme8t72id826a href="fs/g10mme>10lgotonf">statss64sdp.refcomulnc_wafs]-&g"an ccomulnelf=  gfs2_7/1f80e &q7> *8running av10l7href="i10>
<8 72il824a href="fs/g10>
<>10lgotonf">statss64sdp.refENOMEMc_wafs]-&g"an cENOMEMoton gfs2_5e/g70e &q7re idex" class1028href="i10 an8 728/824a href="fs/g10 an>10lhref="fs/gfs2/lock_7l9 betwee7ot;<10* >d_3couhptre" name="L2errousin_a hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av10*1href="i10" n8m731/83"> pan class=10" n>10*srecontmer oddst(ds/gfs2/locmemcpydsl="l5="commentemcpy"lef">s64sdp.ref-ubmync_wafs]-&g"an coubmynelf=_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf="f2/lock_dm.ref
s6nt32_ss="ls="comment"> * gbclat_gen * gfs2_7cda10e &q7> * running av10*2href="i10nam8=732/824a hrf">stats10nam>10*">d_3couhptre" name="L2errou>emcpydsl="l5="commentemcpy"lef">s64sdp.refcomulnc_wafs]-&g"an ccomulnelf=_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3ccomulnc_wafs]-&g"an clasa>asm_3ccomulnelf="f2/lock_dm.ref
s6nt32_ss="ls="comment"> * gbclat_gen * gfs2_7cda10e &q7> * running av10*3href="i10a/s8p7356873+code=infs/g10a/s>10*">d_3comem"s
ef">s64_3cokfree()nf-&/e:n claskfree"lef">s64sdp.refa pan class="commensm_3cover_spinrefbef">s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf=* gfs2_7cda10e &q7> * running av10*4href="i10ef=8f734/83s/gfs2/lock_d10ef=>10*ref">st_3cove_flagf="fs/gfs2kfree()nf-&/e:n claskfree"lef">s64sdp.refa pan class="commensm_3cover_spinrefbef">s64asm_3ccomulnc_wafs]-&g"an clasa>asm_3ccomulnelf=* gfs2_7cda10e &q7> * running av10*5href="i1010*sreerrouhptre" name="L2erroua pan class="commensm_3cover_spinrefbef">s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf="> zr="fs/gfs2/loc ubmync_wafs]-&g"an coubmynelf= gfs2_7cda10e &q7> * running av10*6href="i10d t8e736/83L/gfs2/lock_d10d t>10*sre6 s64uia pan class="commensm_3cover_spinrefbef">s64asm_3ccomulnc_wafs]-&g"an clasa>asm_3ccomulnelf="> zr="fs/gfs2/loccomulnc_wafs]-&g"an ccomulnelf= gfs2_7cda10e &q7> * running av10*7href="i10ne"8n737/837/gfs2/lock_d10ne">10** gbclamsleep_i odrruptibfs/a pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3cize()nf-&/e:n classasm_3coizesm_3"> zr="fs/gfs2/locnewcoize()nf-&/e:n clasnewcoize"> * gfs2_5cfs77ex" 6cla77="sref">i1038href="i10str8t738/838/gfs2/lock_d10str>10*f">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of10*9href="i10ano8e739/834 v2.6.18.32.10ano>10*gotonf">statsfuhptre* gfs2_5e/g70e &q7re idex" class104 href="i102">8 74t;84);
>102"oton/lock_7l9 betwee7ot;<102"> * gfs2_7>2f802d_3mmetic s="l _spinrefbef">s6freek/a>nsm_3cize()nf-&/e:n clasfreek/a>nsm_3cizelf="fstrucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3eef="f7nas1">  1733" id="L33" c1043href="i10ref8"6456843
102">d_3ref="f7nas1">  1733" id="L33" c1044href="i10ref8"64f=844a href="fs/g10ref>102ref">st_3cove_flagf="fs/gfs2kfree()nf-&/e:n claskfree"lef">s64sdp.refa pan class="commensm_3cover_spinrefbef">s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf=* gfs2_7cda10e &q7> * running av1045href="i10id=8L64t;8e5+codn class=10id=>102sreerrouhptre" name="L2erroukfree()nf-&/e:n claskfree"lef">s64sdp.refa pan class="commensm_3cover_spinrefbef">s64asm_3ccomulnc_wafs]-&g"an clasa>asm_3ccomulnelf=* gfs2_7cda10e &q7> * running av1046href="i10/a>8<646/84"+code=inLex"10/a>>102sre6 s64uia pan class="commensm_3cover_spinrefbef">s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf="> zr="fs/gfs2/locNULNL.ref-&/ex" claNULN"> * gfs2_5cfs77ex" 6cla77="sref">i1047href="i10=in8e647/844a href="fs/g10=in>102* gbclamsleep_i odrruptibfs/a pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3comulnc_wafs]-&g"an clasa>asm_3ccomulnelf="> zr="fs/gfs2/locNULNL.ref-&/ex" claNULN"> * gfs2_5cfs77ex" 6cla77="sref">i1048href="i10las8=64 r844a href="fs/g10las>102f">statsnsm_3cize()nf-&/e:n classasm_3coizesm_3"> * gfs2_5e/g70e &q7re idex" class1049href="i10dex8/649/844a href="fs/g10dex>1029oton/lock_7l9 betwee7ot;<[>10aon>>>>>>>>>* cleagen soon bsscsrolcallo;befit does i8="l"a h2_lks*ef="+code=s" 7>7f80="L16te_8tats(s10a2href="i10ng 7t652/724a href="a hr10ng >10asrecontmem"s
ef">s8532/ass="srecass10a3href="i10_7/1f8>210a3>d_3mmetic s="l _spinrefbef">s6gi"d "a h2_l)prep()nf-&/e:n clasgi"d "a h2_l)prep"lef"s="l *ss/gfs2/lock_wrarg()nf-&/e:n clasargsm_3eef="f7nas1">  1733" id="L33" c1054href="i10
>>ref="f7nas1">  1733" id="L33" c10a5href="i1010asreerrouhptrestrucbkss/gfs2/lock_wr8532_sb hs;ri"vese5="co8532_sb ref="*ss/gfs2/lock_wr "> pan class="comment"> "> zr="fs/gfs2/locarg()nf-&/e:n clasargsm_3 gfs2_5e/g70e &q7re idex" class1056href="i10pan7
656/724a hrn class=10pan>10a6reerrouhptrestrucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sref">i1057href="i10k_d7m657/724a href="s10agfs2/lock_7>e betwee7n the current 10a8href="i10> *7T65 r788
 *>10af">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av1059href="i10ref7>659/75"+code=index"10ref>10asrespinuhptre" name="L2erroua pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3cover_ba hsa hl "> pan clasdex];
nsm_3cover_ss=rta hl iid=sref">stats * running av106 href="i10 &g7;660/764a href="Lex"10 &g>10 &">stats * gDFL_BLF_B_LF_BS="fs/gfs2/lockn clRECOVERYLBNOQUEUs "> panockn clRECOVERYt"> Vfs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_6lda808>10 "> * gfs2_7>2f80210 ">d_3couhptreptree" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockMOUNT_DONALBNOQUEUs "> panockMOUNT_DONAelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * ||lock_6k h802 *sd rtrefLF_B_LF_BS="fs/gfs2/lockFIRSTkMOUNTLBNOQUEUs "> panockFIRSTkMOUNTelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * href="f7nas1">  1733" id="L33" c1064href="i10

10 mmelf="rol">vearrhptre" name="L2fs_e>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of10 5href="i1010 f">stats10 6reerrouhptre/lock_7l9 betwee7ot;< * gDFL_BLF_B_LF_BS="fs/gfs2/lock_ FL_BLF_B_LF_BS.ref-&" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7nda10e &q7re in units of10 8href="i10> *76668/724a href="fs/g10> *>10 f">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1069href="i10ref76669/764a href="fs/g10ref>10 9oton/lock_7l9 betwee7ot;<>10 on>>>>>>>>>* cleagen soon bsscsrolcallo;afodr "a h2_l)prepzhao;bee>>*ompleoudeon all i8=">>>ce membersmment"> e=s" 7>7f80="L16te_8tats(s10 2href="i10ng 7767in772>an class=10ng >10 on>>>>>>>>>>>>>.s2_lkstatsidtatifieslmlot/jid ofsmentudemembers*ef="+code=s" 7>7f80="L16te_8tats(s1073href="i10nam776756773+cod class="10nam>10 gfs2/lock_7/4f8d="L26ef"8s, uns10 4href="i10
s6gi"d "a h2_l) lothl "> pan classgi"d "a h2_l) lot"lef"s="l *ss/gfs2/lock_wrarg()nf-&/e:n clasargsm_3,estrucbkss/gfs2/lock_wri"d mlotc_wafs]-&g"an ci"d mlotf=f="*ss/gfs2/lock_wr lots; 9)5" cl&"v2cllotf=f=eef="f7nas1">  1733" id="L33" c1075href="i1010 5 >>>ref="f7nas1">  1733" id="L33" c1076href="i10pan77676/724a href="+cod10pan>10 6reerrouhptrestrucbkss/gfs2/lock_wr8532_sb hs;ri"vese5="co8532_sb ref="*ss/gfs2/lock_wr "> pan class="comment"> "> zr="fs/gfs2/locarg()nf-&/e:n clasargsm_3 gfs2_5e/g70e &q7re idex" class1077href="i10f_d76677/774a href="s10 7reerrouhptrestrucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sref">i1078href="i10> *77678/778
 *>10 f">stats *"> zr="fs/gfs2/loc lots; 9)5" cl&"v2cllotf=f=cover_spinrefbef">s6slothl "> pan class lot"> *"- 1 gfs2_5e/g70e &q7re idex" class1079href="i10ref77679/724a href="fs/g10ref>10 lm.c#lock_7l9 betwee7ot;<statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av1081href="i10  >78681/78  v2.6.18.32.10  >>10 srecontmer od ptrdst(ds/gfs2/loca pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3cize()nf-&/e:n classasm_3coizesm_3"er_sizr="fs/gfs2/locjiddsl="l5="commenjid"> *"+ 1ehref="f7nas1">  1733" id="L33" c1082href="i10ng 7868in712 v2.6.18.32.10ng >10 ">"> p" class="srei="ef">s64_3corrse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre=s" 7>7f80="L16te_8tats(s10 3href="i10nam786856783
10 s="commelf="uuuuuuuuu"srei="ef">s64_3cojiddsl="l5="commenjid"> *_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3ccover_ba hsa hl "> pan clasdex];
s64asm_3coize()nf-&/e:n classasm_3coizesm_3* gfs2_7cda10e &q7> * running av1084href="i10
vearrhptre" name="L2fs_e>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1085href="i1010 f">stats10 6reerrouhptre/lock_7l9 betwee7ot;<688/784a href="fs/g10110 8recontmer od ptrdst(ds/gfs2/loca pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3cubmync_wafs]-&g"an clasa>asm_3coubmynelf=[fs/gfs2/lock_dvjiddsl="l5="commenjid"> *]ehref="f7nas1">  1733" id="L33" c1089href="i10ref78689;784a href="s10 s="sref">stcontuhptre" name="L2errourrsose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %u"a h2_l) lothjid =ass="e="li;u\nq"sprevi;u\nq"ef">derrouhptre=s" 7>7f80="L16te_8tats(s109 href="i10 &g79690/724
10 &="commelf="uuuuuuuuu"srei=""ef">s64_3cojiddsl="l5="commenjid"> *_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3ccover_ba hsa hl "> pan clasdex];
s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf=[fs/gfs2/lock_dvjiddsl="l5="commenjid"> *]e gfs2_7nda10e &q7re in units of1091href="i10  >7969t;71"+code=inLex"10  >>10 1reerrouhptre/lock_7l9 betwee7ot;<10 ">d_3couhptre" name="L2erroua pan class="commensm_3cover_spinrefbef">s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf=[fs/gfs2/lock_dvjiddsl="l5="commenjid"> *]ofs2/lock_dm.ref
nsm_3cover_ba hsa hl "> pan clasdex];
 * running av10 3href="i10nam796956793 v2.6.18.32.10nam>10 ">d_3comem"s
ef">s64_3co>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1094href="i10
10 4oton/lock_7l9 betwee7ot;<10 "> * gfs2_6>fs80;
10 " >>>>>>>>>* and updato wbysscsrolcallo;afodr "a h2_l) lothi no fodr it>*ompleous i8="l"a h2_lks*ef="+code=s" 7>7f80="L16te_8tats(s1097href="i10010 gfs2/lock_7>e betwee7n the current 1098href="i101
10 8>d_3mmetic s="l _spinrefbef">s6gi"d "a h2_l)> ae() "> pan classgi"d "a h2_l)ment">ef"s="l *ss/gfs2/lock_wrarg()nf-&/e:n clasargsm_3,estrucbkss/gfs2/lock_wri"d mlotc_wafs]-&g"an ci"d mlotf=f="*ss/gfs2/lock_wr lotmhl "> pan class lotmt"> Vr gbkss/gfs2/lock_wrnum_ lotmhl "> pan classnum_ lotm"> *re=s" 7>7f80="L16te_8tats(s1099href="i10eef78699/794a href="fs/g10eef>10 s="sref">stcontuhptreeeeeeeeeeeeeee gbkss/gfs2/lock_wroul) lothl "> pan classoul) lot
 * gbclat_gen="fs/gfs2/lock_b="leretior_spin.ref "> pa="leretiorf=f=eef="f7nas1">  1733" id="L33" c11a href="i11a hr8699/794a href="fs/g11a h>11a m.c#ref="f7nas1">  1733" id="L33" c11a1href="i11a >7969t;71"+code=inLex"11a >>11af">stats pan class="comment"> "> zr="fs/gfs2/locarg()nf-&/e:n clasargsm_3 gfs2_5e/g70e &q7re idex" class11a2href="i11ag 79692/792 v2.6.18.32.11ag >1102">stats pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sref">i11a3href="i11aam796956793 v2.6.18.32.11aam>110gfs2/lock_7/4f8d="L26ef"8s, uns11a4href="i11a11aref">st_3cove_>>>>>* and updato wbysscensurmbine"ls jid arraysehreblargdcenoughs*ef="+code=s" 7>7f80="L16te_8tats(s11a5href="i11aa 7969t;795/gfs2/lock_d11aa >11asreerrouhptre" name="L2errou gDFa>asm_3coize()nf-&/e:n clas gDFa>asm_3coize"lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" is/gfs2/lock_wr lotmhl "> pan class lotmt"> Vrss/gfs2/lock_wrnum_ lotmhl "> pan classnum_ lotm"> ** gfs2_7nda10e &q7re in units of11a6href="i11aan79696/794a hrn class=11aan>110"> * gfs2_5cfs78clas6s="79ine" name11a7href="i11a110* gbclamsleep_i odrruptibfs/>spin hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av11a8href="i11a
110f">statsnsm_3cover_ss=rta hl iid=sref">stats zr="fs/gfs2/loc="leretior_spin.ref "> pa="leretiorf=f= gfs2_7cda10e &q7> * running av11a9href="i11aef78699/794a href="fs/g11aef>110lm.c#lock_7l9 betwee7ot;<nsm_3ect o_ss=rta hl iid=sref">statsect ot"> *href="f7nas1">  1733" id="L33" c11c1href="i11="i8c711/814a href="s11cf">statsnsm_3ect o_ss=rta hl iid=sref">statsect ot"> "> zr="fs/gfs2/loc="leretior_spin.ref "> pa="leretiorf=f= gfs2_7cda10e &q7> * running av11c2href="i11hre8f712/812>an class=11hre>11c">"> p" class="srei="" name="L2erroua pan class="commensm_3corol"a hs;fs/gfs2/lockjiddsl="l5="commenockjidt"> "> zr="fs/gfs2/locoul) lothl "> pan classoul) lot
11c5href="i11="f8s71t;8e5+code=inde=i11="f>11csreerrouhptreptree" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockUNMOUNTLBNOQUEUs "> panockUNMOUNTt"> Vrs/gfs2/lock_dm.ref
 pan class="comment"> * lock_6k h80211c6href="i11#L189716/824a href="+cod11#L1>111gotonf">stats Vrs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd s; 9)ediwor; 9)5" cl&"v2clasd s; 9)ediwor;t"> Vr0* gfs2_7cda10e &q7> * running av11c7href="i11fs28/717/824a href="fs/g11fs2>111gfs2/lock_7>e betwee7n the current 11c8href="i11sys8.718/814a href="fs/g11sys>111f">stats * gDFL_BLF_B_LF_BS="fs/gfs2/lockn clRECOVERYLBNOQUEUs "> panockn clRECOVERYt"> Vfs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_6lda808111srespinuhptre" name="L2errousmp_mb__ fodr_6ear_bit; 9)5="comment">smp_mb__ fodr_6ear_bit;LF_B_* gfs2_6lda80811lmreerrouhptre" name="L2errouwake_uptrefb5="comment"> *; ke_uptreflf="fs/gfs2/lock_dm.ref
s64asm_3ccover_flagf.ref &> pan class="comment"> VALBERTrefbef">s64ockn clRECOVERYLBNOQUEUs "> panockn clRECOVERYt"> * gfs2_6lda808 pan class=11+co>112srecontmer oddst(ds/gfs2/loc>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of11l2href="i11hre8=722/824a href="ggfs11hre>11l">d_3/lock_72as1s="sr6e g76ck to upd11l3href="i11, uns11l4href="i11"> 8 72f=824a href="fs/g11"> >112" >>>>>>>>>* (unlIfshougot /* &q7rclass="cbinreadzhao;a joulnall"a h2_lkscomulns*ef="+code=s" 7>7f80="L16te_8tats(s1125href="i11 to8u72="825+code=inde=i11 to>112"> * gfs2_6>fs80;
s6gi"d "a h2_ly3comulnc_wafs]-&g"an cgi"d "a h2_ly3comulnlf="fstrucbkss/gfs2/lock_wr8532_sb hs;ri"vese5="co8532_sb ref="*ss/gfs2/lock_wr "> pan class="comment"> ,eunsignedo gbkss/gfs2/lock_wrjiddsl="l5="commenjid"> *re=s" 7>7f80="L16te_8tats(s11l7href="i11>
<8 72il824a href="fs/g11>
<>11lgotonf">stats7f80="L16te_8tats(s11l8href="i11 an8 728/824a href="fs/g11 an>11lhref=ref="f7nas1">  1733" id="L33" c11l9href="i11. W8 729/824a href="fs/g11. W>112srespinuhptrestrucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sref">i113 href="i11* r8n730/834a href="fs/g11* r>113&> * gfs2_7>2f802 pan class=11" n>113srecontmer od ptrdst(ds/gfs2/locsd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockNOkn clOP_LF_BS.ref-&" cl&"v2NOkn clOP_t"> Vrs/gfs2/lock_dm.ref
 pan class="comment"> * lock_6k h80211*2href="i11nam8=732/824a hrf">stats11nam>113">"> p" class="srei="fuhptr gfs2_7nda10e &q7re in units of11*3href="i11a/s8p7356873+code=infs/g11a/s>113gfs2/lock_7/4f8d="L26ef"8s, uns11*4href="i11ef=8f734/83s/gfs2/lock_d11ef=>113ref">st_3cove_>>>>>* and updato wbysscdon't chrebaboutbine""a h2_lksof own joulnalldu="lo ect os*ef="+code=s" 7>7f80="L16te_8tats(s11*5href="i11113sreerrouhptreptress/gfs2/lock_wrjiddsl="l5="commenjid"> * =fs2/lock_dm.ref
  lock_6k h80211*6href="i11d t8e736/83L/gfs2/lock_d11d t>113gotonf">stats113gfs2/lock_7>e betwee7n the current 1138href="i11str8t738/838/gfs2/lock_d11str>11*f">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av11*9href="i11ano8e739/834 v2.6.18.32.11ano>11*gotonf">stats ptrdst(ds/gfs2/locsd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockFIRSTkMOUNTLBNOQUEUs "> panockFIRSTkMOUNTelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * href="f7nas1">  1733" id="L33" c114 href="i112">8 74t;84);
>114&="commelf="uuuuuuuuudst(ds/gfs2/loc>spin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1141href="i11 cl8s74t;84  v2.6.18.32.11 cl>114f">stats"> p" class/lock_72as1s="sr6e g76ck to upd1143href="i11ref8"6456843
1143otonf">stats ptrdst(ds/gfs2/loca pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3cize()nf-&/e:n classasm_3coizesm_3"er_sizr="fs/gfs2/locjiddsl="l5="commenjid"> *"+ 1ehref="f7nas1">  1733" id="L33" c1144href="i11ref8"64f=844a href="fs/g11ref>112ref">st_3coveuuuuuuuudst(ds/gfs2/locrrse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre=s" 7>7f80="L16te_8tats(s1145href="i11id=8L64t;8e5+codn class=11id=>114f">stats *_SIZE="fs/gfs2/loa pan class="commensm_3cover_spinrefbef">s64asm_3coize()nf-&/e:n classasm_3coizesm_3* gfs2_7cda10e &q7> * running av1146href="i11/a>8<646/84"+code=inLex"11/a>>114gotonf">statss64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1147href="i11=in8e647/844a href="fs/g11=in>114gotonf">stats114href="fs/gfs2/lock_7l9 betwee7ot;<115mreerrouhptre" name="L2errourrsose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %u"a h2_lhjid =ass="ecomulnh=ass=ssref">derrouhptre" name="L2erroujiddsl="l5="commenjid"> *re=s" 7>7f80="L16te_8tats(s1151href="i11a>[8a651/854a href="s[>115f">statsderrouhpt : id_3cover gener="lon %usuccessef">derrouhpt* gfs2_7nda10e &q7re in units of11a2href="i11ng 7t652/724a href="a hr11ng >11asrecontmem"s
ef">s8532/ass="srecass11a3href="i11_7/1f8>2115">d_3comem"s
ef">s64_3coa pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3comulnc_wafs]-&g"an clasa>asm_3ccomulnelf=[fs/gfs2/lock_dvjiddsl="l5="commenjid"> *]ofs2/lock_dm.ref
 * running av1154href="i11
11a5href="i1111asreerrouhptre_>>>>>* and updato wbysscGAVEUP means anoiner nef
 is""a h2_l"lo ine"joulnal; delay oulf="+code=s" 7>7f80="L16te_8tats(s1156href="i11pan7
656/724a hrn class=11pan>115" >>>>>>>>>* and updato wby           nexNLattemptpo s"a h2_lhit,po sgivmbine"oiner nef
 a chancmbiof="+code=s" 7>7f80="L16te_8tats(s1157href="i11k_d7m657/724a href="s11agfs2/>>>>>>* and updato wby           finish;beftry"lo agains*ef="+code=s" 7>7f80="L16te_8tats(s11a8href="i11> *7T65 r788
 *>115f">stgfs2_7/1f80e &q7> *8running av1159href="i11ref7>659/75"+code=index"11ref>115gotonf">stats ptre" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockUNMOUNTLBNOQUEUs "> panockUNMOUNTt"> Vrs/gfs2/lock_dm.ref
 pan class="comment"> * lock_6k h802116 href="i11 &g7;660/764a href="Lex"11 &g>116&="commelf="uuuuuuuuudst(ds/gfs2/locqueue_delayed_wor; 9)5" cl&"v2claqueue_delayed_wor;LF_B_LF_BS="fs/gfs2/8532_s; 9)ediwqhs;ri"vese5="co8532_s; 9)ediwqt"> Vrs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd s; 9)ediwor; 9)5" cl&"v2clasd s; 9)ediwor;t"> Vlock_6k h8021161href="i11  >7 66  764a href="fs/g11  >>116f">statsd_3couhptre" name="L2errousspin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1163href="i11nam766656773+code=infs/g11nam>11 s="co/lock_7l9 betwee7ot;<
116gfs2/lock_6k h80211 5href="i1111 f">sts; stestrucbkss/gfs2/lock_wri"d " ids>>ce_op pan class="commi"d " ids>>ce_op >d_3c_spinrefbef">s6gi"d " ids>>ce_op pan class="commgi"d " ids>>ce_op sm_3 =fref="f7nas1">  1733" id="L33" c11 6href="i11#an7
666/76"+code=inLex"11#an>11 6reerrouhptre.zr="fs/gfs2/loc"a h2_l)prep()nf-&/e:n clas"a h2_l)prep"lef"> zr="fs/gfs2/loc=d"d "a h2_l)prep()nf-&/e:n clasgi"d "a h2_l)prep"lefVlock_6k h8021167href="i11k_d76667/724a href="fs/g11k_d>11 * gbclamsleep.zr="fs/gfs2/loc"a h2_l) lothl "> pan class"a h2_l) lot"lef"> zr="fs/gfs2/loc=d"d "a h2_l) lothl "> pan classgi"d "a h2_l) lot"lefVlock_6k h8021168href="i11> *76668/724a href="fs/g11> *>11 f">stats ae() "> pan class"a h2_l)ment">ef"> zr="fs/gfs2/loc=d"d "a h2_l)> ae() "> pan classgi"d "a h2_l)ment">efVlock_6k h8021169href="i11ref76669/764a href="fs/g11ref>11 9oton/ gfs2_7nda10e &q7re in units of117 href="i11 &g77670/724a href="fs/g11 &g>11 &> * gfs2_7>2f802>11 on>>>mmetic  gbkss/gfs2/lock_wrgi"d ect o_ss=rta hl iid=gi"d ect olf="fstrucbkss/gfs2/lock_wr8532_sb hs;ri"vese5="co8532_sb ref="*ss/gfs2/lock_wr "> pan class="comment"> ,es; stechar"*ss/gfs2/lock_wrtable() "> pan classtablet">  lock_6k h80211 2href="i11ng 7767in772>an class=11ng >11 on>>>ref="f7nas1">  1733" id="L33" c1173href="i11nam776756773+cod class="11nam>117">d_3comem"s
strucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sref">i11 4href="i11
st_3covechar"_spinrefbef">s6clustev5="comment"> * clustevelf=[fs/gfs2/lock_dvGFS2="comNAME_LEN5="comment"> * GFS2="comNAME_LEN"> *] gfs2_5cfs77ex" 6cla77="sref">i11 5href="i11117sreerrouhptres; stechar"*ss/gfs2/lock_wrfs=indv5="comment"> * g=ind"> * gfs2_5cfs77ex" 6cla77="sref">i11 6href="i11pan77676/724a href="+cod11pan>117sre6 s64uint32_ss="ls="comment"> * gbclat_gen="fs/gfs2/lock_bcover_flagf.ref &> pomment">  gfs2_5cfs77ex" 6cla77="sref">i11 7href="i11f_d76677/774a href="s11 7reerrouhptre gbkss/gfs2/lock_wrerrov5="comment"> * errov"> *_SIZE="fs/gfs2/loop 3comulnc_wafs]-&g"an cop 3comulnt">  gfs2_5cfs77ex" 6cla77="sref">i11 8href="i11> *77678/778
 *>117f">stgfs2_7/1f80e &q7> *8running av1179href="i11ref77679/724a href="fs/g11ref>117srespinuhptre">>>>>* and updato wbyssf="+code=s" 7>7f80="L16te_8tats(s118 href="i11 &g78680/78);
st>>>>>>* and updato wby         *e gitialle< e2_lythingf="+code=s" 7>7f80="L16te_8tats(s1181href="i11  >78681/78  v2.6.18.32.11  >>118on>>>>>>>>>* cleagen soon b         *ef="+code=s" 7>7f80="L16te_8tats(s1182href="i11ng 7868in712 v2.6.18.32.11ng >118srecontmem"s
ef">s8532/ass="srecass11 3href="i11nam786856783
118">d_3comem"s
ef">s64_3coINIT_DELAYED_WORKc_wafs]-&g"an cINIT_DELAYED_WORKlf="fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd s; 9)ediwor; 9)5" cl&"v2clasd s; 9)ediwor;t"> VrLF_BS="fs/gfs2/8532_s; 9)edifun=c_wafs]-&g"an c8532_s; 9)edifun=t"> * gfs2_7nda10e &q7re in units of1184href="i11
ve" name="L2fs_e>spin hs;_ git 9)5" cl&"v2class="comme_ gitlf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1185href="i11118sreerrouhptre" name="L2erroua pan class="commensm_3cover_flagf="fs/gfs2/lock_nsm_3cover_flagf.ref &> pan class="comment"> "> * gfs2_5e/g70e &q7re idex" class1186href="i11pan7868id784a href="+cod11pan>118sre6 s64uia pan class="commensm_3cover_spinrefbef">s64asm_3cect o_ss=rta hl iid=sref">statsect ot"> "> * gfs2_5e/g70e &q7re idex" class1187href="i110118* gbclamsleep_i odrruptibfs/a pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3cover_ss=rta hl iid=sref">stats * gfs2_5e/g70e &q7re idex" class1188href="i111688/784a href="fs/g111118f">statsnsm_3cover_ba hsa hl "> pan clasdex];
118srespinuhptre" name="L2erroua pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3cize()nf-&/e:n classasm_3coizesm_3"> * gfs2_5e/g70e &q7re idex" class119 href="i11 &g79690/724
119mreerrouhptre" name="L2erroua pan class="commensm_3cover_spinrefbef">s64asm_3coubmync_wafs]-&g"an clasa>asm_3coubmynelf="> zr="fs/gfs2/locNULNL.ref-&/ex" claNULN"> * gfs2_5cfs77ex" 6cla77="sref">i1191href="i11  >7969t;71"+code=inLex"11  >>119srecontmer oddst(ds/gfs2/loca pan class="commensm_3corol"a hs;fs/gfs2/lock/a>nsm_3comulnc_wafs]-&g"an clasa>asm_3ccomulnelf="> zr="fs/gfs2/locNULNL.ref-&/ex" claNULN"> * gfs2_5cfs77ex" 6cla77="sref">i1192href="i11ng 79692/792 v2.6.18.32.11ng >119srecontmem"s
ef">s8532/ass="srecass11 3href="i11nam796956793 v2.6.18.32.11nam>11 ">d_3comem"s
ef">s64_3coerrov5="comment"> * errov"> *"> zr="fs/gfs2/loc gDFa>asm_3coize()nf-&/e:n clas gDFa>asm_3coize"lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" is/gfs2/lock_wrNULNL.ref-&/ex" claNULN"> *Vr0* gfs2_7cda10e &q7> * running av1194href="i11
119mmelf="rol">v ptrdst(ds/gfs2/locerrov5="comment"> * errov"> * lock_6k h8021195href="i11119f">stats * gfs2_5cfs77ex" 6cla77="sref">i1196href="i11pan79696/794a hrn class=11pan>119"> * gfs2_5cfs78clas6s="79ine" name1197href="i110119* gbclamsleep_>>>>>* and updato wbyssf="+code=s" 7>7f80="L16te_8tats(s1198href="i111
11 8>d_3>>>>>>* and updato wby         *eprephrebi"d newc" ids>>ce arent""+code=s" 7>7f80="L16te_8tats(s1199href="i11eef78699/794a href="fs/g11eef>11 s="sr>>>>>>* cleagen soon b         *ef="+code=s" 7>7f80="L16te_8tats(s12a href="i12a hr8699/794a href="fs/g12a h>120&> * gfs2_7>2f802>120srecontmer oddst(ds/gfs2/locfs=indv5="comment"> * g=ind"> *"> zr="fs/gfs2/loc trchv5="comment"> *  trchv"lef">s64sdp.reftable() "> pan classtablet"> " id_3cover gener="lon ':'rrouhpt* gfs2_7nda10e &q7re in units of12a2href="i12ag 79692/792 v2.6.18.32.12ag >120">d_3couhptreptree" name="L2erroufs=indv5="comment"> * g=ind"> *ehref="f7nas1">  1733" id="L33" c12a3href="i12aam796956793 v2.6.18.32.12aam>120s="commelf="uuuuuuuuu" name="L2erroufssose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %uno  g=ind fct dsref">derrouhpt* gfs2_7nda10e &q7re in units of12a4href="i12a120ref">st_3coveuuuuuuuudst(ds/gfs2/locerrov5="comment"> * errov"> *"> -dst(ds/gfs2/locEINVANL.ref-&/ex" claEINVAN"> * gfs2_5cfs77ex" 6cla77="sref">i12a5href="i12aa 7969t;795/gfs2/lock_d12aa >120f">stats * gfs2_5cfs77ex" 6cla77="sref">i12a6href="i12aan79696/794a hrn class=12aan>1206reerrouhptre/lock_7l9 betwee7ot;<s64sdp.refclustev5="comment"> * clustevelf=Vr0,Sples64sdp.refclustev5="comment"> * clustevelf=)* gfs2_7nda10e &q7re in units of12a8href="i12a
120f">statss64sdp.refclustev5="comment"> * clustevelf=Vr>s64sdp.reftable() "> pan classtablet"> " ir="fs/gfs2/loc trler_spin.ref "> pa trler"lef">s64sdp.reftable() "> pan classtablet"> ) - ir="fs/gfs2/loc trler_spin.ref "> pa trler"lef">s64sdp.reffs=indv5="comment"> * g=ind"> *e* gfs2_7nda10e &q7re in units of12a9href="i12aef78699/794a href="fs/g12aef>120srespinuhptre" name="L2erroufs=indv5="comment"> * g=ind"> *++ gfs2_7nda10e &q7re in units of121 href="i12clu8d710/814a href="fs/g12clu>121&> * gfs2_7>2f802121srecontmer oddst(ds/gfs2/locfover_flagf.ref &> pomment"> "> zr="fs/gfs2/locn clLSockF_LF_BS.ref-&" cl& clLSockF_t"> "| zr="fs/gfs2/locn clLSockNEWEXCNL.ref-&/ex" clan clLSockNEWEXCN"> * gfs2_5cfs77ex" 6cla77="sref">i12c2href="i12hre8f712/812>an class=12hre>121srecontmem"s
ef">s8532/ass="srecass1213href="i12a h8r7156813+code=ingt=a12a h>12chref="fs/gfs2_>>>>>* and updato wbyssf="+code=s" 7>7f80="L16te_8tats(s12c4href="i12a h8r714/814a href="fs/g12a h>121" >>>>>>>>>* (unlIfshougot          *ecreate/join i8=">>>cef="+code=s" 7>7f80="L16te_8tats(s12c5href="i12="f8s71t;8e5+code=inde=i12="f>12csreer>>>>>>* cleagen soon b         *ef="+code=s" 7>7f80="L16te_8tats(s12c6href="i12#L189716/824a href="+cod12#L1>121"> * gfs2_5cfs78clas6s="79ine" name12c7href="i12fs28/717/824a href="fs/g12fs2>121* gbclamsleep_i odrruptibfs/errov5="comment"> * errov"> *"> zr="fs/gfs2/loci"d newc" ids>>cepan class="commi"d newc" ids>>ce"lef">s64sdp.reffs=indv5="comment"> * g=ind"> *" ir="fs/gfs2/locclustev5="comment"> * clustevelf=Vr>s64sdp.reffover_flagf.ref &> pomment"> Vr>s64sdp.refGn clLVB_SIZE5="comment"> * Gn clLVB_SIZE">efVlock_6k h80212c8href="i12sys8.718/814a href="fs/g12sys>121f">stats>ce_op pan class="commgi"d " ids>>ce_op sm_3" ir="fs/gfs2/loc &/gfs2/lock_dlc#L9ng"L24" s/gfs2/lock_dm.ref
 Vlock_6k h80212c9href="i12e_g8f719/814a href="fs/g12e_g>121s="sref">stcontuhptreeeeeeeeeeeeeeeoooos/gfs2/lock_dm.ref
 * gfs2_7nda10e &q7re in units of122 href="i12lm.8c720/824a href="fs/g12lm.>122lrespinuhptreptredst(ds/gfs2/locerrov5="comment"> * errov"> * href="f7nas1">  1733" id="L33" c1221href="i12+co8d72t;81"> pan class=12+co>122f">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
>ce errov =ass="sref">derrouhptre" name="L2errouerrov5="comment"> * errov"> *  gfs2_7nda10e &q7re in units of1222href="i12hre8=722/824a href="ggfs12hre>122">"> p" class="srei="goto="fs/gfs2/lock_bcail_free()nf-&/e:n clascail_free"> * gfs2_5cfs77ex" 6cla77="sref">i12l3href="i12 8 72f=824a href="fs/g12"> >122gfs2/lock_6k h8021225href="i12 to8u72="825+code=inde=i12 to>122sreerrouhptreptress/gfs2/lock_wrop 3comulnc_wafs]-&g"an cop 3comulnt"> "er_si0 href="f7nas1">  1733" id="L33" c1226href="i12mme8t72id826a href="fs/g12mme>122gotonf">stats>>>>* and updato wbyssf="+code=s" 7>7f80="L16te_8tats(s12l7href="i12>
<8 72il824a href="fs/g12>
<>122gfs2/>>>>>>* and updato wby                 scsroldoes not supplrtSop lcallbaids,f="+code=s" 7>7f80="L16te_8tats(s12l8href="i12 an8 728/824a href="fs/g12 an>1228>d_3>>>>>>* and updato wby                 scoldbi"d s; 9)edd"L16 s; 9)eddehrebused,>try withoutbop .f="+code=s" 7>7f80="L16te_8tats(s12l9href="i12. W8 729/824a href="fs/g12. W>122s="sr>>>>>>* cleagen soon b                 sef="+code=s" 7>7f80="L16te_8tats(s123 href="i12* r8n730/834a href="fs/g12* r>123&="commelf="uuuuuuuuudst(ds/gfs2/locfssose v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" id_3cover gener="lon %usrol" ids>>ce op lnot usedsref">derrouhpt* gfs2_7nda10e &q7re in units of12*1href="i12" n8m731/83"> pan class=12" n>123f">statss64sdp.refa pan class="commensm_3* gfs2_7nda10e &q7re in units of12*2href="i12nam8=732/824a hrf">stats12nam>123">"> p" class="srei="zr="fs/gfs2/loc gDFrefb5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lockNOkn clOP_LF_BS.ref-&" cl&"v2NOkn clOP_t"> Vrs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7nda10e &q7re in units of12*3href="i12a/s8p7356873+code=infs/g12a/s>123s="commelf="uuuuuuuuufuhptr * gfs2_5e/g70e &q7re idex" class12*4href="i12ef=8f734/83s/gfs2/lock_d12ef=>123ref">st_3cove/lock_72as1s="sr6e g76ck to upd12*5href="i12123"> * gfs2_6>fs80;
123gotonf">stats ptre" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/SDF2NOJOURNALIDb5="comment"> *SDF2NOJOURNALIDt"> Vrs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd cover_flagf.ref &> psd cover"> *e*href="f7nas1">  1733" id="L33" c12*7href="i12ne"8n737/837/gfs2/lock_d12ne">123gotonf">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
>ce op ldisallowhjid pcometsref">derrouhpt* gfs2_7nda10e &q7re in units of12*8href="i12str8t738/838/gfs2/lock_d12str>123f">stats * errov"> *"> -dst(ds/gfs2/locEINVANL.ref-&/ex" claEINVAN"> * gfs2_5cfs77ex" 6cla77="sref">i12*9href="i12ano8e739/834 v2.6.18.32.12ano>123s="sref">stcontuhptregoto="fs/gfs2/lock_bcail_release()nf-&/e:n clascail_release"> * gfs2_5cfs77ex" 6cla77="sref">i124 href="i122">8 74t;84);
>124&="commelf="u/lock_72as1s="sr6e g76ck to upd1241href="i12 cl8s74t;84  v2.6.18.32.12 cl>124f">stlock_72as1s="sr6e g76ck to upd1242href="i12elv8i64in842 v2.6.18.32.12elv>124">"> p" classe>>>>>* and updato wbyssf="+code=s" 7>7f80="L16te_8tats(s1243href="i12ref8"6456843
1243oton>>>>>>* (unlIfshougot          *ec; 9)ediect o() usesec; 9)edi_8tapo sdeterm7f80="L16te_8tats(s1244href="i12ref8"64f=844a href="fs/g12ref>124" >>>>>>>>>* (unlIfshougot          *ei nofov laodr ect os, waitsofov any""a h2_l"eseo sbe 6ear_ed.f="+code=s" 7>7f80="L16te_8tats(s1245href="i12id=8L64t;8e5+codn class=12id=>124sreer>>>>>>* cleagen soon b         *ef="+code=s" 7>7f80="L16te_8tats(s1246href="i12/a>8<646/84"+code=inLex"12/a>>124"> * gfs2_5cfs78clas6s="79ine" name1247href="i12=in8e647/844a href="fs/g12=in>124* gbclamsleep_i odrruptibfs/errov5="comment"> * errov"> *"> zr="fs/gfs2/locc; 9)ediect o5="comment"> * c; 9)ediect o"lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24* gfs2_7nda10e &q7re in units of1248href="i12las8=64 r844a href="fs/g12las>1248recontmer od ptrdst(ds/gfs2/locerrov5="comment"> * errov"> * href="f7nas1">  1733" id="L33" c1249href="i12dex8/649/844a href="fs/g12dex>124s="sref">stcontuhptre" name="L2errourrse v5="comment"> * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
derrouhptre" name="L2errouerrov5="comment"> * errov"> *  gfs2_7nda10e &q7re in units of125 href="i12a h8e650/854a href="fs/g12a h>125&="commelf="uuuuuuuuugoto="fs/gfs2/lock_bcail_release()nf-&/e:n clascail_release"> * gfs2_5cfs77ex" 6cla77="sref">i1251href="i12a>[8a651/854a href="s[>1251reerrouhptre/lock_7l9 betwee7ot;<s8532/ass="srecass12a3href="i12_7/1f8>2125">d_3comem"s
ef">s64_3coa pan class="commensm_3corol"a hs;fs/gfs2/lockfirst_flagf.ref &> pan first"> *"> !e" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockFIRSTkMOUNTLBNOQUEUs "> panockFIRSTkMOUNTelf="fs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_5cfs77ex" 6cla77="sref">i1254href="i12
ve" name="L2fs_e6ear_bit; 9)5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/SDF2NOJOURNALIDb5="comment"> *SDF2NOJOURNALIDt"> Vrs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd cover_flagf.ref &> psd cover"> *e gfs2_5cfs77ex" 6cla77="sref">i1255href="i12125sreerrouhptre" name="L2errousmp_mb__ fodr_6ear_bit; 9)5="comment">smp_mb__ fodr_6ear_bit;LF_B_* gfs2_6lda808s64uiwake_uptrefb5="comment"> *; ke_uptreflf="fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd cover_flagf.ref &> psd cover"> *re" name="L2errouSDF2NOJOURNALIDb5="comment"> *SDF2NOJOURNALIDt"> * gfs2_6lda808125* gbclamsleepfuhptr * gfs2_5e/g70e &q7re idex" class12a8href="i12> *7T65 r788
 *>125f">stgfs2_7/1f80e &q7> *8running av1259href="i12ref7>659/75"+code=index"12ref>125goton"fs/gfs2/lock_bcail_release()nf-&/e:n clascail_release"> *:gfs2_7/1f80e &q7> *8running av126 href="i12 &g7;660/764a href="Lex"12 &g>126mreerrouhptre" name="L2erroui"d "aleasec" ids>>cepan class="commi"d "aleasec" ids>>ce"lef">s64sdp.refa pan class="commensm_3corol"a hs;fs/gfs2/lockmmec_wafs]-&g"an clasmmet"> , 2* gfs2_6lda808>126f">st"fs/gfs2/lock_bcail_free()nf-&/e:n clascail_free"> *:gfs2_7/1f80e &q7> *8running av1262href="i12ng 7666in764a href="a hr12ng >126">d_3couhptre" name="L2errourreeFa>asm_3coize()nf-&/e:n clasrreeFa>asm_3coize"lef">s64sdp.refa pan class="commensm_3* gfs2_7nda10e &q7re in units of1263href="i12nam766656773+code=infs/g12nam>12 s="co"fs/gfs2/lock_bcail()nf-&/e:n clascail"> *:gfs2_7/1f80e &q7> *8running av1264href="i12

1264 gbclamsleepfuhptr " name="L2errouerrov5="comment"> * errov"> * gfs2_7nda10e &q7re in units of1265href="i1212 f">st/lock_7l9 betwee7ot;<126"> * gfs2_5cfs78clas6s="79ine" name1267href="i12k_d76667/724a href="fs/g12k_d>12 * gbcmmetic s="l _spinrefbef">s6gi"d first)> ae() "> pan classgi"d first)> ae"lef"strucbkss/gfs2/lock_wr8532_sb hs;ri"vese5="co8532_sb ref="*ss/gfs2/lock_wr "> pan class="comment">  lock_6k h8021268href="i12> *76668/724a href="fs/g12> *>126href=ref="f7nas1">  1733" id="L33" c1269href="i12ref76669/764a href="fs/g12ref>126srespinuhptrestrucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sL33" c127 href="i12 &g77670/724a href="fs/g12 &g>127lrespinuhptrepgbkss/gfs2/lock_wrerrov5="comment"> * errov"> * gfs2_5cfs77ex" 6cla77="sL33" c1271href="i12  >7767  77"+code=index"12  >>127f">stlock_72as1s="sr6e g76ck to upd12 2href="i12ng 7767in772>an class=12ng >127">d_3couhptreptre" name="L2errousd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockNOkn clOP_LF_BS.ref-&" cl&"v2NOkn clOP_t"> Vrs/gfs2/lock_dm.ref
 pan class="comment"> * lock_6k h8021273href="i12nam776756773+cod class="12nam>127s="commelf="uuuuuuuuufuhptr gfs2_5cfs77ex" 6cla77="sL33" c1274href="i12
12 5href="i12127sreerrouhptre" name="L2errouerrov5="comment"> * errov"> *"> zr="fs/gfs2/locc; 9)edifirst)> ae() "> pan classc; 9)edifirst)> ae"lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24* gfs2_7nda10e &q7re in units of12 6href="i12pan77676/724a href="+cod12pan>127gotonf">stats ptr" name="L2errouerrov5="comment"> * errov"> * gfs2_7nda10e &q7re in units of12 7href="i12f_d76677/774a href="s127gotonf">stats * gsdps="lef">s64sdp.ref-&/gfs2/lock_dlc#L9ng"L24" idcontrols;
 ae errov =ass="sref">derrouhptre" name="L2errouerrov5="comment"> * errov"> *  gfs2_7nda10e &q7re in units of12 8href="i12> *77678/778
 *>127f">st/lock_7l9 betwee7ot;<12 &">stmmetic s="l _spinrefbef">s6gi"d unect o_ss=rta hl iid=gi"d unect o"lef"strucbkss/gfs2/lock_wr8532_sb hs;ri"vese5="co8532_sb ref="*ss/gfs2/lock_wr "> pan class="comment">  lock_6k h8021281href="i12  >78681/78  v2.6.18.32.12  >>128on>>>ref="f7nas1">  1733" id="L33" c1282href="i12ng 7868in712 v2.6.18.32.12ng >1282respinuhptrestrucbkss/gfs2/lock_wr"d " idstrucb_spin.ref "> pand " idstrucbref="*ss/gfs2/lock_wra pan class="commensm_3 =fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd " idstrucb_spin.ref "> pasd " idstrucb"> * gfs2_5cfs77ex" 6cla77="sL33" c1283href="i12nam786856783
128gfs2/lock_7/4f8d="L26ef"8s, uns1284href="i12
v ptrdst(ds/gfs2/locsd rtrefb5="comment"> *sd rtrefLF_B_LF_BS="fs/gfs2/lockNOkn clOP_LF_BS.ref-&" cl&"v2NOkn clOP_t"> Vrs/gfs2/lock_dm.ref
 pan class="comment"> * lock_6k h8021285href="i12128f">stats * gfs2_5cfs77ex" 6cla77="sref">i1286href="i12pan7868id784a href="+cod12pan>128"> * gfs2_5cfs78clas6s="79ine" name1287href="i120128* gbclamsleep_>>>>>* and updato wbyss waitofov 8532_s; 9)ediwqeo sbe > ae with this ect os*ef="+code=s" 7>7f80="L16te_8tats(s1288href="i121688/784a href="fs/g121128f">stgfs2_7/1f80e &q7> *8running av1289href="i12ref78689;784a href="s128srespinuhptre" name="L2errou>spin hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7cda10e &q7> * running av129 href="i12 &g79690/724
129mreerrouhptre" name="L2errou gDFrefb5="comment"> * gDFL_BLF_B_LF_BS="fs/gfs2/lockUNMOUNTLBNOQUEUs "> panockUNMOUNTt"> Vrs/gfs2/lock_dm.ref
 pan class="comment"> * gfs2_7cda10e &q7> * running av1291href="i12  >7969t;71"+code=inLex"12  >>129srecontmer oddst(ds/gfs2/locsspin_una hs; 9)5" cl&"v2class="commelf="fs/gfs2/lock_dm.ref
s64asm_3cover_spin.ref "> pan class="comment"> * gfs2_7nda10e &q7re in units of1292href="i12ng 79692/792 v2.6.18.32.12ng >129">d_3couhptre" name="L2errourlush_delayed_wor; 9)5" cl&"v2clarlush_delayed_wor;lf="fs/gfs2/lock_dm.ref
< "> pan class="comment"> cover_spinrefbef">s6sd s; 9)ediwor; 9)5" cl&"v2clasd s; 9)ediwor;t"> * gfs2_7nda10e &q7re in units of1293href="i12nam796956793 v2.6.18.32.12nam>129gfs2/lock_7/4f8d="L26ef"8s, uns1294href="i12
129mmelf="rol">v_>>>>>* and updato wbyss ect oed " idei noc; 9)edi_8tapwillsbe purgedo gcsrol"a h2_lks*ef="+code=s" 7>7f80="L16te_8tats(s1295href="i12129f">st"fs/gfs2/lock_brelease()nf-&/e:n clasrelease"> *:gfs2_7/1f80e &q7> *8running av1296href="i12pan79696/794a hrn class=12pan>129gotonf">stats ptr" name="L2erroua pan class="commensm_3corol"a hs;fs/gfs2/lockmmec_wafs]-&g"an clasmmet"> *href="f7nas1">  1733" id="L33" c1297href="i120129gotonf">stats>cepan class="commi"d "aleasec" ids>>ce"lef">s64sdp.refa pan class="commensm_3corol"a hs;fs/gfs2/lockmmec_wafs]-&g"an clasmmet"> , 2* gfs2_6lda808stats "> zr="fs/gfs2/locNULNL.ref-&/ex" claNULN"> * gfs2_5cfs77ex" 6cla77="sref">i1299href="i12eef78699/794a href="fs/g12eef>129srespinuhptre/lock_7l9 betwee7ot;<>130srecontmer oddst(ds/gfs2/locfreeFa>asm_3coize()nf-&/e:n clasrreeFa>asm_3coize"lef">s64sdp.refa pan class="commensm_3* gfs2_7nda10e &q7re in units of13a2href="i13ag 79692/792 v2.6.18.32.13ag >130">d_3/lock_72as1s="sr6e g76ck to upd13a3href="i13aam796956793 v2.6.18.32.13aam>130gfs2/lock_7/4f8d="L26ef"8s, uns13a4href="i13a130ref">mmetic s; ste>s64sdp.refmatch_tables="ls="comment"> match_tables=recon" name="L2erroui"d token pan class="commi"d token t"> "> ref="f7nas1">  1733" id="L33" c13a5href="i13aa 7969t;795/gfs2/lock_d13aa >130f">statsderrouhpt}Vlock_6k h80213a6href="i13aan79696/794a hrn class=13aan>1306reerrouhptre{n" name="L2errouOptkiddsl="l5="commenOptkid"L24" idcontrols;
derrouhpt}Vlock_6k h80213a7href="i13a130* gbclamsleep{n" name="L2errouOptkfirst_flagf.ref &> pOptkfirst"L24" idcontrols;
derrouhpt}Vlock_6k h80213a8href="i13a
130f">stats * Optknodiv"L24" idcontrols;
derrouhpt}Vlock_6k h80213a9href="i13aef78699/794a href="fs/g13aef>130srespinuhptre{n" name="L2errouOptke v5="comment"> * Optke v"> *re" name="L2errouNULNL.ref-&/ex" claNULN"> * }Vlock_6k h802131 href="i13clu8d710/814a href="fs/g13clu>131&> * / gfs2_7nda10e &q7re in units of13c1href="i13="i8c711/814a href="s131f">stlock_72as1s="sr6e g76ck to upd13c2href="i13hre8f712/812>an class=13hre>131srecos; stestrucbkss/gfs2/lock_wrnd " idop pan class="commnd " idop recon" name="L2errou8532_i"d op pan class="commg532_i"d op t"> "> ref="f7nas1">  1733" id="L33" c1313href="i13a h8r7156813+code=ingt=a13a h>13chref="fs/gfs2.zr="fs/gfs2/loc"d proto_=indv5="comment"> *"d proto_=indt"> "> zdcontrols;
derrouhptre=s" 7>7f80="L16te_8tats(s13c4href="i13a h8r714/814a href="fs/g13a h>1314ref="fs/gfs2.zr="fs/gfs2/loc"d ect o_ss=rta hl iid=smsect ot"> "> _spinrefbef">s6gi"d ect o_ss=rta hl iid=gi"d ect olf="re=s" 7>7f80="L16te_8tats(s13c5href="i13="f8s71t;8e5+code=inde=i13="f>1315ref="fs/gfs2.zr="fs/gfs2/loc"d first)> ae() "> pan class"d first)> ae"lef"> _spinrefbef">s6gi"d first)> ae() "> pan classgi"d first)> ae"lefre=s" 7>7f80="L16te_8tats(s13c6href="i13#L189716/824a href="+cod13#L1>1316reerrouhptre.zr="fs/gfs2/loc"d "a h2_ly3comuln() "> pan class"d "a h2_ly3comuln"lef"> _spinrefbef">s6gi"d "a h2_ly3comuln() "> pan classgi"d "a h2_ly3comuln"lefre=s" 7>7f80="L16te_8tats(s13c7href="i13fs28/717/824a href="fs/g13fs2>131* gbclamsleep.zr="fs/gfs2/loc"d unect o_ss=rta hl iid="d unect o"lef"> _spinrefbef">s6gi"d unect o_ss=rta hl iid=gi"d unect o"lefre=s" 7>7f80="L16te_8tats(s13c8href="i13sys8.718/814a href="fs/g13sys>131f">stats _spinrefbef">s6gi"d putn hs; 9)5" cl&"v2clagi"d putn hs;"lefre=s" 7>7f80="L16te_8tats(s13c9href="i13e_g8f719/814a href="fs/g13e_g>131s="sref">stco.zr="fs/gfs2/loc"d  hs; 9)5" cl&"v2cla"d  hs;"lef"> _spinrefbef">s6gi"d  hs; 9)5" cl&"v2clagi"d  hs;"lefre=s" 7>7f80="L16te_8tats(s132 href="i13lm.8c720/824a href="fs/g13lm.>132lrespinuhptre.zr="fs/gfs2/loc"d cancml()nf-&/e:n clas"d cancml"lef"> _spinrefbef">s6gi"d cancml()nf-&/e:n clasgi"d cancml"lefre=s" 7>7f80="L16te_8tats(s1321href="i13+co8d72t;81"> pan class=13+co>132f">stats "> s/gfs2/lock_dm.ref
 re=s" 7>7f80="L16te_8tats(s1322href="i13hre8=722/824a href="ggfs13hre>132">"> / gfs2_7nda10e &q7re in units of13l3href="i13, uns13l4href="i13"> 8 72f=824a href="fs/g13"> >132gfs2/
Tne"original LXR softwhrebbybine"ock_7/4f8http://sourcefLXR pdatunity"> *rethis experito wal 2_lsionbbybock_7/4f8mailto:lxv@4a ux.nomm"xv@4a ux.no"> *.
"xv.4a ux.no kindly hostedbbybock_7/4f8http://www.redpill-4a pro.nommRedpill La pro A_t"> Vrprovider of La ux s; suln"lo and opereti; s services sincmb1995.