<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/ipc, branch v2.6.22.15</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/ipc?h=v2.6.22.15</id>
<link rel='self' href='https://git.amat.us/linux/atom/ipc?h=v2.6.22.15'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2007-11-21T17:25:54Z</updated>
<entry>
<title>Fix netlink timeouts.</title>
<updated>2007-11-21T17:25:54Z</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2007-11-13T11:03:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d6eb5c86ed40fe57e411c4ee72b38d0a83642302'/>
<id>urn:sha1:d6eb5c86ed40fe57e411c4ee72b38d0a83642302</id>
<content type='text'>
[NETLINK]: Fix unicast timeouts

[ Upstream commit: c3d8d1e30cace31fed6186a4b8c6b1401836d89c ]

Commit ed6dcf4a in the history.git tree broke netlink_unicast timeouts
by moving the schedule_timeout() call to a new function that doesn't
propagate the remaining timeout back to the caller. This means on each
retry we start with the full timeout again.

ipc/mqueue.c seems to actually want to wait indefinitely so this
behaviour is retained.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>Fix user struct leakage with locked IPC shem segment</title>
<updated>2007-08-09T21:27:36Z</updated>
<author>
<name>Pavel Emelianov</name>
<email>xemul@openvz.org</email>
</author>
<published>2007-07-31T07:38:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=68a0460bbcc7571753b57b83f21e8c1c5029a46a'/>
<id>urn:sha1:68a0460bbcc7571753b57b83f21e8c1c5029a46a</id>
<content type='text'>
When user locks an ipc shmem segmant with SHM_LOCK ctl and the segment is
already locked the shmem_lock() function returns 0.  After this the
subsequent code leaks the existing user struct:

== ipc/shm.c: sys_shmctl() ==
     ...
     err = shmem_lock(shp-&gt;shm_file, 1, user);
     if (!err) {
          shp-&gt;shm_perm.mode |= SHM_LOCKED;
          shp-&gt;mlock_user = user;
     }
     ...
==

Other results of this are:
1. the new shp-&gt;mlock_user is not get-ed and will point to freed
   memory when the task dies.
2. the RLIMIT_MEMLOCK is screwed on both user structs.

The exploit looks like this:

==
    id = shmget(...);
    setresuid(uid, 0, 0);
    shmctl(id, SHM_LOCK, NULL);
    setresuid(uid + 1, 0, 0);
    shmctl(id, SHM_LOCK, NULL);
==

My solution is to return 0 to the userspace and do not change the
segment's user.

Signed-off-by: Pavel Emelianov &lt;xemul@openvz.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>fix logic error in ipc compat semctl()</title>
<updated>2007-07-06T17:23:43Z</updated>
<author>
<name>Alexander Graf</name>
<email>agraf@suse.de</email>
</author>
<published>2007-07-06T09:39:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d57d973101e87b2e30ccfa899fe36c4b2e32d217'/>
<id>urn:sha1:d57d973101e87b2e30ccfa899fe36c4b2e32d217</id>
<content type='text'>
When calling a semctl(IPC_STAT) without IPC_64 the check if the memory is
unevaluated.  This patch fixes this.

Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>shm: fix the filename of hugetlb sysv shared memory</title>
<updated>2007-06-16T20:16:16Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2007-06-16T17:16:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9d66586f7723b73c5925c7c7819c260484627851'/>
<id>urn:sha1:9d66586f7723b73c5925c7c7819c260484627851</id>
<content type='text'>
Some user space tools need to identify SYSV shared memory when examining
/proc/&lt;pid&gt;/maps.  To do so they look for a block device with major zero, a
dentry named SYSV&lt;sysv key&gt;, and having the minor of the internal sysv
shared memory kernel mount.

To help these tools and to make it easier for people just browsing
/proc/&lt;pid&gt;/maps this patch modifies hugetlb sysv shared memory to use the
SYSV&lt;key&gt; dentry naming convention.

User space tools will still have to be aware that hugetlb sysv shared
memory lives on a different internal kernel mount and so has a different
block device minor number from the rest of sysv shared memory.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Cc: "Serge E. Hallyn" &lt;serge@hallyn.com&gt;
Cc: Albert Cahalan &lt;acahalan@gmail.com&gt;
Cc: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>hugetlb: fix get_policy for stacked shared memory files</title>
<updated>2007-06-16T20:16:16Z</updated>
<author>
<name>Adam Litke</name>
<email>agl@us.ibm.com</email>
</author>
<published>2007-06-16T17:16:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=22741925d268e8479ef66312749bd8d96ed35365'/>
<id>urn:sha1:22741925d268e8479ef66312749bd8d96ed35365</id>
<content type='text'>
Here's another breakage as a result of shared memory stacked files :(

The NUMA policy for a VMA is determined by checking the following (in the
order given):

1) vma-&gt;vm_ops-&gt;get_policy() (if defined)
2) vma-&gt;vm_policy (if defined)
3) task-&gt;mempolicy (if defined)
4) Fall back to default_policy

By switching to stacked files for shared memory, get_policy() is now always
set to shm_get_policy which is a wrapper function.  This causes us to stop
at step 1, which yields NULL for hugetlb instead of task-&gt;mempolicy which
was the previous (and correct) result.

This patch modifies the shm_get_policy() wrapper to maintain steps 1-3 for
the wrapped vm_ops.

(akpm: the refcounting of mempolicies is busted and this patch does nothing to
improve it)

Signed-off-by: Adam Litke &lt;agl@us.ibm.com&gt;
Acked-by: William Irwin &lt;bill.irwin@oracle.com&gt;
Cc: dean gaudet &lt;dean@arctic.org&gt;
Cc: Christoph Lameter &lt;clameter@sgi.com&gt;
Cc: Andi Kleen &lt;ak@suse.de&gt;
Cc: &lt;stable@kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Restore shmid as inode# to fix /proc/pid/maps ABI breakage</title>
<updated>2007-06-16T20:16:15Z</updated>
<author>
<name>Badari Pulavarty</name>
<email>pbadari@us.ibm.com</email>
</author>
<published>2007-06-16T17:15:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=30475cc12a50816f290828fb7e3cd7036cd622df'/>
<id>urn:sha1:30475cc12a50816f290828fb7e3cd7036cd622df</id>
<content type='text'>
shmid used to be stored as inode# for shared memory segments. Some of
the proc-ps tools use this from /proc/pid/maps.  Recent cleanups
to newseg() changed it.  This patch sets inode number back to shared
memory id to fix breakage.

Signed-off-by: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Cc: "Albert Cahalan" &lt;acahalan@gmail.com&gt;
Cc: "Eric W. Biederman" &lt;ebiederm@xmission.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Remove SLAB_CTOR_CONSTRUCTOR</title>
<updated>2007-05-17T12:23:04Z</updated>
<author>
<name>Christoph Lameter</name>
<email>clameter@sgi.com</email>
</author>
<published>2007-05-17T05:10:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a35afb830f8d71ec211531aeb9a621b09a2efb39'/>
<id>urn:sha1:a35afb830f8d71ec211531aeb9a621b09a2efb39</id>
<content type='text'>
SLAB_CTOR_CONSTRUCTOR is always specified. No point in checking it.

Signed-off-by: Christoph Lameter &lt;clameter@sgi.com&gt;
Cc: David Howells &lt;dhowells@redhat.com&gt;
Cc: Jens Axboe &lt;jens.axboe@oracle.com&gt;
Cc: Steven French &lt;sfrench@us.ibm.com&gt;
Cc: Michael Halcrow &lt;mhalcrow@us.ibm.com&gt;
Cc: OGAWA Hirofumi &lt;hirofumi@mail.parknet.co.jp&gt;
Cc: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Cc: Steven Whitehouse &lt;swhiteho@redhat.com&gt;
Cc: Roman Zippel &lt;zippel@linux-m68k.org&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Dave Kleikamp &lt;shaggy@austin.ibm.com&gt;
Cc: Trond Myklebust &lt;trond.myklebust@fys.uio.no&gt;
Cc: "J. Bruce Fields" &lt;bfields@fieldses.org&gt;
Cc: Anton Altaparmakov &lt;aia21@cantab.net&gt;
Cc: Mark Fasheh &lt;mark.fasheh@oracle.com&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&gt;
Cc: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: Jan Kara &lt;jack@ucw.cz&gt;
Cc: David Chinner &lt;dgc@sgi.com&gt;
Cc: "David S. Miller" &lt;davem@davemloft.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] complete message queue auditing</title>
<updated>2007-05-11T09:38:26Z</updated>
<author>
<name>Amy Griffis</name>
<email>amy.griffis@hp.com</email>
</author>
<published>2007-02-13T19:15:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4fc03b9beb2314f3adb9e72b7935a80c577954d1'/>
<id>urn:sha1:4fc03b9beb2314f3adb9e72b7935a80c577954d1</id>
<content type='text'>
Handle the edge cases for POSIX message queue auditing. Collect inode
info when opening an existing mq, and for send/receive operations. Remove
audit_inode_update() as it has really evolved into the equivalent of
audit_inode().

Signed-off-by: Amy Griffis &lt;amy.griffis@hp.com&gt;
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>header cleaning: don't include smp_lock.h when not used</title>
<updated>2007-05-08T18:15:07Z</updated>
<author>
<name>Randy Dunlap</name>
<email>randy.dunlap@oracle.com</email>
</author>
<published>2007-05-08T07:28:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e63340ae6b6205fef26b40a75673d1c9c0c8bb90'/>
<id>urn:sha1:e63340ae6b6205fef26b40a75673d1c9c0c8bb90</id>
<content type='text'>
Remove includes of &lt;linux/smp_lock.h&gt; where it is not used/needed.
Suggested by Al Viro.

Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,
sparc64, and arm (all 59 defconfigs).

Signed-off-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge sys_clone()/sys_unshare() nsproxy and namespace handling</title>
<updated>2007-05-08T18:15:00Z</updated>
<author>
<name>Badari Pulavarty</name>
<email>pbadari@us.ibm.com</email>
</author>
<published>2007-05-08T07:25:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e3222c4ecc649c4ae568e61dda9349482401b501'/>
<id>urn:sha1:e3222c4ecc649c4ae568e61dda9349482401b501</id>
<content type='text'>
sys_clone() and sys_unshare() both makes copies of nsproxy and its associated
namespaces.  But they have different code paths.

This patch merges all the nsproxy and its associated namespace copy/clone
handling (as much as possible).  Posted on container list earlier for
feedback.

- Create a new nsproxy and its associated namespaces and pass it back to
  caller to attach it to right process.

- Changed all copy_*_ns() routines to return a new copy of namespace
  instead of attaching it to task-&gt;nsproxy.

- Moved the CAP_SYS_ADMIN checks out of copy_*_ns() routines.

- Removed unnessary !ns checks from copy_*_ns() and added BUG_ON()
  just incase.

- Get rid of all individual unshare_*_ns() routines and make use of
  copy_*_ns() instead.

[akpm@osdl.org: cleanups, warning fix]
[clg@fr.ibm.com: remove dup_namespaces() declaration]
[serue@us.ibm.com: fix CONFIG_IPC_NS=n, clone(CLONE_NEWIPC) retval]
[akpm@linux-foundation.org: fix build with CONFIG_SYSVIPC=n]
Signed-off-by: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Signed-off-by: Serge Hallyn &lt;serue@us.ibm.com&gt;
Cc: Cedric Le Goater &lt;clg@fr.ibm.com&gt;
Cc: "Eric W. Biederman" &lt;ebiederm@xmission.com&gt;
Cc: &lt;containers@lists.osdl.org&gt;
Signed-off-by: Cedric Le Goater &lt;clg@fr.ibm.com&gt;
Cc: Oleg Nesterov &lt;oleg@tv-sign.ru&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
