)]}'
{
  "log": [
    {
      "commit": "7708bfb1c855f2a076ef71cc21647deea022ebe7",
      "tree": "9e4ba2b0074217b30a684eb9e77f6619434f4577",
      "parents": [
        "1a46674b996bf9a15f0333178f5829ca2d7c32e2"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Tue Apr 29 01:02:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:23 2008 -0700"
      },
      "message": "sysctl: merge equal proc_sys_read and proc_sys_write\n\nMany (most of) sysctls do not have a per-container sense.  E.g.\nkernel.print_fatal_signals, vm.panic_on_oom, net.core.netdev_budget and so on\nand so forth.  Besides, tuning then from inside a container is not even\nsecure.  On the other hand, hiding them completely from the container\u0027s tasks\nsometimes causes user-space to stop working.\n\nWhen developing net sysctl, the common practice was to duplicate a table and\ndrop the write bits in table-\u003emode, but this approach was not very elegant,\nlead to excessive memory consumption and was not suitable in general.\n\nHere\u0027s the alternative solution.  To facilitate the per-container sysctls\nctl_table_root-s were introduced.  Each root contains a list of\nctl_table_header-s that are visible to different namespaces.  The idea of this\nset is to add the permissions() callback on the ctl_table_root to allow ctl\nroot limit permissions to the same ctl_table-s.\n\nThe main user of this functionality is the net-namespaces code, but later this\nwill (should) be used by more and more namespaces, containers and control\ngroups.\n\nActually, this idea\u0027s core is in a single hunk in the third patch.  First two\npatches are cleanups for sysctl code, while the third one mostly extends the\narguments set of some sysctl functions.\n\nThis patch:\n\nThese -\u003eread and -\u003ewrite callbacks act in a very similar way, so merge these\npaths to reduce the number of places to patch later and shrink the .text size\n(a bit).\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1a46674b996bf9a15f0333178f5829ca2d7c32e2",
      "tree": "1229a8e1c2ddc31a3d3f2b9a1c408d278b57f4d0",
      "parents": [
        "88f458e4b91348b2e892c72977b5f665d7f374da"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Apr 29 01:02:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:23 2008 -0700"
      },
      "message": "include/linux/sysctl.h: remove empty #else\n\nRemove an empty #else.\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": "88f458e4b91348b2e892c72977b5f665d7f374da",
      "tree": "1ef9e98f74fc63193327053af079079e23aa8443",
      "parents": [
        "c7705f3449c7edd5c1744871097f93977227afc4"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "hs4233@mail.mn-solutions.de",
        "time": "Tue Apr 29 01:02:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "sysctl: allow embedded targets to disable sysctl_check.c\n\nDisable sysctl_check.c for embedded targets. This saves about about 11 kB\nin .text and another 11 kB in .data on a PXA255 embedded platform.\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\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": "c7705f3449c7edd5c1744871097f93977227afc4",
      "tree": "d2f121a4b1ae3ae458db76ec0210ea2172c31e5a",
      "parents": [
        "1b50221738108c438d5f25c7a043fb89e9e27044"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "drivers: use non-racy method for proc entries creation (2)\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Peter Osterlund \u003cpetero2@telia.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b50221738108c438d5f25c7a043fb89e9e27044",
      "tree": "510b2baf0675fee9ce450b6756ff36c77e2f626c",
      "parents": [
        "0fd689468231cb5eee9cc5d6331081b77c7a7a76"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "drivers: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0fd689468231cb5eee9cc5d6331081b77c7a7a76",
      "tree": "a6c755e5d5e62e03db61bdbb82ea5a5cac22bb2d",
      "parents": [
        "c33fff0afbef4f0467c99e3f47ee7e98ae78c77e"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "parisc: use non-racy method for proc entries creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "c33fff0afbef4f0467c99e3f47ee7e98ae78c77e",
      "tree": "d6b5f8dc77aa21de95bbca76c6be6056026cc1d8",
      "parents": [
        "ac41cfd19bf77424519b962f8205ede51fceaac6"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "kernel: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before 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: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac41cfd19bf77424519b962f8205ede51fceaac6",
      "tree": "f0299767b2115dd076e01841ca5cbe3113ef7a02",
      "parents": [
        "a95609cb0283a23e519e607ff9fc2a4aa77e2532"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "isdn: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nAdd correct -\u003eowner to proc_fops to fix reading/module unloading race.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "a95609cb0283a23e519e607ff9fc2a4aa77e2532",
      "tree": "053d411aa27dafead6326a70d0ca3482bd2d0494",
      "parents": [
        "cf7acfab032ff262f42954328cdfd20a5d9aaaac"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "netdev: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "cf7acfab032ff262f42954328cdfd20a5d9aaaac",
      "tree": "231698d72d4508f3b26f606f18ef844387ec43e5",
      "parents": [
        "667471386d4068e75a6a55b615701ced61eb6333"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "acpi: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nAdd correct -\u003eowner to proc_fops to fix reading/module unloading race.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "667471386d4068e75a6a55b615701ced61eb6333",
      "tree": "2bf51dfa6209ca6637c1cff084b15c132b280ab0",
      "parents": [
        "6f1c86ec315711d21666751b0bdae69ce2c6d589"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "powerpc: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nAdd correct -\u003eowner to proc_fops to fix reading/module unloading race.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "6f1c86ec315711d21666751b0bdae69ce2c6d589",
      "tree": "347f29e6e0da1e9c1841f897abdc2f0e4df4782e",
      "parents": [
        "e23637681bef5b69a68c8ac399732b941f1af023"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "parisc: use non-racy method for /proc/pcxl_dma creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "e23637681bef5b69a68c8ac399732b941f1af023",
      "tree": "90cc355ac83b58080da3213b99351717d9f0ffb6",
      "parents": [
        "c293819a3caa77d96b801a7795f81a5913ec21d7"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "ia64: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "c293819a3caa77d96b801a7795f81a5913ec21d7",
      "tree": "36b93cd35993c7f82d83016b735fa4b5731375c6",
      "parents": [
        "0d9f10f4eb65797cf2d238836f7439045a37722e"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "cris: use non-racy method for /proc/system_profile creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "0d9f10f4eb65797cf2d238836f7439045a37722e",
      "tree": "73d328b81b0d41e20d8d59454729e5f9f06bfae3",
      "parents": [
        "40ad35d34fa62097b4664c7c1690cbe404d73744"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "avr32: proc: use non-racy method for /proc/tlb creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "40ad35d34fa62097b4664c7c1690cbe404d73744",
      "tree": "d353ef09e008ef3637c0f857dbdb5f53b1a13679",
      "parents": [
        "8b594007c381b01464358bc4b89bfb85ec7f076a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "arm: use non-racy method for /proc/davinci_clocks creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "8b594007c381b01464358bc4b89bfb85ec7f076a",
      "tree": "0536adf6d4d4290106866a8f84568e691ab45697",
      "parents": [
        "cdefa185dda6b2b267f088a7477e96d845bdc6c1"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "s390: use non-racy method for proc entries creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "cdefa185dda6b2b267f088a7477e96d845bdc6c1",
      "tree": "95447a4c46352d6a353074873c11446e7c3c657f",
      "parents": [
        "a973909fc32be90884280b7a8cd2f2e093c97890"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "usb: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "a973909fc32be90884280b7a8cd2f2e093c97890",
      "tree": "32ceca146f9a6de03bb7cf91a141d0f445da04ab",
      "parents": [
        "16e70f64a9358133a14872eb72cf39b6f38b6212"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "scsi: use non-racy method for proc entries creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nAdd correct -\u003eowner to proc_fops to fix reading/module unloading race.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16e70f64a9358133a14872eb72cf39b6f38b6212",
      "tree": "0ed4ea5d67aff278a4e27f0ec6ff7c7f7b2906b6",
      "parents": [
        "659f865ea65a60564ce00a0c571099d1fa55e8e3"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "samples: use non-racy method for /proc/marker-example creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "659f865ea65a60564ce00a0c571099d1fa55e8e3",
      "tree": "a585a6e0f715cf37a6c80ec3a08db3104194cd7c",
      "parents": [
        "7bf4e6d3e948e38893c718fa9c5bd0dfbfa49670"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:21 2008 -0700"
      },
      "message": "zorro: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nAdd correct -\u003eowner to proc_fops to fix reading/module unloading race.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "7bf4e6d3e948e38893c718fa9c5bd0dfbfa49670",
      "tree": "f7bec9aa61e1d118cb7b53c24a10172a7be042d9",
      "parents": [
        "3d71f86f4dfccd749e4421f10301f3f3b31da88a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "sound: use non-racy method for /proc/driver/snd-page-alloc creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain 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: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Takashi Iwai \u003ctiwai@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": "3d71f86f4dfccd749e4421f10301f3f3b31da88a",
      "tree": "7a052e776b660a2fa1bbe3702fd061bc3d3e6a37",
      "parents": [
        "6a6375db13703b42dd51b28576d444bb73c541b9"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "mm: use non-racy method for /proc/swaps creation\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain 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\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\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": "79da3664f61640057041bf172b1457e2d1969330",
      "tree": "5ece267f93f91fd1183998b03af986f6afc7450c",
      "parents": [
        "19b4fc52d63b77adf700a215bfbabd680a8f1718"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "jbd2: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "19b4fc52d63b77adf700a215bfbabd680a8f1718",
      "tree": "d5ccd14e01b1b25e7f215ce1db9c6a41ba939e54",
      "parents": [
        "46fe74f2aed615c8c88164f4346b79c30cfd7c3d"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "reiserfs: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\n/proc entry owner is also added.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "46fe74f2aed615c8c88164f4346b79c30cfd7c3d",
      "tree": "f07061c8847beb394c1c4d260cb6a3392ea53c8d",
      "parents": [
        "21ac295b42b8bdc3d677aba6bd7308a38de28a9b"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "ext4: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "21ac295b42b8bdc3d677aba6bd7308a38de28a9b",
      "tree": "61aa04e715d16f490b073b8271c0a5906ceab857",
      "parents": [
        "34b37235c60fd23e4075da475c7bb22e6c7a466e"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "afs: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "34b37235c60fd23e4075da475c7bb22e6c7a466e",
      "tree": "4c651f02cc44cf0769f391919de458595149f801",
      "parents": [
        "9ef2db2630652d68dfd336088648adae7ef0bcd4"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "nfs: use proc_create to setup de-\u003eproc_fops\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "9ef2db2630652d68dfd336088648adae7ef0bcd4",
      "tree": "c49fdc3e89f1a438d4d379492f75ca689662cdac",
      "parents": [
        "59b7435149eab2dd06dd678742faff6049cb655f"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "nfsd: use proc_create to setup de-\u003eproc_fops\n\nUse proc_create() to make sure that -\u003eproc_fops be setup before gluing PDE to\nmain tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.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": "59b7435149eab2dd06dd678742faff6049cb655f",
      "tree": "ceadbf157a001b83a3ab2c89156426e88a782208",
      "parents": [
        "b640a89ddd742782bd2d83873da30d4776d1b9c6"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "proc: introduce proc_create_data to setup de-\u003edata\n\nThis set of patches fixes an proc -\u003eopen\u0027less usage due to -\u003eproc_fops flip in\nthe most part of the kernel code.  The original OOPS is described in the\ncommit 2d3a4e3666325a9709cc8ea2e88151394e8f20fc:\n\n    Typical PDE creation code looks like:\n\n    \tpde \u003d create_proc_entry(\"foo\", 0, NULL);\n    \tif (pde)\n    \t\tpde-\u003eproc_fops \u003d \u0026foo_proc_fops;\n\n    Notice that PDE is first created, only then -\u003eproc_fops is set up to\n    final value. This is a problem because right after creation\n    a) PDE is fully visible in /proc , and\n    b) -\u003eproc_fops are proc_file_operations which do not have -\u003eopen callback. So, it\u0027s\n       possible to -\u003eread without -\u003eopen (see one class of oopses below).\n\n    The fix is new API called proc_create() which makes sure -\u003eproc_fops are\n    set up before gluing PDE to main tree. Typical new code looks like:\n\n    \tpde \u003d proc_create(\"foo\", 0, NULL, \u0026foo_proc_fops);\n    \tif (!pde)\n    \t\treturn -ENOMEM;\n\n    Fix most networking users for a start.\n\n    In the long run, create_proc_entry() for regular files will go.\n\nIn addition to this, proc_create_data is introduced to fix reading from\nproc without PDE-\u003edata. The race is basically the same as above.\n\ncreate_proc_entries is replaced in the entire kernel code as new method\nis also simply better.\n\nThis patch:\n\nThe problem is the same as for de-\u003eproc_fops.  Right now PDE becomes visible\nwithout data set.  So, the entry could be looked up without data.  This, in\nmost cases, will simply OOPS.\n\nproc_create_data call is created to address this issue.  proc_create now\nbecomes a wrapper around it.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nCc: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Osterlund \u003cpetero2@telia.com\u003e\nCc: Pierre Peiffer \u003cpeifferp@gmail.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b640a89ddd742782bd2d83873da30d4776d1b9c6",
      "tree": "1aa331c52bef2eb813bd39d1738dc401a7e70f6d",
      "parents": [
        "8731f14d37825b54ad0c4c309cba2bc8fdf13a86"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:20 2008 -0700"
      },
      "message": "proc: convert /proc/tty/ldiscs to seq_file interface\n\nNote: THIS_MODULE and header addition aren\u0027t technically needed because\n      this code is not modular, but let\u0027s keep it anyway because people\n      can copy this code into modular code.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8731f14d37825b54ad0c4c309cba2bc8fdf13a86",
      "tree": "6f0d6d646ad6c1c5b4765953fea004c1758961be",
      "parents": [
        "352ced8e594091d74b92da9bcf07aea81d37ac55"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: remove -\u003eget_info infrastructure\n\nNow that last dozen or so users of -\u003eget_info were removed, ditch it too.\nEveryone sane shouldd have switched to seq_file interface long ago.\n\nP.S.: Co-existing 3 interfaces (-\u003eget_info/-\u003eread_proc/-\u003eproc_fops) for proc\n      is long-standing crap, BTW, thus\n      a) put -\u003eread_proc/-\u003ewrite_proc/read_proc_entry() users on death row,\n      b) new such users should be rejected,\n      c) everyone is encouraged to convert his favourite -\u003eread_proc user or\n         I\u0027ll do it, lazy bastards.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "352ced8e594091d74b92da9bcf07aea81d37ac55",
      "tree": "a0e5f67be54a2d1138837787fc126e6807156418",
      "parents": [
        "4a5cdb5b8f10998603e1e44adec1e56c234babfe"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: switch /proc/scsi/device_info to seq_file interface\n\nNote 1: 0644 should be used, but root bypasses permissions, so writing\n\tto /proc/scsi/device_info still works.\nNote 2: looks like scsi_dev_info_list is unprotected\nNote 3: probably make proc whine about \"unwriteable but with -\u003ewrite hook\"\n\tentries. Probably.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a5cdb5b8f10998603e1e44adec1e56c234babfe",
      "tree": "b2b9cef90dd8d3bc407a4d6c029db83c199d934c",
      "parents": [
        "076ec04b8ac84a04df67840f15f36218d7519510"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: switch /proc/ip2mem to seq_file interface\n\n/******************************************/\n/* Remove useless comment, while I am it. */\n/******************************************/\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "076ec04b8ac84a04df67840f15f36218d7519510",
      "tree": "3c1e0ca629bed45cd7f642f2648dd3606e714386",
      "parents": [
        "3ae02d6bc1c1b3784fec9e9e016e7e3dcc2f8727"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: convert /proc/bus/nubus to seq_file interface\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ae02d6bc1c1b3784fec9e9e016e7e3dcc2f8727",
      "tree": "2e0e52af4dd3d148218387c8eb342e33a13b1b5f",
      "parents": [
        "4bd61f76a5353df272d5c7232bf0928f6e4a9531"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: switch /proc/irda/irnet to seq_file interface\n\nProbably interface misuse, because of the way iterating over hashbin is done.\nHowever! Printing of socket number (\"IrNET socket %d - \", i++\") made conversion\nto proper -\u003estart/-\u003enext difficult enough to do blindly without hardware.\nSaid that, please apply.\n\nRemove useless comment while I am it.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4bd61f76a5353df272d5c7232bf0928f6e4a9531",
      "tree": "48a6229f30c9630be91d7ed0a6f9adf0990b7108",
      "parents": [
        "9b0012126ae191c90c88df4b535b0f2ade70ecb6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: switch /proc/excite/unit_id to seq_file interface\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Thomas Koeller \u003cthomas.koeller@baslerweb.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b0012126ae191c90c88df4b535b0f2ade70ecb6",
      "tree": "68458962efd7d60cac3736301c41a04637cf922a",
      "parents": [
        "51251549140f99cc5fbfed8ac542f22cbf067870"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: switch /proc/bus/ecard/devices to seq_file interface\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Yani Ioannou \u003cyani.ioannou@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51251549140f99cc5fbfed8ac542f22cbf067870",
      "tree": "bbfdbf55f1aec2f9a5e137dbb286912f8d448e41",
      "parents": [
        "647634df400ed26e2707ef65a8bf0df3f3bb8663"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: remove /proc/mac_iop\n\nEntry creation was commented for a long time and right now it stands on\nthe way of -\u003eget_info removal, so unless nobody objects...\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Simon Arlott \u003csimon@fire.lp0.eu\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Joern Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "647634df400ed26e2707ef65a8bf0df3f3bb8663",
      "tree": "a733669df7afea2e0c87e02abafb8443ebd162ad",
      "parents": [
        "8331438b38b07b97dbbb9049aa90a0d6ce5da03b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: switch /proc/apm to seq_file interface\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8331438b38b07b97dbbb9049aa90a0d6ce5da03b",
      "tree": "0e0261ec2a120d9ce22e1d3dca550e934a987f56",
      "parents": [
        "c74c120a21d87b0b6925ada5830d8cac21e852d9"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:19 2008 -0700"
      },
      "message": "proc: switch /proc/bus/zorro/devices to seq_file interface\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Josef Sipek \u003cjsipek@fsl.cs.sunysb.edu\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c74c120a21d87b0b6925ada5830d8cac21e852d9",
      "tree": "79558a29ecadc7b71eeb5bdf0945680f0560b2ed",
      "parents": [
        "928b4d8c8963e75bdb133f562b03b07f9aa4844a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:18 2008 -0700"
      },
      "message": "proc: remove proc_root from drivers\n\nRemove proc_root export.  Creation and removal works well if parent PDE is\nsupplied as NULL -- it worked always that way.\n\nSo, one useless export removed and consistency added, some drivers created\nPDEs with \u0026proc_root as parent but removed them as NULL and so on.\n\nSigned-off-by: 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": "928b4d8c8963e75bdb133f562b03b07f9aa4844a",
      "tree": "18de7e85fe403f681a954ed04254b2d9085e7fe4",
      "parents": [
        "36a5aeb8787fbf92510ed20d806e229c55726f93"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:18 2008 -0700"
      },
      "message": "proc: remove proc_root_driver\n\nUse creation by full path: \"driver/foo\".\n\nSigned-off-by: 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": "36a5aeb8787fbf92510ed20d806e229c55726f93",
      "tree": "7e6efd56b357a3f66a72b3e0d7540116214db338",
      "parents": [
        "9c37066d888bf6e1b96ad12304971b3ddeabbad0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:18 2008 -0700"
      },
      "message": "proc: remove proc_root_fs\n\nUse creation by full path instead: \"fs/foo\".\n\nSigned-off-by: 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": "9c37066d888bf6e1b96ad12304971b3ddeabbad0",
      "tree": "87f39924be4d36b25918cf7a90eb0db7743cba99",
      "parents": [
        "5e971dce0b2f6896e02372512df0d1fb0bfe2d55"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:18 2008 -0700"
      },
      "message": "proc: remove proc_bus\n\nRemove proc_bus export and variable itself. Using pathnames works fine\nand is slightly more understandable and greppable.\n\nSigned-off-by: 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": "5e971dce0b2f6896e02372512df0d1fb0bfe2d55",
      "tree": "bce0356470331c49c92b87042103034e55beaa8e",
      "parents": [
        "7cee4e00e0f8aa7290266382ea903a5a1b92c9a1"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:18 2008 -0700"
      },
      "message": "proc: drop several \"PDE valid/invalid\" checks\n\nproc-misc code is noticeably full of \"if (de)\" checks when PDE passed is\nalways valid.  Remove them.\n\nAddition of such check in proc_lookup_de() is for failed lookup case.\n\nSigned-off-by: 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": "7cee4e00e0f8aa7290266382ea903a5a1b92c9a1",
      "tree": "3d4ca2241e122f3358433b26538d952eda0226c5",
      "parents": [
        "f649d6d32605c7573884613289fb3b9fbd4f99a1"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "proc: less special case in xlate code\n\nIf valid \"parent\" is passed to proc_create/remove_proc_entry(), then name of\nPDE should consist of only one path component, otherwise creation or or\nremoval will fail.  However, if NULL is passed as parent then create/remove\naccept full path as a argument.  This is arbitrary restriction -- all\ninfrastructure is in place.\n\nSo, patch allows the following to succeed:\n\n\tcreate_proc_entry(\"foo/bar\", 0, pde_baz);\n\tremove_proc_entry(\"baz/foo/bar\", \u0026proc_root);\n\nAlso makes the following to behave identically:\n\n\tcreate_proc_entry(\"foo/bar\", 0, NULL);\n\tcreate_proc_entry(\"foo/bar\", 0, \u0026proc_root);\n\nDiscrepancy noticed by Den Lunev (IIRC).\n\nSigned-off-by: 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": "f649d6d32605c7573884613289fb3b9fbd4f99a1",
      "tree": "3fe52e6e5e93edc2f011d8047a8e3ac2eee71930",
      "parents": [
        "638fa202cdb207083a12d6f73e313605a8fc1037"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "proc: simplify locking in remove_proc_entry()\n\nproc_subdir_lock protects only modifying and walking through PDE lists, so\nafter we\u0027ve found PDE to remove and actually removed it from lists, there is\nno need to hold proc_subdir_lock for the rest of operation.\n\nSigned-off-by: 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": "638fa202cdb207083a12d6f73e313605a8fc1037",
      "tree": "e049d74e9f7e15a55149dc17482572c8b2aefa18",
      "parents": [
        "0d5c9f5f59a61cf8e98e2925cb5d81cbe7694305"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Apr 29 01:01:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "procfs: mem permission cleanup\n\nThis cleans up the permission checks done for /proc/PID/mem i/o calls.  It\nputs all the logic in a new function, check_mem_permission().\n\nThe old code repeated the (!MAY_PTRACE(task) || !ptrace_may_attach(task))\nmagical expression multiple times.  The new function does all that work in one\nplace, with clear comments.\n\nThe old code called security_ptrace() twice on successful checks, once in\nMAY_PTRACE() and once in __ptrace_may_attach().  Now it\u0027s only called once,\nand only if all other checks have succeeded.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0d5c9f5f59a61cf8e98e2925cb5d81cbe7694305",
      "tree": "f0df6740f1797cd2ac76a684d29fa9162fd61816",
      "parents": [
        "925d1c401fa6cfd0df5d2e37da8981494ccdec07"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "proc: switch to proc_create()\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "925d1c401fa6cfd0df5d2e37da8981494ccdec07",
      "tree": "4f3b7a09311cd99783b822350628125e44f9902d",
      "parents": [
        "e93b4ea20adb20f1f1f07f10ba5d7dd739d2843e"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Tue Apr 29 01:01:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "procfs task exe symlink\n\nThe kernel implements readlink of /proc/pid/exe by getting the file from\nthe first executable VMA.  Then the path to the file is reconstructed and\nreported as the result.\n\nBecause of the VMA walk the code is slightly different on nommu systems.\nThis patch avoids separate /proc/pid/exe code on nommu systems.  Instead of\nwalking the VMAs to find the first executable file-backed VMA we store a\nreference to the exec\u0027d file in the mm_struct.\n\nThat reference would prevent the filesystem holding the executable file\nfrom being unmounted even after unmapping the VMAs.  So we track the number\nof VM_EXECUTABLE VMAs and drop the new reference when the last one is\nunmapped.  This avoids pinning the mounted filesystem.\n\n[akpm@linux-foundation.org: improve comments]\n[yamamoto@valinux.co.jp: fix dup_mmap]\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc:\"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: YAMAMOTO Takashi \u003cyamamoto@valinux.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e93b4ea20adb20f1f1f07f10ba5d7dd739d2843e",
      "tree": "69afed8fb7a13a0dd9e1f1e1dbfc663620d78363",
      "parents": [
        "7249db2c281ac688977ecc6862cdee9969d310e2"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "proc: print more information when removing non-empty directories\n\nThis usually saves one recompile to insert similar printk like below. :)\n\nSample nastygram:\n\nremove_proc_entry: removing non-empty directory \u0027/proc/foo\u0027, leaking at least \u0027bar\u0027\n------------[ cut here ]------------\nWARNING: at fs/proc/generic.c:776 remove_proc_entry+0x18a/0x200()\nModules linked in: foo(-) container fan battery dock sbs ac sbshc backlight ipv6 loop af_packet amd_rng sr_mod i2c_amd8111 i2c_amd756 cdrom i2c_core button thermal processor\nPid: 3034, comm: rmmod Tainted: G   M     2.6.25-rc1 #5\n\nCall Trace:\n [\u003cffffffff80231974\u003e] warn_on_slowpath+0x64/0x90\n [\u003cffffffff80232a6e\u003e] printk+0x4e/0x60\n [\u003cffffffff802d6c8a\u003e] remove_proc_entry+0x18a/0x200\n [\u003cffffffff8045cd88\u003e] mutex_lock_nested+0x1c8/0x2d0\n [\u003cffffffff8025f0f0\u003e] __try_stop_module+0x0/0x40\n [\u003cffffffff8025effd\u003e] sys_delete_module+0x14d/0x200\n [\u003cffffffff8045df3d\u003e] lockdep_sys_exit_thunk+0x35/0x67\n [\u003cffffffff8031c307\u003e] __up_read+0x27/0xa0\n [\u003cffffffff8045decc\u003e] trace_hardirqs_on_thunk+0x35/0x3a\n [\u003cffffffff8020b6ab\u003e] system_call_after_swapgs+0x7b/0x80\n\n---[ end trace 10ef850597e89c54 ]---\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7249db2c281ac688977ecc6862cdee9969d310e2",
      "tree": "7d0c42af5c2cb3724fd18aa3aff8de3c827bfe77",
      "parents": [
        "fdb89bce6c9ccb17dae13ec43a25d2fdd405233f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 29 01:01:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "keys: make key_serial() a function if CONFIG_KEYS\u003dy\n\nMake key_serial() an inline function rather than a macro if CONFIG_KEYS\u003dy.\nThis prevents double evaluation of the key pointer and also provides better\ntype checking.\n\nSigned-off-by: David Howells \u003cdhowells@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": "fdb89bce6c9ccb17dae13ec43a25d2fdd405233f",
      "tree": "1b6c0e38bc194758e7d6ad2cbb509977900591b9",
      "parents": [
        "0b77f5bfb45c13e1e5142374f9d6ca75292252a4"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Tue Apr 29 01:01:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "keys: explicitly include required slab.h header file.\n\nSince these two source files invoke kmalloc(), they should explicitly\ninclude \u003clinux/slab.h\u003e.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nCc: David Howells \u003cdhowells@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": "0b77f5bfb45c13e1e5142374f9d6ca75292252a4",
      "tree": "cf62055536d267e9a4abe6518e5d9f683a1ceb75",
      "parents": [
        "69664cf16af4f31cd54d77948a4baf9c7e0ca7b9"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 29 01:01:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "keys: make the keyring quotas controllable through /proc/sys\n\nMake the keyring quotas controllable through /proc/sys files:\n\n (*) /proc/sys/kernel/keys/root_maxkeys\n     /proc/sys/kernel/keys/root_maxbytes\n\n     Maximum number of keys that root may have and the maximum total number of\n     bytes of data that root may have stored in those keys.\n\n (*) /proc/sys/kernel/keys/maxkeys\n     /proc/sys/kernel/keys/maxbytes\n\n     Maximum number of keys that each non-root user may have and the maximum\n     total number of bytes of data that each of those users may have stored in\n     their keys.\n\nAlso increase the quotas as a number of people have been complaining that it\u0027s\nnot big enough.  I\u0027m not sure that it\u0027s big enough now either, but on the\nother hand, it can now be set in /etc/sysctl.conf.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: \u003ckwc@citi.umich.edu\u003e\nCc: \u003carunsr@cse.iitk.ac.in\u003e\nCc: \u003cdwalsh@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": "69664cf16af4f31cd54d77948a4baf9c7e0ca7b9",
      "tree": "3ff4ecae21c140a2beed25cfa9e55b788f9814ac",
      "parents": [
        "6b79ccb5144f9ffb4d4596c23e7570238dd12abc"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 29 01:01:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:17 2008 -0700"
      },
      "message": "keys: don\u0027t generate user and user session keyrings unless they\u0027re accessed\n\nDon\u0027t generate the per-UID user and user session keyrings unless they\u0027re\nexplicitly accessed.  This solves a problem during a login process whereby\nset*uid() is called before the SELinux PAM module, resulting in the per-UID\nkeyrings having the wrong security labels.\n\nThis also cures the problem of multiple per-UID keyrings sometimes appearing\ndue to PAM modules (including pam_keyinit) setuiding and causing user_structs\nto come into and go out of existence whilst the session keyring pins the user\nkeyring.  This is achieved by first searching for extant per-UID keyrings\nbefore inventing new ones.\n\nThe serial bound argument is also dropped from find_keyring_by_name() as it\u0027s\nnot currently made use of (setting it to 0 disables the feature).\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: \u003ckwc@citi.umich.edu\u003e\nCc: \u003carunsr@cse.iitk.ac.in\u003e\nCc: \u003cdwalsh@redhat.com\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b79ccb5144f9ffb4d4596c23e7570238dd12abc",
      "tree": "e674339e9f86c3607304496792b417b0ed66de6f",
      "parents": [
        "da91d2ef9fe4fd84cc0a8a729201d38e40ac9f2e"
      ],
      "author": {
        "name": "Arun Raghavan",
        "email": "arunsr@cse.iitk.ac.in",
        "time": "Tue Apr 29 01:01:28 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "keys: allow clients to set key perms in key_create_or_update()\n\nThe key_create_or_update() function provided by the keyring code has a default\nset of permissions that are always applied to the key when created.  This\nmight not be desirable to all clients.\n\nHere\u0027s a patch that adds a \"perm\" parameter to the function to address this,\nwhich can be set to KEY_PERM_UNDEF to revert to the current behaviour.\n\nSigned-off-by: Arun Raghavan \u003carunsr@cse.iitk.ac.in\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Satyam Sharma \u003cssatyam@cse.iitk.ac.in\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "da91d2ef9fe4fd84cc0a8a729201d38e40ac9f2e",
      "tree": "091f2781c5256eac28665a1512038fe07227f9b0",
      "parents": [
        "70a5bb72b55e82fbfbf1e22cae6975fac58a1e2d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Apr 29 01:01:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "keys: switch to proc_create()\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: David Howells \u003cdhowells@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": "70a5bb72b55e82fbfbf1e22cae6975fac58a1e2d",
      "tree": "8e6dcaf5630388d81b23845f293789f2d6a3596b",
      "parents": [
        "4a38e122e2cc6294779021ff4ccc784a3997059e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 29 01:01:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "keys: add keyctl function to get a security label\n\nAdd a keyctl() function to get the security label of a key.\n\nThe following is added to Documentation/keys.txt:\n\n (*) Get the LSM security context attached to a key.\n\n\tlong keyctl(KEYCTL_GET_SECURITY, key_serial_t key, char *buffer,\n\t\t    size_t buflen)\n\n     This function returns a string that represents the LSM security context\n     attached to a key in the buffer provided.\n\n     Unless there\u0027s an error, it always returns the amount of data it could\n     produce, even if that\u0027s too big for the buffer, but it won\u0027t copy more\n     than requested to userspace. If the buffer pointer is NULL then no copy\n     will take place.\n\n     A NUL character is included at the end of the string if the buffer is\n     sufficiently big.  This is included in the returned count.  If no LSM is\n     in force then an empty string will be returned.\n\n     A process must have view permission on the key for this function to be\n     successful.\n\n[akpm@linux-foundation.org: declare keyctl_get_security()]\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Paul Moore \u003cpaul.moore@hp.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Kevin Coffman \u003ckwc@citi.umich.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a38e122e2cc6294779021ff4ccc784a3997059e",
      "tree": "84b401b44e0550b04f831d98a91eacfd7cffb51d",
      "parents": [
        "dceba9944181b1fd5993417b5c8fa0e3dda38f8d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 29 01:01:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "keys: allow the callout data to be passed as a blob rather than a string\n\nAllow the callout data to be passed as a blob rather than a string for\ninternal kernel services that call any request_key_*() interface other than\nrequest_key().  request_key() itself still takes a NUL-terminated string.\n\nThe functions that change are:\n\n\trequest_key_with_auxdata()\n\trequest_key_async()\n\trequest_key_async_with_auxdata()\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Paul Moore \u003cpaul.moore@hp.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Kevin Coffman \u003ckwc@citi.umich.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dceba9944181b1fd5993417b5c8fa0e3dda38f8d",
      "tree": "697e247a7a99c81af7ba4d7ad5d9cdf9941b3741",
      "parents": [
        "38bbca6b6f164e08a4a9cdfd719fff679af98375"
      ],
      "author": {
        "name": "Kevin Coffman",
        "email": "kwc@citi.umich.edu",
        "time": "Tue Apr 29 01:01:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "keys: check starting keyring as part of search\n\nCheck the starting keyring as part of the search to (a) see if that is what\nwe\u0027re searching for, and (b) to check it is still valid for searching.\n\nThe scenario: User in process A does things that cause things to be created in\nits process session keyring.  The user then does an su to another user and\nstarts a new process, B.  The two processes now share the same process session\nkeyring.\n\nProcess B does an NFS access which results in an upcall to gssd.  When gssd\nattempts to instantiate the context key (to be linked into the process session\nkeyring), it is denied access even though it has an authorization key.\n\nThe order of calls is:\n\n   keyctl_instantiate_key()\n      lookup_user_key()\t\t\t\t    (the default: case)\n         search_process_keyrings(current)\n\t    search_process_keyrings(rka-\u003econtext)   (recursive call)\n\t       keyring_search_aux()\n\nkeyring_search_aux() verifies the keys and keyrings underneath the top-level\nkeyring it is given, but that top-level keyring is neither fully validated nor\nchecked to see if it is the thing being searched for.\n\nThis patch changes keyring_search_aux() to:\n1) do more validation on the top keyring it is given and\n2) check whether that top-level keyring is the thing being searched for\n\nSigned-off-by: Kevin Coffman \u003ckwc@citi.umich.edu\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Paul Moore \u003cpaul.moore@hp.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Kevin Coffman \u003ckwc@citi.umich.edu\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "38bbca6b6f164e08a4a9cdfd719fff679af98375",
      "tree": "c4d4839e57bbcbae1ecfa7867b810c6203b0d601",
      "parents": [
        "4220b7fe89f8c0623e09168ab81dd0da2fdadd72"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 29 01:01:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "keys: increase the payload size when instantiating a key\n\nIncrease the size of a payload that can be used to instantiate a key in\nadd_key() and keyctl_instantiate_key().  This permits huge CIFS SPNEGO blobs\nto be passed around.  The limit is raised to 1MB.  If kmalloc() can\u0027t allocate\na buffer of sufficient size, vmalloc() will be tried instead.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Paul Moore \u003cpaul.moore@hp.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Kevin Coffman \u003ckwc@citi.umich.edu\u003e\nCc: Steven French \u003csfrench@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": "4220b7fe89f8c0623e09168ab81dd0da2fdadd72",
      "tree": "14ca87136a0503e9c16ded388ce885f2edb7bc5a",
      "parents": [
        "6970c8eff85dd450e7eff69dad710dcf594b1bb8"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Apr 29 01:01:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "elf: fix shadowed variables in fs/binfmt_elf.c\n\nFix these sparse warings:\nfs/binfmt_elf.c:1749:29: warning: symbol \u0027tmp\u0027 shadows an earlier one\nfs/binfmt_elf.c:1734:28: originally declared here\nfs/binfmt_elf.c:2009:26: warning: symbol \u0027vma\u0027 shadows an earlier one\nfs/binfmt_elf.c:1892:24: originally declared here\n\n[akpm@linux-foundation.org: chose better variable name]\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@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": "6970c8eff85dd450e7eff69dad710dcf594b1bb8",
      "tree": "1cba97d1f307fbceecbda22ba36e3d565430c3ba",
      "parents": [
        "eb6900fbfa43cb50391b80b38608e25280705693"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@gmail.com",
        "time": "Tue Apr 29 01:01:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "BINFMT: fill_elf_header cleanup - use straight memset first\n\nThis patch does simplify fill_elf_header function by setting\nto zero the whole elf header first. So we fillup the fields\nwe really need only.\n\nbefore:\n   text    data     bss     dec     hex filename\n  11735      80       0   11815    2e27 fs/binfmt_elf.o\n\nafter:\n   text    data     bss     dec     hex filename\n  11710      80       0   11790    2e0e fs/binfmt_elf.o\n\nviola, 25 bytes of text is freed\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@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": "eb6900fbfa43cb50391b80b38608e25280705693",
      "tree": "ed187f5035d75f827627bdef6ecc2caab9ed2b8d",
      "parents": [
        "adf535eeaca9e3963698df7bc5b4634d6d07f809"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@gmail.com",
        "time": "Tue Apr 29 01:01:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "ELF: Use EI_NIDENT instead of numeric value\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@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": "adf535eeaca9e3963698df7bc5b4634d6d07f809",
      "tree": "35c6e78df62115ea04cc763f94a9f44af5c8e925",
      "parents": [
        "74006309c7f09c893c18cbb6f0e19137edd04239"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Apr 29 01:01:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:16 2008 -0700"
      },
      "message": "ipmi: fix return from atca_oem_poweroff_hook\n\nA void returning function returned the return value of another void\nreturning function...\n\nSpotted by sparse.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74006309c7f09c893c18cbb6f0e19137edd04239",
      "tree": "a52475b15c69574b881365173b79b3be9c90ec88",
      "parents": [
        "66ec2d778657b1a58ad26d0bc3b39b92bca69b53"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Apr 29 01:01:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "ipmi: make alloc_recv_msg static\n\nMake the needlessly global ipmi_alloc_recv_msg() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "66ec2d778657b1a58ad26d0bc3b39b92bca69b53",
      "tree": "d0d370857a8518676d4ac58491e68ab6d2d12291",
      "parents": [
        "fa68be0def375c78f723a7d49221f8f6c8194f29"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Tue Apr 29 01:01:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "ipmi: make comment match actual preprocessor check\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa68be0def375c78f723a7d49221f8f6c8194f29",
      "tree": "bc45bfbd81c060425f1462f107128b4040694d69",
      "parents": [
        "95c0ba892470a8f95b3dd3938a722ff64229aed1"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "ipmi: remove -\u003ewrite_proc code\n\nIPMI code theoretically allows -\u003ewrite_proc users, but nobody uses this thus\nfar.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Corey Minyard \u003cminyard@acm.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95c0ba892470a8f95b3dd3938a722ff64229aed1",
      "tree": "e5015d7213b63f37bd1cdd559c6f7c8fe1bf7ae5",
      "parents": [
        "36c7dc44409ecc4631de25a66f13d67873cfd563"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Tue Apr 29 01:01:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "ipmi: remove unused target and action in Makefile\n\nKbuild system handles this automatically.\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\u003e\nCc: Corey Minyard \u003cminyard@acm.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "36c7dc44409ecc4631de25a66f13d67873cfd563",
      "tree": "fc86c1df3b33b0933aaa246221d129d8f31906af",
      "parents": [
        "c305e3d38e5f54a48a4618496cdc1ada970ebf68"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "IPMI: Style fixes in the misc code\n\nLots of style fixes for the miscellaneous IPMI files.  No functional\nchanges.  Basically fixes everything reported by checkpatch and fixes the\ncomment style.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c305e3d38e5f54a48a4618496cdc1ada970ebf68",
      "tree": "e6c8a145dec75f27f87bd6759cd0504a104f4f0f",
      "parents": [
        "c70d749986f6f1d4e2bb008bfc0c5fc22ec3fc64"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "IPMI: Style fixes in the system interface code\n\nLots of style fixes for the IPMI system interface driver.  No functional\nchanges.  Basically fixes everything reported by checkpatch and fixes the\ncomment style.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nCc: Rocky Craig \u003crocky.craig@hp.com\u003e\nCc: Hannes Schulz \u003cschulz@schwaar.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c70d749986f6f1d4e2bb008bfc0c5fc22ec3fc64",
      "tree": "69ddc91cf39938e5ec3ba7924cff78c6760de927",
      "parents": [
        "ba8ff1c61eb119e687b06ca35f7f4ab041bf0422"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "ipmi: style fixes in the base code\n\nLots of style fixes for the base IPMI driver.  No functional changes.\nBasically fixes everything reported by checkpatch and fixes the comment\nstyle.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba8ff1c61eb119e687b06ca35f7f4ab041bf0422",
      "tree": "ca90a737973edc3a11e4ec9cd2f68ac02ebb96af",
      "parents": [
        "64959e2d47dead81c6e3ce4864d629d6375e07e2"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "IPMI: Convert system interface defines to an enum\n\nConvert the #defines for statistics into an enum in the IPMI system interface\nand remove the unused timeout_restart statistic.  And comment what these\nstatistics mean.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64959e2d47dead81c6e3ce4864d629d6375e07e2",
      "tree": "6287c1f07475b711258f5684b7013f4014b79093",
      "parents": [
        "73f2bdb975751eb11de0df1970710e6c40badc26"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "ipmi: convert locked counters to atomics in the system interface\n\nAtomics are faster and neater than locked counters.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73f2bdb975751eb11de0df1970710e6c40badc26",
      "tree": "7814f5715169e4f85544fe230963ba4eb2cddf69",
      "parents": [
        "b2655f2615e92e92ca3d55132b32776f1fe1a05c"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:15 2008 -0700"
      },
      "message": "IPMI: convert message handler defines to an enum\n\nConvert the #defines for statistics into an enum in the IPMI message\nhandler.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2655f2615e92e92ca3d55132b32776f1fe1a05c",
      "tree": "09a92d8e56dd2742cdd33bc885cfc6d5187f55c7",
      "parents": [
        "f7caa1b51fa526586c9d9a4582b5f8af440909d7"
      ],
      "author": {
        "name": "Konstantin Baydarov",
        "email": "kbaidarov@ru.mvista.com",
        "time": "Tue Apr 29 01:01:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipmi: convert locked counters to atomics\n\nAtomics are a lot more efficient and neat than using a lock.\n\nSigned-off-by: Konstantin Baydarov \u003ckbaidarov@ru.mvista.com\u003e\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7caa1b51fa526586c9d9a4582b5f8af440909d7",
      "tree": "90a84da5bb070681851968c9b98c4de4c619ae1c",
      "parents": [
        "87ebd06f2f362acc3fd866f28a917b53c0ff560a"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipmi: update driver version\n\nEnough bug fixes and changes that we need a new driver version.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "87ebd06f2f362acc3fd866f28a917b53c0ff560a",
      "tree": "6664ec6f7494788bad9e5a46ec4f40bccbe4078d",
      "parents": [
        "5956dce1485efe3816febc24aa52490dcb2be837"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipmi: don\u0027t print event queue full on every event\n\nDon\u0027t print out that the event queue is full on every event, only\nprint something out when it becomes full or becomes not full.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5956dce1485efe3816febc24aa52490dcb2be837",
      "tree": "292231b7783baaf980a65eacb199a0384446f566",
      "parents": [
        "bda4c30aa6f7dc1483f39ea1dfe37bcab8a96207"
      ],
      "author": {
        "name": "Konstantin Baydarov",
        "email": "kbaidarov@ru.mvista.com",
        "time": "Tue Apr 29 01:01:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipmi: don\u0027t grab locks in run-to-completion mode\n\nThis patch prevents deadlocks in IPMI panic handler caused by msg_lock\nin smi_info structure and waiting_msgs_lock in ipmi_smi structure.\n\n[cminyard@mvista.com: remove unnecessary memory barriers]\nSigned-off-by: Konstantin Baydarov \u003ckbaidarov@ru.mvista.com\u003e\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bda4c30aa6f7dc1483f39ea1dfe37bcab8a96207",
      "tree": "760c538139c5b41ef54a27d62e5a8a1b01cf1c60",
      "parents": [
        "4ea18425436e7c72716b7f8d314775f399821195"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipmi: run to completion fixes\n\nThe \"run_to_completion\" mode was somewhat broken.  Locks need to be avoided in\nrun_to_completion mode, and it shouldn\u0027t be used by normal users, just\ninternally for panic situations.\n\nThis patch removes locks in run_to_completion mode and removes the user call\nfor setting the mode.  The only user was the poweroff code, but it was easily\nconverted to use the polling interface.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ea18425436e7c72716b7f8d314775f399821195",
      "tree": "dc722c409987a9959168174ca9f613e5713787f6",
      "parents": [
        "02fdb36ae7f55db7757b623acd27a62d5000d755"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "cminyard@mvista.com",
        "time": "Tue Apr 29 01:01:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipmi: hold ATTN until upper layer ready\n\nHold handling of ATTN until the upper layer has reported that it is\nready.\n\nSigned-off-by: Corey Minyard \u003ccminyard@mvista.com\u003e\nCc: Patrick Schoeller \u003cPatrick.Schoeller@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": "02fdb36ae7f55db7757b623acd27a62d5000d755",
      "tree": "9d96036a7ee174a2828fbb7497a9f365f4f148a1",
      "parents": [
        "6013f67fc1a4c7fa5bcab2d39c1eaa3e260c7ac1"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Tue Apr 29 01:01:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipc: sysvsem: refuse clone(CLONE_SYSVSEM|CLONE_NEWIPC)\n\nCLONE_NEWIPC|CLONE_SYSVSEM interaction isn\u0027t handled properly.  This can cause\na kernel memory corruption.  CLONE_NEWIPC must detach from the existing undo\nlists.\n\nFix, part 3: refuse clone(CLONE_SYSVSEM|CLONE_NEWIPC).\n\nWith unshare, specifying CLONE_SYSVSEM means unshare the sysvsem.  So it seems\nreasonable that CLONE_NEWIPC without CLONE_SYSVSEM would just imply\nCLONE_SYSVSEM.\n\nHowever with clone, specifying CLONE_SYSVSEM means *share* the sysvsem.  So\ncalling clone(CLONE_SYSVSEM|CLONE_NEWIPC) is explicitly asking for something\nwe can\u0027t allow.  So return -EINVAL in that case.\n\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.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": "6013f67fc1a4c7fa5bcab2d39c1eaa3e260c7ac1",
      "tree": "33f61a88048e659359864ec10104e304d8a97a73",
      "parents": [
        "9edff4ab1f8d82675277a04e359d0ed8bf14a7b7"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Tue Apr 29 01:00:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:14 2008 -0700"
      },
      "message": "ipc: sysvsem: force unshare(CLONE_SYSVSEM) when CLONE_NEWIPC\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 2: perform an implicit CLONE_SYSVSEM in CLONE_NEWIPC.  CLONE_NEWIPC\ncreates a new IPC namespace, the task cannot access the existing semaphore\narrays after the unshare syscall.  Thus the task can/must detach from the\nexisting undo list entries, too.\n\nThis fixes the kernel corruption, because it makes it impossible that\nundo records from two different namespaces are in sysvsem.undo_list.\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": "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"
    }
  ],
  "next": "0c40ba4fd64f98e7a5cba8ffaedbd68642a85700"
}
