)]}'
{
  "log": [
    {
      "commit": "ce3b0f8d5c2203301fc87f3aaaed73e5819e2a48",
      "tree": "ab952affafe18e604f6aaf6b13315b9435588e60",
      "parents": [
        "f1191b50ec11c8e2ca766d6d99eb5bb9d2c084a3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 29 19:08:22 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 31 23:00:26 2009 -0400"
      },
      "message": "New helper - current_umask()\n\ncurrent-\u003efs-\u003eumask is what most of fs_struct users are doing.\nPut that into a helper function.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "40d44446cf10d9d118e8f0132c94e1f25ea3be97",
      "tree": "5bf098f45d53c955792af9f85eda1ec123b1b3c4",
      "parents": [
        "86dc1ad2be17a7436ee8c6799f6b55e5a5b930f4"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Wed Feb 25 00:32:45 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:07:34 2009 -0800"
      },
      "message": "unix: remove some pointless conditionals before kfree_skb()\n\nRemove some pointless conditionals before kfree_skb().\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be6d3e56a6b9b3a4ee44a0685e39e595073c6f0d",
      "tree": "3a770f4cc676efeba443b28caa1ad195eeff49bc",
      "parents": [
        "6a94cb73064c952255336cc57731904174b2c58f"
      ],
      "author": {
        "name": "Kentaro Takeda",
        "email": "takedakn@nttdata.co.jp",
        "time": "Wed Dec 17 13:24:15 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 31 18:07:37 2008 -0500"
      },
      "message": "introduce new LSM hooks where vfsmount is available.\n\nAdd new LSM hooks for path-based checks.  Call them on directory-modifying\noperations at the points where we still know the vfsmount involved.\n\nSigned-off-by: Kentaro Takeda \u003ctakedakn@nttdata.co.jp\u003e\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: Toshiharu Harada \u003charadats@nttdata.co.jp\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0191b625ca5a46206d2fb862bb08f36f2fcb3b31",
      "tree": "454d1842b1833d976da62abcbd5c47521ebe9bd7",
      "parents": [
        "54a696bd07c14d3b1192d03ce7269bc59b45209a",
        "eb56092fc168bf5af199d47af50c0d84a96db898"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:49:40 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:49:40 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1429 commits)\n  net: Allow dependancies of FDDI \u0026 Tokenring to be modular.\n  igb: Fix build warning when DCA is disabled.\n  net: Fix warning fallout from recent NAPI interface changes.\n  gro: Fix potential use after free\n  sfc: If AN is enabled, always read speed/duplex from the AN advertising bits\n  sfc: When disabling the NIC, close the device rather than unregistering it\n  sfc: SFT9001: Add cable diagnostics\n  sfc: Add support for multiple PHY self-tests\n  sfc: Merge top-level functions for self-tests\n  sfc: Clean up PHY mode management in loopback self-test\n  sfc: Fix unreliable link detection in some loopback modes\n  sfc: Generate unique names for per-NIC workqueues\n  802.3ad: use standard ethhdr instead of ad_header\n  802.3ad: generalize out mac address initializer\n  802.3ad: initialize ports LACPDU from const initializer\n  802.3ad: remove typedef around ad_system\n  802.3ad: turn ports is_individual into a bool\n  802.3ad: turn ports is_enabled into a bool\n  802.3ad: make ntt bool\n  ixgbe: Fix set_ringparam in ixgbe to use the same memory pools.\n  ...\n\nFixed trivial IPv4/6 address printing conflicts in fs/cifs/connect.c due\nto the conversion to %pI (in this networking merge) and the addition of\ndoing IPv6 addresses (from the earlier merge of CIFS).\n"
    },
    {
      "commit": "ec98ce480ada787f2cfbd696980ff3564415505b",
      "tree": "1a4d644b38f9f1e4b4e086fde0b195df4a92cf84",
      "parents": [
        "3496f92beb9aa99ef21fccc154a36c7698e9c538",
        "feaf3848a813a106f163013af6fcf6c4bfec92d9"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 04 17:16:36 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 04 17:16:36 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tfs/nfsd/nfs4recover.c\n\nManually fixed above to use new creds API functions, e.g.\nnfs4_save_creds().\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "aa2ba5f1082dc705745899584aac8416d710c056",
      "tree": "bde0bf4aff036c6bac19a0212194ae1092afb3c9",
      "parents": [
        "68024541e2e5a8f35e281daaa5068a29e2a538a5",
        "f6f7b52e2f6149d2ee365717afff315b05720162"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 02 19:50:27 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 02 19:50:27 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/ixgbe/ixgbe_main.c\n\tdrivers/net/smc91x.c\n"
    },
    {
      "commit": "5f23b734963ec7eaa3ebcd9050da0c9b7d143dd3",
      "tree": "f82c2265540dd5d32d64f08976cd9b6216842544",
      "parents": [
        "efbbced361f3ff4ff9e85310ccff894185c4d904"
      ],
      "author": {
        "name": "dann frazier",
        "email": "dannf@hp.com",
        "time": "Wed Nov 26 15:32:27 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 26 15:32:27 2008 -0800"
      },
      "message": "net: Fix soft lockups/OOM issues w/ unix garbage collector\n\nThis is an implementation of David Miller\u0027s suggested fix in:\n  https://bugzilla.redhat.com/show_bug.cgi?id\u003d470201\n\nIt has been updated to use wait_event() instead of\nwait_event_interruptible().\n\nParaphrasing the description from the above report, it makes sendmsg()\nblock while UNIX garbage collection is in progress. This avoids a\nsituation where child processes continue to queue new FDs over a\nAF_UNIX socket to a parent which is in the exit path and running\ngarbage collection on these FDs. This contention can result in soft\nlockups and oom-killing of unrelated processes.\n\nSigned-off-by: dann frazier \u003cdannf@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1748376b6626acf59c24e9592ac67b3fe2a0e026",
      "tree": "65a28205daf1ca92e31389440764fc407365014e",
      "parents": [
        "c1b56878fb68e9c14070939ea4537ad4db79ffae"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Nov 25 21:16:35 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 21:16:35 2008 -0800"
      },
      "message": "net: Use a percpu_counter for sockets_allocated\n\nInstead of using one atomic_t per protocol, use a percpu_counter\nfor \"sockets_allocated\", to reduce cache line contention on\nheavy duty network servers. \n\nNote : We revert commit (248969ae31e1b3276fc4399d67ce29a5d81e6fd9\nnet: af_unix can make unix_nr_socks visbile in /proc),\nsince it is not anymore used after sock_prot_inuse_add() addition\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "920de804bca61f88643bc9171bcd06f1a56c6258",
      "tree": "fb4c90b4b167a4b7518ea888e99bfd18a7d301fb",
      "parents": [
        "1f87e235e6fb92c2968b52b9191de04f1aff8e77"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 24 00:09:29 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 24 00:09:29 2008 -0800"
      },
      "message": "net: Make sure BHs are disabled in sock_prot_inuse_add()\n\nThe rule of calling sock_prot_inuse_add() is that BHs must\nbe disabled.  Some new calls were added where this was not\ntrue and this tiggers warnings as reported by Ilpo.\n\nFix this by adding explicit BH disabling around those call sites,\nor moving sock_prot_inuse_add() call inside an existing BH disabled\nsection.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f756a8c36bf54d0afb1d457082b3e3033d951a7",
      "tree": "33efc99e3df9edf1d777a00913852d24d19b930b",
      "parents": [
        "be77e5930725c3e77bcc0fb1def28e016080d0a1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 23 17:34:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 23 17:34:03 2008 -0800"
      },
      "message": "net: Make sure BHs are disabled in sock_prot_inuse_add()\n\nThe rule of calling sock_prot_inuse_add() is that BHs must\nbe disabled.  Some new calls were added where this was not\ntrue and this tiggers warnings as reported by Ilpo.\n\nFix this by adding explicit BH disabling around those call sites.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b41e7dd90c6a628ab5fb8d781302d60a243b2ce",
      "tree": "87f1d679eb02bae2a9313c872d45729ab9254661",
      "parents": [
        "d171235e712c11c0a0f47f62619024bf726125e1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Nov 19 15:48:09 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 19 15:48:09 2008 -0800"
      },
      "message": "net: af_unix should use KERN_INFO instead of KERN_DEBUG\n\nAs spotted by Joe Perches, we should use KERN_INFO in unix_sock_destructor()\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "07f0757a6808f2f36a0e58c3a54867ccffdb8dc9",
      "tree": "e04b573c3f1471ff21c6b2499682a620f4db7eae",
      "parents": [
        "a7a0d6a87b70f7b2bab5281fc0fd443772bd0795"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Nov 19 15:44:53 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 19 15:44:53 2008 -0800"
      },
      "message": "include/net net/ - csum_partial - remove unnecessary casts\n\nThe first argument to csum_partial is const void *\ncasts to char/u8 * are not necessary\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a8076d8db98de6da61394b2e942320e4612643ac",
      "tree": "c1c0e52d635197e86b017fe09850a0f6ad261785",
      "parents": [
        "248969ae31e1b3276fc4399d67ce29a5d81e6fd9"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 17 02:38:49 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 17 02:38:49 2008 -0800"
      },
      "message": "net: af_unix should update its inuse counter\n\nThis patch is a preparation to namespace conversion of /proc/net/protocols\n\nIn order to have relevant information for UNIX protocol, we should use\nsock_prot_inuse_add() to update a (percpu and pernamespace) counter of\ninuse sockets.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "248969ae31e1b3276fc4399d67ce29a5d81e6fd9",
      "tree": "13b57b061262af3cb2fba0aa8384d67f999ba7c2",
      "parents": [
        "c3ccc12339afa2633c72131e2aa97d52d9ca1b8a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 17 00:00:30 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 17 00:00:30 2008 -0800"
      },
      "message": "net: af_unix can make unix_nr_socks visbile in /proc\n\nCurrently, /proc/net/protocols displays socket counts only for TCP/TCPv6\nprotocols\n\nWe can provide unix_nr_socks for free here, this counter being\nalready maintained in af_unix\n\nBefore patch :\n\n# grep UNIX /proc/net/protocols\nUNIX       428     -1      -1   NI       0   yes  kernel\n\nAfter patch :\n\n# grep UNIX /proc/net/protocols\nUNIX       428     98      -1   NI       0   yes  kernel\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6eba6a372b501aa3cdfb7df21a8364099125b9c4",
      "tree": "0ba82e1cc565584a82a4ddd3dd2c2a99dec0cdd4",
      "parents": [
        "191029963630719e867d8bd0c315d32c822622cb"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sun Nov 16 22:58:44 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 16 22:58:44 2008 -0800"
      },
      "message": "net: Cleanup of af_unix\n\nThis is a pure cleanup of net/unix/af_unix.c to meet current code\nstyle standards\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b828925652340277a889cbc11b2d0637f7cdaf7",
      "tree": "32fcb3d3e466fc419fad2d3717956a5b5ad3d35a",
      "parents": [
        "3a3b7ce9336952ea7b9564d976d068a238976c9d",
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tsecurity/keys/internal.h\n\tsecurity/keys/process_keys.c\n\tsecurity/keys/request_key.c\n\nFixed conflicts above by using the non \u0027tsk\u0027 versions.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "19d65624d38d6296dddf725d1b03baa8a491a553",
      "tree": "845b0cef28abf1c1c5baeafefbeeae1c53c88160",
      "parents": [
        "8f4194026bb1e3d95fedb340a2935895845ea1d5"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:39:10 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:39:10 2008 +1100"
      },
      "message": "CRED: Wrap task credential accesses in the UNIX socket protocol\n\nWrap access to task credentials so that they can be separated more easily from\nthe task_struct during the introduction of COW creds.\n\nChange most current-\u003e(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id().\n\nChange some task-\u003ee?[ug]id to task_e?[ug]id().  In some places it makes more\nsense to use RCU directly rather than a convenient wrapper; these will be\naddressed by later patches.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "7e452baf6b96b5aeba097afd91501d33d390cc97",
      "tree": "9b0e062d3677d50d731ffd0fba47423bfdee9253",
      "parents": [
        "3ac38c3a2e7dac3f8f35a56eb85c27881a4c3833",
        "f21f237cf55494c3a4209de323281a3b0528da10"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 11 15:43:02 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 11 15:43:02 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/message/fusion/mptlan.c\n\tdrivers/net/sfc/ethtool.c\n\tnet/mac80211/debugfs_sta.c\n"
    },
    {
      "commit": "6209344f5a3795d34b7f2c0061f49802283b6bdd",
      "tree": "5c037ddbb8caac17b0c6101c9ab86387df106d41",
      "parents": [
        "058e3739f6b0753696db1952378de9e8d2a11735"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Sun Nov 09 15:23:57 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 09 11:17:33 2008 -0800"
      },
      "message": "net: unix: fix inflight counting bug in garbage collector\n\nPreviously I assumed that the receive queues of candidates don\u0027t\nchange during the GC.  This is only half true, nothing can be received\nfrom the queues (see comment in unix_gc()), but buffers could be added\nthrough the other half of the socket pair, which may still have file\ndescriptors referring to it.\n\nThis can result in inc_inflight_move_tail() erronously increasing the\n\"inflight\" counter for a unix socket for which dec_inflight() wasn\u0027t\npreviously called.  This in turn can trigger the \"BUG_ON(total_refs \u003c\ninflight_refs)\" in a later garbage collection run.\n\nFix this by only manipulating the \"inflight\" counter for sockets which\nare candidates themselves.  Duplicating the file references in\nunix_attach_fds() is also needed to prevent a socket becoming a\ncandidate for GC while the skb that contains it is not yet queued.\n\nReported-by: Andrea Bittau \u003ca.bittau@cs.ucl.ac.uk\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCC: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9eeda9abd1faf489f3df9a1f557975f4c8650363",
      "tree": "3e0a58e25b776cfbee193195460324dccb1886c7",
      "parents": [
        "61c9eaf90081cbe6dc4f389e0056bff76eca19ec",
        "4bab0ea1d42dd1927af9df6fbf0003fc00617c50"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 06 22:43:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 06 22:43:03 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/ath5k/base.c\n\tnet/8021q/vlan_core.c\n"
    },
    {
      "commit": "6d9f239a1edb31d6133230f478fd1dc2da338ec5",
      "tree": "305fa0da95a49db4e342f3f3042f8be0968b03ce",
      "parents": [
        "6cf3f41e6c08bca6641a695449791c38a25f35ff"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Nov 03 18:21:05 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 03 18:21:05 2008 -0800"
      },
      "message": "net: \u0027\u0026\u0027 redux\n\nI want to compile out proc_* and sysctl_* handlers totally and\nstub them to NULL depending on config options, however usage of \u0026\nwill prevent this, since taking adress of NULL pointer will break\ncompilation.\n\nSo, drop \u0026 in front of every -\u003eproc_handler and every -\u003estrategy\nhandler, it was never needed in fact.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e27dfcea48372a4105d9fdf2e8450926737f6215",
      "tree": "2530f222be8dc52a3676afc552f19b6745e115bc",
      "parents": [
        "c37ccc0d4e2a4ee52f1a40cff1be0049f2104bba"
      ],
      "author": {
        "name": "Jianjun Kong",
        "email": "jianjun@zeuux.org",
        "time": "Sat Nov 01 21:38:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 01 21:38:31 2008 -0700"
      },
      "message": "af_unix: clean up net/unix/af_unix.c garbage.c sysctl_net_unix.c\n\nclean up net/unix/af_unix.c garbage.c sysctl_net_unix.c\n\nSigned-off-by: Jianjun Kong \u003cjianjun@zeuux.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "48dcc33e5e11de0f76b65b113988dbc930d17395",
      "tree": "5d541fc8c41d8bf9758f3ecec721f4a4b432d786",
      "parents": [
        "abdd5a0301a6306d6465ceca9de8e732b2fedaa5"
      ],
      "author": {
        "name": "Jianjun Kong",
        "email": "jianjun@zeuux.org",
        "time": "Sat Nov 01 21:37:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 01 21:37:27 2008 -0700"
      },
      "message": "af_unix: netns: fix problem of return value\n\nfix problem of return value\n\nnet/unix/af_unix.c: unix_net_init()\nwhen error appears, it should return \u0027error\u0027, not always return 0.\n\nSigned-off-by: Jianjun Kong \u003cjianjun@zeuux.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "421748ecde8e69a6364e5ae66eb3bf87e1f995c0",
      "tree": "50ef878f8c46b1ec729625ed678d04aaeaaee6dd",
      "parents": [
        "a63bb99660d82dfe7c51588e1f9aadefb756ba51"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 01:04:36 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:52 2008 -0400"
      },
      "message": "[PATCH] assorted path_lookup() -\u003e kern_path() conversions\n\nmore nameidata eviction\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "113aa838ec3a235d883f8357d31d90e16c47fc89",
      "tree": "4e25254fb0402aea01074244879f574e213a9f31",
      "parents": [
        "510149e31974fdbb2c00c9bee6c0e2a688e61c85"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 19:01:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 13 19:01:08 2008 -0700"
      },
      "message": "net: Rationalise email address: Network Specific Parts\n\nClean up the various different email addresses of mine listed in the code\nto a single current and valid address. As Dave says his network merges\nfor 2.6.28 are now done this seems a good point to send them in where\nthey won\u0027t risk disrupting real changes.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4836e3007882984279ca63d3c42bf0b14616eb78",
      "tree": "28bf22726964e068b825491d71a141eefedbe5f8",
      "parents": [
        "5c7c204aeca51ccfad63caab4fcdc5d8026c0fd8",
        "4e1e018ecc6f7bfd10fc75b3ff9715cc8164e0a2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:23:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:23:44 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (39 commits)\n  [PATCH] fix RLIM_NOFILE handling\n  [PATCH] get rid of corner case in dup3() entirely\n  [PATCH] remove remaining namei_{32,64}.h crap\n  [PATCH] get rid of indirect users of namei.h\n  [PATCH] get rid of __user_path_lookup_open\n  [PATCH] f_count may wrap around\n  [PATCH] dup3 fix\n  [PATCH] don\u0027t pass nameidata to __ncp_lookup_validate()\n  [PATCH] don\u0027t pass nameidata to gfs2_lookupi()\n  [PATCH] new (local) helper: user_path_parent()\n  [PATCH] sanitize __user_walk_fd() et.al.\n  [PATCH] preparation to __user_walk_fd cleanup\n  [PATCH] kill nameidata passing to permission(), rename to inode_permission()\n  [PATCH] take noexec checks to very few callers that care\n  Re: [PATCH 3/6] vfs: open_exec cleanup\n  [patch 4/4] vfs: immutable inode checking cleanup\n  [patch 3/4] fat: dont call notify_change\n  [patch 2/4] vfs: utimes cleanup\n  [patch 1/4] vfs: utimes: move owner check into inode_change_ok()\n  [PATCH] vfs: use kstrdup() and check failing allocation\n  ...\n"
    },
    {
      "commit": "516e0cc5646f377ab80fcc2ee639892eccb99853",
      "tree": "e06296dcedb42dbe397d237887873e70c5823d51",
      "parents": [
        "3c333937ee3be114b181c4861188cfe8f6a59697"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 00:39:17 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:40 2008 -0400"
      },
      "message": "[PATCH] f_count may wrap around\n\nmake it atomic_long_t; while we are at it, get rid of useless checks in affs,\nhfs and hpfs - -\u003eopen() always has it equal to 1, -\u003erelease() - to 0.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "547b792cac0a038b9dbf958d3c120df3740b5572",
      "tree": "08554d083b0ca7d65739dc1ce12f9b12a9b8e1f8",
      "parents": [
        "53e5e96ec18da6f65e89f05674711e1c93d8df67"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "message": "net: convert BUG_TRAP to generic WARN_ON\n\nRemoves legacy reinvent-the-wheel type thing. The generic\nmachinery integrates much better to automated debugging aids\nsuch as kerneloops.org (and others), and is unambiguous due to\nbetter naming. Non-intuively BUG_TRAP() is actually equal to\nWARN_ON() rather than BUG_ON() though some might actually be\npromoted to BUG_ON() but I left that to future.\n\nI could make at least one BUILD_BUG_ON conversion.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b63ba8a86c85524a8d7e5953b314ce71ebcb9c9",
      "tree": "fe3dc41cbb47ae12b7c3faf6a88b097349e50d5a",
      "parents": [
        "e35c3269edba151e1c703d87068a28ce2cd65bb0",
        "d420895efb259a78dda50f95289571faa6e10e41"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 28 01:19:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 28 01:19:40 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/iwlwifi/iwl4965-base.c\n"
    },
    {
      "commit": "ec0d215f9420564fc8286dcf93d2d068bb53a07e",
      "tree": "f28d77219b4983c5e8c042202d5e37a746f05e60",
      "parents": [
        "db43a282d3ec92ea45109c5551fff3dcc5afef02"
      ],
      "author": {
        "name": "Rainer Weikusat",
        "email": "rweikusat@mssgmbh.com",
        "time": "Fri Jun 27 19:34:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 19:34:18 2008 -0700"
      },
      "message": "af_unix: fix \u0027poll for write\u0027/connected DGRAM sockets\n\nFor n:1 \u0027datagram connections\u0027 (eg /dev/log), the unix_dgram_sendmsg\nroutine implements a form of receiver-imposed flow control by\ncomparing the length of the receive queue of the \u0027peer socket\u0027 with\nthe max_ack_backlog value stored in the corresponding sock structure,\neither blocking the thread which caused the send-routine to be called\nor returning EAGAIN. This routine is used by both SOCK_DGRAM and\nSOCK_SEQPACKET sockets. The poll-implementation for these socket types\nis datagram_poll from core/datagram.c. A socket is deemed to be\nwriteable by this routine when the memory presently consumed by\ndatagrams owned by it is less than the configured socket send buffer\nsize. This is always wrong for PF_UNIX non-stream sockets connected to\nserver sockets dealing with (potentially) multiple clients if the\nabovementioned receive queue is currently considered to be full.\n\u0027poll\u0027 will then return, indicating that the socket is writeable, but\na subsequent write result in EAGAIN, effectively causing an (usual)\napplication to \u0027poll for writeability by repeated send request with\nO_NONBLOCK set\u0027 until it has consumed its time quantum.\n\nThe change below uses a suitably modified variant of the datagram_poll\nroutines for both type of PF_UNIX sockets, which tests if the\nrecv-queue of the peer a socket is connected to is presently\nconsidered to be \u0027full\u0027 as part of the \u0027is this socket\nwriteable\u0027-checking code. The socket being polled is additionally\nput onto the peer_wait wait queue associated with its peer, because the\nunix_dgram_recvmsg routine does a wake up on this queue after a\ndatagram was received and the \u0027other wakeup call\u0027 is done implicitly\nas part of skb destruction, meaning, a process blocked in poll\nbecause of a full peer receive queue could otherwise sleep forever\nif no datagram owned by its socket was already sitting on this queue.\nAmong this change is a small (inline) helper routine named\n\u0027unix_recvq_full\u0027, which consolidates the actual testing code (in three\ndifferent places) into a single location.\n\nSigned-off-by: Rainer Weikusat \u003crweikusat@mssgmbh.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0344f1c66b544609e867bd24aa7bfa789dfa9830",
      "tree": "7f76abc095a90f7ad475417495d3d4f577080ae1",
      "parents": [
        "dad9b335c6940de2746a9788eb456d09cf102f81",
        "ef3a62d272f033989e83eb1f26505f93f93e3e69"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 19 16:00:04 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 19 16:00:04 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tnet/mac80211/tx.c\n"
    },
    {
      "commit": "3c73419c09a5ef73d56472dbfdade9e311496e9b",
      "tree": "19dc2714a4649445bc7cbcd06c0d1851962d41fc",
      "parents": [
        "4552e1198a08198ce0b42e856845b5394c82c59c"
      ],
      "author": {
        "name": "Rainer Weikusat",
        "email": "rweikusat@mssgmbh.com",
        "time": "Tue Jun 17 22:28:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 17 22:28:05 2008 -0700"
      },
      "message": "af_unix: fix \u0027poll for write\u0027/ connected DGRAM sockets\n\nThe unix_dgram_sendmsg routine implements a (somewhat crude)\nform of receiver-imposed flow control by comparing the length of the\nreceive queue of the \u0027peer socket\u0027 with the max_ack_backlog value\nstored in the corresponding sock structure, either blocking\nthe thread which caused the send-routine to be called or returning\nEAGAIN. This routine is used by both SOCK_DGRAM and SOCK_SEQPACKET\nsockets. The poll-implementation for these socket types is\ndatagram_poll from core/datagram.c. A socket is deemed to be writeable\nby this routine when the memory presently consumed by datagrams\nowned by it is less than the configured socket send buffer size. This\nis always wrong for connected PF_UNIX non-stream sockets when the\nabovementioned receive queue is currently considered to be full.\n\u0027poll\u0027 will then return, indicating that the socket is writeable, but\na subsequent write result in EAGAIN, effectively causing an\n(usual) application to \u0027poll for writeability by repeated send request\nwith O_NONBLOCK set\u0027 until it has consumed its time quantum.\n\nThe change below uses a suitably modified variant of the datagram_poll\nroutines for both type of PF_UNIX sockets, which tests if the\nrecv-queue of the peer a socket is connected to is presently\nconsidered to be \u0027full\u0027 as part of the \u0027is this socket\nwriteable\u0027-checking code. The socket being polled is additionally\nput onto the peer_wait wait queue associated with its peer, because the\nunix_dgram_sendmsg routine does a wake up on this queue after a\ndatagram was received and the \u0027other wakeup call\u0027 is done implicitly\nas part of skb destruction, meaning, a process blocked in poll\nbecause of a full peer receive queue could otherwise sleep forever\nif no datagram owned by its socket was already sitting on this queue.\nAmong this change is a small (inline) helper routine named\n\u0027unix_recvq_full\u0027, which consolidates the actual testing code (in three\ndifferent places) into a single location.\n\nSigned-off-by: Rainer Weikusat \u003crweikusat@mssgmbh.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0b040829952d84bf2a62526f0e24b624e0699447",
      "tree": "b2e836e7e64343f19b949e50099bbe2ea554ec30",
      "parents": [
        "573bf470e693f73a6ac437b17a64a10902ba54bf"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jun 10 22:46:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 11 21:00:38 2008 -0700"
      },
      "message": "net: remove CVS keywords\n\nThis patch removes CVS keywords that weren\u0027t updated for a long time\nfrom comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d02aacff4467806ee56f147ac8eff6911d95811a",
      "tree": "3bc6197f735f18dd4c3cd7c77f2a45bb9b8fac16",
      "parents": [
        "e270b51df657011983241ec61a1fc7de186e16cd",
        "9edb74cc6ccb3a893c3d40727b7003c3c16f85a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 24 08:40:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 24 08:40:34 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (22 commits)\n  tun: Multicast handling in tun_chr_ioctl() needs proper locking.\n  [NET]: Fix heavy stack usage in seq_file output routines.\n  [AF_UNIX] Initialise UNIX sockets before general device initcalls\n  [RTNETLINK]: Fix bogus ASSERT_RTNL warning\n  iwlwifi: Fix built-in compilation of iwlcore (part 2)\n  tun: Fix minor race in TUNSETLINK ioctl handling.\n  ppp_generic: use stats from net_device structure\n  iwlwifi: Don\u0027t unlock priv-\u003emutex if it isn\u0027t locked\n  wireless: rndis_wlan: modparam_workaround_interval is never below 0.\n  prism54: prism54_get_encode() test below 0 on unsigned index\n  mac80211: update mesh EID values\n  b43: Workaround DMA quirks\n  mac80211: fix use before check of Qdisc length\n  net/mac80211/rx.c: fix off-by-one\n  mac80211: Fix race between ieee80211_rx_bss_put and lookup routines.\n  ath5k: Fix radio identification on AR5424/2424\n  ssb: Fix all-ones boardflags\n  b43: Add more btcoexist workarounds\n  b43: Fix HostFlags data types\n  b43: Workaround invalid bluetooth settings\n  ...\n"
    },
    {
      "commit": "3d36696024499aef19dbf24a781e91a24fbbe4af",
      "tree": "2d999dfee2897123f6fb16e2a75327ac8db2020d",
      "parents": [
        "c9c1014b2bd014c7ec037bbb6f58818162fdb265"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Apr 24 00:59:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 24 00:59:25 2008 -0700"
      },
      "message": "[AF_UNIX] Initialise UNIX sockets before general device initcalls\n\nWhen drivers call request_module(), it tries to do something with UNIX\nsockets and triggers a \u0027runaway loop modprobe net-pf-1\u0027 warning. Avoid\nthis by initialising AF_UNIX support earlier.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "463c3197263bd26ac59a00d2484990e17e35c50e",
      "tree": "b27c04f978ccd447ae33f7387b6a4aba0033acc5",
      "parents": [
        "0622753b800e4cc6cb9319b36b27658c72dd7cdc"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Fri Feb 15 14:37:57 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Apr 19 00:25:34 2008 -0400"
      },
      "message": "[PATCH] r/o bind mounts: get callers of vfs_mknod/create/mkdir()\n\nThis takes care of all of the direct callers of vfs_mknod().\nSince a few of these cases also handle normal file creation\nas well, this also covers some calls to vfs_create().\n\nSo that we don\u0027t have to make three mnt_want/drop_write()\ncalls inside of the switch statement, we move some of its\nlogic outside of the switch and into a helper function\nsuggested by Christoph.\n\nThis also encapsulates a fix for mknod(S_IFREG) that Miklos\nfound.\n\n[AV: merged mkdir handling, added missing nfsd pieces]\n\nAcked-by: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b9f3124f08fffe2ad706fd164f6702fdca409a91",
      "tree": "c58bf735e48e746fcedaba9d9ef70732a8781627",
      "parents": [
        "1a4187963e5a706e78bbfa2d5b2e9101a63f1f7c"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sat Apr 12 19:04:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 12 19:04:38 2008 -0700"
      },
      "message": "[AF_UNIX]: Use SEQ_START_TOKEN\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "878628fbf2589eb24357e42027d5f54b1dafd3c8",
      "tree": "30c109d8f337b3910e3b5364877c3c521dd700b5",
      "parents": [
        "57da52c1e62c6c13875e97de6c69d3156f8416da"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 03:57:35 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:40:00 2008 +0900"
      },
      "message": "[NET] NETNS: Omit namespace comparision without CONFIG_NET_NS.\n\nIntroduce an inline net_eq() to compare two namespaces.\nWithout CONFIG_NET_NS, since no namespace other than \u0026init_net\nexists, it is always 1.\n\nWe do not need to convert 1) inline vs inline and\n2) inline vs \u0026init_net comparisons.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "1218854afa6f659be90b748cf1bc7badee954a35",
      "tree": "78b83e3941fa7e5a03c04e2e4f6ddb1a08ea38a0",
      "parents": [
        "3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 02:36:06 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:39:56 2008 +0900"
      },
      "message": "[NET] NETNS: Omit seq_net_private-\u003enet without CONFIG_NET_NS.\n\nWithout CONFIG_NET_NS, no namespace other than \u0026init_net exists,\nno need to store net in seq_net_private.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9",
      "tree": "09edb35f32ebcfb1b4dad904425128a110ef16ee",
      "parents": [
        "c346dca10840a874240c78efe3f39acf4312a1f2"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 02:26:21 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:39:55 2008 +0900"
      },
      "message": "[NET] NETNS: Omit sock-\u003esk_net without CONFIG_NET_NS.\n\nIntroduce per-sock inlines: sock_net(), sock_net_set()\nand per-inet_timewait_sock inlines: twsk_net(), twsk_net_set().\nWithout CONFIG_NET_NS, no namespace other than \u0026init_net exists.\nLet\u0027s explicitly define them to help compiler optimizations.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "0dc47877a3de00ceadea0005189656ae8dc52669",
      "tree": "7440a87385fe318cb42f0ae161be195f5e967d82",
      "parents": [
        "6387c4bed539539b05fa773cf2ff26529dc3074c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "message": "net: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d957f9bf87da74f420424d16ece005202bbebd3",
      "tree": "363d4770c0c74a536524c99ccd2762ce96ee9bbe",
      "parents": [
        "4ac9137858e08a19f29feac4e1f4df7c268b0ba5"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Introduce path_put()\n\n* Add path_put() functions for releasing a reference to the dentry and\n  vfsmount of a struct path in the right order\n\n* Switch from path_release(nd) to path_put(\u0026nd-\u003epath)\n\n* Rename dput_path() to path_put_conditional()\n\n[akpm@linux-foundation.org: fix cifs]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003clinux-fsdevel@vger.kernel.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\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": "4ac9137858e08a19f29feac4e1f4df7c268b0ba5",
      "tree": "f5b5d84fd12fcc2b0ba0e7ce1a79ff381ad8f5dd",
      "parents": [
        "c5e725f33b733a77de622e91b6ba5645fcf070be"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:32 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Embed a struct path into struct nameidata instead of nd-\u003e{dentry,mnt}\n\nThis is the central patch of a cleanup series. In most cases there is no good\nreason why someone would want to use a dentry for itself. This series reflects\nthat fact and embeds a struct path into nameidata.\n\nTogether with the other patches of this series\n- it enforced the correct order of getting/releasing the reference count on\n  \u003cdentry,vfsmount\u003e pairs\n- it prepares the VFS for stacking support since it is essential to have a\n  struct path in every place where the stack can be traversed\n- it reduces the overall code size:\n\nwithout patch series:\n   text    data     bss     dec     hex filename\n5321639  858418  715768 6895825  6938d1 vmlinux\n\nwith patch series:\n   text    data     bss     dec     hex filename\n5320026  858418  715768 6894212  693284 vmlinux\n\nThis patch:\n\nSwitch from nd-\u003e{dentry,mnt} to nd-\u003epath.{dentry,mnt} everywhere.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix cifs]\n[akpm@linux-foundation.org: fix smack]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a429c4983deae020f1e757ecc8f547b6d4e2f2b",
      "tree": "172e27a5866e182b902cd77506df1755aafadb60",
      "parents": [
        "b950dfcf504842a0f2bb142a33ef938f1c00d300"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Jan 01 21:58:02 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:00:31 2008 -0800"
      },
      "message": "[NET]: Add some acquires/releases sparse annotations.\n\nAdd __acquires() and __releases() annotations to suppress some sparse\nwarnings.\n\nexample of warnings :\n\nnet/ipv4/udp.c:1555:14: warning: context imbalance in \u0027udp_seq_start\u0027 - wrong\ncount at exit\nnet/ipv4/udp.c:1571:13: warning: context imbalance in \u0027udp_seq_stop\u0027 -\nunexpected unlock\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0a53c8ba95451feef6c1975016f0a1eb3044ad4",
      "tree": "0b64ce018878cbaa0bf5cdfa308d4a7e71218914",
      "parents": [
        "27147c9e6e8316af91dea487aa2c14b18dcff4cf"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Dec 11 04:19:17 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:14 2008 -0800"
      },
      "message": "[NETNS]: struct net content re-work (v3)\n\nRecently David Miller and Herbert Xu pointed out that struct net becomes\noverbloated and un-maintainable. There are two solutions:\n- provide a pointer to a network subsystem definition from struct net.\n  This costs an additional dereferrence\n- place sub-system definition into the structure itself. This will speedup\n  run-time access at the cost of recompilation time\n\nThe second approach looks better for us. Other sub-systems will follow.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1597fbc0faf88c42edb3fe42e92e53b83c3f120e",
      "tree": "17a56a96af0e00a1af452f0530997585803b6c7b",
      "parents": [
        "1d430b913c2e6293a80a4a422406bc9489a476ad"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 01 23:51:01 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:23 2008 -0800"
      },
      "message": "[UNIX]: Make the unix sysctl tables per-namespace\n\nThis is the core.\n\n * add the ctl_table_header on the struct net;\n * make the unix_sysctl_register and _unregister clone the table;\n * moves calls to them into per-net init and exit callbacks;\n * move the .data pointer in the proper place.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d430b913c2e6293a80a4a422406bc9489a476ad",
      "tree": "1b7a34062422a8d23fbb57a8ea935ec3ac15a8ae",
      "parents": [
        "d392e49756a99ba51577d265d6db83e3f01c6ac8"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 01 23:45:41 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:22 2008 -0800"
      },
      "message": "[UNIX]: Use ctl paths to register unix ctl tables\n\nUnlike previous ones, this patch is useful by its own,\nas it decreases the vmlinux size :)\n\nBut it will be used later, when the per-namespace sysctl\nis added.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d392e49756a99ba51577d265d6db83e3f01c6ac8",
      "tree": "644610d6fc7ab79a9e8a7f76357062759ec8d690",
      "parents": [
        "97577e38284f48ca773392e2d401af2f6c95dc08"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 01 23:44:15 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:22 2008 -0800"
      },
      "message": "[UNIX]: Move the sysctl_unix_max_dgram_qlen\n\nThis will make all the sub-namespaces always use the\ndefault value (10) and leave the tuning via sysctl\nto the init namespace only.\n\nPer-namespace tuning is coming.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "97577e38284f48ca773392e2d401af2f6c95dc08",
      "tree": "f744e46259cf06b13858f2965526d512308cb7da",
      "parents": [
        "dd88590995de7c7ce108718a9ad52b3832e77814"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 01 23:40:40 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:21 2008 -0800"
      },
      "message": "[UNIX]: Extend unix_sysctl_(un)register prototypes\n\nAdd the struct net * argument to both of them to use in\nthe future. Also make the register one return an error code.\n\nIt is useless right now, but will make the future patches\nmuch simpler.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d8ad9d7c4bfe79bc91b7fc419ecfb9dcdfe6a51",
      "tree": "4b655c4b898e634f39fd170eeb8d06f45b240660",
      "parents": [
        "ce865a61c810c971b47f57c729ec6e9b2d522d94"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 26 20:10:50 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:03 2008 -0800"
      },
      "message": "[NET]: Name magic constants in sock_wake_async()\n\nThe sock_wake_async() performs a bit different actions\ndepending on \"how\" argument. Unfortunately this argument\nony has numerical magic values.\n\nI propose to give names to their constants to help people\nreading this function callers understand what\u0027s going on\nwithout looking into this function all the time.\n\nI suppose this is 2.6.25 material, but if it\u0027s not (or the\nnaming seems poor/bad/awful), I can rework it against the\ncurrent net-2.6 tree.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a53eb3feb2718bf906e81be89fae823b9b6157b6",
      "tree": "4f854d526d80c8386d0212f1a12924c8d9b7fbf0",
      "parents": [
        "c28149016c24f4399c0a1eb0ebc15c92611223f0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Nov 23 20:30:01 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:49 2008 -0800"
      },
      "message": "[UNIX] Move the unix sock iterators in to proper place\n\nThe first_unix_socket() and next_unix_sockets() are now used\nin proc file and in forall_unix_socets macro only.\n\nThe forall_unix_sockets is not used in this file at all so\nremove it. After this move the helpers to where they really\nbelong, i.e. closer to proc code under the #ifdef CONFIG_PROC_FS\noption.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e372c41401993b45c721c4d92730e7e0a79f7c1b",
      "tree": "8f062f506c0578fc83b7d05c8751a7ccac96e50e",
      "parents": [
        "097e66c578459f79e3a2128c54e9df5194e1419a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Mon Nov 19 22:31:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:28 2008 -0800"
      },
      "message": "[NET]: Consolidate net namespace related proc files creation.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "097e66c578459f79e3a2128c54e9df5194e1419a",
      "tree": "bdc164e849dc33a4321ea51d965a113917bb287b",
      "parents": [
        "d12d01d6b4d197115c4d7736172b5b1ec8b1eb71"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Mon Nov 19 22:29:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:27 2008 -0800"
      },
      "message": "[NET]: Make AF_UNIX per network namespace safe [v2]\n\nBecause of the global nature of garbage collection, and because of the\ncost of per namespace hash tables unix_socket_table has been kept\nglobal.  With a filter added on lookups so we don\u0027t see sockets from\nthe wrong namespace.\n\nCurrently I don\u0027t fold the namesapce into the hash so multiple\nnamespaces using the same socket name will be guaranteed a hash\ncollision.\n\nChanges from v1:\n- fixed unix_seq_open\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a11225887fe6cbccd882404dc36ddc50f47daf9",
      "tree": "19f23a33bcd1f794e5e4bf06d0d97f4a0f7a7533",
      "parents": [
        "6ab3b487db77fa98a24560f11a5a8e744b98d877"
      ],
      "author": {
        "name": "Florian Zumbiehl",
        "email": "florz@florz.de",
        "time": "Thu Nov 29 23:19:23 2007 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Nov 29 23:19:23 2007 +1100"
      },
      "message": "[UNIX]: EOF on non-blocking SOCK_SEQPACKET\n\nI am not absolutely sure whether this actually is a bug (as in: I\u0027ve got\nno clue what the standards say or what other implementations do), but at\nleast I was pretty surprised when I noticed that a recv() on a\nnon-blocking unix domain socket of type SOCK_SEQPACKET (which is connection\noriented, after all) where the remote end has closed the connection\nreturned -1 (EAGAIN) rather than 0 to indicate end of file.\n\nThis is a test case:\n\n| #include \u003csys/types.h\u003e\n| #include \u003cunistd.h\u003e\n| #include \u003csys/socket.h\u003e\n| #include \u003csys/un.h\u003e\n| #include \u003cfcntl.h\u003e\n| #include \u003cstring.h\u003e\n| #include \u003cstdlib.h\u003e\n| \n| int main(){\n| \tint sock;\n| \tstruct sockaddr_un addr;\n| \tchar buf[4096];\n| \tint pfds[2];\n| \n| \tpipe(pfds);\n| \tsock\u003dsocket(PF_UNIX,SOCK_SEQPACKET,0);\n| \taddr.sun_family\u003dAF_UNIX;\n| \tstrcpy(addr.sun_path,\"/tmp/foobar_testsock\");\n| \tbind(sock,(struct sockaddr *)\u0026addr,sizeof(addr));\n| \tlisten(sock,1);\n| \tif(fork()){\n| \t\tclose(sock);\n| \t\tsock\u003dsocket(PF_UNIX,SOCK_SEQPACKET,0);\n| \t\tconnect(sock,(struct sockaddr *)\u0026addr,sizeof(addr));\n| \t\tfcntl(sock,F_SETFL,fcntl(sock,F_GETFL)|O_NONBLOCK);\n| \t\tclose(pfds[1]);\n| \t\tread(pfds[0],buf,sizeof(buf));\n| \t\trecv(sock,buf,sizeof(buf),0); // \u003c-- this one\n| \t}else accept(sock,NULL,NULL);\n| \texit(0);\n| }\n\nIf you try it, make sure /tmp/foobar_testsock doesn\u0027t exist.\n\nThe marked recv() returns -1 (EAGAIN) on 2.6.23.9. Below you find a\npatch that fixes that.\n\nSigned-off-by: Florian Zumbiehl \u003cflorz@florz.de\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "284b327be2f86cf751316ff344b6945e580e654f",
      "tree": "61a5e5b353be80e092795e357863509861a6a774",
      "parents": [
        "5c80f1ae9842a8b7985acd0f02efb9828effb05f"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Nov 10 22:08:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 10 22:08:30 2007 -0800"
      },
      "message": "[UNIX]: The unix_nr_socks limit can be exceeded\n\nThe unix_nr_socks value is limited with the 2 * get_max_files() value,\nas seen from the unix_create1(). However, the check and the actual\nincrement are separated with the GFP_KERNEL allocation, so this limit\ncan be exceeded under a memory pressure - task may go to sleep freeing\nthe pages and some other task will be allowed to allocate a new sock\nand so on and so forth.\n\nSo make the increment before the check (similar thing is done in the\nsock_kmalloc) and go to kmalloc after this.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c80f1ae9842a8b7985acd0f02efb9828effb05f",
      "tree": "e8a41006d8df869782c9d8c0e686df4a30025ed8",
      "parents": [
        "9305cfa4443dbfb99faf35c5603ec0c0e91b5ef8"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Nov 10 22:07:13 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 10 22:07:13 2007 -0800"
      },
      "message": "[AF_UNIX]: Convert socks to unix_socks in scan_inflight, not in callbacks\n\nThe scan_inflight() routine scans through the unix sockets and calls\nsome passed callback. The fact is that all these callbacks work with\nthe unix_sock objects, not the sock ones, so make this conversion in\nthe scan_inflight() before calling the callbacks.\n\nThis removes one unneeded variable from the inc_inflight_move_tail().\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9305cfa4443dbfb99faf35c5603ec0c0e91b5ef8",
      "tree": "957551b7016caedcb6f85ec733e6a14d6707096f",
      "parents": [
        "8032b46489e50ef8f3992159abd0349b5b8e476c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Nov 10 22:06:01 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 10 22:06:01 2007 -0800"
      },
      "message": "[AF_UNIX]: Make unix_tot_inflight counter non-atomic\n\nThis counter is _always_ modified under the unix_gc_lock spinlock, \nso its atomicity can be provided w/o additional efforts.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6257ff2177ff02d7f260a7a501876aa41cb9a9f6",
      "tree": "9d9f80ccf16f3d4ef062e896f62974c5496193ad",
      "parents": [
        "154adbc8469ff21fbf5c958446ee92dbaab01be1"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Nov 01 00:39:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 01 00:39:31 2007 -0700"
      },
      "message": "[NET]: Forget the zero_it argument of sk_alloc()\n\nFinally, the zero_it argument can be completely removed from\nthe callers and from the function prototype.\n\nBesides, fix the checkpatch.pl warnings about using the\nassignments inside if-s.\n\nThis patch is rather big, and it is a part of the previous one.\nI splitted it wishing to make the patches more readable. Hope \nthis particular split helped.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b488893a390edfe027bae7a46e9af8083e740668",
      "tree": "c469a7f99ad01005a73011c029eb5e5d15454559",
      "parents": [
        "3eb07c8c8adb6f0572baba844ba2d9e501654316"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:40 2007 -0700"
      },
      "message": "pid namespaces: changes to show virtual ids to user\n\nThis is the largest patch in the set. Make all (I hope) the places where\nthe pid is shown to or get from user operate on the virtual pids.\n\nThe idea is:\n - all in-kernel data structures must store either struct pid itself\n   or the pid\u0027s global nr, obtained with pid_nr() call;\n - when seeking the task from kernel code with the stored id one\n   should use find_task_by_pid() call that works with global pids;\n - when showing pid\u0027s numerical value to the user the virtual one\n   should be used, but however when one shows task\u0027s pid outside this\n   task\u0027s namespace the global one is to be used;\n - when getting the pid from userspace one need to consider this as\n   the virtual one and use appropriate task/pid-searching functions.\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: nuther build fix]\n[akpm@linux-foundation.org: yet nuther build fix]\n[akpm@linux-foundation.org: remove unneeded casts]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@openvz.org\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Paul Menage \u003cmenage@google.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": "71e20f1873d46e138c26ce83f8fe54b7221f572f",
      "tree": "3b5c5083d3ffcf7c9d7ddad81acf30c09197ef99",
      "parents": [
        "d172fcd3ae1ca7ac27ec8904242fd61e0e11d332"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "message": "sched: affine sync wakeups\n\nmake sync wakeups affine for cache-cold tasks: if a cache-cold task\nis woken up by a sync wakeup then use the opportunity to migrate it\nstraight away. (the two tasks are \u0027related\u0027 because they communicate)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cf7732e4cc14b56d593ff53352673e1fd5e3ba52",
      "tree": "3479e278b72f9d535a58066bc2a26238806252ce",
      "parents": [
        "39699037a5c94d7cd1363dfe48a50c78c643fd9a"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Oct 10 02:29:29 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:55:33 2007 -0700"
      },
      "message": "[NET]: Make core networking code use seq_open_private\n\nThis concerns the ipv4 and ipv6 code mostly, but also the netlink\nand unix sockets.\n\nThe netlink code is an example of how to use the __seq_open_private()\ncall - it saves the net namespace on this private.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b8d7ae42d02e483ad94035cca851e4f7fbecb40",
      "tree": "81f8cc0ee49ef99cc67dfed3dc7b7ecb510abf8b",
      "parents": [
        "457c4cbc5a3dde259d2a1f15d5f9785290397267"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 08 23:24:22 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:07 2007 -0700"
      },
      "message": "[NET]: Make socket creation namespace safe.\n\nThis patch passes in the namespace a new socket should be created in\nand has the socket code do the appropriate reference counting.  By\nvirtue of this all socket create methods are touched.  In addition\nthe socket create methods are modified so that they will fail if\nyou attempt to create a socket in a non-default network namespace.\n\nFailing if we attempt to create a socket outside of the default\nnetwork namespace ensures that as we incrementally make the network stack\nnetwork namespace aware we will not export functionality that someone\nhas not audited and made certain is network namespace safe.\nAllowing us to partially enable network namespaces before all of the\nexotic protocols are supported.\n\nAny protocol layers I have missed will fail to compile because I now\npass an extra parameter into the socket creation code.\n\n[ Integrated AF_IUCV build fixes from Andrew Morton... -DaveM ]\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "457c4cbc5a3dde259d2a1f15d5f9785290397267",
      "tree": "a2ceee88780cbce27433b9a4434b3e9251efd81a",
      "parents": [
        "07feaebfcc10cd35e745c7073667935246494bee"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Sep 12 12:01:34 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:06 2007 -0700"
      },
      "message": "[NET]: Make /proc/net per network namespace\n\nThis patch makes /proc/net per network namespace.  It modifies the global\nvariables proc_net and proc_net_stat to be per network namespace.\nThe proc_net file helpers are modified to take a network namespace argument,\nand all of their callers are fixed to pass \u0026init_net for that argument.\nThis ensures that all of the /proc/net files are only visible and\nusable in the initial network namespace until the code behind them\nhas been updated to be handle multiple network namespaces.\n\nMaking /proc/net per namespace is necessary as at least some files\nin /proc/net depend upon the set of network devices which is per\nnetwork namespace, and even more files in /proc/net have contents\nthat are relevant to a single network namespace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "131116989b5c349f9b1ab9ee083d37cc73160ac8",
      "tree": "6b381fc02ec93bd5f02da685124a6ca45c77cd46",
      "parents": [
        "1a3a206f7f2aa50545cc3d056405ad7bc3c9bca8"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jul 30 18:05:45 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 31 02:28:27 2007 -0700"
      },
      "message": "[AF_UNIX]: Make code static.\n\nThe following code can now become static:\n- struct unix_socket_table\n- unix_table_lock\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1fd05ba5a2f2aa8e7b9b52ef55df850e2e7d54c9",
      "tree": "3403194403ab25f1f7a360a002adf63be2b4e9b0",
      "parents": [
        "99d24edeb6abc6ca3a0d0fbdb83c664c04403c8c"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Jul 11 14:22:39 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 14:22:39 2007 -0700"
      },
      "message": "[AF_UNIX]: Rewrite garbage collector, fixes race.\n\nThrow out the old mark \u0026 sweep garbage collector and put in a\nrefcounting cycle detecting one.\n\nThe old one had a race with recvmsg, that resulted in false positives\nand hence data loss.  The old algorithm operated on all unix sockets\nin the system, so any additional locking would have meant performance\nproblems for all users of these.\n\nThe new algorithm instead only operates on \"in flight\" sockets, which\nare very rare, and the additional locking for these doesn\u0027t negatively\nimpact the vast majority of users.\n\nIn fact it\u0027s probable, that there weren\u0027t *any* heavy senders of\nsockets over sockets, otherwise the above race would have been\ndiscovered long ago.\n\nThe patch works OK with the app that exposed the race with the old\ncode.  The garbage collection has also been verified to work in a few\nsimple cases.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56b3d975bbce65f655c5612b4822da671f9fd9b2",
      "tree": "7e29d70405d9c8e28ddee3b03a07157477fc780f",
      "parents": [
        "3be550f34b03e5eb762f74d447ebbeba97efbd6d"
      ],
      "author": {
        "name": "Philippe De Muyter",
        "email": "phdm@macqel.be",
        "time": "Tue Jul 10 23:07:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 23:07:31 2007 -0700"
      },
      "message": "[NET]: Make all initialized struct seq_operations const.\n\nMake all initialized struct seq_operations in net/ const\n\nSigned-off-by: Philippe De Muyter \u003cphdm@macqel.be\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3c0d2f3780fc94746c4842e965bd2570e2119bb6",
      "tree": "993e21657b05a2e299e699006aa53a0c0a380e4c",
      "parents": [
        "c764c9ade6d9b710bad2b9c631ede9864333b98c"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Jun 05 13:10:29 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 07 13:40:44 2007 -0700"
      },
      "message": "[AF_UNIX]: Fix stream recvmsg() race.\n\nA recv() on an AF_UNIX, SOCK_STREAM socket can race with a\nsend()+close() on the peer, causing recv() to return zero, even though\nthe sent data should be received.\n\nThis happens if the send() and the close() is performed between\nskb_dequeue() and checking sk-\u003esk_shutdown in unix_stream_recvmsg():\n\nprocess A  skb_dequeue() returns NULL, there\u0027s no data in the socket queue\nprocess B  new data is inserted onto the queue by unix_stream_sendmsg()\nprocess B  sk-\u003esk_shutdown is set to SHUTDOWN_MASK by unix_release_sock()\nprocess A  sk-\u003esk_shutdown is checked, unix_release_sock() returns zero\n\nI\u0027m surprised nobody noticed this, it\u0027s not hard to trigger.  Maybe\nit\u0027s just (un)luck with the timing.\n\nIt\u0027s possible to work around this bug in userspace, by retrying the\nrecv() once in case of a zero return value.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "278a3de5abc7901805689a66340b5af9882b4f9a",
      "tree": "c18ffd5992fb38e3a6322b220fb56a1da6e5aa77",
      "parents": [
        "007a880d627aee0e854e793099bb33d0c1130678"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 31 15:19:20 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Jun 03 18:08:42 2007 -0700"
      },
      "message": "[AF_UNIX]: Fix datagram connect race causing an OOPS.\n\nBased upon an excellent bug report and initial patch by\nFrederik Deweerdt.\n\nThe UNIX datagram connect code blindly dereferences other-\u003esk_socket\nvia the call down to the security_unix_may_send() function.\n\nWithout locking \u0027other\u0027 that pointer can go NULL via unix_release_sock()\nwhich does sock_orphan() which also marks the socket SOCK_DEAD.\n\nSo we have to lock both \u0027sk\u0027 and \u0027other\u0027 yet avoid all kinds of\npotential deadlocks (connect to self is OK for datagram sockets and it\nis possible for two datagram sockets to perform a simultaneous connect\nto each other).  So what we do is have a \"double lock\" function similar\nto how we handle this situation in other areas of the kernel.  We take\nthe lock of the socket pointer with the smallest address first in\norder to avoid ABBA style deadlocks.\n\nOnce we have them both locked, we check to see if SOCK_DEAD is set\nfor \u0027other\u0027 and if so, drop everything and retry the lookup.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c92b4e50ef926d1e26fcc056a520e4a7d12478c",
      "tree": "5657e611aef30e1f994d018e23a3a8cffa38677e",
      "parents": [
        "c1a13ff57ab1ce52a0aae9984594dbfcfbaf68c0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 31 13:24:26 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Jun 03 18:08:40 2007 -0700"
      },
      "message": "[AF_UNIX]: Make socket locking much less confusing.\n\nThe unix_state_*() locking macros imply that there is some\nrwlock kind of thing going on, but the implementation is\nactually a spinlock which makes the code more confusing than\nit needs to be.\n\nSo use plain unix_state_lock and unix_state_unlock.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "badff6d01a8589a1c828b0bf118903ca38627f4e",
      "tree": "89611d7058c612085c58dfb9913ee30ddf04b604",
      "parents": [
        "0660e03f6b18f19b6bbafe7583265a51b90daf36"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 13:06:52 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:15 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_reset_transport_header(skb)\n\nFor the common, open coded \u0027skb-\u003eh.raw \u003d skb-\u003edata\u0027 operation, so that we can\nlater turn skb-\u003eh.raw into a offset, reducing the size of struct sk_buff in\n64bit land while possibly keeping it as a pointer on 32bit.\n\nThis one touches just the most simple cases:\n\nskb-\u003eh.raw \u003d skb-\u003edata;\nskb-\u003eh.raw \u003d {skb_push|[__]skb_pull}()\n\nThe next ones will handle the slightly more \"complex\" cases.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64a146513f8f12ba204b7bf5cb7e9505594ead42",
      "tree": "849f875501ac6f08cf309c5b13cf21ed687974e2",
      "parents": [
        "187f5f84ef14a07dccf5f4503099708d60f6a724"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Mar 06 11:21:05 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Mar 06 11:21:05 2007 -0800"
      },
      "message": "[NET]: Revert incorrect accept queue backlog changes.\n\nThis reverts two changes:\n\n8488df894d05d6fa41c2bd298c335f944bb0e401\n248f06726e866942b3d8ca8f411f9067713b7ff8\n\nA backlog value of N really does mean allow \"N + 1\" connections\nto queue to a listening socket.  This allows one to specify\n\"0\" as the backlog and still get 1 connection.\n\nNoticed by Gerrit Renker and Rick Jones.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "248f06726e866942b3d8ca8f411f9067713b7ff8",
      "tree": "5e6a2f4ec75bb05e2d9eb6afc3c88f2775cf4133",
      "parents": [
        "8488df894d05d6fa41c2bd298c335f944bb0e401"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Mar 02 12:49:23 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Mar 02 20:37:34 2007 -0800"
      },
      "message": "[AF_UNIX]: Test against sk_max_ack_backlog properly.\n\nThis brings things inline with the sk_acceptq_is_full() bug\nfix.  The limit test should be x \u003e\u003d sk_max_ack_backlog.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0b4d414714f0d2f922d39424b0c5c82ad900a381",
      "tree": "5079ec59a5622c9cacfe0fce484ba2c4626c406f",
      "parents": [
        "ae836810263509ff7a3c2c021754ce6f66b3fab6"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 14 00:34:09 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:59 2007 -0800"
      },
      "message": "[PATCH] sysctl: remove insert_at_head from register_sysctl\n\nThe semantic effect of insert_at_head is that it would allow new registered\nsysctl entries to override existing sysctl entries of the same name.  Which is\npain for caching and the proc interface never implemented.\n\nI have done an audit and discovered that none of the current users of\nregister_sysctl care as (excpet for directories) they do not register\nduplicate sysctl entries.\n\nSo this patch simply removes the support for overriding existing entries in\nthe sys_sysctl interface since no one uses it or cares and it makes future\nenhancments harder.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Corey Minyard \u003cminyard@acm.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd354f1ae75e6466a7e31b727faede57a1f89ca5",
      "tree": "09a2da1672465fefbc7fe06ff4e6084f1dd14c6b",
      "parents": [
        "3fc605a2aa38899c12180ca311f1eeb61a6d867e"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Wed Feb 14 00:33:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] remove many unneeded #includes of sched.h\n\nAfter Al Viro (finally) succeeded in removing the sched.h #include in module.h\nrecently, it makes sense again to remove other superfluous sched.h includes.\nThere are quite a lot of files which include it but don\u0027t actually need\nanything defined in there.  Presumably these includes were once needed for\nmacros that used to live in sched.h, but moved to other header files in the\ncourse of cleaning it up.\n\nTo ease the pain, this time I did not fiddle with any header files and only\nremoved #includes from .c-files, which tend to cause less trouble.\n\nCompile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,\narm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,\nallmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all\nconfigs in arch/arm/configs on arm.  I also checked that no new warnings were\nintroduced by the patch (actually, some warnings are removed that were emitted\nby unnecessarily included header files).\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.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": "da7071d7e32d15149cc513f096a3638097b66387",
      "tree": "f56fb200090ad55b2e2a72c379b1eeea29795670",
      "parents": [
        "9a32144e9d7b4e21341174b1a83b82a82353be86"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:36 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:46 2007 -0800"
      },
      "message": "[PATCH] mark struct file_operations const 8\n\nMany struct file_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: 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": "ac7bfa62f3ad06a2a2ac3938b7e6fc4f318a762d",
      "tree": "fbac1719544df7f547be17e042478c03605c2a90",
      "parents": [
        "c43072852649d8382b81237ce51195bcec36f24a"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:25:23 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:18 2007 -0800"
      },
      "message": "[NET] UNIX: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "592ccbf9fba665031765d9bb0f6c1ede1fa62f96",
      "tree": "67d7a0f87d7a78b1cf82336bca8bc9d921d3e741",
      "parents": [
        "763454d6108ad1c6d4e1013321aef8bf5efb3a4f"
      ],
      "author": {
        "name": "Josef Sipek",
        "email": "jsipek@fsl.cs.sunysb.edu",
        "time": "Fri Dec 08 02:37:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:50 2006 -0800"
      },
      "message": "[PATCH] struct path: convert unix\n\nSigned-off-by: Josef Sipek \u003cjsipek@fsl.cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "44bb93633f57a55979f3c2589b10fd6a2bfc7c08",
      "tree": "09dff6f9e3c9d21c8d06f3a1ec73609a1942c9da",
      "parents": [
        "868c86bcb5bdea7ed8d45979b17bb919af9254db"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:36:14 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:32 2006 -0800"
      },
      "message": "[NET]: Annotate csum_partial() callers in net/*\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18adaf067cf013fc2690d3830eba99ff800795b4",
      "tree": "7762a71eca108238e8f49cf9a7dc3eb7589331a6",
      "parents": [
        "7a42c2175703f54a3640f25dc078c8190a4f904e"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Thu Aug 31 15:03:36 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 15:18:42 2006 -0700"
      },
      "message": "[AF_UNIX]: Change max_dgram_qlen sysctl to __read_mostly\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef047f5e1085d6393748d1ee27d6327905f098dc",
      "tree": "b1ac74cd97e5e39afedbecbffd8feaf59458d3d8",
      "parents": [
        "366e4adc0f9ef33f56c62f980a7d83775e64abd0"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Sep 01 00:29:06 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 15:18:15 2006 -0700"
      },
      "message": "[NET]: Use BUILD_BUG_ON() for checking size of skb-\u003ecb.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dc49c1f94e3469d94b952e8f5160dd4ccd791d79",
      "tree": "e47b1974c262a03dbabf0a148325d9089817e78e",
      "parents": [
        "2b7e24b66d31d677d76b49918e711eb360c978b6"
      ],
      "author": {
        "name": "Catherine Zhang",
        "email": "cxzhang@watson.ibm.com",
        "time": "Wed Aug 02 14:12:06 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 02 14:12:06 2006 -0700"
      },
      "message": "[AF_UNIX]: Kernel memory leak fix for af_unix datagram getpeersec patch\n\nFrom: Catherine Zhang \u003ccxzhang@watson.ibm.com\u003e\n\nThis patch implements a cleaner fix for the memory leak problem of the\noriginal unix datagram getpeersec patch.  Instead of creating a\nsecurity context each time a unix datagram is sent, we only create the\nsecurity context when the receiver requests it.\n\nThis new design requires modification of the current\nunix_getsecpeer_dgram LSM hook and addition of two new hooks, namely,\nsecid_to_secctx and release_secctx.  The former retrieves the security\ncontext and the latter releases it.  A hook is required for releasing\nthe security context because it is up to the security module to decide\nhow that\u0027s done.  In the case of Selinux, it\u0027s a simple kfree\noperation.\n\nAcked-by:  Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0da974f4f303a6842516b764507e3c0a03f41e5a",
      "tree": "8872aec792f02040269c6769dd1009b20f71d186",
      "parents": [
        "a0ee7c70b22f78593957f99faa06acb4747b8bc0"
      ],
      "author": {
        "name": "Panagiotis Issaris",
        "email": "takis@issaris.org",
        "time": "Fri Jul 21 14:51:30 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 21 14:51:30 2006 -0700"
      },
      "message": "[NET]: Conversions from kmalloc+memset to k(z|c)alloc.\n\nSigned-off-by: Panagiotis Issaris \u003ctakis@issaris.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "882d02d6fb040a246b005305ffeb790bb5ce80ad",
      "tree": "454ca6b30e08d9057feae2c9f6e84b58caac7559",
      "parents": [
        "c1b4df5d2a5b1a9c037fe3b2e42804cf1267c750"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Jul 03 19:26:15 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 03 19:26:15 2006 -0700"
      },
      "message": "[AF_UNIX]: datagram getpeersec fix\n\nThe unix_get_peersec_dgram() stub should have been inlined so that it\ndisappears.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a09785a2414afb261d9f719d544742af4300df22",
      "tree": "a9fcbd82e9610cb77e7a2e1338ab901876dbcea8",
      "parents": [
        "da21f24dd73954c2ed0cd39a698e2c9916c05d71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:07 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate af_unix locking\n\nTeach special (recursive) locking code to the lock validator.  Also splits\naf_unix\u0027s sk_receive_queue.lock class from the other networking skb-queue\nlocks.  Has no effect on non-lockdep kernels.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "877ce7c1b3afd69a9b1caeb1b9964c992641f52a",
      "tree": "740c6c0d4a2858af53c09c4635cadf06833536c1",
      "parents": [
        "d6b4991ad5d1a9840e12db507be1a6593def01fe"
      ],
      "author": {
        "name": "Catherine Zhang",
        "email": "cxzhang@watson.ibm.com",
        "time": "Thu Jun 29 12:27:47 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:58:06 2006 -0700"
      },
      "message": "[AF_UNIX]: Datagram getpeersec\n\nThis patch implements an API whereby an application can determine the\nlabel of its peer\u0027s Unix datagram sockets via the auxiliary data mechanism of\nrecvmsg.\n\nPatch purpose:\n\nThis patch enables a security-aware application to retrieve the\nsecurity context of the peer of a Unix datagram socket.  The application\ncan then use this security context to determine the security context for\nprocessing on behalf of the peer who sent the packet.\n\nPatch design and implementation:\n\nThe design and implementation is very similar to the UDP case for INET\nsockets.  Basically we build upon the existing Unix domain socket API for\nretrieving user credentials.  Linux offers the API for obtaining user\ncredentials via ancillary messages (i.e., out of band/control messages\nthat are bundled together with a normal message).  To retrieve the security\ncontext, the application first indicates to the kernel such desire by\nsetting the SO_PASSSEC option via getsockopt.  Then the application\nretrieves the security context using the auxiliary data mechanism.\n\nAn example server application for Unix datagram socket should look like this:\n\ntoggle \u003d 1;\ntoggle_len \u003d sizeof(toggle);\n\nsetsockopt(sockfd, SOL_SOCKET, SO_PASSSEC, \u0026toggle, \u0026toggle_len);\nrecvmsg(sockfd, \u0026msg_hdr, 0);\nif (msg_hdr.msg_controllen \u003e sizeof(struct cmsghdr)) {\n    cmsg_hdr \u003d CMSG_FIRSTHDR(\u0026msg_hdr);\n    if (cmsg_hdr-\u003ecmsg_len \u003c\u003d CMSG_LEN(sizeof(scontext)) \u0026\u0026\n        cmsg_hdr-\u003ecmsg_level \u003d\u003d SOL_SOCKET \u0026\u0026\n        cmsg_hdr-\u003ecmsg_type \u003d\u003d SCM_SECURITY) {\n        memcpy(\u0026scontext, CMSG_DATA(cmsg_hdr), sizeof(scontext));\n    }\n}\n\nsock_setsockopt is enhanced with a new socket option SOCK_PASSSEC to allow\na server socket to receive security context of the peer.\n\nTesting:\n\nWe have tested the patch by setting up Unix datagram client and server\napplications.  We verified that the server can retrieve the security context\nusing the auxiliary data mechanism of recvmsg.\n\nSigned-off-by: Catherine Zhang \u003ccxzhang@watson.ibm.com\u003e\nAcked-by: Acked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f348d70a324e15afc701a494f32ec468abb7d1eb",
      "tree": "a4cb43429f7f08a6621c581bd99e4a03198e8c67",
      "parents": [
        "501f2499b897ca4be68b1acc7a4bc8cf66f5fd24"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Sat Mar 25 03:07:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:56 2006 -0800"
      },
      "message": "[PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications\n\nImplement the half-closed devices notifiation, by adding a new POLLRDHUP\n(and its alias EPOLLRDHUP) bit to the existing poll/select sets.  Since the\nexisting POLLHUP handling, that does not report correctly half-closed\ndevices, was feared to be changed, this implementation leaves the current\nPOLLHUP reporting unchanged and simply add a new bit that is set in the few\nplaces where it makes sense.  The same thing was discussed and conceptually\nagreed quite some time ago:\n\nhttp://lkml.org/lkml/2003/7/12/116\n\nSince this new event bit is added to the existing Linux poll infrastruture,\neven the existing poll/select system calls will be able to use it.  As far\nas the existing POLLHUP handling, the patch leaves it as is.  The\npollrdhup-2.6.16.rc5-0.10.diff defines the POLLRDHUP for all the existing\narchs and sets the bit in the six relevant files.  The other attached diff\nis the simple change required to sys/epoll.h to add the EPOLLRDHUP\ndefinition.\n\nThere is \"a stupid program\" to test POLLRDHUP delivery here:\n\n http://www.xmailserver.org/pollrdhup-test.c\n\nIt tests poll(2), but since the delivery is same epoll(2) will work equally.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "57b47a53ec4a67691ba32cff5768e8d78fa6c67f",
      "tree": "d735ae4734f7b386eefa508a0629715f45808d1d",
      "parents": [
        "6613f82dd293b23f582a649b287fadbf8d23e6cf"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 20 22:35:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:35:41 2006 -0800"
      },
      "message": "[NET]: sem2mutex part 2\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a3e2f711a00a1feb72ae12fdc749da10179d185",
      "tree": "76ced9d3270dea4b864da71fa1d4415d2e3c8b11",
      "parents": [
        "d4ccd08cdfa8d34f4d25b62041343c52fc79385f"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Mon Mar 20 22:33:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:33:17 2006 -0800"
      },
      "message": "[NET] sem2mutex: net/\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e9df7d7f584666533b1bdfcf5c60a43d64689198",
      "tree": "78faaa085edfb24784e40779864d41fd9ddeb168",
      "parents": [
        "231d06ae826664b83369166449144304859a62fa"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "benjamin.c.lahaise@intel.com",
        "time": "Mon Mar 20 21:29:05 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 21:29:05 2006 -0800"
      },
      "message": "[AF_UNIX]: use shift instead of integer division\n\nThe patch below replaces a divide by 2 with a shift -- sk_sndbuf is an\ninteger, so gcc emits an idiv, which takes 10x longer than a shift by 1.\nThis improves af_unix bandwidth by ~6-10K/s.  Also, tidy up the comment\nto fit in 80 columns while we\u0027re at it.\n\nSigned-off-by: Benjamin LaHaise \u003cbenjamin.c.lahaise@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "529bf6be5c04f2e869d07bfdb122e9fd98ade714",
      "tree": "38514bb3941c4ac2a79266e4483663b79efa2f22",
      "parents": [
        "21a1ea9eb40411d4ee29448c53b9e4c0654d6ceb"
      ],
      "author": {
        "name": "Dipankar Sarma",
        "email": "dipankar@in.ibm.com",
        "time": "Tue Mar 07 21:55:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 08 14:14:01 2006 -0800"
      },
      "message": "[PATCH] fix file counting\n\nI have benchmarked this on an x86_64 NUMA system and see no significant\nperformance difference on kernbench.  Tested on both x86_64 and powerpc.\n\nThe way we do file struct accounting is not very suitable for batched\nfreeing.  For scalability reasons, file accounting was\nconstructor/destructor based.  This meant that nr_files was decremented\nonly when the object was removed from the slab cache.  This is susceptible\nto slab fragmentation.  With RCU based file structure, consequent batched\nfreeing and a test program like Serge\u0027s, we just speed this up and end up\nwith a very fragmented slab -\n\nllm22:~ # cat /proc/sys/fs/file-nr\n587730  0       758844\n\nAt the same time, I see only a 2000+ objects in filp cache.  The following\npatch I fixes this problem.\n\nThis patch changes the file counting by removing the filp_count_lock.\nInstead we use a separate percpu counter, nr_files, for now and all\naccesses to it are through get_nr_files() api.  In the sysctl handler for\nnr_files, we populate files_stat.nr_files before returning to user.\n\nCounting files as an when they are created and destroyed (as opposed to\ninside slab) allows us to correctly count open files with RCU.\n\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1b1dcc1b57a49136f118a0f16367256ff9994a69",
      "tree": "b0b36d4f41d28c9d6514fb309d33c1a084d6309b",
      "parents": [
        "794ee1baee1c26be40410233e6c20bceb2b03c08"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@hera.kernel.org",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "message": "[PATCH] mutex subsystem, semaphore to mutex: VFS, -\u003ei_sem\n\nThis patch converts the inode semaphore to a mutex. I have tested it on\nXFS and compiled as much as one can consider on an ia64. Anyway your\nluck with it might be different.\n\nModified-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n(finished the conversion)\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5e5fa5e093e42cab4ee3d6dcbc4f450ad29a723",
      "tree": "7a87804b0953f22de43054ccc7ae67ebc5b66b20",
      "parents": [
        "5ff7630e4aa6c3969094dc30ff1cdaa6f52b0ed0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Jan 03 14:18:33 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 03 14:18:33 2006 -0800"
      },
      "message": "[NET]: Add a dev_ioctl() fallback to sock_ioctl()\n\nCurrently all network protocols need to call dev_ioctl as the default\nfallback in their ioctl implementations.  This patch adds a fallback\nto dev_ioctl to sock_ioctl if the protocol returned -ENOIOCTLCMD.\nThis way all the procotol ioctl handlers can be simplified and we don\u0027t\nneed to export dev_ioctl.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd19f329a32bdc4eb07885e0b3889567cfe00aa7",
      "tree": "c69943e8294cae13df6af3dc8b8c25abab8c9cfb",
      "parents": [
        "4947d3ef8de7b4f42aed6ea9ba689dc8fb45b5a5"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Tue Jan 03 14:10:46 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 03 14:10:46 2006 -0800"
      },
      "message": "[AF_UNIX]: Convert to use a spinlock instead of rwlock\n\nFrom: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\n\nIn af_unix, a rwlock is used to protect internal state.  At least on my \nP4 with HT it is faster to use a spinlock due to the simpler memory \nbarrier used to unlock.  This patch raises bw_unix to ~690K/s.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90ddc4f0470427df306f308ad03db6b6b21644b8",
      "tree": "f97c1d57b25585394ebbd4b42b8d42a339f98644",
      "parents": [
        "77d76ea310b50a9c8ff15bd290fcb4ed4961adf2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Dec 22 12:49:22 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:15 2006 -0800"
      },
      "message": "[NET]: move struct proto_ops to const\n\nI noticed that some of \u0027struct proto_ops\u0027 used in the kernel may share\na cache line used by locks or other heavily modified data. (default\nlinker alignement is 32 bytes, and L1_CACHE_LINE is 64 or 128 at\nleast)\n\nThis patch makes sure a \u0027struct proto_ops\u0027 can be declared as const,\nso that all cpus can share all parts of it without false sharing.\n\nThis is not mandatory : a driver can still use a read/write structure\nif it needs to (and eventually a __read_mostly)\n\nI made a global stubstitute to change all existing occurences to make\nthem const.\n\nThis should reduce the possibility of false sharing on SMP, and\nspeedup some socket system calls.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fbe9cc4a87030d5cad5f944ffaef6af7efd119e4",
      "tree": "f4e9ce6608e1b8b7e160e44e68853a2b6e5e84d5",
      "parents": [
        "d83d8461f902c672bc1bd8fbc6a94e19f092da97"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 13 23:26:29 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:10:59 2006 -0800"
      },
      "message": "[AF_UNIX]: Use spinlock for unix_table_lock\n\nThis lock is actually taken mostly as a writer,\nso using a rwlock actually just makes performance\nworse especially on chips like the Intel P4.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "830a1e5c212fb3fdc83b66359c780c3b3a294897",
      "tree": "232215af3774d78aa179adb1612bfa5257af181d",
      "parents": [
        "c1cbe4b7ad0bc4b1d98ea708a3fecb7362aa4088"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "benjamin.c.lahaise@intel.com",
        "time": "Tue Dec 13 23:22:32 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:10:45 2006 -0800"
      },
      "message": "[AF_UNIX]: Remove superfluous reference counting in unix_stream_sendmsg\n\nAF_UNIX stream socket performance on P4 CPUs tends to suffer due to a\nlot of pipeline flushes from atomic operations.  The patch below\nremoves the sock_hold() and sock_put() in unix_stream_sendmsg().  This\nshould be safe as the socket still holds a reference to its peer which\nis only released after the file descriptor\u0027s final user invokes\nunix_release_sock().  The only consideration is that we must add a\nmemory barrier before setting the peer initially.\n\nSigned-off-by: Benjamin LaHaise \u003cbenjamin.c.lahaise@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e4543eddfd3bf3e0d625841377fa695a519edfd4",
      "tree": "b62546cb0038529bd8cd583333c556ad799f2081",
      "parents": [
        "e4a53cbabc81f04e24a5570b4aa6a6384bdbfc67"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Nov 08 21:35:04 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:58 2005 -0800"
      },
      "message": "[PATCH] add a vfs_permission helper\n\nMost permission() calls have a struct nameidata * available.  This helper\ntakes that as an argument and thus makes sure we pass it down for lookup\nintents and prepares for per-mount read-only support where we need a struct\nvfsmount for checking whether a file is writeable.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "20380731bc2897f2952ae055420972ded4cd786e",
      "tree": "abd31e5ebfadcf4f9024634eec8b11855029e512",
      "parents": [
        "9deff7f2365958c5c5aa8cb5a0dd651c4dd83f8f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 16 02:18:02 2005 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:01:32 2005 -0700"
      },
      "message": "[NET]: Fix sparse warnings\n\nOf this type, mostly:\n\nCHECK   net/ipv6/netfilter.c\nnet/ipv6/netfilter.c:96:12: warning: symbol \u0027ipv6_netfilter_init\u0027 was not declared. Should it be static?\nnet/ipv6/netfilter.c:101:6: warning: symbol \u0027ipv6_netfilter_fini\u0027 was not declared. Should it be static?\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "c752f0739f09b803aed191c4765a3b6650a08653"
}
