)]}'
{
  "log": [
    {
      "commit": "23d69b09b78c4876e134f104a3814c30747c53f1",
      "tree": "40744de4f4126c21027ce537264524095e0e7979",
      "parents": [
        "e744070fd4ff9d3114277e52d77afa21579adce2",
        "569ff2de2e1c8ac67c8df3a7367d46d0d9460a35"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (33 commits)\n  usb: don\u0027t use flush_scheduled_work()\n  speedtch: don\u0027t abuse struct delayed_work\n  media/video: don\u0027t use flush_scheduled_work()\n  media/video: explicitly flush request_module work\n  ioc4: use static work_struct for ioc4_load_modules()\n  init: don\u0027t call flush_scheduled_work() from do_initcalls()\n  s390: don\u0027t use flush_scheduled_work()\n  rtc: don\u0027t use flush_scheduled_work()\n  mmc: update workqueue usages\n  mfd: update workqueue usages\n  dvb: don\u0027t use flush_scheduled_work()\n  leds-wm8350: don\u0027t use flush_scheduled_work()\n  mISDN: don\u0027t use flush_scheduled_work()\n  macintosh/ams: don\u0027t use flush_scheduled_work()\n  vmwgfx: don\u0027t use flush_scheduled_work()\n  tpm: don\u0027t use flush_scheduled_work()\n  sonypi: don\u0027t use flush_scheduled_work()\n  hvsi: don\u0027t use flush_scheduled_work()\n  xen: don\u0027t use flush_scheduled_work()\n  gdrom: don\u0027t use flush_scheduled_work()\n  ...\n\nFixed up trivial conflict in drivers/media/video/bt8xx/bttv-input.c\nas per Tejun.\n"
    },
    {
      "commit": "4c306a9291a077879fc3e933326caac3bc319caa",
      "tree": "19704486012ac148ef37005ea38b9c2ae3442fc1",
      "parents": [
        "ba27d85c96c57111ae8acfa959643e5ce8e4bcbe"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Sun Dec 19 21:59:35 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 19 21:59:35 2010 -0800"
      },
      "message": "net: kill unused macros\n\nThese macros never be used, so remove them.\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b4aa9e05a61b845541fa6f5b1d246976922601f0",
      "tree": "ca94478c3df281ab76a3399f5ba6341ade3f5791",
      "parents": [
        "1dc0f3c54ce1df957f99c17b145488fd03eb1a59",
        "4b8fe66300acb2fba8b16d62606e0d30204022fc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 17 12:27:22 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 17 12:27:22 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bnx2x/bnx2x.h\n\tdrivers/net/wireless/iwlwifi/iwl-1000.c\n\tdrivers/net/wireless/iwlwifi/iwl-6000.c\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n\tdrivers/vhost/vhost.c\n"
    },
    {
      "commit": "afe2c511fb2d75f1515081ff1be15bd79cfe722d",
      "tree": "28aa74e9e0c654a95bf3306101e10ac1d16919d1",
      "parents": [
        "2d64672ed38721b7a3815009d79bfb90a1f34a17"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Dec 14 16:21:17 2010 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Dec 15 10:56:11 2010 +0100"
      },
      "message": "workqueue: convert cancel_rearming_delayed_work[queue]() users to cancel_delayed_work_sync()\n\ncancel_rearming_delayed_work[queue]() has been superceded by\ncancel_delayed_work_sync() quite some time ago.  Convert all the\nin-kernel users.  The conversions are completely equivalent and\ntrivial.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Evgeniy Polyakov \u003czbr@ioremap.net\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: netdev@vger.kernel.org\nCc: Anton Vorontsov \u003ccbou@mail.ru\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Alex Elder \u003caelder@sgi.com\u003e\nCc: xfs-masters@oss.sgi.com\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: netfilter-devel@vger.kernel.org\nCc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: linux-nfs@vger.kernel.org\n"
    },
    {
      "commit": "d9ca676bcb26e1fdff9265a3e70f697cd381c889",
      "tree": "72ab0bf8cb22291eb4e1a57329bb8e1df2b7649f",
      "parents": [
        "fb890ae7d615f4b4f5689144b6832230ab2046aa"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dcbw@redhat.com",
        "time": "Wed Dec 08 19:40:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 10 15:45:05 2010 -0800"
      },
      "message": "atm: correct sysfs \u0027device\u0027 link creation and parent relationships\n\nThe ATM subsystem was incorrectly creating the \u0027device\u0027 link for ATM\nnodes in sysfs.  This led to incorrect device/parent relationships\nexposed by sysfs and udev.  Instead of rolling the \u0027device\u0027 link by hand\nin the generic ATM code, pass each ATM driver\u0027s bus device down to the\nsysfs code and let sysfs do this stuff correctly.\n\nSigned-off-by: Dan Williams \u003cdcbw@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5811662b15db018c740c57d037523683fd3e6123",
      "tree": "f820610a6024799a26699f22dc9a4ef5dee07978",
      "parents": [
        "dd68ad2235b4625e0dc928b2b4c614d265f976d3"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Fri Nov 12 18:43:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 17 12:27:45 2010 -0800"
      },
      "message": "net: use the macros defined for the members of flowi\n\nUse the macros defined for the members of flowi to clean the code up.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "37d668004289d202f71dc5bfdadf6c18b34577a2",
      "tree": "790fc68d58b4c6d83d269dc80bebe42601a676df",
      "parents": [
        "ece49153b601d95bcebd45a6394e370972f0b0a0"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Nov 15 11:12:33 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 17 10:37:52 2010 -0800"
      },
      "message": "net/atm: Remove unnecessary casts of netdev_priv\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f05647dd81c11a6a165ccc8f0c1370b16f3bcb0",
      "tree": "7851ef1c93aa1aba7ef327ca4b75fd35e6d10f29",
      "parents": [
        "02f36038c568111ad4fc433f6fa760ff5e38fab4",
        "ec37a48d1d16c30b655ac5280209edf52a6775d4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 23 11:47:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 23 11:47:02 2010 -0700"
      },
      "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: (1699 commits)\n  bnx2/bnx2x: Unsupported Ethtool operations should return -EINVAL.\n  vlan: Calling vlan_hwaccel_do_receive() is always valid.\n  tproxy: use the interface primary IP address as a default value for --on-ip\n  tproxy: added IPv6 support to the socket match\n  cxgb3: function namespace cleanup\n  tproxy: added IPv6 support to the TPROXY target\n  tproxy: added IPv6 socket lookup function to nf_tproxy_core\n  be2net: Changes to use only priority codes allowed by f/w\n  tproxy: allow non-local binds of IPv6 sockets if IP_TRANSPARENT is enabled\n  tproxy: added tproxy sockopt interface in the IPV6 layer\n  tproxy: added udp6_lib_lookup function\n  tproxy: added const specifiers to udp lookup functions\n  tproxy: split off ipv6 defragmentation to a separate module\n  l2tp: small cleanup\n  nf_nat: restrict ICMP translation for embedded header\n  can: mcp251x: fix generation of error frames\n  can: mcp251x: fix endless loop in interrupt handler if CANINTF_MERRF is set\n  can-raw: add msg_flags to distinguish local traffic\n  9p: client code cleanup\n  rds: make local functions/variables static\n  ...\n\nFix up conflicts in net/core/dev.c, drivers/net/pcmcia/smc91c92_cs.c and\ndrivers/net/wireless/ath/ath9k/debug.c as per David\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "d122179a3c0fdc71b88cb9e3605f372b1651a9ff",
      "tree": "63a48b333e7565967b6d7c9e246557bfcb9f225f",
      "parents": [
        "419c20465d6319274e7286f0966e2390540e6e0a",
        "b00916b189d13a615ff05c9242201135992fcda3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 12:30:34 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 12:30:34 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/core/ethtool.c\n"
    },
    {
      "commit": "5518b29f225dbdf47ded02cf229ff8225a2cdf82",
      "tree": "63ff04e7b339623e41ba0d2d27b67bd4ae81bab3",
      "parents": [
        "f1ee89d5b007620353fb7dec1d34db4baa1a5571"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Sun Oct 10 22:46:34 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 11 11:05:42 2010 -0700"
      },
      "message": "ATM: mpc, fix use after free\n\nStanse found that mpc_push frees skb and then it dereferences it. It\nis a typo, new_skb should be dereferenced there.\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d6bf781712a1d25cc8987036b3a48535b331eb91",
      "tree": "cf83ab68ef2519576578d8336a43cc13cd375cde",
      "parents": [
        "110b2499370c401cdcc7c63e481084467291d556"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 04 06:15:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 14:54:36 2010 -0700"
      },
      "message": "net neigh: RCU conversion of neigh hash table\n\nDavid\n\nThis is the first step for RCU conversion of neigh code.\n\nNext patches will convert hash_buckets[] and \"struct neighbour\" to RCU\nprotected objects.\n\nThanks\n\n[PATCH net-next] net neigh: RCU conversion of neigh hash table\n\nInstead of storing hash_buckets, hash_mask and hash_rnd in \"struct\nneigh_table\", a new structure is defined :\n\nstruct neigh_hash_table {\n       struct neighbour        **hash_buckets;\n       unsigned int            hash_mask;\n       __u32                   hash_rnd;\n       struct rcu_head         rcu;\n};\n\nAnd \"struct neigh_table\" has an RCU protected pointer to such a\nneigh_hash_table.\n\nThis means the signature of (*hash)() function changed: We need to add a\nthird parameter with the actual hash_rnd value, since this is not\nanymore a neigh_table field.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e40051d134f7ee95c8c1f7a3471e84eafc9ab326",
      "tree": "88eb44e49a75721ae926665a2c42f08badac9d07",
      "parents": [
        "42099d7a3941d4aaf853caac92b3ae76149fc6e7",
        "2cc6d2bf3d6195fabcf0febc192c01f99519a8f3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 01:03:03 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 01:03:03 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/qlcnic/qlcnic_init.c\n\tnet/ipv4/ip_output.c\n"
    },
    {
      "commit": "a3d6713fbd2ccb50898a6f88664da96a7857c039",
      "tree": "e772805828ad8c862c10b1845878baffbb11248e",
      "parents": [
        "ca9a783575d2affed30ef27a3427a7705527ddac"
      ],
      "author": {
        "name": "Karl Hiramoto",
        "email": "karl@hiramoto.org",
        "time": "Thu Sep 23 01:50:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 26 18:29:18 2010 -0700"
      },
      "message": "br2684: fix scheduling while atomic\n\nYou can\u0027t call atomic_notifier_chain_unregister() while in atomic context.\n\nFix, call un/register_atmdevice_notifier in module __init and __exit.\n\nBug report:\nhttp://comments.gmane.org/gmane.linux.network/172603\n\nReported-by: Mikko Vinni \u003cmmvinni@yahoo.com\u003e\nTested-by: Mikko Vinni \u003cmmvinni@yahoo.com\u003e\nSigned-off-by: Karl Hiramoto \u003ckarl@hiramoto.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b92840900fb575004cac694e56fd0a43f54dc344",
      "tree": "29e20d684393515c7278427f46dd804a0d66f74f",
      "parents": [
        "bb2537f1e76b3fb18c3fc1dff1df98ebc10af633"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Aug 18 10:44:34 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 19 00:14:36 2010 -0700"
      },
      "message": "atm: remove a net_device_stats clear\n\nNo need to clear device stats in lec_open()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "510a05edce43ec29ceb105677ad8e6ff58f02c72",
      "tree": "2aebf21b04ad5b095b7bd4c51b47e8bdb22fbb7a",
      "parents": [
        "354c8e3104a8513dbbdc4dea1ffbefe714371e88"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu Aug 05 10:19:00 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 16 21:06:26 2010 -0700"
      },
      "message": "net/atm: Adjust confusing if indentation\n\nOutdent the code following an if.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r disable braces4@\nposition p1,p2;\nstatement S1,S2;\n@@\n\n(\nif (...) { ... }\n|\nif (...) S1@p1 S2@p2\n)\n\n@script:python@\np1 \u003c\u003c r.p1;\np2 \u003c\u003c r.p2;\n@@\n\nif (p1[0].column \u003d\u003d p2[0].column):\n  cocci.print_main(\"branch\",p1)\n  cocci.print_secs(\"after\",p2)\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": "d7100da026317fcf07411f765fe1cdb044053917",
      "tree": "97e9ecbde1575173684a357ad00960384ec7d1db",
      "parents": [
        "3b5bac2bdea1de832bdd8e2c904ab7c9479ff9ed"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Aug 04 07:34:36 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 04 21:53:17 2010 -0700"
      },
      "message": "ppp: make channel_ops const\n\nThe PPP channel ops structure should be const.\nCleanup the declarations to use standard C99 format.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "005066122b58f3b350736cc896af46aea2e32d23",
      "tree": "011565f0e88cf6103c1974ae20ef56d90a6c5070",
      "parents": [
        "7313bb8f3dd6e28bcf9c42adfd54a5cf9a4949e0"
      ],
      "author": {
        "name": "Karl Hiramoto",
        "email": "karl@hiramoto.org",
        "time": "Thu Jul 08 20:55:31 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 09 00:09:21 2010 -0700"
      },
      "message": "atm/br2684: register notifier event for carrier signal changes.\n\nWhen a signal change event occurs call netif_carrier_on/off.\n\nSigned-off-by: Karl Hiramoto \u003ckarl@hiramoto.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7313bb8f3dd6e28bcf9c42adfd54a5cf9a4949e0",
      "tree": "65d8486a2ff4aabc23e0b021f068dd3788081923",
      "parents": [
        "68dc9d36c19aa1fd1633427b419d5e1f44753e8a"
      ],
      "author": {
        "name": "Karl Hiramoto",
        "email": "karl@hiramoto.org",
        "time": "Thu Jul 08 20:55:30 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 09 00:09:20 2010 -0700"
      },
      "message": "atm: propagate signal changes via notifier\n\nAdd notifier chain for changes in atm_dev.\n\nClients like br2684 will call register_atmdevice_notifier() to be notified of\nchanges. Drivers will call atm_dev_signal_change() to notify clients like\nbr2684 of the change.\n\nOn DSL and ATM devices it\u0027s usefull to have a know if you have a carrier\nsignal. netdevice LOWER_UP changes can be propagated to userspace via netlink\nmonitor.\n\nSigned-off-by: Karl Hiramoto \u003ckarl@hiramoto.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8d1f30b95a635dbd610dcc5eb641aca8f4768cf",
      "tree": "71424d82a96facd5fcf05cc769ef2ba52b584aeb",
      "parents": [
        "592fcb9dfafaa02dd0edc207bf5d3a0ee7a1f8df"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Thu Jun 10 23:31:35 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 10 23:31:35 2010 -0700"
      },
      "message": "net-next: remove useless union keyword\n\nremove useless union keyword in rtable, rt6_info and dn_route.\n\nSince there is only one member in a union, the union keyword isn\u0027t useful.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3fa21e07e6acefa31f974d57fba2b6920a7ebd1a",
      "tree": "4254644ef2579e9ac96db6ec0535b5e4231fd18e",
      "parents": [
        "b60b6592baa69c43a5a0f55d6300a7feaab15338"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon May 17 23:08:21 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 23:23:14 2010 -0700"
      },
      "message": "net: Remove unnecessary returns from void function()s\n\nThis patch removes from net/ (but not any netfilter files)\nall the unnecessary return; statements that precede the\nlast closing brace of void functions.\n\nIt does not remove the returns that are immediately\npreceded by a label as gcc doesn\u0027t like that.\n\nDone via:\n$ grep -rP --include\u003d*.[ch] -l \"return;\\n}\" net/ | \\\n  xargs perl -i -e \u0027local $/ ; while (\u003c\u003e) { s/\\n[ \\t\\n]+return;\\n}/\\n}/g; print; }\u0027\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "43815482370c510c569fd18edb57afcb0fa8cab6",
      "tree": "063efaae3758402b84f056438b704d1de68f7837",
      "parents": [
        "83d7eb2979cd3390c375470225dd2d8f2009bc70"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Apr 29 11:01:49 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 01 15:00:15 2010 -0700"
      },
      "message": "net: sock_def_readable() and friends RCU conversion\n\nsk_callback_lock rwlock actually protects sk-\u003esk_sleep pointer, so we\nneed two atomic operations (and associated dirtying) per incoming\npacket.\n\nRCU conversion is pretty much needed :\n\n1) Add a new structure, called \"struct socket_wq\" to hold all fields\nthat will need rcu_read_lock() protection (currently: a\nwait_queue_head_t and a struct fasync_struct pointer).\n\n[Future patch will add a list anchor for wakeup coalescing]\n\n2) Attach one of such structure to each \"struct socket\" created in\nsock_alloc_inode().\n\n3) Respect RCU grace period when freeing a \"struct socket_wq\"\n\n4) Change sk_sleep pointer in \"struct sock\" by sk_wq, pointer to \"struct\nsocket_wq\"\n\n5) Change sk_sleep() function to use new sk-\u003esk_wq instead of\nsk-\u003esk_sleep\n\n6) Change sk_has_sleeper() to wq_has_sleeper() that must be used inside\na rcu_read_lock() section.\n\n7) Change all sk_has_sleeper() callers to :\n  - Use rcu_read_lock() instead of read_lock(\u0026sk-\u003esk_callback_lock)\n  - Use wq_has_sleeper() to eventually wakeup tasks.\n  - Use rcu_read_unlock() instead of read_unlock(\u0026sk-\u003esk_callback_lock)\n\n8) sock_wake_async() is modified to use rcu protection as well.\n\n9) Exceptions :\n  macvtap, drivers/net/tun.c, af_unix use integrated \"struct socket_wq\"\ninstead of dynamically allocated ones. They dont need rcu freeing.\n\nSome cleanups or followups are probably needed, (possible\nsk_callback_lock conversion to a spinlock for example...).\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa395145165cb06a0d0885221bbe0ce4a564391d",
      "tree": "118b0403621f10db8dc3dbf12079f9af5b19e05d",
      "parents": [
        "ab9304717f7624c41927f442e6b6d418b2d8b3e4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Apr 20 13:03:51 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 20 16:37:13 2010 -0700"
      },
      "message": "net: sk_sleep() helper\n\nDefine a new function to return the waitqueue of a \"struct sock\".\n\nstatic inline wait_queue_head_t *sk_sleep(struct sock *sk)\n{\n\treturn sk-\u003esk_sleep;\n}\n\nChange all read occurrences of sk_sleep by a call to this function.\n\nNeeded for a future RCU conversion. sk_sleep wont be a field directly\navailable.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "871039f02f8ec4ab2e5e9010718caa8e085786f1",
      "tree": "f0d2b3127fc48c862967d68c46c2d46668137515",
      "parents": [
        "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
        "4a1032faac94ebbf647460ae3e06fc21146eb280"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/stmmac/stmmac_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_spi.c\n\tnet/core/ethtool.c\n\tnet/mac80211/scan.c\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "62c97ac04a67c120ec37a9bfd445a8d5dbbc1ed2",
      "tree": "8195733812f43e1bb547e916fb718b3135c67eb8",
      "parents": [
        "283f2fe87e980d8af5ad8aa63751e7e3258ee05a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Mar 18 13:48:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 21 18:34:15 2010 -0700"
      },
      "message": "atm: Use kasprintf\n\nUse kasprintf in atm_proc_dev_register()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "67de792420be2daa1c6fec07ec8552af9ea0bde3",
      "tree": "5a0141ea6d3d0f6557a6bd9ec3351d00d6a95f58",
      "parents": [
        "a2b79b414df97a70c33f874b631e06830431d233"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Feb 08 23:21:51 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 10 12:31:10 2010 -0800"
      },
      "message": "net: atm: use seq_list_foo() helpers\n\nSimplify seq_file code.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b50c2ea72a8ed6bc2a954019b6feb6ca41fce07e",
      "tree": "0144f31cb8638cfb051bae879dbcfcbf2a28f80d",
      "parents": [
        "b4c84ec0fd9ec2297b796443051554d062007ba3"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:20 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:05 2010 -0800"
      },
      "message": "net/atm: Cleanup dprint/ddprintk #defines and uses\n\nMove \"mpoa:%s: \", __func__/__FILE__ to #defines\nRemove mpoa __func__/__FILE__ from dprintk uses\nAdd and use #define dprint_cont where appropriate\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b4c84ec0fd9ec2297b796443051554d062007ba3",
      "tree": "393f5c2976589a6c6771805ad326b4e5eb56dc74",
      "parents": [
        "b7d9371befd6fa3eb0ad9d574860095642bf70ed"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:05 2010 -0800"
      },
      "message": "net/atm/lec.c: Add __lec_arp_check_expire and other cleanups\n\nReduce indentation in lec_arp_check_expire\nIndent a case label\nRemove !\u003d NULL logical tests from while ((skb \u003d foo())) assign and tests\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7d9371befd6fa3eb0ad9d574860095642bf70ed",
      "tree": "80b78818f998b20fbe1afbaf1f84af5483366854",
      "parents": [
        "0ec96e656fcd4a8ea8cb0e92f90ab4bb6f79cada"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:18 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:04 2010 -0800"
      },
      "message": "net/atm/svc.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nSpacing cleanups\nMostly 80 column wrapped\nMove trailing statements to new lines\nswitch/case cleanups\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ec96e656fcd4a8ea8cb0e92f90ab4bb6f79cada",
      "tree": "055222355c8f48010720c7a1ebd52c951f2f3ed5",
      "parents": [
        "07b54c9ad4804bdd546d3db0889b0db381c726e3"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:17 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:04 2010 -0800"
      },
      "message": "net/atm/signaling.c: checkpatch cleanups\n\nMostly 80 column wrapped.\nMove embedded assigns out of tests\nMove trailing statements to new lines\nswitch/case cleanups\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "07b54c9ad4804bdd546d3db0889b0db381c726e3",
      "tree": "44ccc08a24de057f5f7cec298fd062760fd76f13",
      "parents": [
        "fa61f0cac8b91e671eb0ba27a4972c7e72a909a6"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:16 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:03 2010 -0800"
      },
      "message": "net/atm/resources.c: checkpatch cleanups\n\nSpacing cleanups\nMostly 80 column wrapped.\nMove embedded assigns out of tests\nMove trailing statements to new lines\nswitch/case cleanups\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fa61f0cac8b91e671eb0ba27a4972c7e72a909a6",
      "tree": "28fa066869f4544fe04c560dd61901a35fc77de4",
      "parents": [
        "6b6dd498f409463635c4f29a3a49585bc7e5d43e"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:03 2010 -0800"
      },
      "message": "net/atm/raw.c: checkpatch cleanups\n\nSpacing cleanups\nMostly 80 column wrapped.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b6dd498f409463635c4f29a3a49585bc7e5d43e",
      "tree": "95570ba974201832b8bc9d3968ad4ff6167477be",
      "parents": [
        "07367adbe5f18b6b7a7476094181ff99cd90cb7e"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:14 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:02 2010 -0800"
      },
      "message": "net/atm/pvc.c: checkpatch cleanups\n\nSpacing cleanups\nMostly 80 column wrapped.\nMove trailing statements to new lines\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "07367adbe5f18b6b7a7476094181ff99cd90cb7e",
      "tree": "739508f7d7c7f6855f3593faf221a070be1bcafe",
      "parents": [
        "d81219db6add0a176c37d6fe4e1c050778de9d2f"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:02 2010 -0800"
      },
      "message": "net/atm/proc.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nMostly 80 column wrapped.\nSpacing cleanups\nMove trailing statements to new lines\nswitch/case cleanups\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d81219db6add0a176c37d6fe4e1c050778de9d2f",
      "tree": "f4b1d7d55a69db10214d98fd4a2c644121cef3be",
      "parents": [
        "f1e100491e0e696b19f37f2b0cf728a5f2bc56e7"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:01 2010 -0800"
      },
      "message": "net/atm/pppoatm.c: checkpatch cleanups\n\nMove embedded assigns out of tests\nMove trailing statements to new lines\nMove labels to column 1\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1e100491e0e696b19f37f2b0cf728a5f2bc56e7",
      "tree": "69f2ed2e4eab1dfac4bae180e84a6e647f9adaaa",
      "parents": [
        "bee67d34b2dd495feafb1a37b5ea2d6179b74178"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:11 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:01 2010 -0800"
      },
      "message": "net/atm/mpoa_proc.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nAdd printk argument verification to dprintk and ddprintk\nSpacing cleanups\nMostly 80 column wrapped.\nRemoved unnecessary breaks after returns\nUse %pI4 in seq_printf of IP address\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bee67d34b2dd495feafb1a37b5ea2d6179b74178",
      "tree": "52e4d5888eef06807b090ccebdd1f71846fcd8dd",
      "parents": [
        "5710044073ea734c0d7806d7fb9cd6308053704b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:10 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:01 2010 -0800"
      },
      "message": "net/atm/mpoa_caches.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nAdd printk argument verification to dprintk and ddprintk\nSpacing cleanups\nMostly 80 column wrapped.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5710044073ea734c0d7806d7fb9cd6308053704b",
      "tree": "de8cdf8c20b8ebc2248ad76dcbd67980cdf9ac46",
      "parents": [
        "c48192a7075fb218d92810fbe76ddd8732f2bbb8"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:09 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:00 2010 -0800"
      },
      "message": "net/atm/mpc.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nAdd printk argument verification to dprintk and ddprintk\nSpacing cleanups\nMostly 80 column wrapped.\nprintk-\u003epr_info and pr_cont\nMoved labels to column 1\nMove trailing statements to new lines\nswitch/case cleanups\n\tremove unnecessary breaks after returns\nRemove unnecessary braces around single line statements\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c48192a7075fb218d92810fbe76ddd8732f2bbb8",
      "tree": "5f4959f6e1ce0ae904e34281c0f6ff3a36756fed",
      "parents": [
        "5ff7ef7911d100b6568c731b1d078f819da82d03"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:16:00 2010 -0800"
      },
      "message": "net/atm/lec.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nMostly 80 column wrapped.\nSpacing cleanups\nConvert printks to pr_\u003clevel\u003e\nUse print_hex_dump\nMove embedded assigns out of tests\nMove trailing statements to new lines\nRemove unnecessary braces around single line statements\nswitch/case cleanups\nRemoved paren around returns\nUse %pM\nMoved leading continuation logical tests to end of previous line\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ff7ef7911d100b6568c731b1d078f819da82d03",
      "tree": "d723b682b0828f48af7e0184dbd0e5da64d8412c",
      "parents": [
        "a8147d737bd37bd51bb01737ac9c17a2cfc02a38"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:07 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:59 2010 -0800"
      },
      "message": "net/atm/ioctl.c: checkpatch cleanups\n\nSpacing cleanups\nMoved EXPORT_SYMBOL\nMostly 80 column wrapped.\nswitch/case cleanups\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a8147d737bd37bd51bb01737ac9c17a2cfc02a38",
      "tree": "dcdfccc62918b176e1c3a6dc4d8820651a8de200",
      "parents": [
        "e956ea1b7de1df5ae4d6dc3e7460ed9e140803cd"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:06 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:59 2010 -0800"
      },
      "message": "net/atm/common.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nMove EXPORT_SYMBOL\nSpacing cleanups\nUse __func__ in printks\nIndent switch/case statements\nMove trailing statements to new line\nHoist assigns from if tests\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e956ea1b7de1df5ae4d6dc3e7460ed9e140803cd",
      "tree": "8f3efa93a7eb0864a6943dd075875db98bca8794",
      "parents": [
        "641d729eb6236db0ce33e2b07a7f93193e60ea5a"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:58 2010 -0800"
      },
      "message": "net/atm/clip.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nSpacing cleanups\nMove labels to column 1\nMove logical continuation tests to end of previous line\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "641d729eb6236db0ce33e2b07a7f93193e60ea5a",
      "tree": "a437b774ab890a5731a0f361c263bab44d1615b6",
      "parents": [
        "f0a6cb118d7f9e72799a9c0c13f75d1b236a6546"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:04 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:58 2010 -0800"
      },
      "message": "net/atm/br2684.c: checkpatch cleanups\n\nConvert #include \u003casm... to #include \u003clinux...\nUse print_hex_dump\nSpacing cleanups\nMove logical continuation tests to end of previous line\n80 column wrapping\nMove goto branch label to column 1\nRemove unnecessary single statement braces\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0a6cb118d7f9e72799a9c0c13f75d1b236a6546",
      "tree": "2a09aea2c483abc53cf021d28081d0694a599f78",
      "parents": [
        "3356b4d41605f9b0977b0963c65f466eee213fe9"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:57 2010 -0800"
      },
      "message": "net/atm/atm_sysfs.c: checkpatch cleanups\n\nAdd space after for\nIndent switch/case statements\n80 column wrapping\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3356b4d41605f9b0977b0963c65f466eee213fe9",
      "tree": "1594dabd6b290c66d0777f3868dc1b28b52c7dee",
      "parents": [
        "c39f01d7883f944ae75961cc1a31d348c7970599"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:02 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:57 2010 -0800"
      },
      "message": "net/atm/atm_misc.c: checkpatch cleanups\n\nMoved EXPORT_SYMBOL to follow definition\nAdd space after commas\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c39f01d7883f944ae75961cc1a31d348c7970599",
      "tree": "bc8cb50dc0f7d6c3e1ec36be1f65d692c65db65d",
      "parents": [
        "99824461ea72ca0044cc6508f02c0e1cabf37ba5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:01 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:56 2010 -0800"
      },
      "message": "net/atm/addr.c: Convert include \u003casm to include \u003clinux\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99824461ea72ca0044cc6508f02c0e1cabf37ba5",
      "tree": "8672e525869778c9d4c12fe3982306387995bf2a",
      "parents": [
        "b747caf365b4121903b26d1cd65454c7bc607184"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Jan 26 11:40:00 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 26 21:15:56 2010 -0800"
      },
      "message": "net/atm: Convert printk to pr_\u003clevel\u003e\n\nAdd #define pr_fmt(fmt) KBUILD_MODNAME \":%s: \" fmt, __func__\nRemove function names from output\nUse single line pr_debug instead of broken multiple uses without newline\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e302ebfeac04beb5a5d6af1ac583c6a1fb76d1a",
      "tree": "8b15d52b73905f89184c91fb146c1b216d71bc8f",
      "parents": [
        "504bb3b58e7314e0fe026da280e8168c1314be3d"
      ],
      "author": {
        "name": "chas williams - CONTRACTOR",
        "email": "chas@cmf.nrl.navy.mil",
        "time": "Fri Dec 04 11:06:32 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 08 20:22:31 2009 -0800"
      },
      "message": "atm: [br2684] allow routed mode operation again\n\nin routed mode, we don\u0027t have a hardware address so netdev_ops doesnt\nneed to validate our hardware address via .ndo_validate_addr\n\nReported-by: Manuel Fuentes \u003cmfuentes@agenciaefe.com\u003e\nSigned-off-by: Chas Williams - CONTRACTOR \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb0445887a45a3705522aac6c2d8367e90358792",
      "tree": "12b489c8b9a1092fafa558c0496ef2ef1c3f7b6c",
      "parents": [
        "2a8875e73ffb18165ceb245f99c2ccad77378051"
      ],
      "author": {
        "name": "chas williams - CONTRACTOR",
        "email": "chas@cmf.nrl.navy.mil",
        "time": "Fri Dec 04 05:19:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 08 20:22:30 2009 -0800"
      },
      "message": "atm: [lec] initialize .netdev_ops before calling register_netdev()\n\nfix oops when initializing lane interfaces. lec should probably be\nchanged to use alloc_netdev() instead.\n\nSigned-off-by: Chas Williams - CONTRACTOR \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09ad9bc752519cc167d0a573e1acf69b5c707c67",
      "tree": "0e190a9ffb90d7e0534136c3e9f31dce02f423c3",
      "parents": [
        "4ba3eb034fb6fd1990ccc5a6d71d5abcda37b905"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Wed Nov 25 15:14:13 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 25 15:14:13 2009 -0800"
      },
      "message": "net: use net_eq to compare nets\n\nGenerated with the following semantic patch\n\n@@\nstruct net *n1;\nstruct net *n2;\n@@\n- n1 \u003d\u003d n2\n+ net_eq(n1, n2)\n\n@@\nstruct net *n1;\nstruct net *n2;\n@@\n- n1 !\u003d n2\n+ !net_eq(n1, n2)\n\napplied over {include,net,drivers/net}.\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "805003a41c035ccbe37d3d5ef5e6df8874346b5a",
      "tree": "55828a6642fc6f974842cea3387f2625ec9499b3",
      "parents": [
        "a2116ed223c88b6c424f42398e54d1607dc785ba"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Nov 11 03:45:22 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 11 19:22:23 2009 -0800"
      },
      "message": "net/atm: move all compat_ioctl handling to atm/ioctl.c\n\nWe have two implementations of the compat_ioctl handling for ATM, the\none that we have had for ages in fs/compat_ioctl.c and the one added to\nnet/atm/ioctl.c by David Woodhouse. Unfortunately, both versions are\nincomplete, and in practice we use a very confusing combination of the\ntwo.\n\nFor ioctl numbers that have the same identifier on 32 and 64 bit systems,\nwe go directly through the compat_ioctl socket operation, for those that\n\ndiffer, we do a conversion in fs/compat_ioctl.c.\n\nThis patch moves both variants into the vcc_compat_ioctl() function,\nwhile preserving the current behaviour. It also kills off the COMPATIBLE_IOCTL\ndefinitions that we never use here.\nDoing it this way is clearly not a good solution, but I hope it is a\nstep into the right direction, so that someone is able to clean up this\nmess for real.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3f378b684453f2a028eda463ce383370545d9cc9",
      "tree": "dc50d087e137c6d173e25ae10ecd0f10823eca7a",
      "parents": [
        "13f18aa05f5abe135f47b6417537ae2b2fedc18c"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Nov 05 22:18:14 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 05 22:18:14 2009 -0800"
      },
      "message": "net: pass kern to net_proto_family create function\n\nThe generic __sock_create function has a kern argument which allows the\nsecurity system to make decisions based on if a socket is being created by\nthe kernel or by userspace.  This patch passes that flag to the\nnet_proto_family specific create function, so it can do the same thing.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b885787ea4112eaa80945999ea0901bf742707f",
      "tree": "06fc15f8e8083d5652ccb4d06653d9812dce9c0b",
      "parents": [
        "d5e63bded6e819ca77ee1a1d97c783a31f6caf30"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Mon Oct 12 13:26:31 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 13:26:31 2009 -0700"
      },
      "message": "net: Generalize socket rx gap / receive queue overflow cmsg\n\nCreate a new socket level option to report number of queue overflows\n\nRecently I augmented the AF_PACKET protocol to report the number of frames lost\non the socket receive queue between any two enqueued frames.  This value was\nexported via a SOL_PACKET level cmsg.  AFter I completed that work it was\nrequested that this feature be generalized so that any datagram oriented socket\ncould make use of this option.  As such I\u0027ve created this patch, It creates a\nnew SOL_SOCKET level option called SO_RXQ_OVFL, which when enabled exports a\nSOL_SOCKET level cmsg that reports the nubmer of times the sk_receive_queue\noverflowed between any two given frames.  It also augments the AF_PACKET\nprotocol to take advantage of this new feature (as it previously did not touch\nsk-\u003esk_drops, which this patch uses to record the overflow count).  Tested\nsuccessfully by me.\n\nNotes:\n\n1) Unlike my previous patch, this patch simply records the sk_drops value, which\nis not a number of drops between packets, but rather a total number of drops.\nDeltas must be computed in user space.\n\n2) While this patch currently works with datagram oriented protocols, it will\nalso be accepted by non-datagram oriented protocols. I\u0027m not sure if thats\nagreeable to everyone, but my argument in favor of doing so is that, for those\nprotocols which aren\u0027t applicable to this option, sk_drops will always be zero,\nand reporting no drops on a receive queue that isn\u0027t used for those\nnon-participating protocols seems reasonable to me.  This also saves us having\nto code in a per-protocol opt in mechanism.\n\n3) This applies cleanly to net-next assuming that commit\n977750076d98c7ff6cbda51858bb5a5894a9d9ab (my af packet cmsg patch) is reverted\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec1b4cf74c81bfd0fbe5bf62bafc86c45917e72f",
      "tree": "1b693e4e027f3e42224e6221ae018daeb562e5e1",
      "parents": [
        "f7734fdf61ec6bb848e0bafc1fb8bad2c124bb50"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Oct 05 05:58:39 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 01:10:46 2009 -0700"
      },
      "message": "net: mark net_proto_ops as const\n\nAll usages of structure net_proto_ops should be declared const.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7058842c940ad2c08dd829b21e5c92ebe3b8758",
      "tree": "5fe78d599fc345ca0bcd4b083b79095a54b2921b",
      "parents": [
        "eb1cf0f8f7a9e5a6d573d5bd72c015686a042db0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 30 16:12:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 30 16:12:20 2009 -0700"
      },
      "message": "net: Make setsockopt() optlen be unsigned.\n\nThis provides safety against negative optlen at the type\nlevel instead of depending upon (sometimes non-trivial)\nchecks against this sprinkled all over the the place, in\neach and every implementation.\n\nBased upon work done by Arjan van de Ven and feedback\nfrom Linus Torvalds.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "137742cf9738f1b4784058ff79aec7ca85e769d4",
      "tree": "1b2424c5d0efe674c8a93f09451b281f0ada3ec6",
      "parents": [
        "81538e74ca12a71ea37ce72f809ebc65a90b9538"
      ],
      "author": {
        "name": "Karl Hiramoto",
        "email": "karl@hiramoto.org",
        "time": "Wed Sep 02 23:26:39 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 23:46:10 2009 -0700"
      },
      "message": "atm/br2684: netif_stop_queue() when atm device busy and netif_wake_queue() when we can send packets again.\n\nThis patch removes the call to dev_kfree_skb() when the atm device is busy.\nCalling dev_kfree_skb() causes heavy packet loss then the device is under\nheavy load, the more correct behavior should be to stop the upper layers,\nthen when the lower device can queue packets again wake the upper layers.\n\nSigned-off-by: Karl Hiramoto \u003ckarl@hiramoto.org\u003e\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89d69d2b75a8f7e258f4b634cd985374cfd3202e",
      "tree": "2f01d6ae1844c92ef09160ad1966edee34ee2d8a",
      "parents": [
        "dcbfef820bdd1cdb412ccf234840e23edf67014f"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Sep 01 11:13:19 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:40:57 2009 -0700"
      },
      "message": "net: make neigh_ops constant\n\nThese tables are never modified at runtime. Move to read-only\nsection.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3c805a22a3a178fc5aaadd518afa5358b78bf69e",
      "tree": "fe93630007876b4aaddb2fa8d92141df2f74e24c",
      "parents": [
        "6fef4c0c8eeff7de13007a5f56113475444a253d"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Aug 31 19:50:42 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 01:13:10 2009 -0700"
      },
      "message": "convert ATM drivers to netdev_tx_t\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36cbd3dcc10384f813ec0814255f576c84f2bcd4",
      "tree": "c3579edea972519d2f9ae99d7da9a5dd56e6f5c1",
      "parents": [
        "db71789c01ae7b641f83c5aa64e7df25122f4b28"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Aug 05 10:42:58 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 05 10:42:58 2009 -0700"
      },
      "message": "net: mark read-only arrays as const\n\nString literals are constant, and usually, we can also tag the array\nof pointers const too, moving it to the .rodata section.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5a8a896f5180f2950695d2d0b79db348d200ca4",
      "tree": "04adc57ae51a6d30a89ffae970770b81ee81fc23",
      "parents": [
        "bff38771e1065c7fc3de87e47ba366151eea573c",
        "e594e96e8a14101a6decabf6746bd5186287debc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 09 20:18:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 09 20:18:24 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "a57de0b4336e48db2811a2030bb68dba8dd09d88",
      "tree": "a01c189d5fd55c69c9e2e842241e84b46728bc60",
      "parents": [
        "1b614fb9a00e97b1eab54d4e442d405229c059dd"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Jul 08 12:09:13 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 09 17:06:57 2009 -0700"
      },
      "message": "net: adding memory barrier to the poll and receive callbacks\n\nAdding memory barrier after the poll_wait function, paired with\nreceive callbacks. Adding fuctions sock_poll_wait and sk_has_sleeper\nto wrap the memory barrier.\n\nWithout the memory barrier, following race can happen.\nThe race fires, when following code paths meet, and the tp-\u003ercv_nxt\nand __add_wait_queue updates stay in CPU caches.\n\nCPU1                         CPU2\n\nsys_select                   receive packet\n  ...                        ...\n  __add_wait_queue           update tp-\u003ercv_nxt\n  ...                        ...\n  tp-\u003ercv_nxt check          sock_def_readable\n  ...                        {\n  schedule                      ...\n                                if (sk-\u003esk_sleep \u0026\u0026 waitqueue_active(sk-\u003esk_sleep))\n                                        wake_up_interruptible(sk-\u003esk_sleep)\n                                ...\n                             }\n\nIf there was no cache the code would work ok, since the wait_queue and\nrcv_nxt are opposit to each other.\n\nMeaning that once tp-\u003ercv_nxt is updated by CPU2, the CPU1 either already\npassed the tp-\u003ercv_nxt check and sleeps, or will get the new value for\ntp-\u003ercv_nxt and will return with new data mask.\nIn both cases the process (CPU1) is being added to the wait queue, so the\nwaitqueue_active (CPU2) call cannot miss and will wake up CPU1.\n\nThe bad case is when the __add_wait_queue changes done by CPU1 stay in its\ncache, and so does the tp-\u003ercv_nxt update on CPU2 side.  The CPU1 will then\nendup calling schedule and sleep forever if there are no more data on the\nsocket.\n\nCalls to poll_wait in following modules were ommited:\n\tnet/bluetooth/af_bluetooth.c\n\tnet/irda/af_irda.c\n\tnet/irda/irnet/irnet_ppp.c\n\tnet/mac80211/rc80211_pid_debugfs.c\n\tnet/phonet/socket.c\n\tnet/rds/af_rds.c\n\tnet/rfkill/core.c\n\tnet/sunrpc/cache.c\n\tnet/sunrpc/rpc_pipe.c\n\tnet/tipc/socket.c\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec634fe328182a1a098585bfc7b69e5042bdb08d",
      "tree": "02883aaee743af10d78d6d8fe9181944b4dd4529",
      "parents": [
        "a73e76e23c20c05cb8c0b7ba8bc9daa04b05c80f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sun Jul 05 19:23:38 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 05 19:23:38 2009 -0700"
      },
      "message": "net: convert remaining non-symbolic return values in ndo_start_xmit() functions\n\nThis patch converts the remaining occurences of raw return values to their\nsymbolic counterparts in ndo_start_xmit() functions that were missed by the\nprevious automatic conversion.\n\nAdditionally code that assumed the symbolic value of NETDEV_TX_OK to be zero\nis changed to explicitly use NETDEV_TX_OK.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ed106549d17474ca17a16057f4c0ed4eba5a7ca",
      "tree": "b98c09081509b3a9757339b6b66779e4126dfa29",
      "parents": [
        "0e8635a8e1f2d4a9e1bfc6c3b21419a5921e674f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 23 06:03:08 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 05 19:16:04 2009 -0700"
      },
      "message": "net: use NETDEV_TX_OK instead of 0 in ndo_start_xmit() functions\n\nThis patch is the result of an automatic spatch transformation to convert\nall ndo_start_xmit() return values of 0 to NETDEV_TX_OK.\n\nSome occurences are missed by the automatic conversion, those will be\nhandled in a seperate patch.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81e2a3d5b75cbf0b42428b9d5a7cc7c85be9e7a7",
      "tree": "cac92ad222a84f30e129b569cb489652a0ca44ef",
      "parents": [
        "31e6d363abcd0d05766c82f1a9c905a4c974a199"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jun 17 19:06:12 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 18 00:29:12 2009 -0700"
      },
      "message": "atm: sk_wmem_alloc initial value is one\n\ncommit 2b85a34e911bf483c27cfdd124aeb1605145dc80\n(net: No more expensive sock_hold()/sock_put() on each tx)\nchanged initial sk_wmem_alloc value.\n\nThis broke net/atm since this protocol assumed a null\ninitial value. This patch makes necessary changes.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81fbbf60408ad6b98ff72120de948cb7fd2498d0",
      "tree": "5612bc41fdce360b4846ce1142d7f7db59765a7d",
      "parents": [
        "98ca4a46d27348476c9196ebc0a0c5297431d90f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jun 12 05:34:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 01:18:43 2009 -0700"
      },
      "message": "net: fix network drivers ndo_start_xmit() return values (part 7)\n\nFix up ATM drivers that return an errno value to qdisc_restart(), causing\nqdisc_restart() to print a warning an requeue/retransmit the skb.\n\n- lec: condition can only be remedied by userspace, until that retransmissions\n\nCompile tested only.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da6782927de809d9d427bd4bd6a4024243e41f13",
      "tree": "79419b352017a0c125c2b17e6a170589b31d8cb3",
      "parents": [
        "746e6ad23cd6fec2edce056e014a0eabeffa838c"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Fri Jun 05 05:35:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 21:03:21 2009 -0700"
      },
      "message": "bridge: Simplify interface for ATM LANE\n\nThis patch changes FDB entry check for ATM LANE bridge integration.\nThere\u0027s no point in holding a FDB entry around SKB building.\n\nbr_fdb_get()/br_fdb_put() pair are changed into single br_fdb_test_addr()\nhook that checks if the addr has FDB entry pointing to other port\nto the one the request arrived on.\n\nFDB entry refcounting is removed as it\u0027s not used anywhere else.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adf30907d63893e4208dfe3f5c88ae12bc2f25d5",
      "tree": "0f07542bb95de2ad537540868aba6cf87a86e17d",
      "parents": [
        "511c3f92ad5b6d9f8f6464be1b4f85f0422be91a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jun 02 05:19:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 03 02:51:04 2009 -0700"
      },
      "message": "net: skb-\u003edst accessors\n\nDefine three accessors to get/set dst attached to a skb\n\nstruct dst_entry *skb_dst(const struct sk_buff *skb)\n\nvoid skb_dst_set(struct sk_buff *skb, struct dst_entry *dst)\n\nvoid skb_dst_drop(struct sk_buff *skb)\nThis one should replace occurrences of :\ndst_release(skb-\u003edst)\nskb-\u003edst \u003d NULL;\n\nDelete skb-\u003edst field\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a489e51c1a69c3aa7e7aea925f71c92be5cedbb1",
      "tree": "adcb50b051329aa9f2cd98fef3c579bb18a5a938",
      "parents": [
        "28e72216d7e7af7050f171a87c1eecba93d01ea6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu May 28 11:14:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 29 01:46:28 2009 -0700"
      },
      "message": "atm: unset IFF_XMIT_DST_RELEASE in clip_setup()\n\nclip_start_xmit() needs skb-\u003edst so tell dev_hard_start_xmit()\nto no release it.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b6211ae7f2e56837c6a4849316396d1535606e90",
      "tree": "4145a71b4832290a70f5932b2b962f94b940b56a",
      "parents": [
        "46c37672d7fff0097385eb0cbd01aa0254dad0aa"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 28 16:36:47 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 28 16:36:47 2009 -0700"
      },
      "message": "atm: Use SKB queue and list helpers instead of doing it by-hand.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "902e5ea15f8471a3213a37b11b98196f3406aeaf",
      "tree": "cd8538075d504800868fb32c7f5f77fbef1f655c",
      "parents": [
        "d0ab8ff81bf1b01bae7d6b92ca067badbbb02cc9"
      ],
      "author": {
        "name": "Rabin Vincent",
        "email": "rabin@rab.in",
        "time": "Sat May 02 13:49:36 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 02 13:49:36 2009 -0700"
      },
      "message": "Subject: [PATCH] br2684: restore net_dev initialization\n\nCommit 0ba25ff4c669e5395110ba6ab4958a97a9f96922 (\"br2684: convert to\nnet_device_ops\") inadvertently deleted the initialization of the net_dev\npointer in the br2684_dev structure, leading to crashes.  This patch\nadds it back.\n\nReported-by: Mikko Vinni \u003cmmvinni@yahoo.com\u003e\nTested-by: Mikko Vinni \u003cmmvinni@yahoo.com\u003e\nSigned-off-by: Rabin Vincent \u003crabin@rab.in\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99b76233803beab302123d243eea9e41149804f3",
      "tree": "398178210fe66845ccd6fa4258ba762a87e023ad",
      "parents": [
        "3dec7f59c370c7b58184d63293c3dc984d475840"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Mar 25 22:48:06 2009 +0300"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Mar 31 01:14:44 2009 +0400"
      },
      "message": "proc 2/2: remove struct proc_dir_entry::owner\n\nSetting -\u003eowner as done currently (pde-\u003eowner \u003d THIS_MODULE) is racy\nas correctly noted at bug #12454. Someone can lookup entry with NULL\n-\u003eowner, thus not pinning enything, and release it later resulting\nin module refcount underflow.\n\nWe can keep -\u003eowner and supply it at registration time like -\u003eproc_fops\nand -\u003edata.\n\nBut this leaves -\u003eowner as easy-manipulative field (just one C assignment)\nand somebody will forget to unpin previous/pin current module when\nswitching -\u003eowner. -\u003eproc_fops is declared as \"const\" which should give\nsome thoughts.\n\n-\u003eread_proc/-\u003ewrite_proc were just fixed to not require -\u003eowner for\nprotection.\n\nrmmod\u0027ed directories will be empty and return \".\" and \"..\" -- no harm.\nAnd directories with tricky enough readdir and lookup shouldn\u0027t be modular.\nWe definitely don\u0027t want such modular code.\n\nRemoving -\u003eowner will also make PDE smaller.\n\nSo, let\u0027s nuke it.\n\nKudos to Jeff Layton for reminding about this, let\u0027s say, oversight.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d12454\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "dde09758557120cb71fb760cfeaed1b8e27209ef",
      "tree": "30a63011bf9c7d16091d86b36031e08269a8fdf7",
      "parents": [
        "788dee0a954745a182f9341539e5e0fe874b48fc"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Mar 20 19:35:29 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 19:19:12 2009 -0700"
      },
      "message": "atm: convert clip driver to net_device_ops\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "788dee0a954745a182f9341539e5e0fe874b48fc",
      "tree": "68e02cf2ca9f1e275594cd9d79583afe25f98275",
      "parents": [
        "6fb70fd1b57707a5c7b9fb167b7790b2cba13f04"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Mar 20 19:35:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 19:19:12 2009 -0700"
      },
      "message": "atm: convert mpc device to using netdev_ops\n\nThis converts the mpc device to using new netdevice_ops.\nCompile tested only, needs more than usual review since\ndevice was swaping pointers around etc.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1f1900f935e810d01c716fa2aaf8c9d25caa4151",
      "tree": "7ee3fada9c65629b8fe85f5b3009fa084de19d27",
      "parents": [
        "a0bffffc148cd8e75a48a89ad2ddb74e4081a20a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sat Mar 21 13:37:28 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 13:37:28 2009 -0700"
      },
      "message": "atm: lec use dev_change_mtu\n\nRather than calling device pointer directly (which is incorrect with\nnet_device_ops), use the standard dev_change_mtu. Compile tested only.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "004b3225c016efc90cbfe43cdf69c6331462bc56",
      "tree": "fcb41472cfa1befc5c688a1cf38f3d067c03a06b",
      "parents": [
        "162619e59ab456aa689080726cb2ada24c1dfddd"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Jan 09 13:01:02 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 21 14:02:00 2009 -0800"
      },
      "message": "lec: convert to net_device_ops\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "162619e59ab456aa689080726cb2ada24c1dfddd",
      "tree": "6990ca9cfb0b7c8200b2fd4c19a074f32906c65a",
      "parents": [
        "1a6afe8a733a3edaa1816c10ec2a7353ae0ff47b"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Jan 09 13:01:01 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 21 14:02:00 2009 -0800"
      },
      "message": "lec: convert to internal network_device_stats\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a6afe8a733a3edaa1816c10ec2a7353ae0ff47b",
      "tree": "4522d06ce87672bb0a1e5d41c5f8f1ea74fa1f64",
      "parents": [
        "0ba25ff4c669e5395110ba6ab4958a97a9f96922"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Jan 09 13:01:00 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 21 14:01:59 2009 -0800"
      },
      "message": "clip: convert to internal network_device_stats\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ba25ff4c669e5395110ba6ab4958a97a9f96922",
      "tree": "40020ab95aa79d126a32d5abcf923b08c89550a0",
      "parents": [
        "410e9d8f9ce962923b52096d40781a569803c760"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Jan 09 13:00:59 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 21 14:01:59 2009 -0800"
      },
      "message": "br2684: convert to net_device_ops\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "410e9d8f9ce962923b52096d40781a569803c760",
      "tree": "e521d57dd5cfdd527af7637aa2a45e45e4e06483",
      "parents": [
        "6d317482944250228255bcbe97a95b7e7ad9a538"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Jan 09 13:00:58 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 21 14:01:58 2009 -0800"
      },
      "message": "atm: br2684 internal stats\n\nNow that stats are in net_device, use them.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b74ca3a896b9ab5f952bc440154758e708c48884",
      "tree": "cc67fc67ddd6ac20e25b1060ab633a4d5c4e6ee8",
      "parents": [
        "5a001a070e032bea1be563b13ebf9819cd5e54d4"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Mon Dec 08 01:14:16 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 08 01:14:16 2008 -0800"
      },
      "message": "netdevice: Kill netdev-\u003epriv\n\nThis is the last shoot of this series.\nAfter I removing all directly reference of netdev-\u003epriv, I am killing\n\"priv\" of \"struct net_device\" and fixing relative comments/docs.\n\nAnyone will not be allowed to reference netdev-\u003epriv directly.\nIf you want to reference the memory of private data, use netdev_priv()\ninstead.\nIf the private data is not allocted when alloc_netdev(), use\nnetdev-\u003eml_priv to point that memory after you creating that private\ndata.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "730c30ec646bd252a9448a66ecd51d794853513f",
      "tree": "c0d413860f9d8bf37374f17cfabb4911143465d7",
      "parents": [
        "726e07a8a38168266ac95d87736f9501a2d9e7b2",
        "0a0755c9fe47dc9f8271935909c66096e43efbfe"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 05 22:54:40 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 05 22:54:40 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/iwlwifi/iwl-core.c\n\tdrivers/net/wireless/iwlwifi/iwl-sta.c\n"
    },
    {
      "commit": "17b24b3c97498935a2ef9777370b1151dfed3f6f",
      "tree": "5b291b7069494889f375427448a30fde92332fcd",
      "parents": [
        "2cc002c4bbce4d918ab94b494d61c6991c907d5e"
      ],
      "author": {
        "name": "Chas Williams",
        "email": "chas@cmf.nrl.navy.mil",
        "time": "Thu Dec 04 14:58:13 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 04 14:58:13 2008 -0800"
      },
      "message": "ATM: CVE-2008-5079: duplicate listen() on socket corrupts the vcc table\n\nAs reported by Hugo Dias that it is possible to cause a local denial\nof service attack by calling the svc_listen function twice on the same\nsocket and reading /proc/net/atm/*vc\n\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8865c418caf4e9dd2c24bdfae3a5a4106e143e60",
      "tree": "4d7fac2c74af56c6aaf83b324b349b76c5f949d9",
      "parents": [
        "dcd39c90290297f6e6ed8a04bb20da7ac2b043c5"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Dec 03 22:12:38 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 03 22:12:38 2008 -0800"
      },
      "message": "atm: 32-bit ioctl compatibility\n\nWe lack compat ioctl support through most of the ATM code. This patch\ndeals with most of it, and I can now at least use BR2684 and PPPoATM\nwith 32-bit userspace.\n\nI haven\u0027t added a .compat_ioctl method to struct atm_ioctl, because\nAFAICT none of the current users need any conversion -- so we can just\ncall the -\u003eioctl() method in every case. I looked at br2684, clip, lec,\nmpc, pppoatm and atmtcp.\n\nIn svc_compat_ioctl() the only mangling which is needed is to change\nCOMPAT_ATM_ADDPARTY to ATM_ADDPARTY. Although it\u0027s defined as\n\t_IOW(\u0027a\u0027, ATMIOC_SPECIAL+4,struct atm_iobuf)\nit doesn\u0027t actually _take_ a struct atm_iobuf as an argument -- it takes\na struct sockaddr_atmsvc, which _is_ the same between 32-bit and 64-bit\ncode, so doesn\u0027t need conversion.\n\nAlmost all of vcc_ioctl() would have been identical, so I converted that\ninto a core do_vcc_ioctl() function with an \u0027int compat\u0027 argument.\n\nI\u0027ve done the same with atm_dev_ioctl(), where there _are_ a few\ndifferences, but still it\u0027s relatively contained and there would\notherwise have been a lot of duplication.\n\nI haven\u0027t done any of the actual device-specific ioctls, although I\u0027ve\nadded a compat_ioctl method to struct atmdev_ops.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "524ad0a79126efabf58d0a49eace6155ab5b4549",
      "tree": "927e79d7d28d2c563c5beba74f06527df564e31c",
      "parents": [
        "8f15ea42b64941001a401cf855a0869e24f3a845"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Wed Nov 12 23:39:10 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 12 23:39:10 2008 -0800"
      },
      "message": "netdevice: safe convert to netdev_priv() #part-4\n\nWe have some reasons to kill netdev-\u003epriv:\n1. netdev-\u003epriv is equal to netdev_priv().\n2. netdev_priv() wraps the calculation of netdev-\u003epriv\u0027s offset, obviously\n   netdev_priv() is more flexible than netdev-\u003epriv.\nBut we cann\u0027t kill netdev-\u003epriv, because so many drivers reference to it\ndirectly.\n\nThis patch is a safe convert for netdev-\u003epriv to netdev_priv(netdev).\nSince all of the netdev-\u003epriv is only for read.\nBut it is too big to be sent in one mail.\nI split it to 4 parts and make every part smaller than 100,000 bytes,\nwhich is max size allowed by vger.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fb28ad35906af2f042c94e2f9c0f898ef9acfa37",
      "tree": "ee3d535ab38d680b424a857406789f8c28bf5266",
      "parents": [
        "23779897546c1effb546ff89b89803d9d955d517"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Mon Nov 10 13:55:14 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 10 13:55:14 2008 -0800"
      },
      "message": "net: struct device - replace bus_id with dev_name(), dev_set_name()\n\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21454aaad30651ba0dcc16fe5271bc12ee21f132",
      "tree": "eb525494d6f80a0e855840bc588ae1f422348b04",
      "parents": [
        "14d5e834f6b36667c7da56374645f99b6cf30814"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Oct 31 00:54:56 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 31 00:54:56 2008 -0700"
      },
      "message": "net: replace NIPQUAD() in net/*/\n\nUsing NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u\ncan be replaced with %pI4\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e174961ca1a0b28f7abf0be47973ad57cb74e5f0",
      "tree": "e8f74ecd420a0e380a71670e5aec5c2a0c15640a",
      "parents": [
        "0c68ae2605dbcf67414d8d1f19af93be44b355fb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Oct 27 15:59:26 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 27 17:06:18 2008 -0700"
      },
      "message": "net: convert print_mac to %pM\n\nThis converts pretty much everything to print_mac. There were\na few things that had conflicts which I have just dropped for\nnow, no harm done.\n\nI\u0027ve built an allyesconfig with this and looked at the files\nthat weren\u0027t built very carefully, but it\u0027s a huge patch.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e687220a047dc4f0c2fb9ce886359a23075ddbc",
      "tree": "77633d3ab00411df31a361e208396f392cb7ea22",
      "parents": [
        "bb55b327cb7638d5b5320c766950bfb328636e9f"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Mon Sep 22 19:24:45 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 22 19:24:45 2008 -0700"
      },
      "message": "net/atm/lec.c: drop code after return\n\nThe break after the return serves no purpose.\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nReviewed-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6067804047b64dde89f4f133fc7eba48ee44107d",
      "tree": "abe87787c3ad2aee82e576c7d4128e29bb296ac0",
      "parents": [
        "a574420ff46cff0245e6b0fce2e961aa2717743d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "message": "net: Use hton[sl]() instead of __constant_hton[sl]() where applicable\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cba5cbd1559f49bec76e54de6ed21b7df3742ada",
      "tree": "d2e6d53763f4822c5c8488ed0906f697263608b8",
      "parents": [
        "6a8341b68b5269de71c32c6df91f4b0298da031d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Jul 30 16:31:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 16:31:46 2008 -0700"
      },
      "message": "atm: fix const assignment/discard warnings in the ATM networking driver\n\nFix const assignment/discard warnings in the ATM networking driver.\n\nThe lane2_assoc_ind() function needed its arguments changing to match changes\nin the lane2_ops struct (patch 61c33e012964ce358b42d2a1e9cd309af5dab02b\n\"atm: use const where reasonable\").\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "721499e8931c5732202481ae24f2dfbf9910f129",
      "tree": "c94d8d681966109bb41f712f21f3a9825ae2172d",
      "parents": [
        "407d819cf0fd54c6fc1138a509225696aecafd15"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Jul 19 22:34:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 19 22:34:43 2008 -0700"
      },
      "message": "netns: Use net_eq() to compare net-namespaces for optimization.\n\nWithout CONFIG_NET_NS, namespace is always \u0026init_net.\nCompiler will be able to omit namespace comparisons with this patch.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "61c33e012964ce358b42d2a1e9cd309af5dab02b",
      "tree": "e76ac9b1e61a998def99f0f8f7fa4688fab26494",
      "parents": [
        "df3bc8bd8f8fd17e9b22859d82af38fa702e75b7"
      ],
      "author": {
        "name": "Mitchell Blank Jr",
        "email": "mitch@sfgoth.com",
        "time": "Tue Jun 17 16:20:06 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 17 16:20:06 2008 -0700"
      },
      "message": "atm: use const where reasonable\n\nFrom: Mitchell Blank Jr \u003cmitch@sfgoth.com\u003e\n\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e903c2ae36efb526eacab3b25d00e90424bd8a8",
      "tree": "857f53f4d5b039ecc8c40238b2e8a115c7e497b0",
      "parents": [
        "059e3779b59527150e1d1942026ec149192cbf77"
      ],
      "author": {
        "name": "Eric Kinzie",
        "email": "ekinzie@cmf.nrl.navy.mil",
        "time": "Mon Jun 16 17:18:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 16 17:18:18 2008 -0700"
      },
      "message": "atm: [br2864] fix routed vcmux support\n\nFrom: Eric Kinzie \u003cekinzie@cmf.nrl.navy.mil\u003e\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27141666b69f535a4d63d7bc6d9e84ee5032f82a",
      "tree": "b1aec050d32e5a2d1d75e8c88b4407c409720a33",
      "parents": [
        "a9d246dbb07cf0bd32bbfc5d184ed738bf2af4f8"
      ],
      "author": {
        "name": "Jorge Boncompte [DTI2]",
        "email": "jorge@dti2.net",
        "time": "Mon Jun 16 17:15:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 16 17:15:33 2008 -0700"
      },
      "message": "atm: [br2684] Fix oops due to skb-\u003edev being NULL\n\nIt happens that if a packet arrives in a VC between the call to open it on\nthe hardware and the call to change the backend to br2684, br2684_regvcc\nprocesses the packet and oopses dereferencing skb-\u003edev because it is\nNULL before the call to br2684_push().\n\nSigned-off-by: Jorge Boncompte [DTI2] \u003cjorge@dti2.net\u003e\nSigned-off-by: Chas Williams \u003cchas@cmf.nrl.navy.mil\u003e\n"
    },
    {
      "commit": "5f6b1ea41b46bc63f667f9b30d939b49734c20b0",
      "tree": "a7cd8e40aaa07578267242aba8f04db65887f171",
      "parents": [
        "19443178fbfbf40db15c86012fc37df1a44ab857"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 06 00:00:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 06 00:00:16 2008 -0700"
      },
      "message": "Revert \"atm: Do not free already unregistered net device.\"\n\nThis reverts commit 65e4113684e50cee75357ce10dc9026b0929e4e9.\n\nUnlike the other cases Pavel fixed, this case did not\nsetup a netdev-\u003edestructor of free_netdev, therefore this\nchange was not correct.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1e0ba0060ffcee2e766ec3159196235b1a2a0ff3",
      "tree": "7678778bf09f9822db4541497efd9cd6b4fd571f",
      "parents": [
        "65e4113684e50cee75357ce10dc9026b0929e4e9"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun May 04 18:00:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 04 18:00:36 2008 -0700"
      },
      "message": "atm: Bad locking on br2684_devs modifications.\n\nThe list_del happens under read-locked devs_lock.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65e4113684e50cee75357ce10dc9026b0929e4e9",
      "tree": "9f3f8230f06254319256f0336f143d5c701802f0",
      "parents": [
        "339a7c41c913035bf58579f6e47b4ba29da83795"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun May 04 18:00:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 04 18:00:05 2008 -0700"
      },
      "message": "atm: Do not free already unregistered net device.\n\nBoth br2684_push and br2684_exit do so, but unregister_netdev()\nreleases the device itself.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c89652a741cce71661d561c4466115c60c752d1",
      "tree": "902f6f4a2551d07971d8e56ca3a535cf7ec8651d",
      "parents": [
        "0bb53a66fe1258b1cb5eb1ea70768386f0c2a1ca"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Fri May 02 04:08:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 02 04:08:30 2008 -0700"
      },
      "message": "atm: assign PDE-\u003edata before gluing PDE into /proc tree\n\nSimply replace proc_create and further data assigned with proc_create_data.\nproc_atm_dev_ops holds proper referrence.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "df39e8ba56a788733d369068c7319e04b1da3cd5"
}
