<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.old.lustre.org/index.php?action=history&amp;feed=atom&amp;title=Architecture_-_Client_Cleanup</id>
	<title>Architecture - Client Cleanup - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.old.lustre.org/index.php?action=history&amp;feed=atom&amp;title=Architecture_-_Client_Cleanup"/>
	<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;action=history"/>
	<updated>2026-04-13T06:02:20Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10565&amp;oldid=prev</id>
		<title>Docadmin at 21:00, 22 January 2010</title>
		<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10565&amp;oldid=prev"/>
		<updated>2010-01-22T21:00:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 14:00, 22 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;Note:&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; The content on this page reflects the state of design of a Lustre feature at a particular point in time and may contain outdated information.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;Note:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#039;&amp;#039;&lt;/ins&gt;&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;The content on this page reflects the state of design of a Lustre feature at a particular point in time and may contain outdated information.&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#039;&amp;#039; &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Use Cases to cover ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Use Cases to cover ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Docadmin</name></author>
	</entry>
	<entry>
		<id>http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10478&amp;oldid=prev</id>
		<title>Docadmin: Protected &quot;Architecture - Client Cleanup&quot; ([edit=sysop] (indefinite) [move=sysop] (indefinite))</title>
		<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10478&amp;oldid=prev"/>
		<updated>2010-01-21T19:13:05Z</updated>

		<summary type="html">&lt;p&gt;Protected &amp;quot;&lt;a href=&quot;/index.php?title=Architecture_-_Client_Cleanup&quot; title=&quot;Architecture - Client Cleanup&quot;&gt;Architecture - Client Cleanup&lt;/a&gt;&amp;quot; ([edit=sysop] (indefinite) [move=sysop] (indefinite))&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:13, 21 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Docadmin</name></author>
	</entry>
	<entry>
		<id>http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10111&amp;oldid=prev</id>
		<title>Docadmin at 23:54, 18 January 2010</title>
		<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10111&amp;oldid=prev"/>
		<updated>2010-01-18T23:54:34Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:54, 18 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&#039;&#039;Note:&#039;&#039;&#039;&#039;&#039; The content on this page reflects the state of design of a Lustre feature at a particular point in time and may contain outdated information. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Use Cases to cover ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Use Cases to cover ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Docadmin</name></author>
	</entry>
	<entry>
		<id>http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10097&amp;oldid=prev</id>
		<title>Docadmin: /* Implementation Constraints */</title>
		<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=10097&amp;oldid=prev"/>
		<updated>2010-01-18T23:36:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Implementation Constraints&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:36, 18 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l135&quot;&gt;Line 135:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 135:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Re-use as much existing code as possible&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Re-use as much existing code as possible&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Quality&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Quality&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:QAS|Client Cleanup]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Docadmin</name></author>
	</entry>
	<entry>
		<id>http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=9985&amp;oldid=prev</id>
		<title>Docadmin: moved QAS Client Cleanup to Architecture - Client Cleanup</title>
		<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=9985&amp;oldid=prev"/>
		<updated>2010-01-15T18:53:09Z</updated>

		<summary type="html">&lt;p&gt;moved &lt;a href=&quot;/index.php?title=QAS_Client_Cleanup&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;QAS Client Cleanup (page does not exist)&quot;&gt;QAS Client Cleanup&lt;/a&gt; to &lt;a href=&quot;/index.php?title=Architecture_-_Client_Cleanup&quot; title=&quot;Architecture - Client Cleanup&quot;&gt;Architecture - Client Cleanup&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:53, 15 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Docadmin</name></author>
	</entry>
	<entry>
		<id>http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=9975&amp;oldid=prev</id>
		<title>Docadmin: 1 revision</title>
		<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=9975&amp;oldid=prev"/>
		<updated>2010-01-15T18:51:39Z</updated>

		<summary type="html">&lt;p&gt;1 revision&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:51, 15 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Docadmin</name></author>
	</entry>
	<entry>
		<id>http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=9974&amp;oldid=prev</id>
		<title>Nikita: Update business drivers</title>
		<link rel="alternate" type="text/html" href="http://wiki.old.lustre.org/index.php?title=Architecture_-_Client_Cleanup&amp;diff=9974&amp;oldid=prev"/>
		<updated>2007-08-08T17:51:46Z</updated>

		<summary type="html">&lt;p&gt;Update business drivers&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Use Cases to cover ==&lt;br /&gt;
&lt;br /&gt;
{|cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Description&lt;br /&gt;
!Semantics&lt;br /&gt;
|-&lt;br /&gt;
|dlm:acquiring lock||actions performed on each layer. Interaction with dlm in the bottom layer.&lt;br /&gt;
|-&lt;br /&gt;
|dlm:releasing lock||actions on every layer.&lt;br /&gt;
|-&lt;br /&gt;
|dlm:maintaining lock lru size||where decision to cancel locks is taken.&lt;br /&gt;
|-&lt;br /&gt;
|dlm:blocking ast||notification of layers&lt;br /&gt;
|-&lt;br /&gt;
|dlm:cancellation ast||actions done at every layer&lt;br /&gt;
|-&lt;br /&gt;
|dlm:glimpse ast||actions done at every layer&lt;br /&gt;
|-&lt;br /&gt;
|dlm:lock conversion||client should be able to convert read lock to write lock without flushing out pages&lt;br /&gt;
|-&lt;br /&gt;
|io:read-ahead||have to be encapsulated into llite layer. Current semantics is to be preserved. &lt;br /&gt;
|-&lt;br /&gt;
|io:kms||current semantics is to be preserved. Kms handing should be encapsulated into llite.&lt;br /&gt;
|-&lt;br /&gt;
|io:read||how layers handle typical read call, including read-ahead.&lt;br /&gt;
|-&lt;br /&gt;
|io:short read||how short read is handled.&lt;br /&gt;
|-&lt;br /&gt;
|io:write||how layers handle typical write call.&lt;br /&gt;
|-&lt;br /&gt;
|io:O_APPEND||write into file descriptor opened with O_APPEND&lt;br /&gt;
|-&lt;br /&gt;
|io:O_SYNC||write into file descriptor opened with O_SYNC&lt;br /&gt;
|-&lt;br /&gt;
|io:O_DIRECT||write into file descriptor opened with O_DIRECT&lt;br /&gt;
|-&lt;br /&gt;
|io:no-lsm||write(2) into object that doesn&amp;#039;t yet have objects allocated on ost.&lt;br /&gt;
|-&lt;br /&gt;
|io:lockless||how lockless io fits into model.&lt;br /&gt;
|-&lt;br /&gt;
|io:intents||check that ost intents can be implemented.&lt;br /&gt;
|-&lt;br /&gt;
|io:truncate||how typical truncate case is handled. Paths through vfs, locking. Non-page aligned case.&lt;br /&gt;
|-&lt;br /&gt;
|io:unlink||ost-related part of unlink(2) handling.&lt;br /&gt;
|-&lt;br /&gt;
|io:getattr||parallel rpcs.&lt;br /&gt;
|-&lt;br /&gt;
|io:mixed page size||bug 686.&lt;br /&gt;
|-&lt;br /&gt;
|io:recoverable-errors||bug 11710&lt;br /&gt;
|-&lt;br /&gt;
|io:rpc formation||how/when it is decided that rpc is ready to be sent.&lt;br /&gt;
|-&lt;br /&gt;
|io:epoch closure||size on mds.&lt;br /&gt;
|-&lt;br /&gt;
|io:flock||POSIX locking.&lt;br /&gt;
|-&lt;br /&gt;
|io:abortions due to recovery||(ask Peter for details)&lt;br /&gt;
|-&lt;br /&gt;
|io:attributes||how attribute passing during read and write is handled.&lt;br /&gt;
|-&lt;br /&gt;
|io:migration||interaction between stripe sub-object migration and io.&lt;br /&gt;
|-&lt;br /&gt;
|io:parallel io||running out of cache space for certain osc/oss should not block read/write streaming data to other servers&lt;br /&gt;
|-&lt;br /&gt;
|io:extremely wide striping||scalability of system with large number of oss&lt;br /&gt;
|-&lt;br /&gt;
|io:updates of file layout||client has to keep track of file layout accuracy to accommodate for migration&lt;br /&gt;
|-&lt;br /&gt;
|sns:read-modify-write||how read-modify-write is done (especially, locking).&lt;br /&gt;
|-&lt;br /&gt;
|sns:reconstruct-write||where `old&amp;#039; page is kept.&lt;br /&gt;
|-&lt;br /&gt;
|sns:asynchronous mirroring||how raid1 io is done in parallel.&lt;br /&gt;
|-&lt;br /&gt;
|sns:raidframe compliance||check that sns fits into raidframe model.&lt;br /&gt;
|-&lt;br /&gt;
|sns:caching parity||how parity pages are cached (vm issues).&lt;br /&gt;
|-&lt;br /&gt;
|p2p:read||read call, fetching data from other client.&lt;br /&gt;
|-&lt;br /&gt;
|p2p:read-failure||handle other client failure, fall back to server seed.&lt;br /&gt;
|-&lt;br /&gt;
|p2p:fetch||other client fetches data from this one.&lt;br /&gt;
|-&lt;br /&gt;
|vm:mmap-fault||page fault handling.&lt;br /&gt;
|-&lt;br /&gt;
|vm:mmap-dirty||grants vs. mmap.&lt;br /&gt;
|-&lt;br /&gt;
|vm:mmap-locking||locking for read/write-with-mmapped-buffer case.&lt;br /&gt;
|-&lt;br /&gt;
|vm:grants||how out-of-grant situation is handled. When grant is renewed. How multiple mount points on the same node are handled.&lt;br /&gt;
|-&lt;br /&gt;
|vm:memory pressure||how low memory conditions are handled.&lt;br /&gt;
|-&lt;br /&gt;
|vm:balance_dirty_pages()||response to -&amp;gt;writepages().&lt;br /&gt;
|-&lt;br /&gt;
|vm:pdflush||cleaning old data.&lt;br /&gt;
|-&lt;br /&gt;
|vm:no-cache mode||keep liblustre in mind.&lt;br /&gt;
|-&lt;br /&gt;
|misc:lov-osc on mds||changes on the server side.&lt;br /&gt;
|-&lt;br /&gt;
|misc:local mounts||optimizations for server mounts.&lt;br /&gt;
|-&lt;br /&gt;
|misc:stacking||check that configurations without lov or osc are possible.&lt;br /&gt;
|-&lt;br /&gt;
|misc:join file||data structures for join file.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Business Drivers ==&lt;br /&gt;
&lt;br /&gt;
# reduce bugs &lt;br /&gt;
# SNS &lt;br /&gt;
# peer-to-peer traffic of client data caches&lt;br /&gt;
# full parallelism&lt;br /&gt;
# concurrent I/O to one file&lt;br /&gt;
# lock conversion&lt;br /&gt;
# extremely wide striping&lt;br /&gt;
# updates of file layouts&lt;br /&gt;
&lt;br /&gt;
== Models to consider ==&lt;br /&gt;
&lt;br /&gt;
{| border=0&lt;br /&gt;
| current situation &lt;br /&gt;
|-&lt;br /&gt;
| OSC as a block device &lt;br /&gt;
|-&lt;br /&gt;
| OSC owns pages&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Implementation Constraints ==&lt;br /&gt;
&lt;br /&gt;
# Re-use as much existing code as possible&lt;br /&gt;
# Quality&lt;br /&gt;
&lt;br /&gt;
[[Category:QAS|Client Cleanup]]&lt;/div&gt;</summary>
		<author><name>Nikita</name></author>
	</entry>
</feed>