)]}'
{
  "log": [
    {
      "commit": "f57fa1d6a6b3414e853d3d17e339ac48816e4406",
      "tree": "e1d3acdb12f902e916765915a4f9a65cbae909cc",
      "parents": [
        "6094c85a935f7eadb4c607c6dc6d86c0a9f09a4b",
        "08cc36cbd1ee7d86422713bb21551eed1326b894"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 17:45:45 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 17:45:45 2008 -0800"
      },
      "message": "Merge git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (70 commits)\n  fs/nfs/nfs4proc.c: make nfs4_map_errors() static\n  rpc: add service field to new upcall\n  rpc: add target field to new upcall\n  nfsd: support callbacks with gss flavors\n  rpc: allow gss callbacks to client\n  rpc: pass target name down to rpc level on callbacks\n  nfsd: pass client principal name in rsc downcall\n  rpc: implement new upcall\n  rpc: store pointer to pipe inode in gss upcall message\n  rpc: use count of pipe openers to wait for first open\n  rpc: track number of users of the gss upcall pipe\n  rpc: call release_pipe only on last close\n  rpc: add an rpc_pipe_open method\n  rpc: minor gss_alloc_msg cleanup\n  rpc: factor out warning code from gss_pipe_destroy_msg\n  rpc: remove unnecessary assignment\n  NFS: remove unused status from encode routines\n  NFS: increment number of operations in each encode routine\n  NFS: fix comment placement in nfs4xdr.c\n  NFS: fix tabs in nfs4xdr.c\n  ...\n"
    },
    {
      "commit": "08cc36cbd1ee7d86422713bb21551eed1326b894",
      "tree": "52cc683387f903b34a7f6f798dcdbae385b58db8",
      "parents": [
        "3c92ec8ae91ecf59d88c798301833d7cf83f2179",
        "46f72f57d279688c4524df78edb5738db730eeef"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 30 16:51:43 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 30 16:51:43 2008 -0500"
      },
      "message": "Merge branch \u0027devel\u0027 into next\n"
    },
    {
      "commit": "eb4dea5853046727bfbb579f0c9a8cae7369f7c6",
      "tree": "79e18d6284494ab63a890885b0eecce9431a9597",
      "parents": [
        "0f23174aa8c1aa7a2a6050a72a60d290ef9ee578"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 29 23:04:08 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 23:04:08 2008 -0800"
      },
      "message": "net: Fix percpu counters deadlock\n\nWhen we converted the protocol atomic counters such as the orphan\ncount and the total socket count deadlocks were introduced due to\nthe mismatch in BH status of the spots that used the percpu counter\noperations.\n\nBased on the diagnosis and patch by Peter Zijlstra, this patch\nfixes these issues by disabling BH where we may be in process\ncontext.\n\nReported-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nTested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f23174aa8c1aa7a2a6050a72a60d290ef9ee578",
      "tree": "530ed36b528ff6f08034788cef32e0e0756d3bcc",
      "parents": [
        "f201a8a4511a4c9953189924df3c880207194b41"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Dec 29 12:23:42 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 22:44:47 2008 -0800"
      },
      "message": "cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits: net\n\nIn future all cpumask ops will only be valid (in general) for bit\nnumbers \u003c nr_cpu_ids.  So use that instead of NR_CPUS in iterators\nand other comparisons.\n\nThis is always safe: no cpu number can be \u003e\u003d nr_cpu_ids, and\nnr_cpu_ids is initialized to NR_CPUS at boot.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68ce9c0e3411b430b9800015e318af9f96933aa0",
      "tree": "784b1d4f4e25990b5eb13a4ce11105daf8657841",
      "parents": [
        "8e8ba85417366afd2361e315c6ba5949d3eff56f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sun Dec 28 17:57:25 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 19:40:46 2008 -0800"
      },
      "message": "cls_cgroup: clean up Kconfig\n\ncls_cgroup can\u0027t be compiled as a module, since it\u0027s not supported by\ncgroup.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e8ba85417366afd2361e315c6ba5949d3eff56f",
      "tree": "f093eb8aedd4ca4a888ae9f867cb1b1277a12073",
      "parents": [
        "2f068bf8711c35b98bf9a0172555b8390a762fc0"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Dec 29 19:39:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 19:40:45 2008 -0800"
      },
      "message": "cls_cgroup: clean up for cgroup part\n\n- It\u0027s better to use container_of() instead of casting cgroup_subsys_state *\n  to cgroup_cls_state *.\n- Add helper function task_cls_state().\n- Rename net_cls_state() to cgrp_cls_state().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2f068bf8711c35b98bf9a0172555b8390a762fc0",
      "tree": "270fc6c0a3df7ccbf9a77b4060dd3bc115c1b0b5",
      "parents": [
        "684f4a4c4a69f7226d8c7559c0cdfc7bd388335a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sun Dec 28 17:57:19 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 19:40:44 2008 -0800"
      },
      "message": "cls_cgroup: fix an oops when removing a cgroup\n\nWhen removing a cgroup, an oops was triggered immediately. The cause\nis wrong kfree() in cgrp_destroy().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68888d105365366c5e1e0424cc939c1fc757f9c4",
      "tree": "c57165c3793b67d5ce73dc3b9e5f46490dd6b06c",
      "parents": [
        "c8e95c021caa9574350cea6f2b4f91e232e3f3ee"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Mon Dec 29 18:37:36 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 18:37:36 2008 -0800"
      },
      "message": "IPVS: Make \"no destination available\" message more consistent between schedulers\n\nAcked-by: Graeme Fowler \u003cgraeme@graemef.net\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8eb79863962bbf18ebf648335e329bfd468432fa",
      "tree": "bd700ccdbed8aee9c36d9a20d139fe577cda766a",
      "parents": [
        "91b208c7c1db4cefa2247f8243fbda75b0472d24"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Mon Dec 29 18:21:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 18:21:48 2008 -0800"
      },
      "message": "netns: foreach_netdev_safe is insufficient in default_device_exit\n\nDuring network namespace teardown we either move or delete\nall of the network devices associated with a network namespace.\nIn the case of veth devices deleting one will also delete it\u0027s\npair device.  If both devices are in the same network namespace\nthen for_each_netdev_safe is insufficient as next may point\nto the second veth device we have deleted.\n\nTo avoid problems I do what we do in __rtnl_kill_links and\nrestart the scan of the device list, after we have deleted\na device.\n\nCurrently dev_change_netnamespace does not appear to suffer from\nthis problem, but wireless devices are also paired and likely\nshould be moved between network namespaces together.  So I have\nerrored on the side of caution and restart the scan of the network\ndevices in that case as well.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91b208c7c1db4cefa2247f8243fbda75b0472d24",
      "tree": "8acdb0d44f2223f36ee20f7975487fd1cdcaa582",
      "parents": [
        "2d0658d4ef92e4958172c832bd88c961840e599e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Dec 29 18:20:06 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 18:20:06 2008 -0800"
      },
      "message": "net: make xfrm_statistics_seq_show use generic snmp_fold_field\n\nNo reason to roll our own here.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\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": "1db2a5c11e495366bff35cf7445d494703f7febe",
      "tree": "3347dd1cab0a2a96a4333524298a62132eb22336",
      "parents": [
        "a39b863342b8aba52390092be95db58f6ed56061",
        "cef7125def4dd104769f400c941199614da0aca1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:33:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:33:21 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6: (85 commits)\n  [S390] provide documentation for hvc_iucv kernel parameter.\n  [S390] convert ctcm printks to dev_xxx and pr_xxx macros.\n  [S390] convert zfcp printks to pr_xxx macros.\n  [S390] convert vmlogrdr printks to pr_xxx macros.\n  [S390] convert zfcp dumper printks to pr_xxx macros.\n  [S390] convert cpu related printks to pr_xxx macros.\n  [S390] convert qeth printks to dev_xxx and pr_xxx macros.\n  [S390] convert sclp printks to pr_xxx macros.\n  [S390] convert iucv printks to dev_xxx and pr_xxx macros.\n  [S390] convert ap_bus printks to pr_xxx macros.\n  [S390] convert dcssblk and extmem printks messages to pr_xxx macros.\n  [S390] convert monwriter printks to pr_xxx macros.\n  [S390] convert s390 debug feature printks to pr_xxx macros.\n  [S390] convert monreader printks to pr_xxx macros.\n  [S390] convert appldata printks to pr_xxx macros.\n  [S390] convert setup printks to pr_xxx macros.\n  [S390] convert hypfs printks to pr_xxx macros.\n  [S390] convert time printks to pr_xxx macros.\n  [S390] convert cpacf printks to pr_xxx macros.\n  [S390] convert cio printks to pr_xxx macros.\n  ...\n"
    },
    {
      "commit": "0da2afd59653d2edf5c8e0f09b23f367ab5bc80f",
      "tree": "d6dad9cf3ca8a352409b5ce5e8e2445434aa00f5",
      "parents": [
        "843813453f52e3378fc988c8364063fd4cb9d0e3"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Dec 26 14:57:42 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 26 14:57:42 2008 -0800"
      },
      "message": "gro: Fix potential use after free\n\nThe initial skb may have been freed after napi_gro_complete in\nnapi_gro_receive if it was merged into an existing packet.  Thus\nwe cannot check same_flow (which indicates whether it was merged)\nafter calling napi_gro_complete.\n\nThis patch fixes this by saving the same_flow status before the\ncall to napi_gro_complete.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7b06636be162d3f74c9ce5d6d0d9ea4e5d362c8",
      "tree": "95d9b7b0825f145ba080cb9671bed3b3b189fd16",
      "parents": [
        "26bc19ecf6c077c926827c25631340fd2e8fb16e"
      ],
      "author": {
        "name": "Peter P Waskiewicz Jr",
        "email": "peter.p.waskiewicz.jr@intel.com",
        "time": "Fri Dec 26 01:35:35 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 26 01:35:35 2008 -0800"
      },
      "message": "net: Init NAPI dev_list on napi_del\n\nThe recent GRO patches introduced the NAPI removal of devices in\nfree_netdev.  For drivers that can change the number of queues during\ndriver operation, the NAPI infrastructure doesn\u0027t allow the freeing and\nre-addition of NAPI entities without reloading the driver.\n\nThis change reinitializes the dev_list in each NAPI struct on delete,\ninstead of just deleting it (and assigning the list pointers to POISON).\nDrivers that wish to remove/re-add NAPI will need to re-initialize the\nnetdev napi_list after removing all NAPI instances, before re-adding NAPI\ndevices again.\n\nSigned-off-by: Peter P Waskiewicz Jr \u003cpeter.p.waskiewicz.jr@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2712fd0b4097e8385bdb75c0ebd285a057fe299",
      "tree": "f2e1a1b4d5e7f9e9103c714893b0fd792e20c54b",
      "parents": [
        "fdb614c28487df41f7bf2c98e85f29f31885561e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Dec 26 01:31:18 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 26 01:31:18 2008 -0800"
      },
      "message": "ipsec: Remove useless ret variable\n\nThis patch removes a useless ret variable from the IPv4 ESP/UDP\ndecapsulation code.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88a44e51e9a5202f8856f72400fc87a39205186d",
      "tree": "05a7d480cf525d6d3a59d10c069544b2bd12e7fd",
      "parents": [
        "c14ea0ca659d378dd377e417162ebd908d1da4ce"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu Dec 25 18:04:51 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 18:04:51 2008 -0800"
      },
      "message": "net/appletalk: Remove redundant test\n\natif is tested for being NULL twice, with the same effect in each case.  I\nhave kept the second test, as it seems to fit well with the comment above it.\n\nA simplified version of the semantic patch that makes this change is as\nfollows: (http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@r exists@\nlocal idexpression x;\nexpression E;\nposition p1,p2;\n@@\n\nif (x@p1 \u003d\u003d NULL || ...) { ... when forall\n   return ...; }\n... when !\u003d \\(x\u003dE\\|x--\\|x++\\|--x\\|++x\\|x-\u003dE\\|x+\u003dE\\|x|\u003dE\\|x\u0026\u003dE\\|\u0026x\\)\n(\nx@p2 \u003d\u003d NULL\n|\nx@p2 !\u003d NULL\n)\n\n// another path to the test that is not through p1?\n@s exists@\nlocal idexpression r.x;\nposition r.p1,r.p2;\n@@\n\n... when !\u003d x@p1\n(\nx@p2 \u003d\u003d NULL\n|\nx@p2 !\u003d NULL\n)\n\n@fix depends on !s@\nposition r.p1,r.p2;\nexpression x,E;\nstatement S1,S2;\n@@\n\n(\n- if ((x@p2 !\u003d NULL) || ...)\n  S1\n|\n- if ((x@p2 \u003d\u003d NULL) \u0026\u0026 ...) S1\n|\n- BUG_ON(x@p2 \u003d\u003d NULL);\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64ff3b938ec6782e6585a83d5459b98b0c3f6eb8",
      "tree": "aa53a121fd7edb8ba5b3fede8ff1990b44265d56",
      "parents": [
        "8510b937ae1e23583abdeb828cad5c518295c61d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Dec 25 17:12:58 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 17:12:58 2008 -0800"
      },
      "message": "tcp: Always set urgent pointer if it\u0027s beyond snd_nxt\n\nOur TCP stack does not set the urgent flag if the urgent pointer\ndoes not fit in 16 bits, i.e., if it is more than 64K from the\nsequence number of a packet.\n\nThis behaviour is different from the BSDs, and clearly contradicts\nthe purpose of urgent mode, which is to send the notification\n(though not necessarily the associated data) as soon as possible.\nOur current behaviour may in fact delay the urgent notification\nindefinitely if the receiver window does not open up.\n\nSimply matching BSD however may break legacy applications which\nincorrectly rely on the out-of-band delivery of urgent data, and\nconversely the in-band delivery of non-urgent data.\n\nAlexey Kuznetsov suggested a safe solution of following BSD only\nif the urgent pointer itself has not yet been transmitted.  This\nway we guarantee that when the remote end sees the packet with\nnon-urgent data marked as urgent due to wrap-around we would have\nadvanced the urgent pointer beyond, either to the actual urgent\ndata or to an as-yet untransmitted packet.\n\nThe only potential downside is that applications on the remote\nend may see multiple SIGURG notifications.  However, this would\noccur anyway with other TCP stacks.  More importantly, the outcome\nof such a duplicate notification is likely to be harmless since\nthe signal itself does not carry any information other than the\nfact that we\u0027re in urgent mode.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8510b937ae1e23583abdeb828cad5c518295c61d",
      "tree": "5ef0449bc7673c99a2134d8bba8e4f1dd4c79549",
      "parents": [
        "9fcb95a105758b81ef0131cd18e2db5149f13e95"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:59:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:59:03 2008 -0800"
      },
      "message": "sctp: Add validity check for SCTP_PARTIAL_DELIVERY_POINT socket option\n\nThe latest ietf socket extensions API draft said:\n\n  8.1.21.  Set or Get the SCTP Partial Delivery Point\n\n    Note also that the call will fail if the user attempts to set\n    this value larger than the socket receive buffer size.\n\nThis patch add this validity check for SCTP_PARTIAL_DELIVERY_POINT\nsocket option.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9fcb95a105758b81ef0131cd18e2db5149f13e95",
      "tree": "fc38a5c1a91a5137bc385b8bdc7cb30539776222",
      "parents": [
        "aea3c5c05d2c409e93bfa80dcedc06af7da6c13b"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:58:11 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:58:11 2008 -0800"
      },
      "message": "sctp: Avoid memory overflow while FWD-TSN chunk is received with bad stream ID\n\nIf FWD-TSN chunk is received with bad stream ID, the sctp will not do the\nvalidity check, this may cause memory overflow when overwrite the TSN of\nthe stream ID.\n\nThe FORWARD-TSN chunk is like this:\n\nFORWARD-TSN chunk\n  Type                       \u003d 192\n  Flags                      \u003d 0\n  Length                     \u003d 172\n  NewTSN                     \u003d 99\n  Stream                     \u003d 10000\n  StreamSequence             \u003d 0xFFFF\n\nThis patch fix this problem by discard the chunk if stream ID is not\nless than MIS.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aea3c5c05d2c409e93bfa80dcedc06af7da6c13b",
      "tree": "2ee271efa68ef7677c94b1c9daaa33b9ad6a2531",
      "parents": [
        "ea686a2653c5586b1c7192958b9d521abde66e92"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:57:24 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:57:24 2008 -0800"
      },
      "message": "sctp: Implement socket option SCTP_GET_ASSOC_NUMBER\n\nImplement socket option SCTP_GET_ASSOC_NUMBER of the latest ietf socket\nextensions API draft.\n\n  8.2.5.  Get the Current Number of Associations (SCTP_GET_ASSOC_NUMBER)\n\n   This option gets the current number of associations that are attached\n   to a one-to-many style socket.  The option value is an uint32_t.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea686a2653c5586b1c7192958b9d521abde66e92",
      "tree": "f82a38e2dba44629110f111cd4adf49d3df86d9b",
      "parents": [
        "e89c2095815d82eaa9fb85eff42f8b65b67a59cf"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:56:45 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:56:45 2008 -0800"
      },
      "message": "sctp: Fix a typo in socket.c\n\nJust fix a typo in socket.c.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e89c2095815d82eaa9fb85eff42f8b65b67a59cf",
      "tree": "a6ee89692051c0fa1328b8b79c3b9d7b44dbeab5",
      "parents": [
        "161c8d2f50109b44b664eaf23831ea1587979a61"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:54:58 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:54:58 2008 -0800"
      },
      "message": "sctp: Bring SCTP_MAXSEG socket option into ietf API extension compliance\n\nBrings maxseg socket option set/get into line with the latest ietf socket\nextensions API draft, while maintaining backwards compatibility.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7d1b9f5aafa371d7f51f644aa3c38bc914e9205",
      "tree": "7120c076df7226818a416822fe972de2efc74b12",
      "parents": [
        "d45227391c70ea12ec129ebfa97841e9b7ff34fd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Dec 25 16:45:19 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:45:19 2008 -0800"
      },
      "message": "vlan: fix convertion to net_device_ops\n\ncommit 656299f706e52e0409733d704c2761f1b12d6954\n(vlan: convert to net_device_ops) added a net_device_ops\nwith a NULL ndo_start_xmit field.\n\nThis gives a crash in dev_hard_start_xmit()\n\nFix it using two net_device_ops structures, one for hwaccel vlan,\none for non hwaccel vlan.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7091e728c570157496e52296d2dbe816a6916836",
      "tree": "9b393f1939f2632495ae083392b2172da2ed5000",
      "parents": [
        "b4ee07df3d8121060200dbe1c6686a4e0682bee2"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Dec 25 16:42:51 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:42:51 2008 -0800"
      },
      "message": "netns: igmp: make /proc/net/{igmp,mcfilter} per netns\n\nThis patch makes the followinf proc entries per-netns:\n/proc/net/igmp\n/proc/net/mcfilter\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b4ee07df3d8121060200dbe1c6686a4e0682bee2",
      "tree": "f318811dae2fcf9e920f097be0a40487aca12173",
      "parents": [
        "cb5b04fe14394a93eb9a3523f5af9f77480a5a04"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Dec 25 16:42:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:42:23 2008 -0800"
      },
      "message": "netns: igmp: allow IPPROTO_IGMP sockets in netns\n\nLooks like everything is already ready.\n\nRequired for ebtables(8) for one thing.\n\nAlso, required for ipmr per-netns (coming soon). (Benjamin)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f7c502c267c0e5e2dbbbdea9f3e7e85bbc95694",
      "tree": "1c45bf4e00183b5e175381fa1ba8f947037da968",
      "parents": [
        "136f7a1c4239be91e3e0f53532944b9aab7b58f8"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "braunu@de.ibm.com",
        "time": "Thu Dec 25 13:39:47 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:24 2008 +0100"
      },
      "message": "[S390] convert iucv printks to dev_xxx and pr_xxx macros.\n\nSigned-off-by: Ursula Braun \u003cbraunu@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "91d5d45ee0a8978870fd12e5c3fe394a530ec2ed",
      "tree": "2849fa4ce5110341627f76ac1fe36289fff27154",
      "parents": [
        "44a01d5ba8a4d543694461cd3e178cfa6b3f221b"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:58 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:04 2008 +0100"
      },
      "message": "[S390] iucv: Locking free version of iucv_message_(receive|send)\n\nProvide a locking free version of iucv_message_receive and iucv_message_send\nthat do not call local_bh_enable in a spin_lock_(bh|irqsave)() context.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "cbacc2c7f066a1e01b33b0e27ae5efbf534bc2db",
      "tree": "90d1093131d2a3543a8b3b1f3364e7c6f4081a93",
      "parents": [
        "4a6908a3a050aacc9c3a2f36b276b46c0629ad91",
        "74192246910ff4fb95309ba1a683215644beeb62"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 25 11:40:09 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 25 11:40:09 2008 +1100"
      },
      "message": "Merge branch \u0027next\u0027 into for-linus\n"
    },
    {
      "commit": "6332178d91ca1a9dbd99bd97cabbcf965d178e9f",
      "tree": "d98af2cbc7ff0e9e4d00b6cc8c79b05ca7815a5f",
      "parents": [
        "908a7a16b852ffd618a9127be8d62432182d81b4",
        "739840d529eb7505d3cbfe9d468bf1440c9a8e27"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 23 17:56:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 23 17:56:23 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/ppp_generic.c\n"
    },
    {
      "commit": "2efef7080f471d312a9c4feb3dc5ee038039c7ed",
      "tree": "cad946aa12f1780818d396c732d17ad9db642607",
      "parents": [
        "8b1c7bf5b624c9bc91b41ae577b9fc5c21641705"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:19:56 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:19:56 2008 -0500"
      },
      "message": "rpc: add service field to new upcall\n\nThis patch extends the new upcall with a \"service\" field that currently\ncan have 2 values: \"*\" or \"nfs\". These values specify matching rules for\nprincipals in the keytab file. The \"*\" means that gssd is allowed to use\n\"root\", \"nfs\", or \"host\" keytab entries while the other option requires\n\"nfs\".\n\nRestricting gssd to use the \"nfs\" principal is needed for when the\nserver performs a callback to the client.  The server in this case has\nto authenticate itself as an \"nfs\" principal.\n\nWe also need \"service\" field to distiguish between two client-side cases\nboth currently using a uid of 0: the case of regular file access by the\nroot user, and the case of state-management calls (such as setclientid)\nwhich should use a keytab for authentication.  (And the upcall should\nfail if an appropriate principal can\u0027t be found.)\n\nSigned-off: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8b1c7bf5b624c9bc91b41ae577b9fc5c21641705",
      "tree": "30189b6146999ba27581a84dfefa9a4ab0e09d69",
      "parents": [
        "61054b14d545e257b9415d5ca0cd5f43762b4d0c"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:19:26 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:19:26 2008 -0500"
      },
      "message": "rpc: add target field to new upcall\n\nThis patch extends the new upcall by adding a \"target\" field\ncommunicating who we want to authenticate to (equivalently, the service\nprincipal that we want to acquire a ticket for).\n\nSigned-off: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "61054b14d545e257b9415d5ca0cd5f43762b4d0c",
      "tree": "7f648cf35a3b79aa1555f21050f11d415b93f381",
      "parents": [
        "945b34a7725a5f0741de7775132aafc58bfecfbb"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:19:00 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:19:00 2008 -0500"
      },
      "message": "nfsd: support callbacks with gss flavors\n\nThis patch adds server-side support for callbacks other than AUTH_SYS.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "945b34a7725a5f0741de7775132aafc58bfecfbb",
      "tree": "89f209caa8ee7154fe80de1bd02dd81eaadd3bd6",
      "parents": [
        "608207e8884e083ad8b8d33eda868da70f0d63e8"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:18:34 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:18:34 2008 -0500"
      },
      "message": "rpc: allow gss callbacks to client\n\nThis patch adds client-side support to allow for callbacks other than\nAUTH_SYS.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "608207e8884e083ad8b8d33eda868da70f0d63e8",
      "tree": "86073f5f2e4a550bb1efe395954abe3fa91a555e",
      "parents": [
        "68e76ad0baf8f5d5060377c2423ee6eed5c63057"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:17:40 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:17:40 2008 -0500"
      },
      "message": "rpc: pass target name down to rpc level on callbacks\n\nThe rpc client needs to know the principal that the setclientid was done\nas, so it can tell gssd who to authenticate to.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "68e76ad0baf8f5d5060377c2423ee6eed5c63057",
      "tree": "baab3e30cc3b50bc49a553ee884885189ce85a8e",
      "parents": [
        "34769fc488b463cb753fc632f8f5ba56c918b7cb"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:17:15 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:17:15 2008 -0500"
      },
      "message": "nfsd: pass client principal name in rsc downcall\n\nTwo principals are involved in krb5 authentication: the target, who we\nauthenticate *to* (normally the name of the server, like\nnfs/server.citi.umich.edu@CITI.UMICH.EDU), and the source, we we\nauthenticate *as* (normally a user, like bfields@UMICH.EDU)\n\nIn the case of NFSv4 callbacks, the target of the callback should be the\nsource of the client\u0027s setclientid call, and the source should be the\nnfs server\u0027s own principal.\n\nTherefore we allow svcgssd to pass down the name of the principal that\njust authenticated, so that on setclientid we can store that principal\nname with the new client, to be used later on callbacks.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "34769fc488b463cb753fc632f8f5ba56c918b7cb",
      "tree": "870cf1ac132567ad5683cf9882ab0810fb5acc2a",
      "parents": [
        "5b7ddd4a7b19f913901140ef7807dbf5e2b301cd"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:16:37 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:16:37 2008 -0500"
      },
      "message": "rpc: implement new upcall\n\nImplement the new upcall.  We decide which version of the upcall gssd\nwill use (new or old), by creating both pipes (the new one named \"gssd\",\nthe old one named after the mechanism (e.g., \"krb5\")), and then waiting\nto see which version gssd actually opens.\n\nWe don\u0027t permit pipes of the two different types to be opened at once.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5b7ddd4a7b19f913901140ef7807dbf5e2b301cd",
      "tree": "24ecff49a5dfeadb66a5805cc84abd580f52e994",
      "parents": [
        "79a3f20b641f9f93787ada49d1d7cfa98ee5a11e"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:15:44 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:15:44 2008 -0500"
      },
      "message": "rpc: store pointer to pipe inode in gss upcall message\n\nKeep a pointer to the inode that the message is queued on in the struct\ngss_upcall_msg.  This will be convenient, especially after we have a\nchoice of two pipes that an upcall could be queued on.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "79a3f20b641f9f93787ada49d1d7cfa98ee5a11e",
      "tree": "2f7d9f49b18388eb61400e383a9c5c4b070f1915",
      "parents": [
        "cf81939d6fcdf381fcb069d780c29eceb516bccd"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:10:52 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:10:52 2008 -0500"
      },
      "message": "rpc: use count of pipe openers to wait for first open\n\nIntroduce a global variable pipe_version which will eventually be used\nto keep track of which version of the upcall gssd is using.\n\nFor now, though, it only keeps track of whether any pipe is open or not;\nit is negative if not, zero if one is opened.  We use this to wait for\nthe first gssd to open a pipe.\n\n(Minor digression: note this waits only for the very first open of any\npipe, not for the first open of a pipe for a given auth; thus we still\nneed the RPC_PIPE_WAIT_FOR_OPEN behavior to wait for gssd to open new\npipes that pop up on subsequent mounts.)\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cf81939d6fcdf381fcb069d780c29eceb516bccd",
      "tree": "1f55847a9c540d0f5ab7f42c1bd84fdb7d0cb38a",
      "parents": [
        "e712804ae4bd858bd89272aa3fc1a577294c0940"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:10:19 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:10:19 2008 -0500"
      },
      "message": "rpc: track number of users of the gss upcall pipe\n\nKeep a count of the number of pipes open plus the number of messages on\na pipe.  This count isn\u0027t used yet.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e712804ae4bd858bd89272aa3fc1a577294c0940",
      "tree": "67ac6fc6d7e01b43e648c38fdbc46d4d875452ca",
      "parents": [
        "c381060869317b3c84430d4f54965d409cbfe65f"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:09:47 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:09:47 2008 -0500"
      },
      "message": "rpc: call release_pipe only on last close\n\nI can\u0027t see any reason we need to call this until either the kernel or\nthe last gssd closes the pipe.\n\nAlso, this allows to guarantee that open_pipe and release_pipe are\ncalled strictly in pairs; open_pipe on gssd\u0027s first open, release_pipe\non gssd\u0027s last close (or on the close of the kernel side of the pipe, if\nthat comes first).\n\nThat will make it very easy for the gss code to keep track of which\npipes gssd is using.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c381060869317b3c84430d4f54965d409cbfe65f",
      "tree": "eca752e4fe61fd6e497fede253f83a01a36a365a",
      "parents": [
        "db75b3d6b5b0dad29860370618ea94d2726641b4"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:08:32 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:08:32 2008 -0500"
      },
      "message": "rpc: add an rpc_pipe_open method\n\nWe want to transition to a new gssd upcall which is text-based and more\neasily extensible.\n\nTo simplify upgrades, as well as testing and debugging, it will help if\nwe can upgrade gssd (to a version which understands the new upcall)\nwithout having to choose at boot (or module-load) time whether we want\nthe new or the old upcall.\n\nWe will do this by providing two different pipes: one named, as\ncurrently, after the mechanism (normally \"krb5\"), and supporting the\nold upcall.  One named \"gssd\" and supporting the new upcall version.\n\nWe allow gssd to indicate which version it supports by its choice of\nwhich pipe to open.\n\nAs we have no interest in supporting *simultaneous* use of both\nversions, we\u0027ll forbid opening both pipes at the same time.\n\nSo, add a new pipe_open callback to the rpc_pipefs api, which the gss\ncode can use to track which pipes have been open, and to refuse opens of\nincompatible pipes.\n\nWe only need this to be called on the first open of a given pipe.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "db75b3d6b5b0dad29860370618ea94d2726641b4",
      "tree": "e20ac4190fe09d27f7a48e7f3f46cce6f2dbd5b1",
      "parents": [
        "b03568c32226163cb3588ea8993adb268ed497a5"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:07:13 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:07:13 2008 -0500"
      },
      "message": "rpc: minor gss_alloc_msg cleanup\n\nI want to add a little more code here, so it\u0027ll be convenient to have\nthis flatter.\n\nAlso, I\u0027ll want to add another error condition, so it\u0027ll be more\nconvenient to return -ENOMEM than NULL in the error case.  The only\ncaller is already converting NULL to -ENOMEM anyway.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b03568c32226163cb3588ea8993adb268ed497a5",
      "tree": "5e14a3d1b370e87ac90a0a16234202a3f51eb4c6",
      "parents": [
        "99db35636842ede13bf3b6bf1a8d8f4f1c4c93bf"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:06:55 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:06:55 2008 -0500"
      },
      "message": "rpc: factor out warning code from gss_pipe_destroy_msg\n\nWe\u0027ll want to call this from elsewhere soon.  And this is a bit nicer\nanyway.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "99db35636842ede13bf3b6bf1a8d8f4f1c4c93bf",
      "tree": "2a9bb57a57e8f3fb5e1a8ff9d4235c55f3c9b7ca",
      "parents": [
        "cf8cdbe5bd662eeaece96b017a4d6676ae416537"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:06:33 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:06:33 2008 -0500"
      },
      "message": "rpc: remove unnecessary assignment\n\nWe\u0027re just about to kfree() gss_auth, so there\u0027s no point to setting any\nof its fields.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6dcd3926b214a1fb081df18305921dedae269977",
      "tree": "00847727ce5a34b2b12fa4251c604b0c6a9e1fcd",
      "parents": [
        "64672d55d93c26fb4035fd1a84a803cbc09cb058"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Dec 23 15:21:57 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:57 2008 -0500"
      },
      "message": "sunrpc: fix code that makes auth_gss send destroy_cred message (try #2)\n\nThere\u0027s a bit of a chicken and egg problem when it comes to destroying\nauth_gss credentials. When we destroy the last instance of a GSSAPI RPC\ncredential, we should send a NULL RPC call with a GSS procedure of\nRPCSEC_GSS_DESTROY to hint to the server that it can destroy those\ncreds.\n\nThis isn\u0027t happening because we\u0027re setting clearing the uptodate bit on\nthe credentials and then setting the operations to the gss_nullops. When\nwe go to do the RPC call, we try to refresh the creds. That fails with\n-EACCES and the call fails.\n\nFix this by not clearing the UPTODATE bit for the credentials and adding\na new crdestroy op for gss_nullops that just tears down the cred without\ntrying to destroy the context.\n\nThe only difference between this patch and the first one is the removal\nof some minor formatting deltas.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "64672d55d93c26fb4035fd1a84a803cbc09cb058",
      "tree": "6873f9335b925e4c6a5336544a6f6fc1d789604f",
      "parents": [
        "dc0b027dfadfcb8a5504f7d8052754bf8d501ab9"
      ],
      "author": {
        "name": "Peter Staubach",
        "email": "staubach@redhat.com",
        "time": "Tue Dec 23 15:21:56 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:56 2008 -0500"
      },
      "message": "optimize attribute timeouts for \"noac\" and \"actimeo\u003d0\"\n\nHi.\n\nI\u0027ve been looking at a bugzilla which describes a problem where\na customer was advised to use either the \"noac\" or \"actimeo\u003d0\"\nmount options to solve a consistency problem that they were\nseeing in the file attributes.  It turned out that this solution\ndid not work reliably for them because sometimes, the local\nattribute cache was believed to be valid and not timed out.\n(With an attribute cache timeout of 0, the cache should always\nappear to be timed out.)\n\nIn looking at this situation, it appears to me that the problem\nis that the attribute cache timeout code has an off-by-one\nerror in it.  It is assuming that the cache is valid in the\nregion, [read_cache_jiffies, read_cache_jiffies + attrtimeo].  The\ncache should be considered valid only in the region,\n[read_cache_jiffies, read_cache_jiffies + attrtimeo).  With this\nchange, the options, \"noac\" and \"actimeo\u003d0\", work as originally\nexpected.\n\nThis problem was previously addressed by special casing the\nattrtimeo \u003d\u003d 0 case.  However, since the problem is only an off-\nby-one error, the cleaner solution is address the off-by-one\nerror and thus, not require the special case.\n\n    Thanx...\n\n        ps\n\nSigned-off-by: Peter Staubach \u003cstaubach@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7bd8826915989f1bd6917c11b0a4151b129e68cb",
      "tree": "49aabaf0cefd07c91ab622358550acab8545cfb4",
      "parents": [
        "468039ee469c5772d3e39f736923c5e0c31017e2"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:32 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:32 2008 -0500"
      },
      "message": "SUNRPC: rpcsec_gss modules should not be used by out-of-tree code\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "468039ee469c5772d3e39f736923c5e0c31017e2",
      "tree": "1e8d193748b509597979340d04092837abd13214",
      "parents": [
        "88a9fe8cae3bb52e82489447f45e8d7ba1409ca8"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "message": "SUNRPC: Convert the xdr helpers and rpc_pipefs to EXPORT_SYMBOL_GPL\n\nWe\u0027ve never considered the sunrpc code as part of any ABI to be used by\nout-of-tree modules.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "88a9fe8cae3bb52e82489447f45e8d7ba1409ca8",
      "tree": "acef9d0b7d4c8c2e98faf852ab8bc0173842fbe5",
      "parents": [
        "136221fc3219b3805c48db5da065e8e3467175d4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "message": "SUNRPC: Remove the last remnant of the BKL...\n\nSomehow, this escaped the previous purge. There should be no need to keep\nany extra locks in the XDR callbacks.\n\nThe NFS client XDR code only writes into private objects, whereas all reads\nof shared objects are confined to fields that do not change, such as\nfilehandles...\n\nDitto for lockd, the NFSv2/v3 client mount code, and rpcbind.\n\nThe nfsd XDR code may require the BKL, but since it does a synchronous RPC\ncall from a thread that already holds the lock, that issue is moot.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "05a8c1cbfe368df8c0d4eff710c370d2aa10245a",
      "tree": "fb1ed1dda4f25f0c7ee6facb9e3d10a45b324201",
      "parents": [
        "4707470ae7441733822efcd680b0ef3971921c4d"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Dec 22 19:44:13 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 22 19:44:13 2008 -0800"
      },
      "message": "pkt_sched: Remove smp_wmb() in qdisc_watchdog()\n\nWhile implementing a TCQ_F_THROTTLED flag there was used an smp_wmb()\nin qdisc_watchdog(), but since this flag is practically used only in\nsch_netem(), and since it\u0027s not even clear what reordering is avoided\nhere (TCQ_F_THROTTLED vs. __QDISC_STATE_SCHED?) it seems the barrier\ncould be safely removed.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f2f6da76c429c42d54f73807f00b8fd761a7d68",
      "tree": "20cabaf277e2e95df669c4e9ee6968067b096dc0",
      "parents": [
        "d3d317092b58a6df1d31a4ca90cdb9d2bd4ebffa"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Dec 22 19:35:28 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 22 19:35:28 2008 -0800"
      },
      "message": "net: Fix oops in dev_ifsioc()\n\nA command like this: \"brctl addif br1 eth1\" issued as a user gave me\nan oops when bridge module wasn\u0027t loaded. It\u0027s caused by using a dev\npointer before checking for NULL.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f3ff4f63f76c2702da6041d2da5eb30fac407f6",
      "tree": "0be86d18da3a4c4f123b38dcdc9c25b606cabbb1",
      "parents": [
        "bfb8cc31b11ccaf7cd55fd9e0f4794f82527948f"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Sun Dec 21 20:14:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 21 20:14:48 2008 -0800"
      },
      "message": "pkt_sched: Annotate uninitialized var in sfq_enqueue()\n\nSome gcc versions warn that ret may be used uninitialized in\nsfq_enqueue(). It\u0027s a false positive, so let\u0027s annotate this.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f4314e815e87b4ab1c9b1115dd5853cd20ca999c",
      "tree": "4a8784070f58420814528ca0abd5cf3e12753ce5",
      "parents": [
        "1486a61ebcd2711532f8163d30babc40e11e7b40"
      ],
      "author": {
        "name": "Don Skidmore",
        "email": "donald.c.skidmore@intel.com",
        "time": "Sun Dec 21 20:10:29 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 21 20:10:29 2008 -0800"
      },
      "message": "net: add DCNA attribute to the BCN interface for DCB\n\nAdds the Backward Congestion Notification Address (BCNA) attribute to the\nBackward Congestion Notification (BCN) interface for Data Center Bridging\n(DCB), which was missing.  Receive the BCNA attribute in the ixgbe driver.\nThe BCNA attribute is for a switch to inform the endstation about the physical\nport identification in order to support BCN on aggregated links.\n\nSigned-off-by: Don Skidmore \u003cdonald.c.skidmore@intel.com\u003e\nSigned-off-by: Eric W Multanen \u003ceric.w.multanen@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\n"
    },
    {
      "commit": "1486a61ebcd2711532f8163d30babc40e11e7b40",
      "tree": "49fb6ba4e4f6ade0f1db0f6c86d0feb207857e65",
      "parents": [
        "c2da953a46b18b7515ad476c1c1686640a12e93a"
      ],
      "author": {
        "name": "Don Skidmore",
        "email": "donald.c.skidmore@intel.com",
        "time": "Sun Dec 21 20:09:50 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 21 20:09:50 2008 -0800"
      },
      "message": "net: fix DCB setstate to return success/failure\n\nData Center Bridging (DCB) had no way to know if setstate had failed in the\ndriver.  This patch enables dcb netlink code to handle the status for the DCB\nsetstate interface.  Likewise it allows the driver to return a failed status\nif MSI-X isn\u0027t enabled.\n\nSigned-off-by: Don Skidmore \u003cdonald.c.skidmore@intel.com\u003e\nSigned-off-by: Eric W Multanen \u003ceric.w.multanen@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "520eb82076993b7f55ef9b80771d264272e5127b",
      "tree": "f98b74dbe404d4c3a55b5f649c25ca24958e62ba",
      "parents": [
        "ce7c9111a97492d04c504f40736a669c235d664a"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Thu Dec 18 23:35:27 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:24:00 2008 -0500"
      },
      "message": "mac80211: implement dynamic power save\n\nThis patch implements dynamic power save for mac80211. Basically it\nmeans enabling power save mode after an idle period. Implementing it\ndynamically gives a good compromise of low power consumption and low\nlatency. Some hardware have support for this in firmware, but some\nrequire the host to do it.\n\nThe dynamic power save is implemented by adding an timeout to\nieee80211_subif_start_xmit(). The timeout can be enabled from userspace\nwith Wireless Extensions. For example, the command below enables the\ndynamic power save and sets the time timeout to 500 ms:\n\niwconfig wlan0 power timeout 500m\n\nPower save now only works with devices which handle power save in firmware.\nIt\u0027s also disabled by default and the heuristics when and how to enable is\nconsidered as a policy decision and will be left for the userspace to handle.\nIn case the firmware has support for this, drivers can disable this feature\nwith IEEE80211_HW_NO_STACK_DYNAMIC_PS.\n\nBig thanks to Johannes Berg for the help with the design and code.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ce7c9111a97492d04c504f40736a669c235d664a",
      "tree": "6a294d373e19a99048dafa632966096371f3b1bb",
      "parents": [
        "e0cb686ff879dc9ac045ad7258ec687088d4e450"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Thu Dec 18 23:35:20 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:59 2008 -0500"
      },
      "message": "mac80211: track master queue status\n\nThis is a preparation for the dynamic power save support. In future there are\ntwo paths to stop the master queues and we need to track this properly to\navoid starting queues incorrectly. Implement this by adding a status\narray for each queue.\n\nThe original idea and design is from Johannes Berg, I just did\nthe implementation based on his notes. All the bugs are mine, of course.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e0cb686ff879dc9ac045ad7258ec687088d4e450",
      "tree": "4792dc94d6a36be8367987b88b922157acf59808",
      "parents": [
        "d10d0e5707fb7b8afa7e68a14d69e752604ee294"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Thu Dec 18 23:35:13 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:57 2008 -0500"
      },
      "message": "mac80211: enable IEEE80211_CONF_PS only when associated\n\nAlso disable power save when disassociated. It makes no sense to have\npower save enabled while disassociated.\n\niwlwifi seems to have this check in the driver, but it\u0027s better to do this\nin mac80211 instead.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5e3f308997f53d00e8cbebdb89d4f6e347aa963a",
      "tree": "d3da8ee1f40a7becdd5009134932adb3bc96d845",
      "parents": [
        "6110781af080c007b2202187a8518920e03d5748"
      ],
      "author": {
        "name": "Larry Finger",
        "email": "Larry.Finger@lwfinger.net",
        "time": "Wed Dec 17 14:26:59 2008 -0600"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:48 2008 -0500"
      },
      "message": "mac80211: Print unknown packet type in tasklet_handler\n\nIn stress testing p54usb, the WARN_ON() in ieee80211_tasklet_handler() was\ntriggered; however, there is no logging of the received value for packet\ntype. Adding that feature will improve the warning.\n\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "135541215ca87ff00c269e65bcaef0bdcb99aab9",
      "tree": "d5b8dde8553c5298810c36771dd559efd5f3ab67",
      "parents": [
        "73ec1cc28ebc7854a376cde53f62d487e127fbca"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Tue Dec 16 22:38:29 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:30 2008 -0500"
      },
      "message": "mac80211: fix a typo in ieee80211_send_assoc() method.\n\nThis patch fixes a typo in ieee80211_send_assoc(), net/mac80211/mlme.c.\n\nThe error is usage of a wrong member when building\nthe ie80211 management frame (it should be assoc_req, and not reassoc_req).\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8d6f658e211a3c6ff808f7fc6ebb30239457eabc",
      "tree": "a45fe7ba263a6f943bc4a4d2043496ad4a20f684",
      "parents": [
        "d85882273367e98aecb9ff11a9d76515a6d37131"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon Dec 15 10:37:50 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:22 2008 -0500"
      },
      "message": "mac80211: Remove radiotap rate-present flag for HT\n\nSince we do not currently report HT rates (MCS index) in radiotap\nheader for HT rates, we should not claim the rate is present. The rate\noctet itself is used as padding in this case, so only the it_present\nflag needs to be removed in case of HT rates.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b8d476c8cb64a1640d8762aa442b8a73fa74b7d5",
      "tree": "0313f5af3f042abb8cf79fd9d188b3929fe80f16",
      "parents": [
        "0fe45b1debba7302155b62f3829119a1185a4f5a"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri Dec 12 17:08:31 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:08 2008 -0500"
      },
      "message": "mac80211: Send Layer 2 Update frame on reassociation\n\nWhen a STA roams back to the same AP before the previous STA entry has\nexpired, a new STA entry is not added in mac80211. However, a Layer 2\nUpdate frame still needs to be transmitted to update layer 2 devices\nabout the new location for the STA. Without this, switches may\ncontinue to forward frames to the previous (now incorrect) port when\nSTA roams between APs.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0fb8ca45eb164c405eef8978f26829f9348b4d4d",
      "tree": "1fc5728b225e7d5a0d06bb0700c83d64bde44f82",
      "parents": [
        "9d8eed12dbc04f8ed70090da14211c808b5a8d81"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri Dec 12 14:38:33 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:04 2008 -0500"
      },
      "message": "mac80211: Add HT rates into RX status reporting\n\nThis patch adds option for HT-enabled drivers to report HT rates\n(HT20/HT40, short GI, MCS index) to mac80211. These rates are\ncurrently not in the rate table, so the rate_idx is used to indicate\nMCS index.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "094d05dc32fc2930e381189a942016e5561775d9",
      "tree": "4deedbcbe196f88cb8d9fe0cd0755775a7ff0939",
      "parents": [
        "420e7fabd9c6d907280ed6b3e40eef425c5d8d8d"
      ],
      "author": {
        "name": "Sujith",
        "email": "Sujith.Manoharan@atheros.com",
        "time": "Fri Dec 12 11:57:43 2008 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:22:54 2008 -0500"
      },
      "message": "mac80211: Fix HT channel selection\n\nHT management is done differently for AP and STA modes, unify\nto just the -\u003econfig() callback since HT is fundamentally a\nPHY property and cannot be per-BSS.\n\nRename enum nl80211_sec_chan_offset as nl80211_channel_type to denote\nthe channel type ( NO_HT, HT20, HT40+, HT40- ).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Sujith \u003cSujith.Manoharan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "420e7fabd9c6d907280ed6b3e40eef425c5d8d8d",
      "tree": "6effc9f9386746d1aeb953e32fe82b0a5a5fdf18",
      "parents": [
        "221b3d60cbb2740ec7d46a4f1ea6d3318a112e51"
      ],
      "author": {
        "name": "Henning Rogge",
        "email": "hrogge@googlemail.com",
        "time": "Thu Dec 11 22:04:19 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:04:54 2008 -0500"
      },
      "message": "nl80211: Add signal strength and bandwith to nl80211station info\n\nThis patch adds signal strength and transmission bitrate\nto the station_info of nl80211.\n\nSigned-off-by: Henning Rogge \u003crogge@fgan.de\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6086ebca13ddc9cfaaa25248ba8ebef35103fb74",
      "tree": "95024e17835a02286120cd7c630d1e5afea51463",
      "parents": [
        "e98def1f71fa0a6a37e12a56eb52ce5ed9e2e800"
      ],
      "author": {
        "name": "Matt Mackall",
        "email": "mpm@selenic.com",
        "time": "Thu Dec 18 19:54:22 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 22:27:42 2008 -0800"
      },
      "message": "tcp: Stop scaring users with \"treason uncloaked!\"\n\nThe original message was unhelpful and extremely alarming to our poor\nusers, despite its charm. Make it less frightening.\n\nSigned-off-by: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3de77cf23e9a19b9fc28e3b29371308325428c39",
      "tree": "20a6eafcdf351426ca0c8119cda1ff0e999f407d",
      "parents": [
        "49ad9599d42da4787d5b3a19263440e0fcd4d1fc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 19:23:56 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 22:27:37 2008 -0800"
      },
      "message": "Revert \"xfrm: Accept ESP packets regardless of UDP encapsulation mode\"\n\nThis reverts commit e061b165c7f4ec5e2e160d990b49011b5b6e5c6a.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b08534e562dae7b084326f8aa8cc12a4c1b6593",
      "tree": "9fcc3093d7002015d334a28b0b0e21527ed5dcf7",
      "parents": [
        "3298a7388c00227e736d1037328788073c80c7b4"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 18 19:35:10 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 19:35:10 2008 -0800"
      },
      "message": "net: Fix module refcount leak in kernel_accept()\n\nThe kernel_accept() does not hold the module refcount of newsock-\u003eops-\u003eowner,\nso we need __module_get(newsock-\u003eops-\u003eowner) code after call kernel_accept()\nby hand.\nIn sunrpc, the module refcount is missing to hold. So this cause kernel panic.\n\nUsed following script to reproduct:\n\nwhile [ 1 ];\ndo\n    mount -t nfs4 192.168.0.19:/ /mnt\n    touch /mnt/file\n    umount /mnt\n    lsmod | grep ipv6\ndone\n\nThis patch fixed the problem by add __module_get(newsock-\u003eops-\u003eowner) to\nkernel_accept(). So we do not need to used __module_get(newsock-\u003eops-\u003eowner)\nin every place when used kernel_accept().\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49ad9599d42da4787d5b3a19263440e0fcd4d1fc",
      "tree": "bbeef6eb9316d30524aa73cf12580441f42e420a",
      "parents": [
        "3b5b35d02264580950d1e1565431b99d97c20ded"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 22:11:38 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 22:11:38 2008 -0800"
      },
      "message": "Revert \"net: release skb-\u003edst in sock_queue_rcv_skb()\"\n\nThis reverts commit 70355602879229c6f8bd694ec9c0814222bc4936.\n\nAs pointed out by Mark McLoughlin IP_PKTINFO cmsg data is one\npost-queueing user, so this optimization is not valid right\nnow.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a693722aec4ce26fb46c21cf4bf4422484a397a7",
      "tree": "003b408f7473bbc9804e185f850cf6f6017e7f1d",
      "parents": [
        "9732d523212060c44a4723332bdc5ee429eeabc3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 17 16:08:01 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 16:08:01 2008 -0800"
      },
      "message": "dccp_diag: LISTEN sockets don\u0027t have CCIDs\n\nAnd thus when we try to use \u0027ss -danemi\u0027 on these sockets that have no\nccid blocks (data collected using systemtap after I fixed the problem):\n\ndccp_diag_get_info sk\u003d0xffff8801220a3100, dp-\u003edccps_hc_rx_ccid\u003d0x0000000000000000, dp-\u003edccps_hc_tx_ccid\u003d0x0000000000000000\n\nWe get an OOPS:\n\nmica.ghostprotocols.net login: BUG: unable to handle kernel NULL pointer\ndereferenc0\nIP: [\u003cffffffffa0136082\u003e] dccp_diag_get_info+0x82/0xc0 [dccp_diag]\nPGD 12106f067 PUD 122488067 PMD 0\nOops: 0000 [#1] PREEMPT\n\nFix is trivial, and \u0027ss -d\u0027 is working again:\n\n[root@mica ~]# ss -danemi\nState   Recv-Q Send-Q   Local Address:Port   Peer Address:Port \nLISTEN  0      0                    *:5001              *:*\nino:7288 sk:220a3100ffff8801\n\t mem:(r0,w0,f0,t0) cwnd:0 ssthresh:0\n[root@mica ~]# \n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "893873f3965ae0173a9315534bec7628162d2243",
      "tree": "a68217bad43abcebd4bb19af4dd8d50c10940f8a",
      "parents": [
        "be677730a0ccb6bedced6f65f2ba8f57a3c607ba"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Dec 17 15:48:50 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 15:48:50 2008 -0800"
      },
      "message": "Phonet: get rid of deferred work on the transmission path\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be677730a0ccb6bedced6f65f2ba8f57a3c607ba",
      "tree": "3885b6ed60b72696a8b0102f7f1b85d0dd27617e",
      "parents": [
        "57c81fffc863fb4c1804bc963bcbfb82d736c6df"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Dec 17 15:48:31 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 15:48:31 2008 -0800"
      },
      "message": "Phonet: use atomic for packet TX window\n\nGPRS TX flow control won\u0027t need to lock the underlying socket anymore.\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "57c81fffc863fb4c1804bc963bcbfb82d736c6df",
      "tree": "2b30247417b6656f557f34831a113a7ec1d531f2",
      "parents": [
        "2d91d78b68606ff7ce52ea70e187dee7831aa2f6"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Dec 17 15:47:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 15:47:48 2008 -0800"
      },
      "message": "Phonet: allocate separate ARP type for GPRS over a Phonet pipe\n\nA separate xmit lock class supports GPRS over a Phonet pipe over a TUN\ndevice (type ARPHRD_NONE).\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2d91d78b68606ff7ce52ea70e187dee7831aa2f6",
      "tree": "bb87a87d38e1dc129c5fb62927b66510085e06f6",
      "parents": [
        "fc10af8e658936f7b2bddd077f7ddcbe1eddc066"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Dec 17 15:47:29 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 15:47:29 2008 -0800"
      },
      "message": "Phonet: allocate a non-Ethernet ARP type\n\nAlso leave some room for more 802.11 types.\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f690db7ff4cb32493c0b0b13334cc4f5fd49a6b",
      "tree": "c4f3dfb17ba368dffc5da8a8ffe575e0f99065e7",
      "parents": [
        "f250dcdac111a8369220b8e192eae6c56dc1098a"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Tue Dec 16 02:08:29 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 16 02:08:29 2008 -0800"
      },
      "message": "ipv6: fix the outgoing interface selection order in udpv6_sendmsg()\n\n1.When no interface is specified in an IPV6_PKTINFO ancillary data\n  item, the interface specified in an IPV6_PKTINFO sticky optionis \n  is used.\n\nRFC3542:\n6.7.  Summary of Outgoing Interface Selection\n\n   This document and [RFC-3493] specify various methods that affect the\n   selection of the packet\u0027s outgoing interface.  This subsection\n   summarizes the ordering among those in order to ensure deterministic\n   behavior.\n\n   For a given outgoing packet on a given socket, the outgoing interface\n   is determined in the following order:\n\n   1. if an interface is specified in an IPV6_PKTINFO ancillary data\n      item, the interface is used.\n\n   2. otherwise, if an interface is specified in an IPV6_PKTINFO sticky\n      option, the interface is used.\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f250dcdac111a8369220b8e192eae6c56dc1098a",
      "tree": "cf42e186985643e9c7fbb7c3c3e3fb18d174874b",
      "parents": [
        "b24a2516d10751d7ed5afb58420df25370c9dffb"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Tue Dec 16 02:07:45 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 16 02:07:45 2008 -0800"
      },
      "message": "ipv6: fix the return interface index when get it while no message is received\n\nWhen get receiving interface index while no message is received,\nthe the value seted with setsockopt() should be returned.\n\nRFC 3542:\n   Issuing getsockopt() for the above options will return the sticky\n   option value i.e., the value set with setsockopt().  If no sticky\n   option value has been set getsockopt() will return the following\n   values:\n\n   -  For the IPV6_PKTINFO option, it will return an in6_pktinfo\n      structure with ipi6_addr being in6addr_any and ipi6_ifindex being\n      zero.\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b24a2516d10751d7ed5afb58420df25370c9dffb",
      "tree": "cffcf4fc47c4da696e3426424e6ccac7b789e917",
      "parents": [
        "bc02ff95fe4ebd3e5ee7455c0aa6f76ebe39ebca"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Tue Dec 16 02:06:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 16 02:06:23 2008 -0800"
      },
      "message": "ipv6: Add IPV6_PKTINFO sticky option support to setsockopt()\n\nThere are three reasons for me to add this support:\n1.When no interface is specified in an IPV6_PKTINFO ancillary data\n  item, the interface specified in an IPV6_PKTINFO sticky optionis \n  is used.\n\nRFC3542:\n6.7.  Summary of Outgoing Interface Selection\n\n   This document and [RFC-3493] specify various methods that affect the\n   selection of the packet\u0027s outgoing interface.  This subsection\n   summarizes the ordering among those in order to ensure deterministic\n   behavior.\n\n   For a given outgoing packet on a given socket, the outgoing interface\n   is determined in the following order:\n\n   1. if an interface is specified in an IPV6_PKTINFO ancillary data\n      item, the interface is used.\n\n   2. otherwise, if an interface is specified in an IPV6_PKTINFO sticky\n      option, the interface is used.\n\n2.When no IPV6_PKTINFO ancillary data is received,getsockopt() should \n  return the sticky option value which set with setsockopt().\n\nRFC 3542:\n   Issuing getsockopt() for the above options will return the sticky\n   option value i.e., the value set with setsockopt().  If no sticky\n   option value has been set getsockopt() will return the following\n   values:\n\n3.Make the setsockopt implementation POSIX compliant.\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09a2c3c0d3d3550675b766aa5edc28ffee79d7ab",
      "tree": "f7cfd69e383344f21aff26bb1d40c977d81416b1",
      "parents": [
        "4ee59d54c3f91f1f3ad7f2856b27981414430f9e"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Tue Dec 16 01:18:31 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 16 01:18:31 2008 -0800"
      },
      "message": "Phonet: improve GPRS variable names\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b1879204dda06a92a4ff55b681c99ee185180003",
      "tree": "3045f326dcff6bb1ca3768803bfc62e98e69c6dc",
      "parents": [
        "c40cf519f0c0f0cb0579d853949ef517a8bb494d"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Tue Dec 16 01:15:11 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 16 01:15:11 2008 -0800"
      },
      "message": "ipmr: merge common code\n\nAlso removes redundant skb-\u003elen \u003c x check which can\u0027t\nbe true once pskb_may_pull(skb, x) succeeded.\n\n$ diff-funcs pim_rcv ipmr.c ipmr.c pim_rcv_v1\n  --- ipmr.c:pim_rcv()\n  +++ ipmr.c:pim_rcv_v1()\n@@ -1,22 +1,27 @@\n-static int pim_rcv(struct sk_buff * skb)\n+int pim_rcv_v1(struct sk_buff * skb)\n {\n-\tstruct pimreghdr *pim;\n+\tstruct igmphdr *pim;\n \tstruct iphdr   *encap;\n \tstruct net_device  *reg_dev \u003d NULL;\n\n \tif (!pskb_may_pull(skb, sizeof(*pim) + sizeof(*encap)))\n \t\tgoto drop;\n\n-\tpim \u003d (struct pimreghdr *)skb_transport_header(skb);\n-\tif (pim-\u003etype !\u003d ((PIM_VERSION\u003c\u003c4)|(PIM_REGISTER)) ||\n-\t    (pim-\u003eflags\u0026PIM_NULL_REGISTER) ||\n-\t    (ip_compute_csum((void *)pim, sizeof(*pim)) !\u003d 0 \u0026\u0026\n-\t     csum_fold(skb_checksum(skb, 0, skb-\u003elen, 0))))\n+\tpim \u003d igmp_hdr(skb);\n+\n+\tif (!mroute_do_pim ||\n+\t    skb-\u003elen \u003c sizeof(*pim) + sizeof(*encap) ||\n+\t    pim-\u003egroup !\u003d PIM_V1_VERSION || pim-\u003ecode !\u003d PIM_V1_REGISTER)\n \t\tgoto drop;\n\n-\t/* check if the inner packet is destined to mcast group */\n \tencap \u003d (struct iphdr *)(skb_transport_header(skb) +\n-\t\t\t\t sizeof(struct pimreghdr));\n+\t\t\t\t sizeof(struct igmphdr));\n+\t/*\n+\t   Check that:\n+\t   a. packet is really destinted to a multicast group\n+\t   b. packet is not a NULL-REGISTER\n+\t   c. packet is not truncated\n+\t */\n \tif (!ipv4_is_multicast(encap-\u003edaddr) ||\n \t    encap-\u003etot_len \u003d\u003d 0 ||\n \t    ntohs(encap-\u003etot_len) + sizeof(*pim) \u003e skb-\u003elen)\n@@ -40,9 +45,9 @@\n \tskb-\u003eip_summed \u003d 0;\n \tskb-\u003epkt_type \u003d PACKET_HOST;\n \tdst_release(skb-\u003edst);\n+\tskb-\u003edst \u003d NULL;\n \treg_dev-\u003estats.rx_bytes +\u003d skb-\u003elen;\n \treg_dev-\u003estats.rx_packets++;\n-\tskb-\u003edst \u003d NULL;\n \tnf_reset(skb);\n \tnetif_rx(skb);\n \tdev_put(reg_dev);\n\n$ codiff net/ipv4/ipmr.o.old net/ipv4/ipmr.o.new\n\nnet/ipv4/ipmr.c:\n  pim_rcv_v1 | -283\n  pim_rcv    | -284\n 2 functions changed, 567 bytes removed\n\nnet/ipv4/ipmr.c:\n  __pim_rcv | +307\n 1 function changed, 307 bytes added\n\nnet/ipv4/ipmr.o.new:\n 3 functions changed, 307 bytes added, 567 bytes removed, diff: -260\n\n(Tested on x86_64).\n\nIt seems that pimlen arg could be left out as well and\neq-sizedness of structs trapped with BUILD_BUG_ON but\nI don\u0027t think that\u0027s more than a cosmetic flaw since there\naren\u0027t that many args anyway.\n\nCompile tested.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "b240a0e5644eb817c4a397098a40e1ad42a615bc",
      "tree": "ff2262ce70c4f7773c01e736186dbb4b40145841",
      "parents": [
        "bf296b125b21b8d558ceb6ec30bb4eba2730cd6b"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 15 23:44:31 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 23:44:31 2008 -0800"
      },
      "message": "ethtool: Add GGRO and SGRO ops\n\nThis patch adds the ethtool ops to enable and disable GRO.  It also\nmakes GRO depend on RX checksum offload much the same as how TSO\ndepends on SG support.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf296b125b21b8d558ceb6ec30bb4eba2730cd6b",
      "tree": "5a06714c4001ccf1b217b888121f30d57fceea6d",
      "parents": [
        "71d93b39e52e92aea35f1058d957cf12250d0b75"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 15 23:43:36 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 23:43:36 2008 -0800"
      },
      "message": "tcp: Add GRO support\n\nThis patch adds the TCP-specific portion of GRO.  The criterion for\nmerging is extremely strict (the TCP header must match exactly apart\nfrom the checksum) so as to allow refragmentation.  Otherwise this\nis pretty much identical to LRO, except that we support the merging\nof ECN packets.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "71d93b39e52e92aea35f1058d957cf12250d0b75",
      "tree": "270e3fe674d15467454504a99af2146c0324e08b",
      "parents": [
        "73cc19f1556b95976934de236fd9043f7208844f"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 15 23:42:33 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 23:42:33 2008 -0800"
      },
      "message": "net: Add skb_gro_receive\n\nThis patch adds the helper skb_gro_receive to merge packets for\nGRO.  The current method is to allocate a new header skb and then\nchain the original packets to its frag_list.  This is done to\nmake it easier to integrate into the existing GSO framework.\n\nIn future as GSO is moved into the drivers, we can undo this and\nsimply chain the original packets together.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "73cc19f1556b95976934de236fd9043f7208844f",
      "tree": "4ebe390a9b328bba32d149b9f83e998836806f5d",
      "parents": [
        "d565b0a1a9b6ee7dff46e1f68b26b526ac11ae50"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 15 23:41:09 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 23:41:09 2008 -0800"
      },
      "message": "ipv4: Add GRO infrastructure\n\nThis patch adds GRO support for IPv4.\n\nThe criteria for merging is more stringent than LRO, in particular,\nwe require all fields in the IP header to be identical except for\nthe length, ID and checksum.  In addition, the ID must form an\narithmetic sequence with a difference of one.\n\nThe ID requirement might seem overly strict, however, most hardware\nTSO solutions already obey this rule.  Linux itself also obeys this\nwhether GSO is in use or not.\n\nIn future we could relax this rule by storing the IDs (or rather\nmaking sure that we don\u0027t drop them when pulling the aggregate\nskb\u0027s tail).\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d565b0a1a9b6ee7dff46e1f68b26b526ac11ae50",
      "tree": "3526815ab2b60c37f474c25ad1d8fb207644efcc",
      "parents": [
        "1a881f27c50b4fbd6858a8696a189263621136b0"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 15 23:38:52 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 23:38:52 2008 -0800"
      },
      "message": "net: Add Generic Receive Offload infrastructure\n\nThis patch adds the top-level GRO (Generic Receive Offload) infrastructure.\nThis is pretty similar to LRO except that this is protocol-independent.\nInstead of holding packets in an lro_mgr structure, they\u0027re now held in\nnapi_struct.\n\nFor drivers that intend to use this, they can set the NETIF_F_GRO bit and\ncall napi_gro_receive instead of netif_receive_skb or just call netif_rx.\nThe latter will call napi_receive_skb automatically.  When napi_gro_receive\nis used, the driver must either call napi_complete/napi_rx_complete, or\ncall napi_gro_flush in softirq context if the driver uses the primitives\n__napi_complete/__napi_rx_complete.\n\nProtocols will set the gro_receive and gro_complete function pointers in\norder to participate in this scheme.\n\nIn addition to the packet, gro_receive will get a list of currently held\npackets.  Each packet in the list has a same_flow field which is non-zero\nif it is a potential match for the new packet.  For each packet that may\nmatch, they also have a flush field which is non-zero if the held packet\nmust not be merged with the new packet.\n\nOnce gro_receive has determined that the new skb matches a held packet,\nthe held packet may be processed immediately if the new skb cannot be\nmerged with it.  In this case gro_receive should return the pointer to\nthe existing skb in gro_list.  Otherwise the new skb should be merged into\nthe existing packet and NULL should be returned, unless the new skb makes\nit impossible for any further merges to be made (e.g., FIN packet) where\nthe merged skb should be returned.\n\nWhenever the skb is merged into an existing entry, the gro_receive\nfunction should set NAPI_GRO_CB(skb)-\u003esame_flow.  Note that if an skb\nmerely matches an existing entry but can\u0027t be merged with it, then\nthis shouldn\u0027t be set.\n\nIf gro_receive finds it pointless to hold the new skb for future merging,\nit should set NAPI_GRO_CB(skb)-\u003eflush.\n\nHeld packets will be flushed by napi_gro_flush which is called by\nnapi_complete and napi_rx_complete.\n\nCurrently held packets are stored in a singly liked list just like LRO.\nThe list is limited to a maximum of 8 entries.  In future, this may be\nexpanded to use a hash table to allow more flows to be held for merging.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a881f27c50b4fbd6858a8696a189263621136b0",
      "tree": "ca0327e3543a0535cfd855beedb1b171f6aebf06",
      "parents": [
        "89319d3801d1d3ac29c7df1f067038986f267d29"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 15 23:27:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 23:27:47 2008 -0800"
      },
      "message": "net: Add frag_list support to GSO\n\nThis patch allows GSO to handle frag_list in a limited way for the\npurposes of allowing packets merged by GRO to be refragmented on\noutput.\n\nMost hardware won\u0027t (and aren\u0027t expected to) support handling GRO\nfrag_list packets directly.  Therefore we will perform GSO in\nsoftware for those cases.\n\nHowever, for drivers that can support it (such as virtual NICs) we\nmay not have to segment the packets at all.\n\nWhether the added overhead of GRO/GSO is worthwhile for bridges\nand routers when weighed against the benefit of potentially\nincreasing the MTU within the host is still an open question.\nHowever, for the case of host nodes this is undoubtedly a win.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89319d3801d1d3ac29c7df1f067038986f267d29",
      "tree": "a717482d5cdfe9d50bed14a2114ece905b5e88d7",
      "parents": [
        "eb14f019597cd86c21a6c601d7e900f40030c2e7"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 15 23:26:06 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 23:26:06 2008 -0800"
      },
      "message": "net: Add frag_list support to skb_segment\n\nThis patch adds limited support for handling frag_list packets in\nskb_segment.  The intention is to support GRO (Generic Receive Offload)\npackets which will be constructed by chaining normal packets using\nfrag_list.\n\nAs such we require all frag_list members terminate on exact MSS\nboundaries.  This is checked using BUG_ON.\n\nAs there should only be one producer in the kernel of such packets,\nnamely GRO, this requirement should not be difficult to maintain.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb14f019597cd86c21a6c601d7e900f40030c2e7",
      "tree": "36fb2f36a1747f98988f87215db1eef3a71d45eb",
      "parents": [
        "9a4a84294b0d60b8c287131478f743ba2bc68949",
        "a3dd15444baa9c7522c8457ab564c41219dfb44c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 20:03:50 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 20:03:50 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/e1000e/ich8lan.c\n"
    },
    {
      "commit": "7004405cb85cdc10074740705963d9ce3e887f47",
      "tree": "c78a69420f7307ac04866d1ad4d9a9384054bdb0",
      "parents": [
        "d2ff911882b6bc693d86ca9566daac70aacbb2b3",
        "4798a2b84ea5a98e4f36a815a646cb48ff521684"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 15 16:30:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 15 16:30:22 2008 -0800"
      },
      "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:\n  Phonet: keep TX queue disabled when the device is off\n  SCHED: netem: Correct documentation comment in code.\n  netfilter: update rwlock initialization for nat_table\n  netlabel: Compiler warning and NULL pointer dereference fix\n  e1000e: fix double release of mutex\n  IA64: HP_SIMETH needs to depend upon NET\n  netpoll: fix race on poll_list resulting in garbage entry\n  ipv6: silence log messages for locally generated multicast\n  sungem: improve ethtool output with internal pcs and serdes\n  tcp: tcp_vegas cong avoid fix \n  sungem: Make PCS PHY support partially work again.\n"
    },
    {
      "commit": "8b124a8e14c04378466ddfe63e41fc5035f957eb",
      "tree": "62798f7ca17324eea6c4d4c8a7461ddf0d996c81",
      "parents": [
        "5ecc361444a0c641a73cce05fb652d0e3c944451"
      ],
      "author": {
        "name": "Don Skidmore",
        "email": "donald.c.skidmore@intel.com",
        "time": "Mon Dec 15 01:06:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 01:06:23 2008 -0800"
      },
      "message": "net: fix dcbnl_setnumtcs operation check\n\ndcbml_setnumtcs wasn\u0027t checking for the presence of the setnumtcs\nfunction.  Instead, it was checking for setstate which was a bug.\n\nSigned-off-by: Don Skidmore \u003cdonald.c.skidmore@intel.com\u003e\nSigned-off-by: Eric W Multanen \u003ceric.w.multanen@intel.com\u003e\nSigned-off-by: Peter P Waskiewicz Jr \u003cpeter.p.waskiewicz.jr@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4798a2b84ea5a98e4f36a815a646cb48ff521684",
      "tree": "353906b8ef910b62ef3ba9c6bc2d71a5db3bc974",
      "parents": [
        "eb9b851b980e20ba5f6bdfd6ec24f4bc77623ce6"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Mon Dec 15 00:53:57 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 00:53:57 2008 -0800"
      },
      "message": "Phonet: keep TX queue disabled when the device is off\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb9b851b980e20ba5f6bdfd6ec24f4bc77623ce6",
      "tree": "7d417a6a8a2020810597c5dcac4b59213f7c269c",
      "parents": [
        "be70ed189bc0d16e1609a1c6c04ec9418b4dd11a"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Mon Dec 15 00:39:17 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 00:39:17 2008 -0800"
      },
      "message": "SCHED: netem: Correct documentation comment in code.\n\nThe netem simulator is no longer limited by Linux timer resolution HZ.\nNot since Patrick McHardy changed the QoS system to use hrtimer.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be70ed189bc0d16e1609a1c6c04ec9418b4dd11a",
      "tree": "1214e61fe28526db985a6c4ae04bc257388415af",
      "parents": [
        "ec8f2375d7584969501918651241f91eca2a6ad3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 15 00:19:14 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 00:19:14 2008 -0800"
      },
      "message": "netfilter: update rwlock initialization for nat_table\n    \nThe commit e099a173573ce1ba171092aee7bb3c72ea686e59\n(netfilter: netns nat: per-netns NAT table) renamed the\nnat_table from __nat_table to nat_table without updating the\n__RW_LOCK_UNLOCKED(__nat_table.lock).\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "b1721d2bb9d015d7e49079414671569a2fc0ac9b",
      "tree": "f8c1cc3d7d3072c5f1d1cf78e430dddca18f1450",
      "parents": [
        "79f55f11a090d9f369448dcb58242c7924873920"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:19:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:19:48 2008 -0800"
      },
      "message": "rpc/rdma: goto instead of copypaste\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79f55f11a090d9f369448dcb58242c7924873920",
      "tree": "34dc1d9c852a060ca303d42bdf430033fdd7ce6a",
      "parents": [
        "e780f1c33d76ebb81607a6b5d6b669edb9065a7f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:19:02 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:19:02 2008 -0800"
      },
      "message": "nf/dccp: merge errorpaths\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e780f1c33d76ebb81607a6b5d6b669edb9065a7f",
      "tree": "0befbc1f55d484e78d9d841ece3aceb02c8a6ff4",
      "parents": [
        "037322abe6141e32e1b1dea86a9405d52c99be5d"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:18:30 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:18:30 2008 -0800"
      },
      "message": "irda: merge exit paths\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "037322abe6141e32e1b1dea86a9405d52c99be5d",
      "tree": "f223a6e44f8243cef4d937ad4091af55e21424b7",
      "parents": [
        "0eae1b98cf3022715b5a6ea5f1ac6b0bd7ac4edd"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:18:00 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:18:00 2008 -0800"
      },
      "message": "bt/rfcomm/tty: join error paths\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0eae1b98cf3022715b5a6ea5f1ac6b0bd7ac4edd",
      "tree": "874de569a7859f855296ee3857ad4214fcbaed29",
      "parents": [
        "ebad5c0984e06f4036d2eb2741b9afce736b8a06"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:17:26 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:17:26 2008 -0800"
      },
      "message": "ax25: join the return paths that free skb\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebad5c0984e06f4036d2eb2741b9afce736b8a06",
      "tree": "7d9af4a5db85b952fbd5b744055f530c4f977921",
      "parents": [
        "d8eb93078cedbbf4b7e18e1d7054171c7b70b442"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:16:58 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:16:58 2008 -0800"
      },
      "message": "can: merge error paths\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8eb93078cedbbf4b7e18e1d7054171c7b70b442",
      "tree": "69f232bbdb2d2f214424deb74f7b1e3a96aad740",
      "parents": [
        "8da73b73ef29d537ba09f29393cd68707833e746"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:16:22 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:16:22 2008 -0800"
      },
      "message": "xfrm: join error paths\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8da73b73ef29d537ba09f29393cd68707833e746",
      "tree": "b4281dcf12f6033774b81c05b24296922eeada28",
      "parents": [
        "448eb71f40120a8fd11ebd58153c271c63e6f862"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:15:49 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:15:49 2008 -0800"
      },
      "message": "ip6mr: use goto to common label instead of opencoding\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "448eb71f40120a8fd11ebd58153c271c63e6f862",
      "tree": "a053aac189359d93c8ec32ba0a2d876e71863342",
      "parents": [
        "5ce1bbb97bf1e6707102d30499e7feaa1e6a2134"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:15:21 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:15:21 2008 -0800"
      },
      "message": "ipv6/mcast: join error paths using goto\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "5ce1bbb97bf1e6707102d30499e7feaa1e6a2134"
}
