)]}'
{
  "log": [
    {
      "commit": "5a6fe125950676015f5108fb71b2a67441755003",
      "tree": "c985fac46de39392466c4917c497b50bdc9c0757",
      "parents": [
        "4c098bcd55fad34dcf224bf8343db6a9ac58fc68"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Tue Feb 10 14:02:27 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 10 10:48:42 2009 -0800"
      },
      "message": "Do not account for the address space used by hugetlbfs using VM_ACCOUNT\n\nWhen overcommit is disabled, the core VM accounts for pages used by anonymous\nshared, private mappings and special mappings. It keeps track of VMAs that\nshould be accounted for with VM_ACCOUNT and VMAs that never had a reserve\nwith VM_NORESERVE.\n\nOvercommit for hugetlbfs is much riskier than overcommit for base pages\ndue to contiguity requirements. It avoids overcommiting on both shared and\nprivate mappings using reservation counters that are checked and updated\nduring mmap(). This ensures (within limits) that hugepages exist in the\nfuture when faults occurs or it is too easy to applications to be SIGKILLed.\n\nAs hugetlbfs makes its own reservations of a different unit to the base page\nsize, VM_ACCOUNT should never be set. Even if the units were correct, we would\ndouble account for the usage in the core VM and hugetlbfs. VM_NORESERVE may\nbe set because an application can request no reserves be made for hugetlbfs\nat the risk of getting killed later.\n\nWith commit fc8744adc870a8d4366908221508bb113d8b72ee, VM_NORESERVE and\nVM_ACCOUNT are getting unconditionally set for hugetlbfs-backed mappings. This\nbreaks the accounting for both the core VM and hugetlbfs, can trigger an\nOOM storm when hugepage pools are too small lockups and corrupted counters\notherwise are used. This patch brings hugetlbfs more in line with how the\ncore VM treats VM_NORESERVE but prevents VM_ACCOUNT being set.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a68e61e8ff2d46327a37b69056998b47745db6fa",
      "tree": "2445097933785b26d91577e6f4b41329e8bcd639",
      "parents": [
        "1f5e31d7e55ac7fbd4ec5e5b20c8868b0e4564c9"
      ],
      "author": {
        "name": "Tony Battersby",
        "email": "tonyb@cybernetics.com",
        "time": "Wed Feb 04 15:12:04 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 05 12:56:47 2009 -0800"
      },
      "message": "shm: fix shmctl(SHM_INFO) lockup with !CONFIG_SHMEM\n\nshm_get_stat() assumes that the inode is a \"struct shmem_inode_info\",\nwhich is incorrect for !CONFIG_SHMEM (see fs/ramfs/inode.c:\nramfs_get_inode() vs.  mm/shmem.c: shmem_get_inode()).\n\nThis bad assumption can cause shmctl(SHM_INFO) to lockup when\nshm_get_stat() tries to spin_lock(\u0026info-\u003elock).  Users of !CONFIG_SHMEM\nmay encounter this lockup simply by invoking the \u0027ipcs\u0027 command.\n\nReported by Jiri Olsa back in February 2008:\nhttp://lkml.org/lkml/2008/2/29/74\n\nSigned-off-by: Tony Battersby \u003ctonyb@cybernetics.com\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nReported-by: Jiri Olsa \u003colsajiri@gmail.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.everything]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc8744adc870a8d4366908221508bb113d8b72ee",
      "tree": "755f4c4a1cc30567fde4e60c9cc5e6a889c360b0",
      "parents": [
        "33bfad54b58cf05cfe6678c3ec9235d4bc8db4c2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 31 15:08:56 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 31 15:08:56 2009 -0800"
      },
      "message": "Stop playing silly games with the VM_ACCOUNT flag\n\nThe mmap_region() code would temporarily set the VM_ACCOUNT flag for\nanonymous shared mappings just to inform shmem_zero_setup() that it\nshould enable accounting for the resulting shm object.  It would then\nclear the flag after calling -\u003emmap (for the /dev/zero case) or doing\nshmem_zero_setup() (for the MAP_ANON case).\n\nThis just resulted in vma merge issues, but also made for just\nunnecessary confusion.  Use the already-existing VM_NORESERVE flag for\nthis instead, and let shmem_{zero|file}_setup() just figure it out from\nthat.\n\nThis also happens to make it obvious that the new DRI2 GEM layer uses a\nnon-reserving backing store for its object allocation - which is quite\npossibly not intentional.  But since I didn\u0027t want to change semantics\nin this patch, I left it alone, and just updated the caller to use the\nnew flag semantics.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c4ea37c26a691ad0b7e86aa5884aab27830e95c9",
      "tree": "4a3bd25e61cd3782f535ad2140a01bf3835dca4f",
      "parents": [
        "d5460c9974a321a194aded4a8c4daaac68ea8171"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:14:28 2009 +0100"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:15:29 2009 +0100"
      },
      "message": "[CVE-2009-0029] System call wrappers part 26\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "d5460c9974a321a194aded4a8c4daaac68ea8171",
      "tree": "26c70e33e9c8ca61a8d2d88422a9672200501754",
      "parents": [
        "e48fbb699f82ef1e80bd7126046394d2dc9ca7e6"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:14:27 2009 +0100"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:15:28 2009 +0100"
      },
      "message": "[CVE-2009-0029] System call wrappers part 25\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "e48fbb699f82ef1e80bd7126046394d2dc9ca7e6",
      "tree": "d361155949c3c31724946a6d619ece7a093e30a1",
      "parents": [
        "5a8a82b1d306a325d899b67715618413657efda4"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:14:26 2009 +0100"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:15:28 2009 +0100"
      },
      "message": "[CVE-2009-0029] System call wrappers part 24\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "6673e0c3fbeaed2cd08e2fd4a4aa97382d6fedb0",
      "tree": "eb33a94f5e4b0e035001f7c96ef44cade0fbb489",
      "parents": [
        "ed6bb6194350dc6ae97a65dbf2d621a3dbe6bbe9"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:14:02 2009 +0100"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:15:18 2009 +0100"
      },
      "message": "[CVE-2009-0029] System call wrapper special cases\n\nSystem calls with an unsigned long long argument can\u0027t be converted with\nthe standard wrappers since that would include a cast to long, which in\nturn means that we would lose the upper 32 bit on 32 bit architectures.\nAlso semctl can\u0027t use the standard wrapper since it has a \u0027union\u0027\nparameter.\n\nSo we handle them as special case and add some extra wrappers instead.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "2ed7c03ec17779afb4fcfa3b8c61df61bd4879ba",
      "tree": "4e0fefd574bab5470a02edf439727f472a9663c6",
      "parents": [
        "4c696ba7982501d43dea11dbbaabd2aa8a19cc42"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:13:54 2009 +0100"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:15:14 2009 +0100"
      },
      "message": "[CVE-2009-0029] Convert all system calls to return a long\n\nConvert all system calls to return a long. This should be a NOP since all\nconverted types should have the same size anyway.\nWith the exception of sys_exit_group which returned void. But that doesn\u0027t\nmatter since the system call doesn\u0027t return.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "c40f6f8bbc4cbd2902671aacd587400ddca62627",
      "tree": "a991e5521e10943f4457fb7f494e00aec75cc7df",
      "parents": [
        "1a7d0f0bec4be078ce2cfb11538c0f4ffbbed8e5",
        "cb6ff208076b5f434db1b8c983429269d719cef5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 09 14:00:58 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 09 14:00:58 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-nommu\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-nommu:\n  NOMMU: Support XIP on initramfs\n  NOMMU: Teach kobjsize() about VMA regions.\n  FLAT: Don\u0027t attempt to expand the userspace stack to fill the space allocated\n  FDPIC: Don\u0027t attempt to expand the userspace stack to fill the space allocated\n  NOMMU: Improve procfs output using per-MM VMAs\n  NOMMU: Make mmap allocation page trimming behaviour configurable.\n  NOMMU: Make VMAs per MM as for MMU-mode linux\n  NOMMU: Delete askedalloc and realalloc variables\n  NOMMU: Rename ARM\u0027s struct vm_region\n  NOMMU: Fix cleanup handling in ramfs_nommu_get_umapped_area()\n"
    },
    {
      "commit": "a6684999f7c6bddd75cf9755ad7ff44435f72fff",
      "tree": "4275daa54c1868ab289e361fec0ced01c891ec33",
      "parents": [
        "61bce0f1371cfff497fe85594fd39d1a0b15ebe1"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.vnet.ibm.com",
        "time": "Wed Jan 07 18:08:50 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:12 2009 -0800"
      },
      "message": "mqueue: fix si_pid value in mqueue do_notify()\n\nIf a process registers for asynchronous notification on a POSIX message\nqueue, it gets a signal and a siginfo_t structure when a message arrives\non the message queue.  The si_pid in the siginfo_t structure is set to the\nPID of the process that sent the message to the message queue.\n\nThe principle is the following:\n. when mq_notify(SIGEV_SIGNAL) is called, the caller registers for\n  notification when a msg arrives. The associated pid structure is stroed into\n  inode_info-\u003enotify_owner. Let\u0027s call this process P1.\n. when mq_send() is called by say P2, P2 sends a signal to P1 to notify\n  him about msg arrival.\n\nThe way .si_pid is set today is not correct, since it doesn\u0027t take into account\nthe fact that the process that is sending the message might not be in the\nsame namespace as the notified one.\n\nThis patch proposes to set si_pid to the sender\u0027s pid into the notify_owner\nnamespace.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.vnet.ibm.com\u003e\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Bastian Blank \u003cbastian@waldi.eu.org\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8feae13110d60cc6287afabc2887366b0eb226c2",
      "tree": "b3188986faab70e753e00ea8670a11ba8ec844c0",
      "parents": [
        "41836382ebb415d68d3ebc4525e78e871fe58baf"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jan 08 12:04:47 2009 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jan 08 12:04:47 2009 +0000"
      },
      "message": "NOMMU: Make VMAs per MM as for MMU-mode linux\n\nMake VMAs per mm_struct as for MMU-mode linux.  This solves two problems:\n\n (1) In SYSV SHM where nattch for a segment does not reflect the number of\n     shmat\u0027s (and forks) done.\n\n (2) In mmap() where the VMA\u0027s vm_mm is set to point to the parent mm by an\n     exec\u0027ing process when VM_EXECUTABLE is specified, regardless of the fact\n     that a VMA might be shared and already have its vm_mm assigned to another\n     process or a dead process.\n\nA new struct (vm_region) is introduced to track a mapped region and to remember\nthe circumstances under which it may be shared and the vm_list_struct structure\nis discarded as it\u0027s no longer required.\n\nThis patch makes the following additional changes:\n\n (1) Regions are now allocated with alloc_pages() rather than kmalloc() and\n     with no recourse to __GFP_COMP, so the pages are not composite.  Instead,\n     each page has a reference on it held by the region.  Anything else that is\n     interested in such a page will have to get a reference on it to retain it.\n     When the pages are released due to unmapping, each page is passed to\n     put_page() and will be freed when the page usage count reaches zero.\n\n (2) Excess pages are trimmed after an allocation as the allocation must be\n     made as a power-of-2 quantity of pages.\n\n (3) VMAs are added to the parent MM\u0027s R/B tree and mmap lists.  As an MM may\n     end up with overlapping VMAs within the tree, the VMA struct address is\n     appended to the sort key.\n\n (4) Non-anonymous VMAs are now added to the backing inode\u0027s prio list.\n\n (5) Holes may be punched in anonymous VMAs with munmap(), releasing parts of\n     the backing region.  The VMA and region structs will be split if\n     necessary.\n\n (6) sys_shmdt() only releases one attachment to a SYSV IPC shared memory\n     segment instead of all the attachments at that addresss.  Multiple\n     shmat()\u0027s return the same address under NOMMU-mode instead of different\n     virtual addresses as under MMU-mode.\n\n (7) Core dumping for ELF-FDPIC requires fewer exceptions for NOMMU-mode.\n\n (8) /proc/maps is now the global list of mapped regions, and may list bits\n     that aren\u0027t actually mapped anywhere.\n\n (9) /proc/meminfo gains a line (tagged \"MmapCopy\") that indicates the amount\n     of RAM currently allocated by mmap to hold mappable regions that can\u0027t be\n     mapped directly.  These are copies of the backing device or file if not\n     anonymous.\n\nThese changes make NOMMU mode more similar to MMU mode.  The downside is that\nNOMMU mode requires some extra memory to track things over NOMMU without this\npatch (VMAs are no longer shared, and there are now region structs).\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "4c2c3b4aaf3c10a636490438e9648a314ce414f9",
      "tree": "2e9b852fb178d8cb2982829d5a01711575d6d3a5",
      "parents": [
        "e953ac2195659940d0d042f7ac962700a6a0f0e3"
      ],
      "author": {
        "name": "akpm@linux-foundation.org",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Jan 06 14:42:51 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:29 2009 -0800"
      },
      "message": "ipc/ipc_sysctl.c: move the definition of ipc_auto_callback()\n\nproc_ipcauto_dointvec_minmax() is the only user of ipc_auto_callback(),\nsince the former function is protected by CONFIG_PROC_FS, so should be the\nlatter one.\n\nJust move its definition down.\n\nSigned-off-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nCc: Eric Biederman \u003cebiederm@xmision.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e953ac2195659940d0d042f7ac962700a6a0f0e3",
      "tree": "68eba3fff785161166b144b1bcf57858976cc9a4",
      "parents": [
        "e8148f7588064e45080bf1120883380a2efe5c9b"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Jan 06 14:42:50 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:29 2009 -0800"
      },
      "message": "ipc: do not goto to the next line\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nReviewed-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e8148f7588064e45080bf1120883380a2efe5c9b",
      "tree": "3696d738d8e118632c456d77f4a0a4afdcfc98e5",
      "parents": [
        "8cd3ac3aca3f2afe8570708066d64d893da468e8"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "wangcong@zeuux.org",
        "time": "Tue Jan 06 14:42:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:29 2009 -0800"
      },
      "message": "ipc: clean up ipc/shm.c\n\nUse the macro shm_ids().\n\nRemove useless check for a userspace pointer, because copy_to_user()\nwill check it.\n\nSome style cleanups.\n\nSigned-off-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "520c85346666d4d9a6fcaaa8450542302dc28b91",
      "tree": "9c9cc9e2493b606104dd8602302ae28258ebeac0",
      "parents": [
        "e8c82c2e23e3527e0c9dc195e432c16784d270fa",
        "4ae8978cf92a96257cd8998a49e781be83571d64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:06 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  inotify: fix type errors in interfaces\n  fix breakage in reiserfs_new_inode()\n  fix the treatment of jfs special inodes\n  vfs: remove duplicate code in get_fs_type()\n  add a vfs_fsync helper\n  sys_execve and sys_uselib do not call into fsnotify\n  zero i_uid/i_gid on inode allocation\n  inode-\u003ei_op is never NULL\n  ntfs: don\u0027t NULL i_op\n  isofs check for NULL -\u003ei_op in root directory is dead code\n  affs: do not zero -\u003ei_op\n  kill suid bit only for regular files\n  vfs: lseek(fd, 0, SEEK_CUR) race condition\n"
    },
    {
      "commit": "046c68842bce6b77509cf56e94a561029124b0ce",
      "tree": "1a355899ba92ce4059027264cf759986234a930c",
      "parents": [
        "5641f1fde074651ce2488e93944cf05dedd9bf74"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jan 05 14:06:29 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 17:44:42 2009 -0800"
      },
      "message": "mm: update my address\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "56ff5efad96182f4d3cb3dc6b07396762c658f16",
      "tree": "cb91f93aa2324573527165d56d230b606a3111ed",
      "parents": [
        "acfa4380efe77e290d3a96b11cd4c9f24f4fbb18"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 09 09:34:39 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "zero i_uid/i_gid on inode allocation\n\n... and don\u0027t bother in callers.  Don\u0027t bother with zeroing i_blocks,\nwhile we are at it - it\u0027s already been zeroed.\n\ni_mode is not worth the effort; it has no common default value.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "564f6993ffef656aebaf46cf2f1f6cb4f5c97207",
      "tree": "0bf1ee553ab1241338fe522ffbaed8cd48e10c99",
      "parents": [
        "c32c8af43b9adde8d6f938d8e6328c13b8de79ac"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Dec 14 04:02:26 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:41 2009 -0500"
      },
      "message": "sanitize audit_mq_open()\n\n* don\u0027t bother with allocations\n* don\u0027t do double copy_from_user()\n* don\u0027t duplicate parts of check for audit_dummy_context()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c32c8af43b9adde8d6f938d8e6328c13b8de79ac",
      "tree": "6377079bba7530d2aa8a688ebf9ba3e09ae085a7",
      "parents": [
        "20114f71b27cafeb7c7e41d2b0f0b68c3fbb022b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Dec 14 03:46:48 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:40 2009 -0500"
      },
      "message": "sanitize AUDIT_MQ_SENDRECV\n\n* logging the original value of *msg_prio in mq_timedreceive(2)\n  is insane - the argument is write-only (i.e. syscall always\n  ignores the original value and only overwrites it).\n* merge __audit_mq_timed{send,receive}\n* don\u0027t do copy_from_user() twice\n* don\u0027t mess with allocations in auditsc part\n* ... and don\u0027t bother checking !audit_enabled and !context in there -\n  we\u0027d already checked for audit_dummy_context().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "20114f71b27cafeb7c7e41d2b0f0b68c3fbb022b",
      "tree": "fcbb481cfec8c11f103ba07dbb08819de3822d80",
      "parents": [
        "7392906ea915b9a2c14dea32b3604b4e178f82f7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 10 07:16:12 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:40 2009 -0500"
      },
      "message": "sanitize audit_mq_notify()\n\n* don\u0027t copy_from_user() twice\n* don\u0027t bother with allocations\n* don\u0027t duplicate parts of audit_dummy_context()\n* make it return void\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7392906ea915b9a2c14dea32b3604b4e178f82f7",
      "tree": "1e4fbe56e3738fade213ef805ec274ea74ac6a1b",
      "parents": [
        "e816f370cbadd2afea9f1a42f232d0636137d563"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 10 06:58:59 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:40 2009 -0500"
      },
      "message": "sanitize audit_mq_getsetattr()\n\n* get rid of allocations\n* make it return void\n* don\u0027t duplicate parts of audit_dummy_context()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e816f370cbadd2afea9f1a42f232d0636137d563",
      "tree": "8a9fe488ced59cd9864fcbf15292641c3b95143c",
      "parents": [
        "a33e6751003c5ade603737d828b1519d980ce392"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 10 03:47:15 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:40 2009 -0500"
      },
      "message": "sanitize audit_ipc_set_perm()\n\n* get rid of allocations\n* make it return void\n* simplify callers\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a33e6751003c5ade603737d828b1519d980ce392",
      "tree": "aa484d033e886945aed78172dbdd4d2fd928bacf",
      "parents": [
        "f3298dc4f2277874d40cb4fc3a6e277317d6603b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 10 03:40:06 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:39 2009 -0500"
      },
      "message": "sanitize audit_ipc_obj()\n\n* get rid of allocations\n* make it return void\n* simplify callers\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ec98ce480ada787f2cfbd696980ff3564415505b",
      "tree": "1a4d644b38f9f1e4b4e086fde0b195df4a92cf84",
      "parents": [
        "3496f92beb9aa99ef21fccc154a36c7698e9c538",
        "feaf3848a813a106f163013af6fcf6c4bfec92d9"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 04 17:16:36 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 04 17:16:36 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tfs/nfsd/nfs4recover.c\n\nManually fixed above to use new creds API functions, e.g.\nnfs4_save_creds().\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "e00b4ff7ebf098b11b11be403921c1cf41d9e321",
      "tree": "ca0b085b803128efea92ab98723adcefb35556fc",
      "parents": [
        "cf7b9a1e11993a064f445d332fecf22819b87a5e"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Wed Nov 19 15:36:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 19 18:49:57 2008 -0800"
      },
      "message": "sysvipc: fix the ipc structures initialization\n\nA problem was found while reviewing the code after Bugzilla bug\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d11796.\n\nIn ipc_addid(), the newly allocated ipc structure is inserted into the\nipcs tree (i.e made visible to readers) without locking it.  This is not\ncorrect since its initialization continues after it has been inserted in\nthe tree.\n\nThis patch moves the ipc structure lock initialization + locking before\nthe actual insertion.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nReported-by: Clement Calmels \u003ccboulte@gmail.com\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.27.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "745ca2475a6ac596e3d8d37c2759c0fbe2586227",
      "tree": "f87c34bdfbc8542477b16a014bbb4e3b415b286a",
      "parents": [
        "88e67f3b8898c5ea81d2916dd5b8bc9c0c35ba13"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:22 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:22 2008 +1100"
      },
      "message": "CRED: Pass credentials through dentry_open()\n\nPass credentials through dentry_open() so that the COW creds patch can have\nSELinux\u0027s flush_unauthorized_files() pass the appropriate creds back to itself\nwhen it opens its null chardev.\n\nThe security_dentry_open() call also now takes a creds pointer, as does the\ndentry_open hook in struct security_operations.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "86a264abe542cfececb4df129bc45a0338d8cdb9",
      "tree": "30152f04ba847f311028d5ca697f864c16c7ebb3",
      "parents": [
        "f1752eec6145c97163dbce62d17cf5d928e28a27"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:18 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:18 2008 +1100"
      },
      "message": "CRED: Wrap current-\u003ecred and a few other accessors\n\nWrap current-\u003ecred and a few other accessors to hide their actual\nimplementation.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "b6dff3ec5e116e3af6f537d4caedcad6b9e5082a",
      "tree": "9e76f972eb7ce9b84e0146c8e4126a3f86acb428",
      "parents": [
        "15a2460ed0af7538ca8e6c610fe607a2cd9da142"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:16 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:16 2008 +1100"
      },
      "message": "CRED: Separate task security context from task_struct\n\nSeparate the task security context from task_struct.  At this point, the\nsecurity data is temporarily embedded in the task_struct with two pointers\npointing to it.\n\nNote that the Alpha arch is altered as it refers to (E)UID and (E)GID in\nentry.S via asm-offsets.\n\nWith comment fixes Signed-off-by: Marc Dionne \u003cmarc.c.dionne@gmail.com\u003e\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "414c0708d0d60eccf8345c405ac81cf32c43e901",
      "tree": "5c3a5bd4c421176164475f87dc2f3cdb0de905e0",
      "parents": [
        "da9592edebceeba1b9301beafe80ec8b9c2db0ce"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:06 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:06 2008 +1100"
      },
      "message": "CRED: Wrap task credential accesses in the SYSV IPC subsystem\n\nWrap access to task credentials so that they can be separated more easily from\nthe task_struct during the introduction of COW creds.\n\nChange most current-\u003e(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id().\n\nChange some task-\u003ee?[ug]id to task_e?[ug]id().  In some places it makes more\nsense to use RCU directly rather than a convenient wrapper; these will be\naddressed by later patches.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "aeb5d727062a0238a2f96c9c380fbd2be4640c6f",
      "tree": "51dae8a071fcf42e4431a66d37c5b843c8e99cf6",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Sep 02 15:28:45 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:47:06 2008 -0400"
      },
      "message": "[PATCH] introduce fmode_t, do annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b231cca4381ee15ec99afbfb244fbc0324869927",
      "tree": "1539fb250a15e6098c1e2ff4c98b166e5f6f1e3a",
      "parents": [
        "acd99dbf54020f5c80b9aa2f2ea86f43cb285b02"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Sat Oct 18 20:28:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:40 2008 -0700"
      },
      "message": "message queues: increase range limits\n\nIncrease the range of various posix message queue limits.\n\nPosix gives the message queue user the ability to \u0027trade off\u0027 the maximum\nsize of messages with the number of possible messages that can be \u0027in\nflight\u0027.  Linux currently makes this trade off more restrictive than it\nneeds to be.\n\nIn particular, the maximum message size today can be made no smaller than\n8192.  This greatly restricts those applications that would like to have\nthe ability to post large numbers of very small messages.\n\nSo this task lowers the limit that the maximum message size can be set to,\nfrom 8192 to 128.  It also lowers the limit that the maximum #number of\nmessages in flight can be set to, from 10 to 1.\n\nWith these changes the message queue user can make better trade offs\nbetween #messages and message size, in order to get everything to fit\nwithin the setrlimit(RLIMIT_MSGQUEUE) limit for that particular user.\n\nThis patch also applies the values in\n\n\t/proc/sys/fs/mqueue/msg_max\n\t/proc/sys/fs/mqueue/msgsize_max\n\nas the defaults for the max #messages allowed and the max message size\nallowed, respectively, for those applications that do not supply these.\nPreviously, the defaults were hardwired to 10 and 8192, respectively.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Joe Korty \u003cjoe.korty@ccur.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89e004ea55abe201b29e2d6e35124101f1288ef7",
      "tree": "272a8f453106fd33d66fd7153f44696648dbe8b6",
      "parents": [
        "ba9ddf49391645e6bb93219131a40446538a5e76"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "Lee.Schermerhorn@hp.com",
        "time": "Sat Oct 18 20:26:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:50:26 2008 -0700"
      },
      "message": "SHM_LOCKED pages are unevictable\n\nShmem segments locked into memory via shmctl(SHM_LOCKED) should not be\nkept on the normal LRU, since scanning them is a waste of time and might\nthrow off kswapd\u0027s balancing algorithms.  Place them on the unevictable\nLRU list instead.\n\nUse the AS_UNEVICTABLE flag to mark address_space of SHM_LOCKed shared\nmemory regions as unevictable.  Then these pages will be culled off the\nnormal LRU lists during vmscan.\n\nAdd new wrapper function to clear the mapping\u0027s unevictable state when/if\nshared memory segment is munlocked.\n\nAdd \u0027scan_mapping_unevictable_page()\u0027 to mm/vmscan.c to scan all pages in\nthe shmem segment\u0027s mapping [struct address_space] for evictability now\nthat they\u0027re no longer locked.  If so, move them to the appropriate zone\nlru list.\n\nChanges depend on [CONFIG_]UNEVICTABLE_LRU.\n\n[kosaki.motohiro@jp.fujitsu.com: revert shm change]\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Kosaki Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6d97e2345a03bcf15471fc7e93560fc71e0c11d8",
      "tree": "7e0afaf0f5cf404623a3c9c3387dc43421e65bb3",
      "parents": [
        "c9f66169f1c696f9489503d7de92daff135c1efd"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Oct 15 22:05:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:51 2008 -0700"
      },
      "message": "ipc/sem.c: make free_un() static\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f221e726bf4e082a05dcd573379ac859bfba7126",
      "tree": "a05f674caac693dc9aec7e46dd06115389f7ece3",
      "parents": [
        "f40cbaa5b0a4719489e6e7947351c99a159aca30"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 15 22:04:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:47 2008 -0700"
      },
      "message": "sysctl: simplify -\u003estrategy\n\nname and nlen parameters passed to -\u003estrategy hook are unused, remove\nthem.  In general -\u003estrategy hook should know what it\u0027s doing, and don\u0027t\ndo something tricky for which, say, pointer to original userspace array\nmay be needed (name).\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e [ networking bits ]\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f419a2e3b64def707e1384ee38abb77f99af5f6d",
      "tree": "adbe12c510f04cf25ca6f822ee8004c8679a3a63",
      "parents": [
        "30524472c2f728c20d6bf35191042a5d455c0a64"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 22 00:07:17 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:31 2008 -0400"
      },
      "message": "[PATCH] kill nameidata passing to permission(), rename to inode_permission()\n\nIncidentally, the name that gives hundreds of false positives on grep\nis not a good idea...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "51cc50685a4275c6a02653670af9f108a64e01cf",
      "tree": "819d47bd2b0c8a9d1835d863853804b0a0242b97",
      "parents": [
        "d91958815d214ea365b98cbff6215383897edcb6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jul 25 19:45:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:07 2008 -0700"
      },
      "message": "SL*B: drop kmem cache argument from constructor\n\nKmem cache passed to constructor is only needed for constructors that are\nthemselves multiplexeres.  Nobody uses this \"feature\", nor does anybody uses\npassed kmem cache in non-trivial way, so pass only pointer to object.\n\nNon-trivial places are:\n\tarch/powerpc/mm/init_64.c\n\tarch/powerpc/mm/hugetlbpage.c\n\nThis is flag day, yes.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jon Tollefson \u003ckniht@linux.vnet.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\n[akpm@linux-foundation.org: fix arch/powerpc/mm/hugetlbpage.c]\n[akpm@linux-foundation.org: fix mm/slab.c]\n[akpm@linux-foundation.org: fix ubifs]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9eefe520c814f6f62c5d36a2ddcd3fb99dfdb30e",
      "tree": "064ce99674f144b681f8d365d1e20d99c8078d0c",
      "parents": [
        "f1a43f93f0f3bab418800eaccb9e2e3b5427e173"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Fri Jul 25 01:48:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc: do not use a negative value to re-enable msgmni automatic recomputing\n\nThis patch proposes an alternative to the \"magical\npositive-versus-negative number trick\" Andrew complained about last week\nin http://lkml.org/lkml/2008/6/24/418.\n\nThis had been introduced with the patches that scale msgmni to the amount\nof lowmem.  With these patches, msgmni has a registered notification\nroutine that recomputes msgmni value upon memory add/remove or ipc\nnamespace creation/ removal.\n\nWhen msgmni is changed from user space (i.e.  value written to the proc\nfile), that notification routine is unregistered, and the way to make it\nregistered back is to write a negative value into the proc file.  This is\nthe \"magical positive-versus-negative number trick\".\n\nTo fix this, a new proc file is introduced: /proc/sys/kernel/auto_msgmni.\nThis file acts as ON/OFF for msgmni automatic recomputing.\n\nWith this patch, the process is the following:\n1) kernel boots in \"automatic recomputing mode\"\n   /proc/sys/kernel/msgmni contains the value that has been computed (depends\n                           on lowmem)\n   /proc/sys/kernel/automatic_msgmni contains \"1\"\n\n2) echo \u003cval\u003e \u003e /proc/sys/kernel/msgmni\n   . sets msg_ctlmni to \u003cval\u003e\n   . de-activates automatic recomputing (i.e. if, say, some memory is added\n     msgmni won\u0027t be recomputed anymore)\n   . /proc/sys/kernel/automatic_msgmni now contains \"0\"\n\n3) echo \"0\" \u003e /proc/sys/kernel/automatic_msgmni\n   . de-activates msgmni automatic recomputing\n     this has the same effect as 2) except that msg_ctlmni\u0027s value stays\n     blocked at its current value)\n\n3) echo \"1\" \u003e /proc/sys/kernel/automatic_msgmni\n   . recomputes msgmni\u0027s value based on the current available memory size\n     and number of ipc namespaces\n   . re-activates automatic recomputing for msgmni.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Solofo Ramangalahy \u003cSolofo.Ramangalahy@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1a43f93f0f3bab418800eaccb9e2e3b5427e173",
      "tree": "d39b73f1de7f16c74f5c304646dbadc728689fa8",
      "parents": [
        "380af1b33b3ff92df5cda96329b58f5d1b6b5a53"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Jul 25 01:48:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc: use simple_read_from_buffer()\n\nAlso this patch kills unneccesary trailing NULL character.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "380af1b33b3ff92df5cda96329b58f5d1b6b5a53",
      "tree": "9a47d66c18e4aae2093a708a7509c0f188ee0bd1",
      "parents": [
        "a1193f8ec091cd8fd309cc2982abe4499f6f2b4d"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Fri Jul 25 01:48:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc/sem.c: rewrite undo list locking\n\nThe attached patch:\n- reverses the locking order of ulp-\u003elock and sem_lock:\n  Previously, it was first ulp-\u003elock, then inside sem_lock.\n  Now it\u0027s the other way around.\n- converts the undo structure to rcu.\n\nBenefits:\n- With the old locking order, IPC_RMID could not kfree the undo structures.\n  The stale entries remained in the linked lists and were released later.\n- The patch fixes a a race in semtimedop(): if both IPC_RMID and a semget() that\n  recreates exactly the same id happen between find_alloc_undo() and sem_lock,\n  then semtimedop() would access already kfree\u0027d memory.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nReviewed-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1193f8ec091cd8fd309cc2982abe4499f6f2b4d",
      "tree": "b12f2ed903fea86cfc1fd34ddb464ecfc59e5452",
      "parents": [
        "2c0c29d414087f3b021059673c20a7088f5f1fff"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Fri Jul 25 01:48:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc/sem.c: convert sem_array.sem_pending to struct list_head\n\nsem_array.sem_pending is a double linked list, the attached patch converts\nit to struct list_head.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nReviewed-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2c0c29d414087f3b021059673c20a7088f5f1fff",
      "tree": "713b226382814837840b0ed2a42b909dbb6cfaf9",
      "parents": [
        "4daa28f6d8f5cda8ea0f55048e3c8811c384cbdd"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Fri Jul 25 01:48:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc/sem.c: remove unused entries from struct sem_queue\n\nsem_queue.sma and sem_queue.id were never used, the attached patch removes\nthem.\n\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nReviewed-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4daa28f6d8f5cda8ea0f55048e3c8811c384cbdd",
      "tree": "934bfbd7932a18da8295d9e21727985d1ea16311",
      "parents": [
        "00c2bf85d8febfcfddde63822043462b026134ff"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Fri Jul 25 01:48:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc/sem.c: convert undo structures to struct list_head\n\nThe undo structures contain two linked lists, the attached patch replaces\nthem with generic struct list_head lists.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00c2bf85d8febfcfddde63822043462b026134ff",
      "tree": "25dbdf6d713408da992eace1168c45244d13c2a7",
      "parents": [
        "983bfb7db303cfde56ae5bbf4e0f2f46e38c9576"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Fri Jul 25 01:48:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc: get rid of ipc_lock_down()\n\nRemove the ipc_lock_down() routines: they used to call idr_find() locklessly\n(given that the ipc ids lock was already held), so they are not needed\nanymore.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Jim Houston \u003cjim.houston@comcast.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "983bfb7db303cfde56ae5bbf4e0f2f46e38c9576",
      "tree": "d107ca3c03e2c84e3d58c6f9e53879d3486e9c5f",
      "parents": [
        "cf481c20c476ad2c0febdace9ce23f5a4db19582"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Fri Jul 25 01:48:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:42 2008 -0700"
      },
      "message": "ipc: call idr_find() without locking in ipc_lock()\n\nCall idr_find() locklessly from ipc_lock(), since the idr tree is now RCU\nprotected.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Jim Houston \u003cjim.houston@comcast.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5516438959d90b071ff0a484ce4f3f523dc3152",
      "tree": "e356ba9364c76b93c176b4d4a262b7aca3ee8f91",
      "parents": [
        "b7ba30c679ed1eb7ed3ed8f281f6493282042bd4"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jul 23 21:27:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:17 2008 -0700"
      },
      "message": "hugetlb: modular state for hugetlb page size\n\nThe goal of this patchset is to support multiple hugetlb page sizes.  This\nis achieved by introducing a new struct hstate structure, which\nencapsulates the important hugetlb state and constants (eg.  huge page\nsize, number of huge pages currently allocated, etc).\n\nThe hstate structure is then passed around the code which requires these\nfields, they will do the right thing regardless of the exact hstate they\nare operating on.\n\nThis patch adds the hstate structure, with a single global instance of it\n(default_hstate), and does the basic work of converting hugetlb to use the\nhstate.\n\nFuture patches will add more hstate structures to allow for different\nhugetlbfs mounts to have different page sizes.\n\n[akpm@linux-foundation.org: coding-style fixes]\nAcked-by: Adam Litke \u003cagl@us.ibm.com\u003e\nAcked-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ae127d1b6c71f9240dd4245f240e6dd8fc98014",
      "tree": "b7aa27b3e0c655f4613fe2146cb57d7f69e421f6",
      "parents": [
        "875ec4333b99144e2589e900a0bcd2c25c757b27",
        "7775c9753b94fe429dc4323360d6502c95e0dd6e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 13 20:52:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 13 20:52:39 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/smc911x.c\n"
    },
    {
      "commit": "6c826818ff55eae7702b778b5f8bdf765af3b2af",
      "tree": "dab51aca0d7b86ccdc820894a96fad163f3fcb91",
      "parents": [
        "bcf8039ed45f56013c4afea5520bca7d909e5e61"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Jun 12 15:21:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 18:05:41 2008 -0700"
      },
      "message": "/proc/sysvipc/shm: fix 32-bit truncation of segment sizes\n\nsysvipc_shm_proc_show() picks between format strings (based on the\nexpected maximum length of a SHM segment) in a way that prevents gcc from\nperforming format checks on the seq_printf() parameters.  This hid two\nformat errors - shp-\u003eshm_segsz and shp-\u003eshm_nattach are both unsigned\nlong, but were being printed as unsigned int and signed int respectively.\nThis leads to 32-bit truncation of SHM segment sizes reported in\n/proc/sysvipc/shm.  (And for nattach, but that\u0027s less of a problem for\nmost users).\n\nThis patch makes the format string directly visible to gcc\u0027s format\nspecifier checker, and fixes the two broken format specifiers.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c592713b3e124ce0719e6af4bc2520424c49cbae",
      "tree": "5b8c212fb7601c0560f16c46543581d6b4fd726a",
      "parents": [
        "5e70b7f3c24468bb1635b295945edb48ecd9656a"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Jun 10 08:53:39 2008 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 10 07:58:00 2008 -0700"
      },
      "message": "shm: Remove silly double assignment\n\nFound a silly double assignment of err is do_shmat.  Silly, but good to\nclean up the useless code.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dfcceb26f89da86ec4ac9583c4515504af8c6c84",
      "tree": "a319825aaeb9fa572c3b5c81d85995b4acaf0ec5",
      "parents": [
        "68aa0a206a7a2dd8655a50b36e8274eb87b84544"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Jun 05 22:46:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:12 2008 -0700"
      },
      "message": "ipc: only output msgmni value at boot time\n\nWhen posting:\n[PATCH 1/8] Scaling msgmni to the amount of lowmem\n(see http://lkml.org/lkml/2008/2/11/171), I have added a KERN_INFO message\nthat is output each time msgmni is recomputed.\n\nIn http://lkml.org/lkml/2008/4/29/575 Tony Luck complained that this\nmessage references an ipc namespace address that is useless.\n\nI first thought of using an audit_log instead of a printk, as suggested by\nSerge Hallyn.  But unfortunately, we do not have any other information\nthan the namespace address to provide here too.  So I chose to move the\nmessage and output it only at boot time, removing the reference to the\nnamespace.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: \"Serge E. Hallyn\" \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9457afee85e0dfc2b5075a391d6f34463b4c2b90",
      "tree": "39cf1262030ef195876c916a6f64201d66c48312",
      "parents": [
        "40aecb1b13f50d96616abb612c17e59457f54263"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Jun 05 11:23:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 05 11:23:39 2008 -0700"
      },
      "message": "netlink: Remove nonblock parameter from netlink_attachskb\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "269f21344b23e552c21c9e2d7ca258479dcd7a0a",
      "tree": "cca8c73bba632a716c901c9843cc865cd40ad9ee",
      "parents": [
        "d35c7b0e54a596c5a8134d75999b7f391a9c6550"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Sat May 03 15:28:45 2008 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 03 13:50:33 2008 -0700"
      },
      "message": "tiny mq_open optimization\n\nA very small cleanup for mq_open.\n\nWe do not have to call set_close_on_exit if we create the file\ndescriptor right away with the flag set.  We have a function for this\nnow.  The resulting code is smaller and a tiny bit faster.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a6375db13703b42dd51b28576d444bb73c541b9",
      "tree": "87ad672479234d5c6773b1f22522dd2eda244c30",
      "parents": [
        "79da3664f61640057041bf172b1457e2d1969330"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "sysvipc: use non-racy method for proc entries creation\n\nUse proc_create_data() to make sure that -\u003eproc_fops and -\u003edata be setup\nbefore gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9edff4ab1f8d82675277a04e359d0ed8bf14a7b7",
      "tree": "05e67ca13f78b0eff666a4424e03dd6d0fa964c7",
      "parents": [
        "44f564a4bf6ac70f2a84806203045cf515bc9367"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Tue Apr 29 01:00:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipc: sysvsem: implement sys_unshare(CLONE_SYSVSEM)\n\nsys_unshare(CLONE_NEWIPC) doesn\u0027t handle the undo lists properly, this can\ncause a kernel memory corruption.  CLONE_NEWIPC must detach from the existing\nundo lists.\n\nFix, part 1: add support for sys_unshare(CLONE_SYSVSEM)\n\nThe original reason to not support it was the potential (inevitable?)\nconfusion due to the fact that sys_unshare(CLONE_SYSVSEM) has the\ninverse meaning of clone(CLONE_SYSVSEM).\n\nOur two most reasonable options then appear to be (1) fully support\nCLONE_SYSVSEM, or (2) continue to refuse explicit CLONE_SYSVSEM,\nbut always do it anyway on unshare(CLONE_SYSVSEM).  This patch does\n(1).\n\nChangelog:\n\tApr 16: SEH: switch to Manfred\u0027s alternative patch which\n\t\tremoves the unshare_semundo() function which\n\t\talways refused CLONE_SYSVSEM.\n\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "44f564a4bf6ac70f2a84806203045cf515bc9367",
      "tree": "46b97186393b7473711c840d4f5e5ce722a5e37d",
      "parents": [
        "a5f75e7f256f75759ec3d6dbef0ba932f1b397d2"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Tue Apr 29 01:00:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipc: add definitions of USHORT_MAX and others\n\nAdd definitions of USHORT_MAX and others into kernel.  ipc uses it and slub\nimplementation might also use it.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Zhang Yanmin \u003cyanmin.zhang@intel.com\u003e\nReviewed-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: \"Pierre Peiffer\" \u003cpeifferp@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5f75e7f256f75759ec3d6dbef0ba932f1b397d2",
      "tree": "89b2ed22547a9fca11f87eb6cba68bb84fcf1b8a",
      "parents": [
        "8f4a3809c18ff3107bdbb1fabe3f4e5d2a928321"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "IPC: consolidate all xxxctl_down() functions\n\nsemctl_down(), msgctl_down() and shmctl_down() are used to handle the same set\nof commands for each kind of IPC.  They all start to do the same job (they\nretrieve the ipc and do some permission checks) before handling the commands\non their own.\n\nThis patch proposes to consolidate this by moving these same pieces of code\ninto one common function called ipcctl_pre_down().\n\nIt simplifies a little these xxxctl_down() functions and increases a little\nthe maintainability.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f4a3809c18ff3107bdbb1fabe3f4e5d2a928321",
      "tree": "444ec369565052fde4b349c40b610caa69c93a25",
      "parents": [
        "016d7132f246a05e6e34ccba157fa278a96c45ae"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "IPC: introduce ipc_update_perm()\n\nThe IPC_SET command performs the same permission setting for all IPCs.  This\npatch introduces a common ipc_update_perm() function to update these\npermissions and makes use of it for all IPCs.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "016d7132f246a05e6e34ccba157fa278a96c45ae",
      "tree": "a7003a30b2c2e4a399f6394a860b10fbd1afa4da",
      "parents": [
        "21a4826a7c49bddebbe8d83d232f6416f1697ff0"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "IPC: get rid of the use *_setbuf structure.\n\nAll IPCs make use of an intermetiate *_setbuf structure to handle the IPC_SET\ncommand.  This is not really needed and, moreover, it complicates a little bit\nthe code.\n\nThis patch gets rid of the use of it and uses directly the semid64_ds/\nmsgid64_ds/shmid64_ds structure.\n\nIn addition of removing one struture declaration, it also simplifies and\nimproves a little bit the common 64-bits path.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21a4826a7c49bddebbe8d83d232f6416f1697ff0",
      "tree": "bfcad90f4b6e29910a2571c749319d1323a7756a",
      "parents": [
        "522bb2a2b420a0c1d0fcd037aa4e1bb9e2bca447"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "IPC/semaphores: remove one unused parameter from semctl_down()\n\nsemctl_down() takes one unused parameter: semnum.  This patch proposes to get\nrid of it.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "522bb2a2b420a0c1d0fcd037aa4e1bb9e2bca447",
      "tree": "6023efd860b807e7d50a20eebeaebe3e21d0285b",
      "parents": [
        "a0d092fc2df845a43cc4847836818f49331d0a5c"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "IPC/semaphores: move the rwmutex handling inside semctl_down\n\nsemctl_down is called with the rwmutex (the one which protects the list of\nipcs) taken in write mode.\n\nThis patch moves this rwmutex taken in write-mode inside semctl_down.\n\nThis has the advantages of reducing a little bit the window during which this\nrwmutex is taken, clarifying sys_semctl, and finally of having a coherent\nbehaviour with [shm|msg]ctl_down\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a0d092fc2df845a43cc4847836818f49331d0a5c",
      "tree": "f47b94bfa2e18beadff39930c9386764e45bc4ec",
      "parents": [
        "8d4cc8b5c5e5bac526618ee704f3cfdcad954e0c"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:48 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "IPC/message queues: introduce msgctl_down\n\nCurrently, sys_msgctl is not easy to read.\n\nThis patch tries to improve that by introducing the msgctl_down function to\nhandle all commands requiring the rwmutex to be taken in write mode (ie\nIPC_SET and IPC_RMID for now).  It is the equivalent function of semctl_down\nfor message queues.\n\nThis greatly changes the readability of sys_msgctl and also harmonizes the way\nthese commands are handled among all IPCs.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d4cc8b5c5e5bac526618ee704f3cfdcad954e0c",
      "tree": "21258b10175f63703ace0a88402e513c6046d2d8",
      "parents": [
        "6ff3797218ef41c248c83184101ce1aedc227333"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "IPC/shared memory: introduce shmctl_down\n\nCurrently, the way the different commands are handled in sys_shmctl introduces\nsome duplicated code.\n\nThis patch introduces the shmctl_down function to handle all the commands\nrequiring the rwmutex to be taken in write mode (ie IPC_SET and IPC_RMID for\nnow).  It is the equivalent function of semctl_down for shared memory.\n\nThis removes some duplicated code for handling these both commands and\nharmonizes the way they are handled among all IPCs.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ff3797218ef41c248c83184101ce1aedc227333",
      "tree": "0957a7f808b2a4f6383dab6408a2873f9a87f495",
      "parents": [
        "6546bc4279241e8fa432de1bb63a4f6f791fd669"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "IPC/semaphores: code factorisation\n\nTrivial patch which adds some small locking functions and makes use of them to\nfactorize some part of the code and to make it cleaner.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6546bc4279241e8fa432de1bb63a4f6f791fd669",
      "tree": "308f5c1621b1019a44800622ffc468a372f09434",
      "parents": [
        "91cfb2b4b57816de0c96de417b3238249f0b125f"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Tue Apr 29 01:00:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "ipc: re-enable msgmni automatic recomputing msgmni if set to negative\n\nThe enhancement as asked for by Yasunori: if msgmni is set to a negative\nvalue, register it back into the ipcns notifier chain.\n\nA new interface has been added to the notification mechanism:\nnotifier_chain_cond_register() registers a notifier block only if not already\nregistered.  With that new interface we avoid taking care of the states\nchanges in procfs.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "91cfb2b4b57816de0c96de417b3238249f0b125f",
      "tree": "a7f10f4445c6ffeec0e4cad5a2ea5dae3d0faf8b",
      "parents": [
        "e2c284d8a87f95df9b47c6a13168a844ca7c03e9"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Tue Apr 29 01:00:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:13 2008 -0700"
      },
      "message": "ipc: do not recompute msgmni anymore if explicitly set by user\n\nMake msgmni not recomputed anymore upon ipc namespace creation / removal or\nmemory add/remove, as soon as it has been set from userland.\n\nAs soon as msgmni is explicitly set via procfs or sysctl(), the associated\ncallback routine is unregistered from the ipc namespace notifier chain.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2c284d8a87f95df9b47c6a13168a844ca7c03e9",
      "tree": "6eb27ea254d47c94dbfb33da23314dd69479e56e",
      "parents": [
        "424450c1dbe72b6e2637e91108417d7d9580c4c3"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Tue Apr 29 01:00:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "ipc: recompute msgmni on ipc namespace creation/removal\n\nIntroduce a notification mechanism that aims at recomputing msgmni each time\nan ipc namespace is created or removed.\n\nThe ipc namespace notifier chain already defined for memory hotplug management\nis used for that purpose too.\n\nEach time a new ipc namespace is allocated or an existing ipc namespace is\nremoved, the ipcns notifier chain is notified.  The callback routine for each\nregistered ipc namespace is then activated in order to recompute msgmni for\nthat namespace.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "424450c1dbe72b6e2637e91108417d7d9580c4c3",
      "tree": "472fd07a519cdfd594a15da5d2167d8de937e95e",
      "parents": [
        "b6b337ad1c1d6fe11b09b35d75464b84b3e11f07"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Tue Apr 29 01:00:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "ipc: invoke the ipcns notifier chain as a work item\n\nMake the memory hotplug chain\u0027s mutex held for a shorter time: when memory is\nofflined or onlined a work item is added to the global workqueue.  When the\nwork item is run, it notifies the ipcns notifier chain with the\nIPCNS_MEMCHANGED event.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6b337ad1c1d6fe11b09b35d75464b84b3e11f07",
      "tree": "df174a23a827cc43db76900d1ddbbef3ac9ddc90",
      "parents": [
        "0c40ba4fd64f98e7a5cba8ffaedbd68642a85700"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Tue Apr 29 01:00:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "ipc: recompute msgmni on memory add / remove\n\nIntroduce the registration of a callback routine that recomputes msg_ctlmni\nupon memory add / remove.\n\nA single notifier block is registered in the hotplug memory chain for all the\nipc namespaces.\n\nSince the ipc namespaces are not linked together, they have their own\nnotification chain: one notifier_block is defined per ipc namespace.\n\nEach time an ipc namespace is created (removed) it registers (unregisters) its\nnotifier block in (from) the ipcns chain.  The callback routine registered in\nthe memory chain invokes the ipcns notifier chain with the IPCNS_LOWMEM event.\n Each callback routine registered in the ipcns namespace, in turn, recomputes\nmsgmni for the owning namespace.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d89dc6ab2711258bfd12c72d753f3ad56b244e2",
      "tree": "a971c08eab247a7d69ae5fe54c4e0bdfef5d29ba",
      "parents": [
        "f7bf3df8be72d98afa84f5ff183e14c1ba1e560d"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Tue Apr 29 01:00:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "ipc: scale msgmni to the number of ipc namespaces\n\nSince all the namespaces see the same amount of memory (the total one) this\npatch introduces a new variable that counts the ipc namespaces and divides\nmsg_ctlmni by this counter.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7bf3df8be72d98afa84f5ff183e14c1ba1e560d",
      "tree": "7946f8b139da1690508f11347929a9bd31f12429",
      "parents": [
        "48dea404ed01869313f1908cca8a15774dcd8ee5"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Tue Apr 29 01:00:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "ipc: scale msgmni to the amount of lowmem\n\nOn large systems we\u0027d like to allow a larger number of message queues.  In\nsome cases up to 32K.  However simply setting MSGMNI to a larger value may\ncause problems for smaller systems.\n\nThe first patch of this series introduces a default maximum number of message\nqueue ids that scales with the amount of lowmem.\n\nSince msgmni is per namespace and there is no amount of memory dedicated to\neach namespace so far, the second patch of this series scales msgmni to the\nnumber of ipc namespaces too.\n\nSince msgmni depends on the amount of memory, it becomes necessary to\nrecompute it upon memory add/remove.  In the 4th patch, memory hotplug\nmanagement is added: a notifier block is registered into the memory hotplug\nnotifier chain for the ipc subsystem.  Since the ipc namespaces are not linked\ntogether, they have their own notification chain: one notifier_block is\ndefined per ipc namespace.  Each time an ipc namespace is created (removed) it\nregisters (unregisters) its notifier block in (from) the ipcns chain.  The\ncallback routine registered in the memory chain invokes the ipcns notifier\nchain with the IPCNS_MEMCHANGE event.  Each callback routine registered in the\nipcns namespace, in turn, recomputes msgmni for the owning namespace.\n\nThe 5th patch makes it possible to keep the memory hotplug notifier chain\u0027s\nlock for a lesser amount of time: instead of directly notifying the ipcns\nnotifier chain upon memory add/remove, a work item is added to the global\nworkqueue.  When activated, this work item is the one who notifies the ipcns\nnotifier chain.\n\nSince msgmni depends on the number of ipc namespaces, it becomes necessary to\nrecompute it upon ipc namespace creation / removal.  The 6th patch uses the\nipc namespace notifier chain for that purpose: that chain is notified each\ntime an ipc namespace is created or removed.  This makes it possible to\nrecompute msgmni for all the namespaces each time one of them is created or\nremoved.\n\nWhen msgmni is explicitely set from userspace, we should avoid recomputing it\nupon memory add/remove or ipcns creation/removal.  This is what the 7th patch\ndoes: it simply unregisters the ipcns callback routine as soon as msgmni has\nbeen changed from procfs or sysctl().\n\nEven if msgmni is set by hand, it should be possible to make it back\nautomatically recomputed upon memory add/remove or ipcns creation/removal.\nThis what is achieved in patch 8: if set to a negative value, msgmni is added\nback to the ipcns notifier chain, making it automatically recomputed again.\n\nThis patch:\n\nCompute msg_ctlmni to make it scale with the amount of lowmem.  msg_ctlmni is\nnow set to make the message queues occupy 1/32 of the available lowmem.\n\nSome cleaning has also been done for the MSGPOOL constant: the msgctl man page\nsays it\u0027s not used, but it also defines it as a size in bytes (the code\nexpresses it in Kbytes).\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "48dea404ed01869313f1908cca8a15774dcd8ee5",
      "tree": "c4c50c9032556cf96b21f8704e4544998769b6b9",
      "parents": [
        "02d15c43225afb2ebb6d700144285175a1c4abd9"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Tue Apr 29 01:00:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "IPC: use ipc_buildid() directly from ipc_addid()\n\nBy continuing to consolidate a little the IPC code, each id can be built\ndirectly in ipc_addid() instead of having it built from each callers of\nipc_addid()\n\nAnd I also remove shm_addid() in order to have, as much as possible, the\nsame code for shm/sem/msg.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52cd3b074050dd664380b5e8cfc85d4a6ed8ad48",
      "tree": "fcfcf55c0e81376ea34919fab26e29bedd7f3b88",
      "parents": [
        "a6020ed759404372e8be2b276e85e51735472cc9"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "lee.schermerhorn@hp.com",
        "time": "Mon Apr 28 02:13:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:24 2008 -0700"
      },
      "message": "mempolicy: rework mempolicy Reference Counting [yet again]\n\nAfter further discussion with Christoph Lameter, it has become clear that my\nearlier attempts to clean up the mempolicy reference counting were a bit of\noverkill in some areas, resulting in superflous ref/unref in what are usually\nfast paths.  In other areas, further inspection reveals that I botched the\nunref for interleave policies.\n\nA separate patch, suitable for upstream/stable trees, fixes up the known\nerrors in the previous attempt to fix reference counting.\n\nThis patch reworks the memory policy referencing counting and, one hopes,\nsimplifies the code.  Maybe I\u0027ll get it right this time.\n\nSee the update to the numa_memory_policy.txt document for a discussion of\nmemory policy reference counting that motivates this patch.\n\nSummary:\n\nLookup of mempolicy, based on (vma, address) need only add a reference for\nshared policy, and we need only unref the policy when finished for shared\npolicies.  So, this patch backs out all of the unneeded extra reference\ncounting added by my previous attempt.  It then unrefs only shared policies\nwhen we\u0027re finished with them, using the mpol_cond_put() [conditional put]\nhelper function introduced by this patch.\n\nNote that shmem_swapin() calls read_swap_cache_async() with a dummy vma\ncontaining just the policy.  read_swap_cache_async() can call alloc_page_vma()\nmultiple times, so we can\u0027t let alloc_page_vma() unref the shared policy in\nthis case.  To avoid this, we make a copy of any non-null shared policy and\nremove the MPOL_F_SHARED flag from the copy.  This copy occurs before reading\na page [or multiple pages] from swap, so the overhead should not be an issue\nhere.\n\nI introduced a new static inline function \"mpol_cond_copy()\" to copy the\nshared policy to an on-stack policy and remove the flags that would require a\nconditional free.  The current implementation of mpol_cond_copy() assumes that\nthe struct mempolicy contains no pointers to dynamically allocated structures\nthat must be duplicated or reference counted during copy.\n\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae4d8c16aa22775f5731677abb8a82f03cec877e",
      "tree": "2d34c6fd334b51cc5f3265cd4ec26db758639b5c",
      "parents": [
        "f4e53d910b7dde2685b177f1e7c3e3e0b4a42f7b"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "lee.schermerhorn@hp.com",
        "time": "Mon Apr 28 02:13:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:24 2008 -0700"
      },
      "message": "mempolicy: fixup Fallback for Default Shmem Policy\n\nget_vma_policy() is not handling fallback to task policy correctly when the\nget_policy() vm_op returns NULL.  The NULL overwrites the \u0027pol\u0027 variable that\nwas holding the fallback task mempolicy.  So, it was falling back directly to\nsystem default policy.\n\nFix get_vma_policy() to use only non-NULL policy returned from the vma\nget_policy op.\n\nshm_get_policy() was falling back to current task\u0027s mempolicy if the \"backing\nfile system\" [tmpfs vs hugetlbfs] does not support the get_policy vm_op and\nthe vma policy is null.  This is incorrect for show_numa_maps() which is\nlikely querying the numa_maps of some task other than current.  Remove this\nfallback.\n\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a3fd211ccfc08a88edc824300e25a87785c6a5f",
      "tree": "99f1a76a99fa78464b8de731f7fdb5bcc9667a5e",
      "parents": [
        "42a74f206b914db13ee1f5ae932dcd91a77c8579"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Fri Feb 15 14:37:48 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Apr 19 00:29:25 2008 -0400"
      },
      "message": "[PATCH] r/o bind mounts: elevate write count for open()s\n\nThis is the first really tricky patch in the series.  It elevates the writer\ncount on a mount each time a non-special file is opened for write.\n\nWe used to do this in may_open(), but Miklos pointed out that __dentry_open()\nis used as well to create filps.  This will cover even those cases, while a\ncall in may_open() would not have.\n\nThere is also an elevated count around the vfs_create() call in open_namei().\nSee the comments for more details, but we need this to fix a \u0027create, remount,\nfail r/w open()\u0027 race.\n\nSome filesystems forego the use of normal vfs calls to create\nstruct files.   Make sure that these users elevate the mnt\nwriter count because they will get __fput(), and we need\nto make sure they\u0027re balanced.\n\nAcked-by: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0622753b800e4cc6cb9319b36b27658c72dd7cdc",
      "tree": "5a32b65a087ff7fd5effa8d3f6f1f9717d4391aa",
      "parents": [
        "49e0d02cf018d4edf24bfc8531a816a26367e4ce"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Fri Feb 15 14:37:34 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Apr 19 00:25:33 2008 -0400"
      },
      "message": "[PATCH] r/o bind mounts: elevate write count for rmdir and unlink.\n\nElevate the write count during the vfs_rmdir() and vfs_unlink().\n\n[AV: merged rmdir and unlink parts, added missing pieces in nfsd]\n\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "69682d852f5c94ee94e21174b3e8b719626c98db",
      "tree": "ed3c7c0681ef7658132ae32f1cd8a56bb6451621",
      "parents": [
        "9afa802ff568d935dab33dd207dc25d9849f35d4"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "Lee.Schermerhorn@hp.com",
        "time": "Mon Mar 10 11:43:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 10 18:01:19 2008 -0700"
      },
      "message": "mempolicy: fix reference counting bugs\n\nAddress 3 known bugs in the current memory policy reference counting method.\nI have a series of patches to rework the reference counting to reduce overhead\nin the allocation path.  However, that series will require testing in -mm once\nI repost it.\n\n1) alloc_page_vma() does not release the extra reference taken for\n   vma/shared mempolicy when the mode \u003d\u003d MPOL_INTERLEAVE.  This can result in\n   leaking mempolicy structures.  This is probably occurring, but not being\n   noticed.\n\n   Fix:  add the conditional release of the reference.\n\n2) hugezonelist unconditionally releases a reference on the mempolicy when\n   mode \u003d\u003d MPOL_INTERLEAVE.  This can result in decrementing the reference\n   count for system default policy [should have no ill effect] or premature\n   freeing of task policy.  If this occurred, the next allocation using task\n   mempolicy would use the freed structure and probably BUG out.\n\n   Fix:  add the necessary check to the release.\n\n3) The current reference counting method assumes that vma \u0027get_policy()\u0027\n   methods automatically add an extra reference a non-NULL returned mempolicy.\n    This is true for shmem_get_policy() used by tmpfs mappings, including\n   regular page shm segments.  However, SHM_HUGETLB shm\u0027s, backed by\n   hugetlbfs, just use the vma policy without the extra reference.  This\n   results in freeing of the vma policy on the first allocation, with reuse of\n   the freed mempolicy structure on subsequent allocations.\n\n   Fix: Rather than add another condition to the conditional reference\n   release, which occur in the allocation path, just add a reference when\n   returning the vma policy in shm_get_policy() to match the assumptions.\n\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: \u003ceric.whitney@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "56496c1d83dfae0c74e2f43adb45d2d95e16c0d5",
      "tree": "36cdf6421d0b26e8372dd1167a1ecd18f73fc3a5",
      "parents": [
        "6c5f3e7b43300508fe3947ff3cfff0f86043bb57"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:19:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:29 2008 -0800"
      },
      "message": "Pidns: fix badly converted mqueues pid handling\n\nWhen sending the pid namespaces patches I wrongly converted the tsk-\u003etgid into\ntask_pid_vnr(tsk) in mqueue-s (the git id of this patch is\nb488893a390edfe027bae7a46e9af8083e740668).\n\nThe proper behavior is to get the task_tgid_vnr(tsk).\n\nThis seem to be the only mistake of that kind.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c5f3e7b43300508fe3947ff3cfff0f86043bb57",
      "tree": "9843b8897ec3357b09f62bb6423cd4753e1d4516",
      "parents": [
        "fea9d175545b38cb3e84569400419eb81bc90fa3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:19:20 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:29 2008 -0800"
      },
      "message": "Pidns: make full use of xxx_vnr() calls\n\nSome time ago the xxx_vnr() calls (e.g.  pid_vnr or find_task_by_vpid) were\n_all_ converted to operate on the current pid namespace.  After this each call\nlike xxx_nr_ns(foo, current-\u003ensproxy-\u003epid_ns) is nothing but a xxx_vnr(foo)\none.\n\nSwitch all the xxx_nr_ns() callers to use the xxx_vnr() calls where\nappropriate.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nReviewed-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "01b8b07a5d77d22e609267dcae74d15e3e9c5f13",
      "tree": "dd53c51f75de9511da7fdf283c73080d6c2552a8",
      "parents": [
        "ed2ddbf88c0ddeeae4c78bb306a116dfd867c55c"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Fri Feb 08 04:18:57 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:26 2008 -0800"
      },
      "message": "IPC: consolidate sem_exit_ns(), msg_exit_ns() and shm_exit_ns()\n\nsem_exit_ns(), msg_exit_ns() and shm_exit_ns() are all called when an\nipc_namespace is released to free all ipcs of each type.  But in fact, they\ndo the same thing: they loop around all ipcs to free them individually by\ncalling a specific routine.\n\nThis patch proposes to consolidate this by introducing a common function,\nfree_ipcs(), that do the job.  The specific routine to call on each\nindividual ipcs is passed as parameter.  For this, these ipc-specific\n\u0027free\u0027 routines are reworked to take a generic \u0027struct ipc_perm\u0027 as\nparameter.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed2ddbf88c0ddeeae4c78bb306a116dfd867c55c",
      "tree": "de6d6828c03f98be6fc41e8acf3b3e52df28be9b",
      "parents": [
        "4b9fcb0ec60584d639ad105c42b75a3447071e47"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Fri Feb 08 04:18:57 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:26 2008 -0800"
      },
      "message": "IPC: make struct ipc_ids static in ipc_namespace\n\nEach ipc_namespace contains a table of 3 pointers to struct ipc_ids (3 for\nmsg, sem and shm, structure used to store all ipcs) These \u0027struct ipc_ids\u0027\nare dynamically allocated for each icp_namespace as the ipc_namespace\nitself (for the init namespace, they are initialized with pointers to\nstatic variables instead)\n\nIt is so for historical reason: in fact, before the use of idr to store the\nipcs, the ipcs were stored in tables of variable length, depending of the\nmaximum number of ipc allowed.  Now, these \u0027struct ipc_ids\u0027 have a fixed\nsize.  As they are allocated in any cases for each new ipc_namespace, there\nis no gain of memory in having them allocated separately of the struct\nipc_namespace.\n\nThis patch proposes to make this table static in the struct ipc_namespace.\nThus, we can allocate all in once and get rid of all the code needed to\nallocate and free these ipc_ids separately.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nAcked-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b9fcb0ec60584d639ad105c42b75a3447071e47",
      "tree": "b68be0c60ca985901cd20c0b8a7321e8be07d328",
      "parents": [
        "b2d75cddc83a349ef5633f609b9734b6b957f90f"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Fri Feb 08 04:18:56 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:26 2008 -0800"
      },
      "message": "IPC/semaphores: consolidate SEM_STAT and IPC_STAT commands\n\nThese commands (SEM_STAT and IPC_STAT) are rather doing the same things\n(only the meaning of the id given as input and the return value differ).\nHowever, for the semaphores, they are handled in two different places (two\ndifferent functions).\n\nThis patch consolidates this for clarification by handling these both\ncommands in the same place in semctl_nolock().  It also removes one unused\nparameter for this function.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2d75cddc83a349ef5633f609b9734b6b957f90f",
      "tree": "95e493a25eedec2722d5fb3c2ef0aabc64645b21",
      "parents": [
        "a46c9994242978ab001299cc9c906b9a3eedadcc"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:18:54 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:25 2008 -0800"
      },
      "message": "ipc: uninline some code from util.h\n\nipc_lock_check_down(), ipc_lock_check() and ipcget() seem too large to be\ninline.  Besides, they give no optimization being inline as they perform\ncalls inside in any case.\n\nMoving them into ipc/util.c saves 500 bytes of vmlinux and shortens IPC\ninternal API.\n\n$ ./scripts/bloat-o-meter vmlinux-orig vmlinux\nadd/remove: 3/2 grow/shrink: 0/10 up/down: 490/-989 (-499)\nfunction                                     old     new   delta\nipcget                                         -     392    +392\nipc_lock_check_down                            -      49     +49\nipc_lock_check                                 -      49     +49\nsys_semget                                   119     105     -14\nsys_shmget                                   108      86     -22\nsys_msgget                                   100      78     -22\ndo_msgsnd                                    665     631     -34\ndo_msgrcv                                    680     644     -36\ndo_shmat                                     771     733     -38\nsys_msgctl                                  1302    1229     -73\nipcget_new                                    80       -     -80\nsys_semtimedop                              1534    1452     -82\nsys_semctl                                  2034    1922    -112\nsys_shmctl                                  1919    1765    -154\nipcget_public                                322       -    -322\n\nThe ipcget() growth is the result of gcc inlining of currently static\nipcget_new/_public.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae5e1b22f17983da929a0d0178896269e19da186",
      "tree": "e9937e2060167a430cf90955327d1a5a2e7b2303",
      "parents": [
        "58bfdd6deeec02b73691ea2c951a3c5d743bca63"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Feb 08 04:18:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:23 2008 -0800"
      },
      "message": "namespaces: move the IPC namespace under IPC_NS option\n\nCurrently the IPC namespace management code is spread over the ipc/*.c files.\nI moved this code into ipc/namespace.c file which is compiled out when needed.\n\nThe linux/ipc_namespace.h file is used to store the prototypes of the\nfunctions in namespace.c and the stubs for NAMESPACES\u003dn case.  This is done\nso, because the stub for copy_ipc_namespace requires the knowledge of the\nCLONE_NEWIPC flag, which is in sched.h.  But the linux/ipc.h file itself in\nincluded into many many .c files via the sys.h-\u003esem.h sequence so adding the\nsched.h into it will make all these .c depend on sched.h which is not that\ngood.  On the other hand the knowledge about the namespaces stuff is required\nin 4 .c files only.\n\nBesides, this patch compiles out some auxiliary functions from ipc/sem.c,\nmsg.c and shm.c files.  It turned out that moving these functions into\nnamespaces.c is not that easy because they use many other calls and macros\nfrom the original file.  Moving them would make this patch complicated.  On\nthe other hand all these functions can be consolidated, so I will send a\nseparate patch doing this a bit later.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b524b9adb3f655697fe6df9197b3ed6f14bc1729",
      "tree": "cf0b14f91293a33ffee1afac39874450c3d96093",
      "parents": [
        "33b5f31bbc4d047d048d8635fccdab38ffe6c287"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:28 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:01 2008 -0800"
      },
      "message": "make ipc/util.c:sysvipc_find_ipc() static\n\nsysvipc_find_ipc() can become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b1ed88b47f5e18c6efb8041275c16eeead5377df",
      "tree": "3861cbdbac7289a790adf5f950c1921fb1692f6c",
      "parents": [
        "15aafa2f9d8399b22e418c53a87dfc0c43f4030f"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Wed Feb 06 01:36:23 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:01 2008 -0800"
      },
      "message": "IPC: fix error check in all new xxx_lock() and xxx_exit_ns() functions\n\nIn the new implementation of the [sem|shm|msg]_lock[_check]() routines, we\nuse the return value of ipc_lock() in container_of() without any check.\nBut ipc_lock may return a errcode.  The use of this errcode in\ncontainer_of() may alter this errcode, and we don\u0027t want this.\n\nAnd in xxx_exit_ns, the pointer return by idr_find is of type \u0027struct\nkern_ipc_per\u0027...\n\nToday, the code will work as is because the member used in these\ncontainer_of() is the first member of its container (offset \u003d\u003d 0), the\nerrcode isn\u0027t changed then.  But in the general case, we can\u0027t count on\nthis assumption and this may lead later to a real bug if we don\u0027t correct\nthis.\n\nAgain, the proposed solution is simple and correct.  But, as pointed by\nNadia, with this solution, the same check will be done several times (in\nall sub-callers...), what is not very funny/optimal...\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fd79b77117f16264206ed2618199d42e93cc8f09",
      "tree": "5441a9bea8e58106a419e910eb547fe731539ac4",
      "parents": [
        "75d427982fef672b3608ae809b8819ec6358edfe"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Nov 28 16:21:31 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Nov 29 09:24:52 2007 -0800"
      },
      "message": "ipc: lost unlock and fput in mqueue.c on error path\n\nThe error path in sys_mq_getsetattr() after the call to\naudit_mq_getsetattr() is wrong - the info-\u003elock is not unlocked and the\nstruct file *filp is not put.\n\nFix them both.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3d8d1e30cace31fed6186a4b8c6b1401836d89c",
      "tree": "7122fccf27aa337438123071f3cb07999429de9e",
      "parents": [
        "230140cffa7feae90ad50bf259db1fa07674f3a7"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 07 02:42:09 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Nov 07 04:15:12 2007 -0800"
      },
      "message": "[NETLINK]: Fix unicast timeouts\n\nCommit ed6dcf4a in the history.git tree broke netlink_unicast timeouts\nby moving the schedule_timeout() call to a new function that doesn\u0027t\npropagate the remaining timeout back to the caller. This means on each\nretry we start with the full timeout again.\n\nipc/mqueue.c seems to actually want to wait indefinitely so this\nbehaviour is retained.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a190ae69766da9a34bf31200c5cea4c0667cf94",
      "tree": "340c500fe42518abe6d1159a00619b1bd02f07fc",
      "parents": [
        "cfa76f024f7c9e65169425804e5b32e71f66d0ee"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 07 12:19:32 2007 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Oct 21 02:37:18 2007 -0400"
      },
      "message": "[PATCH] pass dentry to audit_inode()/audit_inode_child()\n\nmakes caller simpler *and* allows to scan ancestors\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "283bb7fada7e33a759d8fc9bd7a44532e4ad420e",
      "tree": "c6704baf10edd10ca64310f2d168969434bb7dcf",
      "parents": [
        "3ac88a41ff747b8c2f290f86b5243b2f8fce2cc0"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "Pierre.Peiffer@bull.net",
        "time": "Thu Oct 18 23:40:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:49 2007 -0700"
      },
      "message": "IPC: fix error case when idr-cache is empty in ipcget()\n\nWith the use of idr to store the ipc, the case where the idr cache is\nempty, when idr_get_new is called (this may happen even if we call\nidr_pre_get() before), is not well handled: it lets\nsemget()/shmget()/msgget() return ENOSPC when this cache is empty, what 1.\ndoes not reflect the facts and 2.  does not conform to the man(s).\n\nThis patch fixes this by retrying the whole process of allocation in this case.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ac88a41ff747b8c2f290f86b5243b2f8fce2cc0",
      "tree": "a0a87ebb1b5cac9da1a2cee05475139b16a8dbc6",
      "parents": [
        "c530c6ac7eb1d4ae1ff6b382d9211be446ee82c6"
      ],
      "author": {
        "name": "Kirill Korotaev",
        "email": "dev@openvz.org",
        "time": "Thu Oct 18 23:40:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:48 2007 -0700"
      },
      "message": "virtualization of sysv msg queues is incomplete\n\nVirtualization of sysv msg queues is incomplete: msg_hdrs and msg_bytes\nvariables visible from userspace are global.  Let\u0027s make them\nper-namespace.\n\nSigned-off-by: Alexey Kuznetsov \u003calexey@openvz.org\u003e\nSigned-off-by: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c530c6ac7eb1d4ae1ff6b382d9211be446ee82c6",
      "tree": "f36b7323f4c60f859107f74014ae67da6d63d49f",
      "parents": [
        "1b531f213661657d6e1c55cf5c97f649d630c227"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Thu Oct 18 23:40:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:48 2007 -0700"
      },
      "message": "IPC: cleanup some code and wrong comments about semundo list managment\n\nSome comments about sem_undo_list seem wrong.\nAbout the comment above unlock_semundo:\n\"... If task2 now exits before task1 releases the lock (by calling\nunlock_semundo()), then task1 will never call spin_unlock(). ...\"\n\nThis is just wrong, I see no reason for which task1 will not call\nspin_unlock... The rest of this comment is also wrong... Unless I\nmiss something (of course).\n\nFinally, (un)lock_semundo functions are useless, so remove them\nfor simplification. (this avoids an useless if statement)\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b531f213661657d6e1c55cf5c97f649d630c227",
      "tree": "0e03a4f286a12b383b9de455c0f39946df867fb7",
      "parents": [
        "3e148c79938aa39035669c1cfa3ff60722134535"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:48 2007 -0700"
      },
      "message": "ipc: remove unneeded parameters\n\nRemvoe the unneeded parameters from ipc_checkid() and ipc_buildid()\ninterfaces.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e148c79938aa39035669c1cfa3ff60722134535",
      "tree": "0effb3edfece56ea38a9727ec8f4721d9a4c3ea8",
      "parents": [
        "f4566f04854d78acfc74b9acb029744acde9d033"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:48 2007 -0700"
      },
      "message": "fix idr_find() locking\n\nThis is a patch that fixes the way idr_find() used to be called in ipc_lock():\nin all the paths that don\u0027t imply an update of the ipcs idr, it was called\nwithout the idr tree being locked.\n\nThe changes are:\n  . in ipc_ids, the mutex has been changed into a reader/writer semaphore.\n  . ipc_lock() now takes the mutex as a reader during the idr_find().\n  . a new routine ipc_lock_down() has been defined: it doesn\u0027t take the\n    mutex, assuming that it is being held by the caller. This is the routine\n    that is now called in all the update paths.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nAcked-by: Jarek Poplawski \u003cjarkao2@o2.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4566f04854d78acfc74b9acb029744acde9d033",
      "tree": "6fa631076d11511e2d9685b23c195835c31f4900",
      "parents": [
        "28028313134e9f11e49f74a4beaa47c91e5ebf06"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:53 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:47 2007 -0700"
      },
      "message": "ipc: fix wrong comments\n\nThis patch fixes the wrong / obsolete comments in the ipc code.  Also adds\na missing lock around ipc_get_maxid() in shm_get_stat().\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28028313134e9f11e49f74a4beaa47c91e5ebf06",
      "tree": "adf36a3b40c5cb48ff5bd8803fc10530bac65450",
      "parents": [
        "ce621f5ba52f30dd59aef4fb50276faee04ef9cf"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:47 2007 -0700"
      },
      "message": "ipc: inline ipc_buildid()\n\nThis is a trivial patch that changes the ipc_buildid() routine into a static\ninline.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce621f5ba52f30dd59aef4fb50276faee04ef9cf",
      "tree": "e0260364cf8748849d37165760db6d4e4e51ed9c",
      "parents": [
        "03f02c7657f7948ab980280c54c9366f962b1474"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:46 2007 -0700"
      },
      "message": "ipc: introduce the ipcid_to_idx macro\n\nThis is a trivial patch that changes all the (id % SEQ_MULTIPLIER) into a call\nto the ipcid_to_idx(id) macro.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "03f02c7657f7948ab980280c54c9366f962b1474",
      "tree": "7b1f564772077db0aed1e3c5a79ae77d2c1d2307",
      "parents": [
        "023a53557ea0e987b002e9a844242ef0b0aa1eb3"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:46 2007 -0700"
      },
      "message": "Storing ipcs into IDRs\n\nThis patch converts casts of struct kern_ipc_perm to\n   . struct msg_queue\n   . struct sem_array\n   . struct shmid_kernel\ninto the equivalent container_of() macro. It improves code maintenance\nbecause the code need not change if kern_ipc_perm is no longer at the\nbeginning of the containing struct.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "023a53557ea0e987b002e9a844242ef0b0aa1eb3",
      "tree": "7f3accdd7cb1d801607bf71e56b9b99e9c7ff7ca",
      "parents": [
        "637c36634029e4e7c81112796dafc32d56355b4a"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:44 2007 -0700"
      },
      "message": "ipc: integrate ipc_checkid() into ipc_lock()\n\nThis patch introduces a new ipc_lock_check() routine interface:\n   . each time ipc_checkid() is called, this is done after calling ipc_lock().\n     ipc_checkid() is now called from inside ipc_lock_check().\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix RCU locking]\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "637c36634029e4e7c81112796dafc32d56355b4a",
      "tree": "b30106d838864fe6c8ba97c7dc68304b820e7694",
      "parents": [
        "7748dbfaa010b12d5fb9ddf80199534c565c6bce"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:44 2007 -0700"
      },
      "message": "ipc: remove the ipc_get() routine\n\nThis is a trivial patch that removes the ipc_get() routine: it is replaced\nby a call to idr_find().\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7748dbfaa010b12d5fb9ddf80199534c565c6bce",
      "tree": "c6756de4007c29fdcb405d54173a4322d48ff631",
      "parents": [
        "7ca7e564e049d8b350ec9d958ff25eaa24226352"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:44 2007 -0700"
      },
      "message": "ipc: unify the syscalls code\n\nThis patch introduces a change into the sys_msgget(), sys_semget() and\nsys_shmget() routines: they now share a common code, which is better for\nmaintainability.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ca7e564e049d8b350ec9d958ff25eaa24226352",
      "tree": "e3c1397dc898dbd7c685c6a052425e7346eb79d1",
      "parents": [
        "d2b20b11547cefc89d6c81937e81afaf3c62808b"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu Oct 18 23:40:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:44 2007 -0700"
      },
      "message": "ipc: store ipcs into IDRs\n\nThis patch introduces ipcs storage into IDRs. The main changes are:\n  . This ipc_ids structure is changed: the entries array is changed into a\n    root idr structure.\n  . The grow_ary() routine is removed: it is not needed anymore when adding\n    an ipc structure, since we are now using the IDR facility.\n  . The ipc_rmid() routine interface is changed:\n       . there is no need for this routine to return the pointer passed in as\n         argument: it is now declared as a void\n       . since the id is now part of the kern_ipc_perm structure, no need to\n         have it as an argument to the routine\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "b488893a390edfe027bae7a46e9af8083e740668"
}
