<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/fs/dlm/requestqueue.h, branch linux-2.6.25.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-2.6.25.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-2.6.25.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2008-02-04T07:21:32Z</updated>
<entry>
<title>dlm: use proper C for dlm/requestqueue stuff (and fix alignment bug)</title>
<updated>2008-02-04T07:21:32Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2008-01-25T05:28:28Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=8b0d8e03f847d9c1677b8a193cd124debbc54633'/>
<id>urn:sha1:8b0d8e03f847d9c1677b8a193cd124debbc54633</id>
<content type='text'>
a) don't cast the pointer to dlm_header *, we use it as dlm_message *
   anyway.
b) we copy the message into a queue element, then pass the pointer to
   copy to dlm_receive_message_saved(); declare it properly to make sure
   that we have the right alignment.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>[DLM] block dlm_recv in recovery transition</title>
<updated>2007-10-10T07:56:38Z</updated>
<author>
<name>David Teigland</name>
<email>teigland@redhat.com</email>
</author>
<published>2007-09-27T20:53:38Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c36258b5925e6cf6bf72904635100593573bfcff'/>
<id>urn:sha1:c36258b5925e6cf6bf72904635100593573bfcff</id>
<content type='text'>
Introduce a per-lockspace rwsem that's held in read mode by dlm_recv
threads while working in the dlm.  This allows dlm_recv activity to be
suspended when the lockspace transitions to, from and between recovery
cycles.

The specific bug prompting this change is one where an in-progress
recovery cycle is aborted by a new recovery cycle.  While dlm_recv was
processing a recovery message, the recovery cycle was aborted and
dlm_recoverd began cleaning up.  dlm_recv decremented recover_locks_count
on an rsb after dlm_recoverd had reset it to zero.  This is fixed by
suspending dlm_recv (taking write lock on the rwsem) before aborting the
current recovery.

The transitions to/from normal and recovery modes are simplified by using
this new ability to block dlm_recv.  The switch from normal to recovery
mode means dlm_recv goes from processing locking messages, to saving them
for later, and vice versa.  Races are avoided by blocking dlm_recv when
setting the flag that switches between modes.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
Signed-off-by: Steven Whitehouse &lt;swhiteho@redhat.com&gt;
</content>
</entry>
<entry>
<title>[DLM] fix requestqueue race</title>
<updated>2006-11-30T15:35:10Z</updated>
<author>
<name>David Teigland</name>
<email>teigland@redhat.com</email>
</author>
<published>2006-10-31T17:55:56Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=d4400156d415540086c34a06e5d233122d6bf56a'/>
<id>urn:sha1:d4400156d415540086c34a06e5d233122d6bf56a</id>
<content type='text'>
Red Hat BZ 211914

There's a race between dlm_recoverd (1) enabling locking and (2) clearing
out the requestqueue, and dlm_recvd (1) checking if locking is enabled and
(2) adding a message to the requestqueue.  An order of recoverd(1),
recvd(1), recvd(2), recoverd(2) will result in a message being left on the
requestqueue.  The fix is to have dlm_recvd check if dlm_recoverd has
enabled locking after taking the mutex for the requestqueue and if it has
processing the message instead of queueing it.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
Signed-off-by: Steven Whitehouse &lt;swhiteho@redhat.com&gt;
</content>
</entry>
<entry>
<title>[DLM] The core of the DLM for GFS2/CLVM</title>
<updated>2006-01-18T09:30:29Z</updated>
<author>
<name>David Teigland</name>
<email>teigland@redhat.com</email>
</author>
<published>2006-01-18T09:30:29Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e7fd41792fc0ee52a05fcaac87511f118328d147'/>
<id>urn:sha1:e7fd41792fc0ee52a05fcaac87511f118328d147</id>
<content type='text'>
This is the core of the distributed lock manager which is required
to use GFS2 as a cluster filesystem. It is also used by CLVM and
can be used as a standalone lock manager independantly of either
of these two projects.

It implements VAX-style locking modes.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
Signed-off-by: Steve Whitehouse &lt;swhiteho@redhat.com&gt;
</content>
</entry>
</feed>
y</option>
<option value='linux-5.12.y'>linux-5.12.y</option>
<option value='linux-5.13.y'>linux-5.13.y</option>
<option value='linux-5.14.y'>linux-5.14.y</option>
<option value='linux-5.15.y'>linux-5.15.y</option>
<option value='linux-5.16.y'>linux-5.16.y</option>
<option value='linux-5.17.y'>linux-5.17.y</option>
<option value='linux-5.18.y'>linux-5.18.y</option>
<option value='linux-5.19.y'>linux-5.19.y</option>
<option value='linux-5.2.y'>linux-5.2.y</option>
<option value='linux-5.3.y'>linux-5.3.y</option>
<option value='linux-5.4.y'>linux-5.4.y</option>
<option value='linux-5.5.y'>linux-5.5.y</option>
<option value='linux-5.6.y'>linux-5.6.y</option>
<option value='linux-5.7.y'>linux-5.7.y</option>
<option value='linux-5.8.y'>linux-5.8.y</option>
<option value='linux-5.9.y'>linux-5.9.y</option>
<option value='linux-6.0.y'>linux-6.0.y</option>
<option value='linux-6.1.y'>linux-6.1.y</option>
<option value='linux-6.10.y'>linux-6.10.y</option>
<option value='linux-6.11.y'>linux-6.11.y</option>
<option value='linux-6.12.y'>linux-6.12.y</option>
<option value='linux-6.13.y'>linux-6.13.y</option>
<option value='linux-6.14.y'>linux-6.14.y</option>
<option value='linux-6.15.y'>linux-6.15.y</option>
<option value='linux-6.16.y'>linux-6.16.y</option>
<option value='linux-6.17.y'>linux-6.17.y</option>
<option value='linux-6.18.y'>linux-6.18.y</option>
<option value='linux-6.19.y'>linux-6.19.y</option>
<option value='linux-6.2.y'>linux-6.2.y</option>
<option value='linux-6.3.y'>linux-6.3.y</option>
<option value='linux-6.4.y'>linux-6.4.y</option>
<option value='linux-6.5.y'>linux-6.5.y</option>
<option value='linux-6.6.y' selected='selected'>linux-6.6.y</option>
<option value='linux-6.7.y'>linux-6.7.y</option>
<option value='linux-6.8.y'>linux-6.8.y</option>
<option value='linux-6.9.y'>linux-6.9.y</option>
<option value='linux-rolling-lts'>linux-rolling-lts</option>
<option value='linux-rolling-stable'>linux-rolling-stable</option>
<option value='master'>master</option>
</select> <input type='submit' value='switch'/></form></td></tr>
<tr><td class='sub'>Hosts the 0x221E linux distro kernel.</td><td class='sub right'>Ubuntu</td></tr></table>
<table class='tabs'><tr><td>
<a href='/distro/kernel/?h=linux-6.6.y'>summary</a><a href='/distro/kernel/refs/?h=linux-6.6.y'>refs</a><a class='active' href='/distro/kernel/log/include/asm-ia64/rse.h?h=linux-6.6.y'>log</a><a href='/distro/kernel/tree/include/asm-ia64/rse.h?h=linux-6.6.y'>tree</a><a href='/distro/kernel/commit/include/asm-ia64/rse.h?h=linux-6.6.y'>commit</a><a href='/distro/kernel/diff/include/asm-ia64/rse.h?h=linux-6.6.y'>diff</a></td><td class='form'><form class='right' method='get' action='/distro/kernel/log/include/asm-ia64/rse.h'>
<input type='hidden' name='h' value='linux-6.6.y'/><select name='qt'>
<option value='grep'>log msg</option>
<option value='author'>author</option>
<option value='committer'>committer</option>
<option value='range'>range</option>
</select>
<input class='txt' type='search' size='10' name='q' value=''/>
<input type='submit' value='search'/>
</form>
</td></tr></table>
<div class='path'>path: <a href='/distro/kernel/log/?h=linux-6.6.y'>root</a>/<a href='/distro/kernel/log/include?h=linux-6.6.y'>include</a>/<a href='/distro/kernel/log/include/asm-ia64?h=linux-6.6.y'>asm-ia64</a>/<a href='/distro/kernel/log/include/asm-ia64/rse.h?h=linux-6.6.y'>rse.h</a></div><div class='content'><table class='list nowrap'><tr class='nohover'><th class='left'>Age</th><th class='left'>Commit message (<a href='/distro/kernel/log/include/asm-ia64/rse.h?h=linux-6.6.y&amp;showmsg=1'>Expand</a>)</th><th class='left'>Author</th></tr>
