<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/dlm/user.c, branch linux-2.6.33.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.33.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.33.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2009-11-30T22:34:43Z</updated>
<entry>
<title>dlm: always use GFP_NOFS</title>
<updated>2009-11-30T22:34:43Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2009-11-30T22:34:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=573c24c4af6664ffcd9aa7ba617a35fde2b95534'/>
<id>urn:sha1:573c24c4af6664ffcd9aa7ba617a35fde2b95534</id>
<content type='text'>
Replace all GFP_KERNEL and ls_allocation with GFP_NOFS.
ls_allocation would be GFP_KERNEL for userland lockspaces
and GFP_NOFS for file system lockspaces.

It was discovered that any lockspaces on the system can
affect all others by triggering memory reclaim in the
file system which could in turn call back into the dlm
to acquire locks, deadlocking dlm threads that were
shared by all lockspaces, like dlm_recv.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>dlm: fix length calculation in compat code</title>
<updated>2009-03-11T17:23:59Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2009-03-04T17:17:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1fecb1c4b62881e3689ba2dcf93072ae301b597c'/>
<id>urn:sha1:1fecb1c4b62881e3689ba2dcf93072ae301b597c</id>
<content type='text'>
Using offsetof() to calculate name length does not work because
it does not produce consistent results with with structure packing.
This caused memcpy to corrupt memory by copying 4 extra bytes off
the end of the buffer on 64 bit kernels with 32 bit userspace
(the only case where this 32/64 compat code is used).

The fix is to calculate name length directly from the start instead
of trying to derive it later using count and offsetof.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>dlm: improve how bast mode handling</title>
<updated>2008-12-23T16:16:46Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2008-12-09T17:55:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fd22a51bcc0b7b76fc729b02316214fd979f9fe1'/>
<id>urn:sha1:fd22a51bcc0b7b76fc729b02316214fd979f9fe1</id>
<content type='text'>
The lkb bastmode value is set in the context of processing the
lock, and read by the dlm_astd thread.  Because it's accessed
in these two separate contexts, the writing/reading ought to
be done under a lock.  This is simple to do by setting it and
reading it when the lkb is added to and removed from dlm_astd's
callback list which is properly locked.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>dlm: remove bkl</title>
<updated>2008-09-04T17:55:13Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2008-09-04T17:51:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f9f2ed486256f3480e4d499ffd6bf730bc5e6fc6'/>
<id>urn:sha1:f9f2ed486256f3480e4d499ffd6bf730bc5e6fc6</id>
<content type='text'>
BLK from recent pushdown is not needed.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>dlm: detect available userspace daemon</title>
<updated>2008-08-28T16:49:43Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2008-08-18T16:43:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dc68c7ed362a00a48290252573a8eb9f74463c3a'/>
<id>urn:sha1:dc68c7ed362a00a48290252573a8eb9f74463c3a</id>
<content type='text'>
If dlm_controld (the userspace daemon that controls the setup and
recovery of the dlm) fails, the kernel should shut down the lockspaces
in the kernel rather than leaving them running.  This is detected by
having dlm_controld hold a misc device open while running, and if
the kernel detects a close while the daemon is still needed, it stops
the lockspaces in the kernel.

Knowing that the userspace daemon isn't running also allows the
lockspace create/remove routines to avoid waiting on the daemon
for join/leave operations.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>dlm: allow multiple lockspace creates</title>
<updated>2008-08-28T16:49:15Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2008-08-06T18:30:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0f8e0d9a317406612700426fad3efab0b7bbc467'/>
<id>urn:sha1:0f8e0d9a317406612700426fad3efab0b7bbc467</id>
<content type='text'>
Add a count for lockspace create and release so that create can
be called multiple times to use the lockspace from different places.
Also add the new flag DLM_LSFL_NEWEXCL to create a lockspace with
the previous behavior of returning -EEXIST if the lockspace already
exists.

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>dlm: add missing kfrees</title>
<updated>2008-08-13T17:47:36Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2008-07-29T20:21:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cb980d9a3ec3d39e30e0a4c473df528c09e0dcf3'/>
<id>urn:sha1:cb980d9a3ec3d39e30e0a4c473df528c09e0dcf3</id>
<content type='text'>
A couple of unlikely error conditions were missing a kfree on the error
exit path.

Reported-by: Juha Leppanen &lt;juha_motorsportcom@luukku.com&gt;
Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm</title>
<updated>2008-07-28T16:46:00Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2008-07-28T16:46:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3988ba0708e98b4bafc9034aa476775520bee708'/>
<id>urn:sha1:3988ba0708e98b4bafc9034aa476775520bee708</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:
  dlm: fix uninitialized variable for search_rsb_list callers
  dlm: release socket on error
  dlm: fix basts for granted CW waiting PR/CW
  dlm: check for null in device_write
</content>
</entry>
<entry>
<title>dlm: check for null in device_write</title>
<updated>2008-07-14T18:56:59Z</updated>
<author>
<name>Masatake YAMATO</name>
</author>
<published>2008-05-28T05:45:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=254ae43ab8d7877c980fca3636624e0777a70fa4'/>
<id>urn:sha1:254ae43ab8d7877c980fca3636624e0777a70fa4</id>
<content type='text'>
If `device_write' method is called via "dlm-control",
file-&gt;private_data is NULL. (See ctl_device_open() in
user.c. ) Through proc-&gt;flags is read.

Signed-off-by: Masatake YAMATO &lt;yamato@redhat.com&gt;
Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
</content>
</entry>
<entry>
<title>dlm-user: BKL pushdown</title>
<updated>2008-06-20T20:05:56Z</updated>
<author>
<name>Arnd Bergmann</name>
</author>
<published>2008-05-20T17:15:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=514bcc66d4072a221a8dfd341a4006385a441918'/>
<id>urn:sha1:514bcc66d4072a221a8dfd341a4006385a441918</id>
<content type='text'>
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
</feed>
