http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&feed=atom&action=history
NfsRdmaClient/MemRegModes - Revision history
2024-03-29T10:54:50Z
Revision history for this page on the wiki
MediaWiki 1.16.5
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5501&oldid=prev
Chucklever: /* Long-term Plans */
2014-05-30T13:57:22Z
<p><span class="autocomment">Long-term Plans</span></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 13:57, 30 May 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 243:</td>
<td colspan="2" class="diff-lineno">Line 243:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Deprecate then remove</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Remove</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Never intended for production</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Never intended for production</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 249:</td>
<td colspan="2" class="diff-lineno">Line 249:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Deprecate then remove</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Remove</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Safe, but not fast</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Safe, but not fast</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 255:</td>
<td colspan="2" class="diff-lineno">Line 255:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Deprecate then remove</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Remove</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| No value to keeping this</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| No value to keeping this</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 261:</td>
<td colspan="2" class="diff-lineno">Line 261:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Deprecate then remove</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Remove</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally unsafe</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally unsafe</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5500&oldid=prev
Chucklever: /* Long-term Plans */
2014-05-30T13:56:28Z
<p><span class="autocomment">Long-term Plans</span></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 13:56, 30 May 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 268:</td>
<td colspan="2" class="diff-lineno">Line 268:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Known user</del>; RDMA protection on page boundaries only</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Supported in Xen guests</ins>; RDMA protection on page boundaries only</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">FRMR</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">RPCRDMA_FRMR</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 276:</td>
<td colspan="2" class="diff-lineno">Line 276:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally fast and safe, should remain our default</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally fast and safe, should remain our default</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">ALLPHYSICAL</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">RPCRDMA_ALLPHYSICAL</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5496&oldid=prev
Chucklever: /* Long-term Plans */
2014-05-22T15:07:23Z
<p><span class="autocomment">Long-term Plans</span></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 15:07, 22 May 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 279:</td>
<td colspan="2" class="diff-lineno">Line 279:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Deprecate then remove</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Keep</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Exposes all of client's memory</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Can be unsafe, but is broadly compatible</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|}</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|}</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5491&oldid=prev
Chucklever: /* Matrix of Registration Mode Support */
2014-04-21T20:48:48Z
<p><span class="autocomment">Matrix of Registration Mode Support</span></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 20:48, 21 April 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 52:</td>
<td colspan="2" class="diff-lineno">Line 52:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| yes<del class="diffchange diffchange-inline">?</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5476&oldid=prev
Chucklever: /* Long-term Plans */
2014-03-04T01:32:59Z
<p><span class="autocomment">Long-term Plans</span></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 01:32, 4 March 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 230:</td>
<td colspan="2" class="diff-lineno">Line 230:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Long-term Plans ===</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Long-term Plans ===</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>After some discussion on linux-rdma and linux-nfs, we might be able to justify <del class="diffchange diffchange-inline">the following changes</del>.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>After some discussion on linux-rdma and linux-nfs, we might be able to justify <ins class="diffchange diffchange-inline">removing unsafe and deprecated memory registration modes</ins>.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{| class="wikitable"</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{| class="wikitable"</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 279:</td>
<td colspan="2" class="diff-lineno">Line 279:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Keep</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Deprecate then remove</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">Known user</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">Exposes all of client's memory</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|}</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|}</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5475&oldid=prev
Chucklever: /* Long-term Plans */
2014-03-04T01:32:04Z
<p><span class="autocomment">Long-term Plans</span></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 01:32, 4 March 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 235:</td>
<td colspan="2" class="diff-lineno">Line 235:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>! Mode</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>! Mode</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">! Safe</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">! Fast</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>! Long-term</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>! Long-term</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>! Comments</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>! Comments</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_BOUNCEBUFFERS</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_BOUNCEBUFFERS</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| no</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Never intended for production</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Never intended for production</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_REGISTER</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_REGISTER</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| no</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Safe, but not fast</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Safe, but not fast</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MEMWINDOWS</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MEMWINDOWS</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| no</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| No value to keeping this</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| No value to keeping this</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MEMWINDOWS_ASYNC</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MEMWINDOWS_ASYNC</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| no</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Deprecate then remove</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally unsafe</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally unsafe</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MTHCAFMR</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MTHCAFMR</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| no</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Known user; RDMA protection on page boundaries only</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Known user; RDMA protection on page boundaries only</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| FRMR</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| FRMR</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally fast and safe, should remain our default</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Generally fast and safe, should remain our default</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| ALLPHYSICAL</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| ALLPHYSICAL</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| no</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">| yes</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Known user</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Known user</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|}</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|}</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5474&oldid=prev
Chucklever: Clarify a MTHCAFMR limitation
2014-03-03T23:23:27Z
<p>Clarify a MTHCAFMR limitation</p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 23:23, 3 March 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 256:</td>
<td colspan="2" class="diff-lineno">Line 256:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MTHCAFMR</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| RPCRDMA_MTHCAFMR</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| Keep</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| Known user; page<del class="diffchange diffchange-inline">-alignment requirement make it somewhat unsafe</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| Known user; <ins class="diffchange diffchange-inline">RDMA protection on </ins>page <ins class="diffchange diffchange-inline">boundaries only</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>|-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| FRMR</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| FRMR</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5473&oldid=prev
Chucklever: Tom noticed a couple of nits
2014-03-03T23:22:37Z
<p>Tom noticed a couple of nits</p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 23:22, 3 March 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 25:</td>
<td colspan="2" class="diff-lineno">Line 25:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| <del class="diffchange diffchange-inline">yes</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| <ins class="diffchange diffchange-inline">no</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 52:</td>
<td colspan="2" class="diff-lineno">Line 52:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>| yes<ins class="diffchange diffchange-inline">?</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| no</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>| yes</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5466&oldid=prev
Chucklever at 18:34, 3 March 2014
2014-03-03T18:34:35Z
<p></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 18:34, 3 March 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 134:</td>
<td colspan="2" class="diff-lineno">Line 134:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>From Tom Talpey.</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>From Tom Talpey.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div>=<del class="diffchange diffchange-inline">=== Memreg 0: </del>RPCRDMA_BOUNCEBUFFERS <del class="diffchange diffchange-inline">====</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">{| class</ins>=<ins class="diffchange diffchange-inline">"wikitable"</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Pro:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">! Registration mode</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">! Pros</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">! Cons</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">| </ins>RPCRDMA_BOUNCEBUFFERS</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No dynamic memory registration</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No dynamic memory registration</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No remote RDMA permissions granted</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No remote RDMA permissions granted</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 143:</td>
<td colspan="2" class="diff-lineno">Line 148:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by any provider</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by any provider</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Efficient operation for all-small-message workload</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Efficient operation for all-small-message workload</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Con:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No RDMA</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No RDMA</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Increased memory footprint per connection</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Increased memory footprint per connection</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 150:</td>
<td colspan="2" class="diff-lineno">Line 154:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Increased client CPU consumption for data copies</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Increased client CPU consumption for data copies</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Not intended for operational use</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Not intended for operational use</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">==== Memreg 1: </del>RPCRDMA_REGISTER <del class="diffchange diffchange-inline">====</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">| </ins>RPCRDMA_REGISTER</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Pro:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Safe - byte-granular registrations on per-io basis</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Safe - byte-granular registrations on per-io basis</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by "most" providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by "most" providers</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Con:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Inefficient memory registration</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Inefficient memory registration</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Increased client CPU</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Increased client CPU</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Increased latency and overhead</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Increased latency and overhead</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Unsupported by mlx4 and mlx5 providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Unsupported by mlx4 and mlx5 providers</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">==== Memreg 2: </del>RPCRDMA_MEMWINDOWS <del class="diffchange diffchange-inline">====</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">| </ins>RPCRDMA_MEMWINDOWS</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Pro:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Safe - byte-granular registrations on per-io basis</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Safe - byte-granular registrations on per-io basis</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by iWARP providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by iWARP providers</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Con:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA pipeline bubbles</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA pipeline bubbles</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Memory window operations may stall send queue</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Memory window operations may stall send queue</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 177:</td>
<td colspan="2" class="diff-lineno">Line 177:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Not supported by some IB and RoCE providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Not supported by some IB and RoCE providers</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** May be inefficient, if so</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** May be inefficient, if so</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">==== Memreg 3: </del>RPCRDMA_MEMWINDOWS_ASYNC <del class="diffchange diffchange-inline">====</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">| </ins>RPCRDMA_MEMWINDOWS_ASYNC</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Pro:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Slightly less safe than memreg 2</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Slightly less safe than memreg 2</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 187:</td>
<td colspan="2" class="diff-lineno">Line 186:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>*** Window invalidations are made nonblocking</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>*** Window invalidations are made nonblocking</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by iWARP providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by iWARP providers</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Con:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Same as memreg 2</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Same as memreg 2</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">==== Memreg 4: </del>RPCRDMA_MTHCAFMR <del class="diffchange diffchange-inline">====</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">| </ins>RPCRDMA_MTHCAFMR</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Pro:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** 4KB page-granular protection only</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** 4KB page-granular protection only</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Con:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported only by certain Mellanox providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported only by certain Mellanox providers</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Page-granularity risks RDMA exposure beyond i/o buffer</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Page-granularity risks RDMA exposure beyond i/o buffer</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 203:</td>
<td colspan="2" class="diff-lineno">Line 199:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Strongly suggest not relying on mthca except for purpose of supporting antique mellanox adapters</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Strongly suggest not relying on mthca except for purpose of supporting antique mellanox adapters</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">==== Memreg 5: </del>RPCRDMA_FRMR <del class="diffchange diffchange-inline">====</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">| </ins>RPCRDMA_FRMR</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Pro:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Byte-granular protection</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Byte-granular protection</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 212:</td>
<td colspan="2" class="diff-lineno">Line 207:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Highly efficient</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Highly efficient</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Well-supported by "modern" providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Well-supported by "modern" providers</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Con:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Not supported by older providers, and non-hardware impl's</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Not supported by older providers, and non-hardware impl's</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* FRMR page list limit may result in add'l RDMA segmentation</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* FRMR page list limit may result in add'l RDMA segmentation</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|-</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">==== Memreg 6: RPCRDMA_ALLPHYSICALl ====</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">RPCRDMA_ALLPHYSICAL</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Pro:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* RDMA transfers supported</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Physical addresses - no translation or mapping</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Physical addresses - no translation or mapping</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 226:</td>
<td colspan="2" class="diff-lineno">Line 220:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Reduced client overhead and interrupts/context switches</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Reduced client overhead and interrupts/context switches</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by all current providers</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Supported by all current providers</div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div> </div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|</ins></div></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Con:</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No RDMA protection AT ALL</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* No RDMA protection AT ALL</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** All client physical memory exposed for remote write</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** All client physical memory exposed for remote write</div></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 233:</td>
<td colspan="2" class="diff-lineno">Line 226:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Significant impact on NFS write operations</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Significant impact on NFS write operations</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Increased number of all RDMA work requests</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Increased number of all RDMA work requests</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">|}</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Long-term Plans ===</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Long-term Plans ===</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'>-</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">Here is our thinking about keeping or removing support for each memory mode</del>.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">After some discussion on linux-rdma and linux-nfs, we might be able to justify the following changes</ins>.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{| class="wikitable"</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{| class="wikitable"</div></td></tr>
</table>
Chucklever
http://wiki.linux-nfs.org/wiki/index.php?title=NfsRdmaClient/MemRegModes&diff=5465&oldid=prev
Chucklever: /* Simplifying NFS/RDMA Client Memory Registration Modes */
2014-03-03T18:20:42Z
<p><span class="autocomment">Simplifying NFS/RDMA Client Memory Registration Modes</span></p>
<table style="background-color: white; color:black;">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 18:20, 3 March 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 4:</td>
<td colspan="2" class="diff-lineno">Line 4:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>However, not all providers and HCAs support FRMR. Thus the RPC/RDMA client transport code maintains 7 different memory registration modes, which introduces a lot of complexity to the code base and our test matrix. Over time we would like to remove some of these modes to simplify the code base and testing requirements.</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>However, not all providers and HCAs support FRMR. Thus the RPC/RDMA client transport code maintains 7 different memory registration modes, which introduces a lot of complexity to the code base and our test matrix. Over time we would like to remove some of these modes to simplify the code base and testing requirements.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">=== Matrix of Registration Mode Support ===</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>The following table is based on a code audit of RDMA providers in the 3.13 kernel and one (the Soft RoCE driver, rxe) that is only in OFED.</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>The following table is based on a code audit of RDMA providers in the 3.13 kernel and one (the Soft RoCE driver, rxe) that is only in OFED.</div></td></tr>
</table>
Chucklever