1<?xml version="1.0" encoding="UTF-8" standalone="no"?> 2<!-- Created with Inkscape (http://www.inkscape.org/) --> 3 4<svg 5 xmlns:dc="http://purl.org/dc/elements/1.1/" 6 xmlns:cc="http://creativecommons.org/ns#" 7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 xmlns:svg="http://www.w3.org/2000/svg" 9 xmlns="http://www.w3.org/2000/svg" 10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 12 width="735.25" 13 height="516.21875" 14 id="svg2" 15 version="1.1" 16 inkscape:version="0.48.3.1 r9886" 17 sodipodi:docname="ReadersPartitionGP1.svg"> 18 <defs 19 id="defs4"> 20 <marker 21 inkscape:stockid="Arrow2Lend" 22 orient="auto" 23 refY="0" 24 refX="0" 25 id="Arrow2Lend" 26 style="overflow:visible"> 27 <path 28 id="path3792" 29 style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" 30 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" 31 transform="matrix(-1.1,0,0,-1.1,-1.1,0)" 32 inkscape:connector-curvature="0" /> 33 </marker> 34 <marker 35 inkscape:stockid="Arrow2Lstart" 36 orient="auto" 37 refY="0" 38 refX="0" 39 id="Arrow2Lstart" 40 style="overflow:visible"> 41 <path 42 id="path3789" 43 style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" 44 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" 45 transform="matrix(1.1,0,0,1.1,1.1,0)" 46 inkscape:connector-curvature="0" /> 47 </marker> 48 <marker 49 inkscape:stockid="Arrow2Lstart" 50 orient="auto" 51 refY="0" 52 refX="0" 53 id="Arrow2Lstart-4" 54 style="overflow:visible"> 55 <path 56 id="path3789-9" 57 style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" 58 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" 59 transform="matrix(1.1,0,0,1.1,1.1,0)" 60 inkscape:connector-curvature="0" /> 61 </marker> 62 <marker 63 inkscape:stockid="Arrow2Lend" 64 orient="auto" 65 refY="0" 66 refX="0" 67 id="Arrow2Lend-4" 68 style="overflow:visible"> 69 <path 70 id="path3792-4" 71 style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" 72 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" 73 transform="matrix(-1.1,0,0,-1.1,-1.1,0)" 74 inkscape:connector-curvature="0" /> 75 </marker> 76 </defs> 77 <sodipodi:namedview 78 id="base" 79 pagecolor="#ffffff" 80 bordercolor="#666666" 81 borderopacity="1.0" 82 inkscape:pageopacity="0.0" 83 inkscape:pageshadow="2" 84 inkscape:zoom="1.3670394" 85 inkscape:cx="367.26465" 86 inkscape:cy="258.46182" 87 inkscape:document-units="px" 88 inkscape:current-layer="g4433-6" 89 showgrid="false" 90 inkscape:window-width="1351" 91 inkscape:window-height="836" 92 inkscape:window-x="438" 93 inkscape:window-y="335" 94 inkscape:window-maximized="0" 95 fit-margin-top="5" 96 fit-margin-left="5" 97 fit-margin-right="5" 98 fit-margin-bottom="5" /> 99 <metadata 100 id="metadata7"> 101 <rdf:RDF> 102 <cc:Work 103 rdf:about=""> 104 <dc:format>image/svg+xml</dc:format> 105 <dc:type 106 rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 107 <dc:title /> 108 </cc:Work> 109 </rdf:RDF> 110 </metadata> 111 <g 112 inkscape:label="Layer 1" 113 inkscape:groupmode="layer" 114 id="layer1" 115 transform="translate(-29.15625,-185.59375)"> 116 <flowRoot 117 xml:space="preserve" 118 id="flowRoot2985" 119 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol"><flowRegion 120 id="flowRegion2987"><rect 121 id="rect2989" 122 width="82.85714" 123 height="11.428572" 124 x="240" 125 y="492.36218" /></flowRegion><flowPara 126 id="flowPara2991" /></flowRoot> <g 127 id="g4433" 128 transform="translate(2,-12)"> 129 <text 130 sodipodi:linespacing="125%" 131 id="text2993" 132 y="-261.66608" 133 x="436.12299" 134 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 135 xml:space="preserve" 136 transform="matrix(0,1,-1,0,0,0)"><tspan 137 y="-261.66608" 138 x="436.12299" 139 id="tspan2995" 140 sodipodi:role="line">synchronize_rcu()</tspan></text> 141 <g 142 id="g4417" 143 transform="matrix(0,1,-1,0,730.90257,222.4928)"> 144 <path 145 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow2Lstart);marker-end:url(#Arrow2Lend)" 146 d="M 97.580736,477.4048 327.57913,476.09759" 147 id="path2997" 148 inkscape:connector-curvature="0" 149 sodipodi:nodetypes="cc" /> 150 <path 151 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 152 d="m 96.752718,465.38398 0,22.62742" 153 id="path4397" 154 inkscape:connector-curvature="0" 155 sodipodi:nodetypes="cc" /> 156 <path 157 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 158 d="m 328.40703,465.38397 0,22.62742" 159 id="path4397-5" 160 inkscape:connector-curvature="0" 161 sodipodi:nodetypes="cc" /> 162 </g> 163 </g> 164 <text 165 xml:space="preserve" 166 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 167 x="112.04738" 168 y="268.18076" 169 id="text4429" 170 sodipodi:linespacing="125%"><tspan 171 sodipodi:role="line" 172 id="tspan4431" 173 x="112.04738" 174 y="268.18076">WRITE_ONCE(a, 1);</tspan></text> 175 <text 176 xml:space="preserve" 177 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 178 x="112.04738" 179 y="487.13766" 180 id="text4441" 181 sodipodi:linespacing="125%"><tspan 182 sodipodi:role="line" 183 id="tspan4443" 184 x="112.04738" 185 y="487.13766">WRITE_ONCE(b, 1);</tspan></text> 186 <text 187 xml:space="preserve" 188 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 189 x="255.60869" 190 y="297.29346" 191 id="text4445" 192 sodipodi:linespacing="125%"><tspan 193 sodipodi:role="line" 194 id="tspan4447" 195 x="255.60869" 196 y="297.29346">r1 = READ_ONCE(a);</tspan></text> 197 <text 198 xml:space="preserve" 199 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 200 x="255.14423" 201 y="554.61786" 202 id="text4449" 203 sodipodi:linespacing="125%"><tspan 204 sodipodi:role="line" 205 id="tspan4451" 206 x="255.14423" 207 y="554.61786">WRITE_ONCE(c, 1);</tspan></text> 208 <text 209 xml:space="preserve" 210 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 211 x="396.10254" 212 y="370.71124" 213 id="text4453" 214 sodipodi:linespacing="125%"><tspan 215 sodipodi:role="line" 216 id="tspan4455" 217 x="396.10254" 218 y="370.71124">WRITE_ONCE(d, 1);</tspan></text> 219 <text 220 xml:space="preserve" 221 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 222 x="396.10254" 223 y="572.13617" 224 id="text4457" 225 sodipodi:linespacing="125%"><tspan 226 sodipodi:role="line" 227 id="tspan4459" 228 x="396.10254" 229 y="572.13617">r2 = READ_ONCE(c);</tspan></text> 230 <text 231 xml:space="preserve" 232 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 233 x="112.08231" 234 y="213.91006" 235 id="text4461" 236 sodipodi:linespacing="125%"><tspan 237 sodipodi:role="line" 238 id="tspan4463" 239 x="112.08231" 240 y="213.91006">thread0()</tspan></text> 241 <text 242 xml:space="preserve" 243 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 244 x="252.34512" 245 y="213.91006" 246 id="text4461-6" 247 sodipodi:linespacing="125%"><tspan 248 sodipodi:role="line" 249 id="tspan4463-0" 250 x="252.34512" 251 y="213.91006">thread1()</tspan></text> 252 <text 253 xml:space="preserve" 254 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 255 x="396.42557" 256 y="213.91006" 257 id="text4461-2" 258 sodipodi:linespacing="125%"><tspan 259 sodipodi:role="line" 260 id="tspan4463-2" 261 x="396.42557" 262 y="213.91006">thread2()</tspan></text> 263 <rect 264 style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 265 id="rect4495" 266 width="724.25244" 267 height="505.21201" 268 x="34.648232" 269 y="191.10612" /> 270 <path 271 style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 272 d="m 183.14066,191.10612 0,504.24243" 273 id="path4497" 274 inkscape:connector-curvature="0" 275 sodipodi:nodetypes="cc" /> 276 <path 277 style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 278 d="m 325.13867,191.10612 0,504.24243" 279 id="path4497-5" 280 inkscape:connector-curvature="0" 281 sodipodi:nodetypes="cc" /> 282 <text 283 xml:space="preserve" 284 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 285 x="111.75929" 286 y="251.53981" 287 id="text4429-8" 288 sodipodi:linespacing="125%"><tspan 289 sodipodi:role="line" 290 id="tspan4431-9" 291 x="111.75929" 292 y="251.53981">rcu_read_lock();</tspan></text> 293 <text 294 xml:space="preserve" 295 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 296 x="396.10254" 297 y="353.91556" 298 id="text4429-8-9" 299 sodipodi:linespacing="125%"><tspan 300 sodipodi:role="line" 301 id="tspan4431-9-4" 302 x="396.10254" 303 y="353.91556">rcu_read_lock();</tspan></text> 304 <text 305 xml:space="preserve" 306 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 307 x="396.10254" 308 y="587.40289" 309 id="text4429-8-9-3" 310 sodipodi:linespacing="125%"><tspan 311 sodipodi:role="line" 312 id="tspan4431-9-4-4" 313 x="396.10254" 314 y="587.40289">rcu_read_unlock();</tspan></text> 315 <text 316 xml:space="preserve" 317 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 318 x="111.75929" 319 y="501.15311" 320 id="text4429-8-9-3-1" 321 sodipodi:linespacing="125%"><tspan 322 sodipodi:role="line" 323 id="tspan4431-9-4-4-6" 324 x="111.75929" 325 y="501.15311">rcu_read_unlock();</tspan></text> 326 <path 327 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 328 d="m 33.941125,227.87568 724.941765,0" 329 id="path4608" 330 inkscape:connector-curvature="0" 331 sodipodi:nodetypes="cc" /> 332 <text 333 xml:space="preserve" 334 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 335 x="394.94427" 336 y="331.66351" 337 id="text4648" 338 sodipodi:linespacing="125%"><tspan 339 sodipodi:role="line" 340 id="tspan4650" 341 x="394.94427" 342 y="331.66351">QS</tspan></text> 343 <path 344 sodipodi:type="arc" 345 style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 346 id="path4652" 347 sodipodi:cx="358.85669" 348 sodipodi:cy="142.87541" 349 sodipodi:rx="10.960155" 350 sodipodi:ry="10.253048" 351 d="m 358.86939,132.62237 a 10.960155,10.253048 0 1 1 -0.0228,0" 352 transform="translate(36.441125,185.60612)" 353 sodipodi:start="4.7135481" 354 sodipodi:end="10.994651" 355 sodipodi:open="true" /> 356 <text 357 xml:space="preserve" 358 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 359 x="112.11968" 360 y="523.77856" 361 id="text4648-4" 362 sodipodi:linespacing="125%"><tspan 363 sodipodi:role="line" 364 id="tspan4650-4" 365 x="112.11968" 366 y="523.77856">QS</tspan></text> 367 <path 368 sodipodi:type="arc" 369 style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 370 id="path4652-7" 371 sodipodi:cx="358.85669" 372 sodipodi:cy="142.87541" 373 sodipodi:rx="10.960155" 374 sodipodi:ry="10.253048" 375 d="m 358.86939,132.62237 a 10.960155,10.253048 0 1 1 -0.0228,0" 376 transform="translate(-246.38346,377.72117)" 377 sodipodi:start="4.7135481" 378 sodipodi:end="10.994651" 379 sodipodi:open="true" /> 380 <path 381 sodipodi:type="arc" 382 style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 383 id="path4652-7-7" 384 sodipodi:cx="358.85669" 385 sodipodi:cy="142.87541" 386 sodipodi:rx="10.960155" 387 sodipodi:ry="10.253048" 388 d="m 358.86939,132.62237 a 10.960155,10.253048 0 1 1 -0.0228,0" 389 transform="translate(-103.65246,190.90878)" 390 sodipodi:start="4.7135481" 391 sodipodi:end="10.994651" 392 sodipodi:open="true" /> 393 <text 394 xml:space="preserve" 395 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 396 x="254.85066" 397 y="336.96619" 398 id="text4648-4-3" 399 sodipodi:linespacing="125%"><tspan 400 sodipodi:role="line" 401 id="tspan4650-4-5" 402 x="254.85066" 403 y="336.96619">QS</tspan></text> 404 <path 405 style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 406 d="m 470.93311,190.39903 0,504.24243" 407 id="path4497-5-6" 408 inkscape:connector-curvature="0" 409 sodipodi:nodetypes="cc" /> 410 <path 411 style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 412 d="m 616.22755,190.38323 0,504.24243" 413 id="path4497-5-2" 414 inkscape:connector-curvature="0" 415 sodipodi:nodetypes="cc" /> 416 <g 417 id="g4433-6" 418 transform="translate(288.0964,78.32827)"> 419 <text 420 sodipodi:linespacing="125%" 421 id="text2993-7" 422 y="-261.66608" 423 x="440.12299" 424 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 425 xml:space="preserve" 426 transform="matrix(0,1,-1,0,0,0)"><tspan 427 y="-261.66608" 428 x="440.12299" 429 id="tspan2995-1" 430 sodipodi:role="line">synchronize_rcu()</tspan></text> 431 <g 432 id="g4417-1" 433 transform="matrix(0,1,-1,0,730.90257,222.4928)"> 434 <path 435 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow2Lstart);marker-end:url(#Arrow2Lend)" 436 d="M 97.580736,477.4048 328.5624,477.07246" 437 id="path2997-2" 438 inkscape:connector-curvature="0" 439 sodipodi:nodetypes="cc" /> 440 <path 441 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 442 d="m 96.752718,465.38398 0,22.62742" 443 id="path4397-3" 444 inkscape:connector-curvature="0" 445 sodipodi:nodetypes="cc" /> 446 <path 447 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 448 d="m 329.39039,465.38397 0,22.62742" 449 id="path4397-5-4" 450 inkscape:connector-curvature="0" 451 sodipodi:nodetypes="cc" /> 452 </g> 453 </g> 454 <text 455 xml:space="preserve" 456 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 457 x="541.70508" 458 y="387.6217" 459 id="text4445-0" 460 sodipodi:linespacing="125%"><tspan 461 sodipodi:role="line" 462 id="tspan4447-5" 463 x="541.70508" 464 y="387.6217">r3 = READ_ONCE(d);</tspan></text> 465 <text 466 xml:space="preserve" 467 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 468 x="541.2406" 469 y="646.94611" 470 id="text4449-6" 471 sodipodi:linespacing="125%"><tspan 472 sodipodi:role="line" 473 id="tspan4451-6" 474 x="541.2406" 475 y="646.94611">WRITE_ONCE(e, 1);</tspan></text> 476 <path 477 sodipodi:type="arc" 478 style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 479 id="path4652-7-7-5" 480 sodipodi:cx="358.85669" 481 sodipodi:cy="142.87541" 482 sodipodi:rx="10.960155" 483 sodipodi:ry="10.253048" 484 d="m 358.86939,132.62237 a 10.960155,10.253048 0 1 1 -0.0228,0" 485 transform="translate(182.44393,281.23704)" 486 sodipodi:start="4.7135481" 487 sodipodi:end="10.994651" 488 sodipodi:open="true" /> 489 <text 490 xml:space="preserve" 491 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 492 x="540.94702" 493 y="427.29443" 494 id="text4648-4-3-1" 495 sodipodi:linespacing="125%"><tspan 496 sodipodi:role="line" 497 id="tspan4650-4-5-7" 498 x="540.94702" 499 y="427.29443">QS</tspan></text> 500 <text 501 xml:space="preserve" 502 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 503 x="686.27747" 504 y="461.83929" 505 id="text4453-7" 506 sodipodi:linespacing="125%"><tspan 507 sodipodi:role="line" 508 id="tspan4455-1" 509 x="686.27747" 510 y="461.83929">r4 = READ_ONCE(b);</tspan></text> 511 <text 512 xml:space="preserve" 513 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 514 x="686.27747" 515 y="669.26422" 516 id="text4457-9" 517 sodipodi:linespacing="125%"><tspan 518 sodipodi:role="line" 519 id="tspan4459-2" 520 x="686.27747" 521 y="669.26422">r5 = READ_ONCE(e);</tspan></text> 522 <text 523 xml:space="preserve" 524 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 525 x="686.27747" 526 y="445.04358" 527 id="text4429-8-9-33" 528 sodipodi:linespacing="125%"><tspan 529 sodipodi:role="line" 530 id="tspan4431-9-4-2" 531 x="686.27747" 532 y="445.04358">rcu_read_lock();</tspan></text> 533 <text 534 xml:space="preserve" 535 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 536 x="686.27747" 537 y="684.53094" 538 id="text4429-8-9-3-8" 539 sodipodi:linespacing="125%"><tspan 540 sodipodi:role="line" 541 id="tspan4431-9-4-4-5" 542 x="686.27747" 543 y="684.53094">rcu_read_unlock();</tspan></text> 544 <text 545 xml:space="preserve" 546 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 547 x="685.11914" 548 y="422.79153" 549 id="text4648-9" 550 sodipodi:linespacing="125%"><tspan 551 sodipodi:role="line" 552 id="tspan4650-7" 553 x="685.11914" 554 y="422.79153">QS</tspan></text> 555 <path 556 sodipodi:type="arc" 557 style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 558 id="path4652-8" 559 sodipodi:cx="358.85669" 560 sodipodi:cy="142.87541" 561 sodipodi:rx="10.960155" 562 sodipodi:ry="10.253048" 563 d="m 358.86939,132.62237 a 10.960155,10.253048 0 1 1 -0.0228,0" 564 transform="translate(326.61602,276.73415)" 565 sodipodi:start="4.7135481" 566 sodipodi:end="10.994651" 567 sodipodi:open="true" /> 568 <text 569 xml:space="preserve" 570 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 571 x="397.85934" 572 y="609.59003" 573 id="text4648-5" 574 sodipodi:linespacing="125%"><tspan 575 sodipodi:role="line" 576 id="tspan4650-77" 577 x="397.85934" 578 y="609.59003">QS</tspan></text> 579 <path 580 sodipodi:type="arc" 581 style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 582 id="path4652-80" 583 sodipodi:cx="358.85669" 584 sodipodi:cy="142.87541" 585 sodipodi:rx="10.960155" 586 sodipodi:ry="10.253048" 587 d="m 358.86939,132.62237 a 10.960155,10.253048 0 1 1 -0.0228,0" 588 transform="translate(39.356201,463.53264)" 589 sodipodi:start="4.7135481" 590 sodipodi:end="10.994651" 591 sodipodi:open="true" /> 592 <text 593 xml:space="preserve" 594 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 595 x="256.75986" 596 y="586.99133" 597 id="text4648-5-2" 598 sodipodi:linespacing="125%"><tspan 599 sodipodi:role="line" 600 id="tspan4650-77-7" 601 x="256.75986" 602 y="586.99133">QS</tspan></text> 603 <path 604 sodipodi:type="arc" 605 style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 606 id="path4652-80-5" 607 sodipodi:cx="358.85669" 608 sodipodi:cy="142.87541" 609 sodipodi:rx="10.960155" 610 sodipodi:ry="10.253048" 611 d="m 358.86939,132.62237 a 10.960155,10.253048 0 1 1 -0.0228,0" 612 transform="translate(-101.74328,440.93395)" 613 sodipodi:start="4.7135481" 614 sodipodi:end="10.994651" 615 sodipodi:open="true" /> 616 <text 617 xml:space="preserve" 618 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 619 x="546.22791" 620 y="213.91006" 621 id="text4461-2-5" 622 sodipodi:linespacing="125%"><tspan 623 sodipodi:role="line" 624 id="tspan4463-2-6" 625 x="546.22791" 626 y="213.91006">thread3()</tspan></text> 627 <text 628 xml:space="preserve" 629 style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Symbol;-inkscape-font-specification:Symbol" 630 x="684.00067" 631 y="213.91006" 632 id="text4461-2-1" 633 sodipodi:linespacing="125%"><tspan 634 sodipodi:role="line" 635 id="tspan4463-2-0" 636 x="684.00067" 637 y="213.91006">thread4()</tspan></text> 638 </g> 639</svg> 640