)]}'
{
  "log": [
    {
      "commit": "3cfc2c42c1cbc8e238bb9c0612c0df4565e3a8b4",
      "tree": "5adc1ff2eaf64d450bf28bb6b2ce890db2567288",
      "parents": [
        "5cf65713f87775c548e3eb48dbafa32e12f28000",
        "0ea6e61122196509af82cc4f36cbdaacbefb8227"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits)\n  Documentation: update broken web addresses.\n  fix comment typo \"choosed\" -\u003e \"chosen\"\n  hostap:hostap_hw.c Fix typo in comment\n  Fix spelling contorller -\u003e controller in comments\n  Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -\u003e Fault\n  fs/Kconfig: Fix typo Userpace -\u003e Userspace\n  Removing dead MACH_U300_BS26\n  drivers/infiniband: Remove unnecessary casts of private_data\n  fs/ocfs2: Remove unnecessary casts of private_data\n  libfc: use ARRAY_SIZE\n  scsi: bfa: use ARRAY_SIZE\n  drm: i915: use ARRAY_SIZE\n  drm: drm_edid: use ARRAY_SIZE\n  synclink: use ARRAY_SIZE\n  block: cciss: use ARRAY_SIZE\n  comment typo fixes: charater \u003d\u003e character\n  fix comment typos concerning \"challenge\"\n  arm: plat-spear: fix typo in kerneldoc\n  reiserfs: typo comment fix\n  update email address\n  ...\n"
    },
    {
      "commit": "d790d4d583aeaed9fc6f8a9f4d9f8ce6b1c15c7f",
      "tree": "854ab394486288d40fa8179cbfaf66e8bdc44b0f",
      "parents": [
        "73b2c7165b76b20eb1290e7efebc33cfd21db1ca",
        "3a09b1be53d23df780a0cd0e4087a05e2ca4a00c"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 04 15:14:38 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 04 15:14:38 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "28b041139e344ecd0f144d6205b004ae354cfa1e",
      "tree": "7fc0e05d01717da0410a7b3252b0cac3fc8db81d",
      "parents": [
        "4507a71507d4ff37e9a499c4241b7701ed1feab4"
      ],
      "author": {
        "name": "Richard Cochran",
        "email": "richardcochran@gmail.com",
        "time": "Sat Jul 17 08:48:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 18 19:15:25 2010 -0700"
      },
      "message": "net: preserve ifreq parameter when calling generic phy_mii_ioctl().\n\nThe phy_mii_ioctl() function unnecessarily throws away the original ifreq.\nWe need access to the ifreq in order to support PHYs that can perform\nhardware time stamping.\n\nTwo maverick drivers filter the ioctl commands passed to phy_mii_ioctl().\nThis is unnecessary since phylib will check the command in any case.\n\nSigned-off-by: Richard Cochran \u003crichard.cochran@omicron.at\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "acbc0f039ff4b93da737c91937b7c70018ded39f",
      "tree": "8139b01aaaaf6301f246b0c3b468ad8d4e8f55df",
      "parents": [
        "f29a3d040727a80c3307a2bea057206be049c305"
      ],
      "author": {
        "name": "Eran Liberty",
        "email": "liberty@extricom.com",
        "time": "Wed Jul 07 15:54:54 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 07 15:54:54 2010 -0700"
      },
      "message": "gianfar: code cleanup\n\nThis patch relates to \"[PATCH] gainfar.c : skb_over_panic\n(kernel-2.6.32.15)\"\n\nWhile in 2.6.32.15 it actually fixed a bug here it merely cleans up\nthe previous attempts to fix the bug with a more coherent code.\n\nCurrently before queuing skb into the rx_recycle it is\n\"un-skb_reserve\"-ed so when taken out in gfar_new_skb() it wont be\nreserved twice.\n\nThis patch makes sure the alignment skb_reserve is done once, upon\nallocating the skb and not when taken out of the rx_recycle\npool. Eliminating the need to undo anything before queue skb back to\nthe pool.\n\nNOTE: This patch will compile and is fairly straight forward but I do\nnot have environment to test it as I did with the 2.6.32.15 fix.\n\nSigned-off-by: Eran Liberty \u003cliberty@extricom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "511d934f4496076898e45aaa09e0c85376eb16ee",
      "tree": "a50a7b366c340a66b7a1f10f59b737f23c370ebc",
      "parents": [
        "deb90eacd084d9edfeda2f714d99c29a86360077"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Wed Jun 30 06:39:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 30 11:35:43 2010 -0700"
      },
      "message": "gianfar: Implement workaround for eTSEC-A002 erratum\n\nMPC8313ECE says:\n\n\"If the controller receives a 1- or 2-byte frame (such as an illegal\n runt packet or a packet with RX_ER asserted) before GRS is asserted\n and does not receive any other frames, the controller may fail to set\n GRSC even when the receive logic is completely idle. Any subsequent\n receive frame that is larger than two bytes will reset the state so\n the graceful stop can complete. A MAC receiver (Rx) reset will also\n reset the state.\"\n\nThis patch implements the proposed workaround:\n\n\"If IEVENT[GRSC] is still not set after the timeout, read the eTSEC\n register at offset 0xD1C. If bits 7-14 are the same as bits 23-30,\n the eTSEC Rx is assumed to be idle and the Rx can be safely reset.\n If the register fields are not equal, wait for another timeout\n period and check again.\"\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "deb90eacd084d9edfeda2f714d99c29a86360077",
      "tree": "e0bbd8c70d6f88674d047f2c107772ef63998e9c",
      "parents": [
        "7d3509774c2ef4ffd1c5fd2fac65dc4e071a6f21"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Wed Jun 30 06:39:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 30 11:35:42 2010 -0700"
      },
      "message": "gianfar: Implement workaround for eTSEC76 erratum\n\nMPC8313ECE says:\n\n\"For TOE\u003d1 huge or jumbo frames, the data required to generate the\n checksum may exceed the 2500-byte threshold beyond which the controller\n constrains itself to one memory fetch every 256 eTSEC system clocks.\n\n This throttling threshold is supposed to trigger only when the\n controller has sufficient data to keep transmit active for the duration\n of the memory fetches. The state machine handling this threshold,\n however, fails to take large TOE frames into account. As a result,\n TOE\u003d1 frames larger than 2500 bytes often see excess delays before start\n of transmission.\"\n\nThis patch implements the workaround as suggested by the errata\ndocument, i.e.:\n\n\"Limit TOE\u003d1 frames to less than 2500 bytes to avoid excess delays due to\n memory throttling.\n When using packets larger than 2700 bytes, it is recommended to turn TOE\n off.\"\n\nTo be sure, we limit the TOE frames to 2500 bytes, and do software\nchecksumming instead.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7d3509774c2ef4ffd1c5fd2fac65dc4e071a6f21",
      "tree": "54d32c6f6f6c72fee208ab8dea9879697b613765",
      "parents": [
        "70777d03466e7a8a41b0d34677454c92f4e93d89"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Wed Jun 30 06:39:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 30 11:35:42 2010 -0700"
      },
      "message": "gianfar: Implement workaround for eTSEC74 erratum\n\nMPC8313ECE says:\n\n\"If MACCFG2[Huge Frame]\u003d0 and the Ethernet controller receives frames\n which are larger than MAXFRM, the controller truncates the frames to\n length MAXFRM and marks RxBD[TR]\u003d1 to indicate the error. The controller\n also erroneously marks RxBD[TR]\u003d1 if the received frame length is MAXFRM\n or MAXFRM-1, even though those frames are not truncated.\n No truncation or truncation error occurs if MACCFG2[Huge Frame]\u003d1.\"\n\nThere are two options to workaround the issue:\n\n\"1. Set MACCFG2[Huge Frame]\u003d1, so no truncation occurs for invalid large\n frames. Software can determine if a frame is larger than MAXFRM by\n reading RxBD[LG] or RxBD[Data Length].\n\n 2. Set MAXFRM to 1538 (0x602) instead of the default 1536 (0x600), so\n normal-length frames are not marked as truncated. Software can examine\n RxBD[Data Length] to determine if the frame was larger than MAXFRM-2.\"\n\nThis patch implements the first workaround option by setting HUGEFRAME\nbit, and gfar_clean_rx_ring() already checks the RxBD[Data Length].\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8244132ea89cdd128003f5b9980fab50d8d36d72",
      "tree": "c6cf9327cf9b6bab5bb830bbf389a514f4d7bb95",
      "parents": [
        "7b2ff18ee7b0ec4bc3162f821e221781aaca48bd",
        "38000a94a902e94ca8b5498f7871c6316de8957a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 23 18:26:27 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 23 18:26:27 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/ipv4/ip_output.c\n"
    },
    {
      "commit": "63b88b9041ceef8217f34de71a2e96f0c3f0fd3b",
      "tree": "368562057a08a641873e256d2a271d1fc8561940",
      "parents": [
        "099473c16bac7b936994bc95b5fd96f36397e1ad"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Fri Jun 11 10:51:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 16 18:09:17 2010 -0700"
      },
      "message": "gianfar: Fix oversized packets handling\n\nIssuing the following command on host:\n\n$ ifconfig eth2 mtu 1600 ; ping 10.0.0.27 -s 1485 -c 1\n\nMakes some boards (tested with MPC8315 rev 1.1 and MPC8313 rev 1.0)\noops like this:\n\n  skb_over_panic: text:c0195914 len:1537 put:1537 head:c79e4800 data:c79e4880 tail:0xc79e4e81 end:0xc79e4e80 dev:eth1\n  ------------[ cut here ]------------\n  kernel BUG at net/core/skbuff.c:127!\n  Oops: Exception in kernel mode, sig: 5 [#1]\n  MPC831x RDB\n  last sysfs file: /sys/kernel/uevent_seqnum\n  Modules linked in:\n  NIP: c01c1840 LR: c01c1840 CTR: c016d918\n  [...]\n  NIP [c01c1840] skb_over_panic+0x48/0x5c\n  LR [c01c1840] skb_over_panic+0x48/0x5c\n  Call Trace:\n  [c0339d50] [c01c1840] skb_over_panic+0x48/0x5c (unreliable)\n  [c0339d60] [c01c3020] skb_put+0x5c/0x60\n  [c0339d70] [c0195914] gfar_clean_rx_ring+0x25c/0x3d0\n  [c0339dc0] [c01976e8] gfar_poll+0x170/0x1bc\n\nDumped buffer descriptors showed that eTSEC\u0027s length/truncation\nlogic sometimes passes oversized packets, i.e. for the above ICMP\npacket the following two buffer descriptors may become ready:\n\n  status\u003d1400 length\u003d1536\n  status\u003d1800 length\u003d1541\n\nSo, it seems that gianfar actually receives the whole big frame,\nand it tries to place the packet into two BDs. This situation\nconfuses the driver, and so the skb_put() sanity check fails.\n\nThis patch fixes the issue by adding an appropriate check, i.e.\nthe driver should not try to process frames with buffer\ndescriptor\u0027s length over rx_buffer_size (i.e. maxfrm and mrblr).\n\nNote that sometimes eTSEC works correctly, i.e. in the second\n(last) buffer descriptor bits \u0027truncated\u0027 and \u0027crcerr\u0027 are set,\nand so there\u0027s no oops. Though I couldn\u0027t find any logic when\nit works correctly and when not.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "97553f7f3e7a0305d017df9cc6e9589f64878437",
      "tree": "15e2db21159b73d88020b9be834a7243ab7c433f",
      "parents": [
        "d8d326dc7ae6bec2a999d674c5babb6bf490587a"
      ],
      "author": {
        "name": "Manfred Rudigier",
        "email": "Manfred.Rudigier@omicron.at",
        "time": "Fri Jun 11 01:49:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 16 14:40:02 2010 -0700"
      },
      "message": "gianfar: Fix setup of RX time stamping\n\nPreviously the RCTRL_TS_ENABLE bit was set unconditionally. However, if\nthe RCTRL_TS_ENABLE is set without TMR_CTRL[TE], the driver does not work\nproperly on some boards (Anton had problems with the MPC8313ERDB and\nMPC8568EMDS).\n\nWith this patch the bit will only be set if requested from user space\nwith the SIOCSHWTSTAMP ioctl command, meaning that time stamping is\ndisabled during normal operation. Users who are not interested in time\nstamps will not experience problems with buggy CPU revisions or\nperformance drops any more.\n\nThe setting of TMR_CTRL[TE] is still up to the user. This is considered\nsafe because users wanting HW timestamps must initialize the eTSEC clock\nfirst anyway, e.g. with the recently submitted PTP clock driver.\n\nSigned-off-by: Manfred Rudigier \u003cmanfred.rudigier@omicron.at\u003e\nReviewed-by: Anton Vorontsov \u003ccbouatmailru@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1bbbb6912662b9f6070c5bfc4ca9eb1f06a9d5b",
      "tree": "c2c130a74be25b0b2dff992e1a195e2728bdaadd",
      "parents": [
        "fd0961ff67727482bb20ca7e8ea97b83e9de2ddb",
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "85dd08ebf1d208c391c48243e30e286808f684d8",
      "tree": "ad4af5526cb9cdc68007766cb98e84dafa4126ed",
      "parents": [
        "46cd09a7de52cad464d35a75924b79984646288d"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Fri Jun 11 12:16:55 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:03:16 2010 +0200"
      },
      "message": "fix typos concerning \"first\"\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "62522d36d74a843e78d17f2dffc90468c6762803",
      "tree": "d9d21de6724425c1b0ba12991e0865556aeda6b4",
      "parents": [
        "a71fba97295db924c0b90266e9833e5059fead24",
        "e79aa8671033535c2e9ffc0a68010ae49ed5734c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 13:32:31 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 13:32:31 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "619baba195d92ec39379e24c151f4a640898d140",
      "tree": "3acb28ffdd3ebbc8f4b99028b69f51c11ff0f105",
      "parents": [
        "aea34e7ae7a40bc72f9f11b5658160dfb4b90c48"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Wed Jun 09 16:27:08 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 09 16:27:08 2010 -0700"
      },
      "message": "gianfar: Revive the driver for eTSEC devices (disable timestamping)\n\nSince commit cc772ab7cdcaa24d1fae332d92a1602788644f7a (\"gianfar: Add\nhardware RX timestamping support\"), the driver no longer works on\nat least MPC8313ERDB and MPC8568EMDS boards (and possibly much more\nboards as well).\n\nThat\u0027s how MPC8313 Reference Manual describes RCTRL_TS_ENABLE bit:\n\n  Timestamp incoming packets as padding bytes. PAL field is set\n  to 8 if the PAL field is programmed to less than 8. Must be set\n  to zero if TMR_CTRL[TE]\u003d0.\n\nI see that the commit above sets this bit, but it doesn\u0027t handle\nTMR_CTRL. Manfred probably had this bit set by the firmware for\nhis boards. But obviously this isn\u0027t true for all boards in the\nwild.\n\nAlso, I recall that Freescale BSPs were explicitly disabling the\ntimestamping because of a performance drop.\n\nFor now, the best way to deal with this is just disable the\ntimestamping, and later we can discuss proper device tree bindings\nand implement enabling this feature via some property.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de47f07264b287f7b1b2ec0e06da98e1c199cd0d",
      "tree": "da291bdaeb8c168a10bc079be4006cd50f93e1ff",
      "parents": [
        "f25b03a7bd260b939b1a6aa69ca518d9848bb63a"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon May 31 17:23:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 01 00:15:52 2010 -0700"
      },
      "message": "drivers/net/gianfar.c: Remove unnecessary kmalloc casts\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf9b59e9d3e008591d1f54830f570982bb307a0d",
      "tree": "113478ce8fd8c832ba726ffdf59b82cb46356476",
      "parents": [
        "44504b2bebf8b5823c59484e73096a7d6574471d",
        "f4b87dee923342505e1ddba8d34ce9de33e75050"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:36:56 2010 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:36:56 2010 -0600"
      },
      "message": "Merge remote branch \u0027origin\u0027 into secretlab/next-devicetree\n\nMerging in current state of Linus\u0027 tree to deal with merge conflicts and\nbuild failures in vio.c after merge.\n\nConflicts:\n\tdrivers/i2c/busses/i2c-cpm.c\n\tdrivers/i2c/busses/i2c-mpc.c\n\tdrivers/net/gianfar.c\n\nAlso fixed up one line in arch/powerpc/kernel/vio.c to use the\ncorrect node pointer.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "4018294b53d1dae026880e45f174c1cc63b5d435",
      "tree": "6db3538eaf91b653381720a6d92f4f15634a93d0",
      "parents": [
        "597b9d1e44e9ba69f2454a5318bbe7a6d5e6930a"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Apr 13 16:13:02 2010 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:10:40 2010 -0600"
      },
      "message": "of: Remove duplicate fields from of_platform_driver\n\n.name, .match_table and .owner are duplicated in both of_platform_driver\nand device_driver.  This patch is a removes the extra copies from struct\nof_platform_driver and converts all users to the device_driver members.\n\nThis patch is a pretty mechanical change.  The usage model doesn\u0027t change\nand if any drivers have been missed, or if anything has been fixed up\nincorrectly, then it will fail with a compile time error, and the fixup\nwill be trivial.  This patch looks big and scary because it touches so\nmany files, but it should be pretty safe.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Sean MacLennan \u003csmaclennan@pikatech.com\u003e\n\n"
    },
    {
      "commit": "61c7a080a5a061c976988fd4b844dfb468dda255",
      "tree": "8cb492b73f2755c38a6164d770da34d5af6486a0",
      "parents": [
        "d12d42f744f805a9ccc33cd76f04b237cd83ce56"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Apr 13 16:12:29 2010 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue May 18 16:10:44 2010 -0600"
      },
      "message": "of: Always use \u0027struct device.of_node\u0027 to get device node pointer.\n\nThe following structure elements duplicate the information in\n\u0027struct device.of_node\u0027 and so are being eliminated.  This patch\nmakes all readers of these elements use device.of_node instead.\n\n(struct of_device *)-\u003enode\n(struct dev_archdata *)-\u003eprom_node (sparc)\n(struct dev_archdata *)-\u003eof_node (powerpc \u0026 microblaze)\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "b14ed884df5968b0977114ebd5a22f58d0d15315",
      "tree": "af0ddce77689eca82e805a027766def2e026aa8d",
      "parents": [
        "f0cd15081a72075df16c45a2310e873fb9fcd82f"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Fri May 14 04:27:36 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 17 17:44:35 2010 -0700"
      },
      "message": "gianfar: Remove legacy PM callbacks\n\nThese callbacks were needed because dev_pm_ops support for OF\nplatform devices was in the powerpc tree, and the patch that\nadded dev_pm_ops for gianfar driver was in the netdev tree. Now\nthat netdev and powerpc trees have merged into Linus\u0027 tree, we\ncan remove the legacy hooks.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4b770972b8f819e408d7cc3ae9637e15bff62f6",
      "tree": "62e3c413b084c106d750cf6cc0701709cde30100",
      "parents": [
        "21ce849ba5cc178740c6532ba3dded852296ad91"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Fri May 14 00:19:28 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 14 00:19:28 2010 -0700"
      },
      "message": "drivers/net: Remove unnecessary returns from void function()s\n\nThis patch removes from drivers/net/ all the unnecessary\nreturn; statements that precede the last closing brace of\nvoid functions.\n\nIt does not remove the returns that are immediately\npreceded by a label as gcc doesn\u0027t like that.\n\nIt also does not remove null void functions with return.\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\nwith some cleanups by hand.\n\nCompile tested x86 allmodconfig only.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "278554bd6579206921f5d8a523649a7a57f8850d",
      "tree": "4e6c527daf0910e455b3aa72e2c96b0479e430be",
      "parents": [
        "5a147e8bf982f9dd414c1dd751fe02c1942506b2",
        "cea0d767c29669bf89f86e4aee46ef462d2ebae8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 12 00:05:35 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 12 00:05:35 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ath/ar9170/usb.c\n\tdrivers/scsi/iscsi_tcp.c\n\tnet/ipv4/ipmr.c\n"
    },
    {
      "commit": "1ae5dc342ac78d7a42965fd1f323815f6f5ef2c1",
      "tree": "d1955a7639e99832590df26466a34d5786a880ae",
      "parents": [
        "2b0b05ddc04b6d45e71cd36405df512075786f1e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon May 10 05:01:31 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 10 05:01:31 2010 -0700"
      },
      "message": "net: trans_start cleanups\n\nNow that core network takes care of trans_start updates, dont do it\nin drivers themselves, if possible. Drivers can avoid one cache miss\n(on dev-\u003etrans_start) in their start_xmit() handler.\n\nExceptions are NETIF_F_LLTX drivers\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7df9c43fbe470628a755dfd028e58fdd7ab9b44e",
      "tree": "d89bbd1e1543d94fe39b3d04b9fd2c47491260bb",
      "parents": [
        "7cff0943a1104479fc9fc2d6ced24c02ba81e73e"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Tue May 04 22:30:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 05 21:29:15 2010 -0700"
      },
      "message": "net/gianfar: drop recycled skbs on MTU change\n\nThe size for skbs which is added to the recycled list is using the\ncurrent descriptor size which is current MTU. gfar_new_skb() is also\nusing this size. So after changing or alteast increasing the MTU all\nrecycled skbs should be dropped.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nAcked-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ef527377b88ff05fb122a47619ea506c631c914",
      "tree": "2c2e774527d5f591b975834f43e8c6fd12fb38f2",
      "parents": [
        "47d29646a2c1c147d8a7598aeac2c87dd71ed638",
        "1183f3838c588545592c042c0ce15015661ce7f2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 02 21:43:40 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 02 22:02:06 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "761ed01b35ca32bfd4166cc3862ae80ee33e3a4b",
      "tree": "ecd09986e227f2cb30e1033c9daa1ad385845b8f",
      "parents": [
        "d87ff58fda926fe5cb01214cccf1c72422ac776d"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Tue Apr 27 16:43:31 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 27 16:43:31 2010 -0700"
      },
      "message": "gianfar: Wait for both RX and TX to stop\n\nWhen gracefully stopping the controller, the driver was continuing if\n*either* RX or TX had stopped.  We need to wait for both, or the\ncontroller could get into an invalid state.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1703b36c358dde24ececba4fd609ecd91433ba3",
      "tree": "d59c333d0ad5bf72f165264eba6048c87fdc4e0f",
      "parents": [
        "7ec75c582e639d956ce3afd499f67febe6f902a4",
        "e95ef5d3f6bc60433883e1ef65dac747acd0bf1a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 27 12:49:13 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 27 12:49:13 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/e100.c\n\tdrivers/net/e1000e/netdev.c\n"
    },
    {
      "commit": "7ce97d4f78b62e3af24cdd4df953d777e7efb2f6",
      "tree": "00d6462333163e933875480371470975b45ad2e6",
      "parents": [
        "3b1fd3e55a39824e68bc8dd055d14892476e3671"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Fri Apr 23 07:12:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 23 16:20:25 2010 -0700"
      },
      "message": "gianfar: Fix potential oops during OF address translation\n\ngianfar driver may pass NULL pointer to the of_translate_address(),\nwhich may lead to a kernel oops. Fix this by using of_iomap(), which\nis also much simpler and shorter.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0ee7acfcdd4169cee2fefc630de72deb5bc34b9",
      "tree": "161b16941b8c11023a9fb24324f22463dd16f163",
      "parents": [
        "cc772ab7cdcaa24d1fae332d92a1602788644f7a"
      ],
      "author": {
        "name": "Manfred Rudigier",
        "email": "Manfred.Rudigier@omicron.at",
        "time": "Thu Apr 08 23:10:35 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 01:41:31 2010 -0700"
      },
      "message": "gianfar: Add hardware TX timestamping support\n\nIf a packet has the skb_shared_tx-\u003ehardware flag set the device is\ninstructed to generate a TX timestamp and write it back to memory after\nthe frame is transmitted. During the clean_tx_ring operation the\ntimestamp will be extracted and copied into the skb_shared_hwtstamps\nstruct of the skb.\n\nTX timestamping is enabled by setting the tx_type to something else\nthan HWTSTAMP_TX_OFF with the SIOCSHWTSTAMP ioctl command. It is only\nsupported by eTSEC devices.\n\nSigned-off-by: Manfred Rudigier \u003cmanfred.rudigier@omicron.at\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc772ab7cdcaa24d1fae332d92a1602788644f7a",
      "tree": "efbcb9bf8c1c9214f612d2044321a30ada230255",
      "parents": [
        "e44171f115de3dedf34064646206deb91549865f"
      ],
      "author": {
        "name": "Manfred Rudigier",
        "email": "Manfred.Rudigier@omicron.at",
        "time": "Thu Apr 08 23:10:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 01:41:31 2010 -0700"
      },
      "message": "gianfar: Add hardware RX timestamping support\n\nThe device is configured to insert hardware timestamps into all\nreceived packets. The RX timestamps are extracted from the padding\nalingment bytes during the clean_rx_ring operation and copied into the\nskb_shared_hwtstamps struct of the skb. This extraction only happens if\nthe rx_filter was set to something else than HWTSTAMP_FILTER_NONE with\nthe SIOCSHWTSTAMP ioctl command.\n\nHardware timestamping is only supported for eTSEC devices. To indicate\ndevice support the new FSL_GIANFAR_DEV_HAS_TIMER flag was introduced.\n\nSigned-off-by: Manfred Rudigier \u003cmanfred.rudigier@omicron.at\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a35ecf8bf1c4b039503fa554100fe85c761de76",
      "tree": "9b75f5d5636004d9a9aa496924377379be09aa1f",
      "parents": [
        "b4d562e3c3553ac58c7120555c4e4aefbb090a2a",
        "fb9e2d887243499b8d28efcf80821c4f6a092395"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 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/bonding/bond_main.c\n\tdrivers/net/via-velocity.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn.c\n"
    },
    {
      "commit": "22bedad3ce112d5ca1eaf043d4990fa2ed698c87",
      "tree": "b6fba5688d48b1396f01d13ee53610dea7749c15",
      "parents": [
        "a748ee2426817a95b1f03012d8f339c45c722ae1"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Apr 01 21:22:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:22:15 2010 -0700"
      },
      "message": "net: convert multicast list to list_head\n\nConverts the list and the core manipulating with it to be the same as uc_list.\n\n+uses two functions for adding/removing mc address (normal and \"global\"\n variant) instead of a function parameter.\n+removes dev_mcast.c completely.\n+exposes netdev_hw_addr_list_* macros along with __hw_addr_* functions for\n manipulation with lists on a sandbox (used in bonding and 80211 drivers)\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ddc01b3b8ab224b346daf61976078b166f36b7e8",
      "tree": "63588ca67d1d53407da51c04d4e4f18eb3700b2d",
      "parents": [
        "ed130589d9afa3238c94b9537f2024355b9638e1"
      ],
      "author": {
        "name": "Kim Phillips",
        "email": "kim.phillips@freescale.com",
        "time": "Tue Mar 30 11:54:22 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 23:03:18 2010 -0700"
      },
      "message": "net: gianfar - align BD ring size console messages\n\nfix this:\n\neth2: :RX BD ring size for Q[0]: 256\neth2:TX BD ring size for Q[0]: 256\n\nto look like:\n\neth2: RX BD ring size for Q[0]: 256\neth2: TX BD ring size for Q[0]: 256\n\nSigned-off-by: Kim Phillips \u003ckim.phillips@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ed130589d9afa3238c94b9537f2024355b9638e1",
      "tree": "3e006eaf42adbc7257772598a7446583209be4da",
      "parents": [
        "7c0d10d35f7f47d00cc5f2b85ee5e95c2b1fdb7e"
      ],
      "author": {
        "name": "Kim Phillips",
        "email": "kim.phillips@freescale.com",
        "time": "Tue Mar 30 11:54:21 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 23:03:17 2010 -0700"
      },
      "message": "net: gianfar - initialize per-queue statistics\n\nInterfaces come up claiming having already received 3.0 GiB.\nUse kzalloc to properly initialize per-queue data.\n\nSigned-off-by: Kim Phillips \u003ckim.phillips@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c0d10d35f7f47d00cc5f2b85ee5e95c2b1fdb7e",
      "tree": "f05d4843bd0baa72893e099107d5296168dcfac7",
      "parents": [
        "baff42ab1494528907bf4d5870359e31711746ae"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Mon Mar 29 15:42:23 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 23:03:16 2010 -0700"
      },
      "message": "gianfar: Fix a memory leak in gianfar close code\n\ngianfar needed to ensure existence of the *skbuff arrays before\nfreeing the skbs in them, rather than ensuring their nonexistence.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a6d36d5689b1806a3365c909192e9f03a43a632b",
      "tree": "19de0640cf7f9c8cf634ac2d1c334094303e5bd8",
      "parents": [
        "af06393bbde6e8d474622a0517cffc662676e3fe"
      ],
      "author": {
        "name": "Ben Menchaca",
        "email": "ben@bigfootnetworks.com",
        "time": "Wed Mar 24 05:05:02 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 26 20:16:23 2010 -0700"
      },
      "message": "gianfar: fix undo of reserve()\n\nFix undo of reserve() before RX recycle\n\ngfar_new_skb reserve()s space in the SKB to align it.  If an error occurs,\nand the skb needs to be returned to the RX recycle queue, the current code\nattempts to reset head, but did not reset tail.  This patch remembers the\nalignment amount, and reverses the reserve() when needed.\n\nSigned-off-by: Ben Menchaca \u003cben@bigfootnetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d89b218b801fd93ea95880f1c7fde348cbcc51c5",
      "tree": "cd3c34e1811f9b2bc10ecfb957bf26cbd04c677e",
      "parents": [
        "80a186074e72e2cd61f6716d90cf32ce54981a56",
        "bec68ff1637ca00bb1585a03a7be8a13380084de"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 13 14:50:18 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 13 14:50:18 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (108 commits)\n  bridge: ensure to unlock in error path in br_multicast_query().\n  drivers/net/tulip/eeprom.c: fix bogus \"(null)\" in tulip init messages\n  sky2: Avoid rtnl_unlock without rtnl_lock\n  ipv6: Send netlink notification when DAD fails\n  drivers/net/tg3.c: change the field used with the TG3_FLAG_10_100_ONLY constant\n  ipconfig: Handle devices which take some time to come up.\n  mac80211: Fix memory leak in ieee80211_if_write()\n  mac80211: Fix (dynamic) power save entry\n  ipw2200: use kmalloc for large local variables\n  ath5k: read eeprom IQ calibration values correctly for G mode\n  ath5k: fix I/Q calibration (for real)\n  ath5k: fix TSF reset\n  ath5k: use fixed antenna for tx descriptors\n  libipw: split ieee-\u003enetworks into small pieces\n  mac80211: Fix sta_mtx unlocking on insert STA failure path\n  rt2x00: remove KSEG1ADDR define from rt2x00soc.h\n  net: add ColdFire support to the smc91x driver\n  asix: fix setting mac address for AX88772\n  ipv6 ip6_tunnel: eliminate unused recursion field from ip6_tnl{}.\n  net: Fix dev_mc_add()\n  ...\n"
    },
    {
      "commit": "984b3f5746ed2cde3d184651dabf26980f2b66e5",
      "tree": "87dc2162b4778b0075874d9592384530022e15a4",
      "parents": [
        "e3cb91ce1ac1d93a7cc6f81bb5247f7602b572bb"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Mar 05 13:41:37 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:23 2010 -0800"
      },
      "message": "bitops: rename for_each_bit() to for_each_set_bit()\n\nRename for_each_bit to for_each_set_bit in the kernel source tree.  To\npermit for_each_clear_bit(), should that ever be added.\n\nThe patch includes a macro to map the old for_each_bit() onto the new\nfor_each_set_bit().  This is a (very) temporary thing to ease the migration.\n\n[akpm@linux-foundation.org: add temporary for_each_bit()]\nSuggested-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSuggested-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0eddba525cf4c3a4aab9feaf36b12b465290d4a7",
      "tree": "b41b9a6ba53635c1c7137bc0993e4c7f03ef721b",
      "parents": [
        "4c020a961a812ffae9846b917304cea504c3a733"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Wed Mar 03 08:18:58 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 04 00:53:53 2010 -0800"
      },
      "message": "gianfar: Fix TX ring processing on SMP machines\n\nStarting with commit a3bc1f11e9b867a4f49505 (\"gianfar: Revive SKB\nrecycling\") gianfar driver sooner or later stops transmitting any\npackets on SMP machines.\n\nstart_xmit() prepares new skb for transmitting, generally it does\nthree things:\n\n1. sets up all BDs (marks them ready to send), except the first one.\n2. stores skb into tx_queue-\u003etx_skbuff so that clean_tx_ring()\n   would cleanup it later.\n3. sets up the first BD, i.e. marks it ready.\n\nHere is what clean_tx_ring() does:\n\n1. reads skbs from tx_queue-\u003etx_skbuff\n2. checks if the *last* BD is ready. If it\u0027s still ready [to send]\n   then it it isn\u0027t transmitted, so clean_tx_ring() returns.\n   Otherwise it actually cleanups BDs. All is OK.\n\nNow, if there is just one BD, code flow:\n\n- start_xmit(): stores skb into tx_skbuff. Note that the first BD\n  (which is also the last one) isn\u0027t marked as ready, yet.\n- clean_tx_ring(): sees that skb is not null, *and* its lstatus\n  says that it is NOT ready (like if BD was sent), so it cleans\n  it up (bad!)\n- start_xmit(): marks BD as ready [to send], but it\u0027s too late.\n\nWe can fix this simply by reordering lstatus/tx_skbuff writes.\n\nReported-by: Martyn Welch \u003cmartyn.welch@ge.com\u003e\nBisected-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nTested-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nTested-by: Martyn Welch \u003cmartyn.welch@ge.com\u003e\nCc: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nCc: Stable \u003cstable@vger.kernel.org\u003e [2.6.33]\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "48e2f183cb1709600012265a2e723f45a350d5fe",
      "tree": "608368bda6f159342c307deca3b03998d25434c8",
      "parents": [
        "7a81e9f3ca712db82344ea3ab2a5879241f59c48"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Mon Feb 22 09:22:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 22 15:45:52 2010 -0800"
      },
      "message": "net: convert multiple drivers to use netdev_for_each_mc_addr, part4\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4cd24eaf0c6ee7f0242e34ee77ec899f255e66b5",
      "tree": "99f57f6374a58022e1e5ed1cbc12699288c7eae1",
      "parents": [
        "8e5574211d96c0552f84c757718475fdb4021be7"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Mon Feb 08 04:30:35 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 11:38:58 2010 -0800"
      },
      "message": "net: use netdev_mc_count and netdev_mc_empty when appropriate\n\nThis patch replaces dev-\u003emc_count in all drivers (hopefully I didn\u0027t miss\nanything). Used spatch and did small tweaks and conding style changes when\nit was suitable.\n\nJirka\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f74dac0859bd9678b289ad9dc215026fd7ce033e",
      "tree": "41f5b9926302febc12e2190cac702f720f41e8fb",
      "parents": [
        "80924e5f7dbe00d964b7249160c7ca25fa3cd889"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "Sandeep.Kumar@freescale.com",
        "time": "Thu Dec 24 03:13:06 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 26 20:24:44 2009 -0800"
      },
      "message": "gianfar: Fix gianfar select_queue bogosity\n\nThe gfar_select_queue() function was used to set queue mapping\nonly for forwarding/bridging applications and the condition\nfor locally generated packets was completely ignored.\n\nThe solution is to remove the gfar_select_queue() function and\nuse skb_record_rx_queue to set queue mapping for\nforwarding/bridging applications. This will ensure that in case of\nforwarding/bridging applications txq \u003d rxq will be selected and\nskb_tx_hash will be used to pick up a txq for locally generated packets.\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a7f38041b8c38d0721b042c123bd5d6bd2d21feb",
      "tree": "375dc0df2bf89ac9502972b986018dd16fa9dad6",
      "parents": [
        "1ccb8389f26f2d513b06abe45d8e0b8f32458302"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "sandeep.kumar@freescale.com",
        "time": "Wed Dec 16 01:15:07 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 18 20:38:37 2009 -0800"
      },
      "message": "gianfar: Fix stats support\n\nThis patch updates the per rx/tx queue stats.\nTo update the per rx queue stats a new structure has been\nintroduced rx_q_stats.\nThe per tx queue stats are updated via the netdev_queue\nstructure itself.\n\nNote that we update only the tx_packtes, tx_bytes, rx_packets,\nrx_bytes and rx_dropped stats on a per queue basis.\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1ccb8389f26f2d513b06abe45d8e0b8f32458302",
      "tree": "26d883f2fa2bc9692ab68707e6c73758f6723591",
      "parents": [
        "e6bf95ffa8d6f8f4b7ee33ea01490d95b0bbeb6e"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "sandeep.kumar@freescale.com",
        "time": "Wed Dec 16 01:14:58 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 18 20:38:36 2009 -0800"
      },
      "message": "gianfar: Fix a filer bug\n\nWe need to enable filer whenever we need to use multiple RX\nqueues. Also, need to program RIR0 register with the required\ndistribution we require, if using RX filer hashing support for\npacket distribution to multiple queues.\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "43de004b6c197b0ea408bdebf4f14afdead74b63",
      "tree": "a927905febd574951e89ba8856bfaa6acb5d35fa",
      "parents": [
        "e0188829cb724e7d12a2d4e343b368ff1d6e1471"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Wed Dec 09 02:52:19 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 09 02:52:19 2009 -0800"
      },
      "message": "gianfar: Fix build with CONFIG_NET_POLL_CONTROLLER\u003dy\n\ncommit 46ceb60ca80fa07703bc6eb8f4651f900dff5a82 (\"gianfar: Add\nMultiple group Support\") introduced the following build error\nwith CONFIG_NET_POLL_CONTROLLER\u003dy:\n\n  CC      ggianfar.o\nggianfar.c: In function \u0027gfar_netpoll\u0027:\nggianfar.c:2653: error: invalid storage class for function \u0027gfar_interrupt\u0027\nggianfar.c:2652: warning: ISO C90 forbids mixed declarations and code\nggianfar.c:2681: error: invalid storage class for function \u0027adjust_link\u0027\nggianfar.c:2764: error: invalid storage class for function \u0027gfar_set_multi\u0027\nggianfar.c:2855: error: invalid storage class for function \u0027gfar_clear_exact_match\u0027\nggianfar.c:2877: error: invalid storage class for function \u0027gfar_set_hash_for_addr\u0027\nggianfar.c:2898: error: invalid storage class for function \u0027gfar_set_mac_for_addr\u0027\nggianfar.c:2922: error: invalid storage class for function \u0027gfar_error\u0027\nggianfar.c:3020: warning: ISO C90 forbids mixed declarations and code\nggianfar.c:3032: error: invalid storage class for function \u0027gfar_init\u0027\nggianfar.c:3037: error: invalid storage class for function \u0027gfar_exit\u0027\nggianfar.c:3041: error: initializer element is not constant\nggianfar.c:3042: error: initializer element is not constant\nggianfar.c:3042: warning: ISO C90 forbids mixed declarations and code\nggianfar.c:3042: error: expected declaration or statement at end of input\nmake[1]: *** [ggianfar.o] Error 1\n\nThis patch fixes the issue.\n\nReported-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a3bc1f11e9b867a4f49505ecac486a33af248b2e",
      "tree": "026512ce0362e0f13f0c35d2fc6bc01d2498a2ed",
      "parents": [
        "836cf7faf8c75743477ed6ed341cce491f3183fb"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Tue Nov 10 14:11:10 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 11 19:03:36 2009 -0800"
      },
      "message": "gianfar: Revive SKB recycling\n\nBefore calling gfar_clean_tx_ring() the driver grabs an irqsave\nspinlock, and then tries to recycle skbs. But since\nskb_recycle_check() returns 0 with IRQs disabled, we\u0027ll never\nrecycle any skbs.\n\nIt appears that gfar_clean_tx_ring() and gfar_start_xmit() are\nmostly idependent and can work in parallel, except when they\nmodify num_txbdfree.\n\nSo we can drop the lock from most sections and thus fix the skb\nrecycling.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "836cf7faf8c75743477ed6ed341cce491f3183fb",
      "tree": "e4a8dff4c36bd53080af4dbe1014b91381b79850",
      "parents": [
        "499428ed28d800eb5cf25889bb1e026637d99dfc"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Tue Nov 10 14:11:08 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 11 19:03:35 2009 -0800"
      },
      "message": "gianfar: Fix race between gfar_error() and gfar_start_xmit()\n\ngfar_error() can arrive at the middle of gfar_start_xmit() processing,\nand so it can trigger transfers of BDs that we don\u0027t yet expect to\nbe transmitted.\n\nFix this by locking the tx queues in gfar_error().\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ea681d4e6c01b191f01644024f35901721fa438",
      "tree": "1920ef54a6f863972b76983e1be956475fb533d6",
      "parents": [
        "4dea29d06641da5dd6f83000536c48335333e042"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Tue Nov 10 14:11:05 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 11 19:03:33 2009 -0800"
      },
      "message": "gianfar: Fix build with CONFIG_PM\u003dy\n\ncommit fba4ed030cfae7efdb6b79a57b0c5a9d72c9 (\"gianfar: Add Multiple\nQueue Support\") introduced the following build failure:\n\n  CC      gianfar.o\ngianfar.c: In function \u0027gfar_restore\u0027:\ngianfar.c:1249: error: request for member \u0027napi\u0027 in something not a structure or union\n\nThis patch fixes the issue.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4dea29d06641da5dd6f83000536c48335333e042",
      "tree": "7c59c99cef9abd1a80446dee941d380be4cb30cd",
      "parents": [
        "e84af6ddef0e447c56b256a2bb5a90af11bdac2e"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Tue Nov 10 14:11:03 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 11 19:03:30 2009 -0800"
      },
      "message": "gianfar: Remove \u0027Interrupt problem!\u0027 warning\n\nIt is OK to poll with disabled IRQs, so remove the warning.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18294ad1ecccffe6a91f6914dc1f4acd8995736a",
      "tree": "4140786f1db45199ad26eeb2ab0922dd5e985c1a",
      "parents": [
        "6748f60b948230684fe3f295220e76679c5efc52"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Wed Nov 04 12:53:00 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 08 00:43:17 2009 -0800"
      },
      "message": "gianfar: Fix compiler and sparse warnings\n\ncommit fba4ed030cfae7efdb6b79a57b0c5a9d72c9de83 (\"gianfar: Add Multiple\nQueue Support\") introduced the following warnings:\n\n  CHECK   gianfar.c\ngianfar.c:333:8: warning: incorrect type in assignment (different address spaces)\ngianfar.c:333:8:    expected unsigned int [usertype] *baddr\ngianfar.c:333:8:    got unsigned int [noderef] \u003casn:2\u003e*\u003cnoident\u003e\n[... 67 lines skipped ...]\ngianfar.c:2565:3: warning: incorrect type in argument 1 (different type sizes)\ngianfar.c:2565:3:    expected unsigned long const *addr\ngianfar.c:2565:3:    got unsigned int *\u003cnoident\u003e\n  CC      gianfar.o\ngianfar.c: In function \u0027gfar_probe\u0027:\ngianfar.c:985: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:985: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:993: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:993: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c: In function \u0027gfar_configure_coalescing\u0027:\ngianfar.c:1680: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:1680: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:1688: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:1688: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c: In function \u0027gfar_poll\u0027:\ngianfar.c:2565: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:2565: warning: passing argument 1 of \u0027find_next_bit\u0027 from incompatible pointer type\ngianfar.c:2566: warning: passing argument 2 of \u0027test_bit\u0027 from incompatible pointer type\ngianfar.c:2585: warning: passing argument 2 of \u0027set_bit\u0027 from incompatible pointer type\n\nFollowing warnings left unfixed (looks like sparse doesn\u0027t like\nlocks in loops, so __acquires/__releases() doesn\u0027t help):\n\ngianfar.c:441:40: warning: context imbalance in \u0027lock_rx_qs\u0027: wrong count at exit\ngianfar.c:441:40:    context \u0027\u003cnoident\u003e\u0027: wanted 0, got 1\ngianfar.c:449:40: warning: context imbalance in \u0027lock_tx_qs\u0027: wrong count at exit\ngianfar.c:449:40:    context \u0027\u003cnoident\u003e\u0027: wanted 0, got 1\ngianfar.c:458:3: warning: context imbalance in \u0027unlock_rx_qs\u0027: __context__ statement expected different context\ngianfar.c:458:3:    context \u0027\u003cnoident\u003e\u0027: wanted \u003e\u003d 0, got -1\ngianfar.c:466:3: warning: context imbalance in \u0027unlock_tx_qs\u0027: __context__ statement expected different context\ngianfar.c:466:3:    context \u0027\u003cnoident\u003e\u0027: wanted \u003e\u003d 0, got -1\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7a8b3372e29ff58ebdf94def26703afabd287f11",
      "tree": "7d4ae47bb2ddc7de481fb4da4a4f9f31e808e1bf",
      "parents": [
        "46ceb60ca80fa07703bc6eb8f4651f900dff5a82"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "Sandeep.Kumar@freescale.com",
        "time": "Mon Nov 02 07:03:40 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 02 23:40:59 2009 -0800"
      },
      "message": "gianfar: Basic Support for programming hash rules\n\nThis patch provides basic hash rules programming via the ethtool\ninterface.\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46ceb60ca80fa07703bc6eb8f4651f900dff5a82",
      "tree": "9bd694c3b1559cbd0fa72bff1f521ce4bcc95aa6",
      "parents": [
        "2e0246c72fa2e2b61865a2d5aaff1cc9155b9447"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "Sandeep.Kumar@freescale.com",
        "time": "Mon Nov 02 07:03:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 02 23:40:59 2009 -0800"
      },
      "message": "gianfar: Add Multiple group Support\n\nThis patch introduces multiple group support for etsec2.0\ndevices.\n\nMultiple group support is provided by mapping the set of enabled\nqueues to different groups and then programming the per group\nregsiters imask, ievent, rstat, tstat.\n\nThe queues corresponding to a group are indicated by programming\nisrg (interrupt steering) registers.\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fba4ed030cfae7efdb6b79a57b0c5a9d72c9de83",
      "tree": "ddee54010c64517a01ea112ca16e5bc1fee0938c",
      "parents": [
        "f4983704a63b3764418905a77d48105a8cbce97f"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "Sandeep.Kumar@freescale.com",
        "time": "Mon Nov 02 07:03:15 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 02 23:40:57 2009 -0800"
      },
      "message": "gianfar: Add Multiple Queue Support\n\nThis patch introduces multiple Tx and Rx queues.\nThe incoming packets can be classified into different queues\nbased on filer rules (out of scope of this patch). The number\nof queues enabled will be based on a DTS entries fsl,num_tx_queues\nand fsl,num_rx_queues.\n\nAlthough we are enabling multiple queues, the interrupt coalescing\nis on per device level (etsec-1.7 doesn\u0027t support multiple rxics\nand txics).\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f4983704a63b3764418905a77d48105a8cbce97f",
      "tree": "959183e305131f60e01f0452e87f1f80a580abea",
      "parents": [
        "a12f801d4b349bc57622584e70e45a4ccbef53b6"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "Sandeep.Kumar@freescale.com",
        "time": "Mon Nov 02 07:03:09 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 02 23:40:56 2009 -0800"
      },
      "message": "gianfar: Introduce logical group support.\n\nThis patch introduces the group structure. The elements of this\nstructure are the interrupt lines, their corresponding names,\nthe register memory map.\nThe elements for this group are factored out from the gfar_private\nstructure. The introduction of group structure will help in\nproviding support for newer versions of etsec.\n\nCurrently, the support is present only for single group and\nsingle tx/rx queues.\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a12f801d4b349bc57622584e70e45a4ccbef53b6",
      "tree": "1b081795127d9e47aa5bac516fededa736dfc394",
      "parents": [
        "123b43e9716115302a0095e14f2c545811712715"
      ],
      "author": {
        "name": "Sandeep Gopalpet",
        "email": "Sandeep.Kumar@freescale.com",
        "time": "Mon Nov 02 07:03:00 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 02 23:40:55 2009 -0800"
      },
      "message": "gianfar: Add per queue structure support\n\nThis patch introduces per tx and per rx queue structures.\nEarlier the members of these structures were inside the\ngfar_private structure.\n\nMoving forward if we want to support multiple queues, we need\nto refactor the gfar_private structure so that introduction of\nmultiple queues is easier.\n\nSigned-off-by: Sandeep Gopalpet \u003cSandeep.Kumar@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfadf853f6cd9689f79a63ca960c6f9d6665314f",
      "tree": "35418e342d9783f0974ea33ef03875aa21d2362a",
      "parents": [
        "05423b241311c9380b7280179295bac7794281b6",
        "f568a926a353d6816b3704d7367f34371df44ce7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 27 01:03:26 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 27 01:03:26 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/sh_eth.c\n"
    },
    {
      "commit": "e72701acbe0b35e52d3f04d442837c06b4e64f1c",
      "tree": "2a8edc6952e79c3d2ee3bdf7690ed1a6f2e7bcc6",
      "parents": [
        "0fe7463a35aadfaf22d1ca58325ab3851b8d757c"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Wed Oct 14 14:54:52 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 14 14:54:52 2009 -0700"
      },
      "message": "net: Fix OF platform drivers coldplug/hotplug when compiled as modules\n\nSome OF platform drivers are missing module device tables, so they won\u0027t\nload automatically on boot. This patch fixes the issue by adding proper\nMODULE_DEVICE_TABLE() macros to the drivers.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be926fc4046913d9ad921aeacdf9329978241c38",
      "tree": "b8299b4cc899913a3072e002a304c6bcdc6a92b5",
      "parents": [
        "8728327e7a7a7f21f3a7109e65503f4cc3305e78"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:42 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:05 2009 -0700"
      },
      "message": "gianfar: Add support for hibernation\n\nThanks to various cleanups and refactorings this is now straightforward:\nconvert the gianfar driver to dev_pm_ops, plus add -\u003erestore() callback\nthat will fully reinitialize MAC internal registers and BDs.\n\nNote that I kept legacy suspend/resume callbacks so that this patch\ndoesn\u0027t depend on PowerPC changes (i.e. dev_pm_ops support for OF\nplatform drivers).\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8728327e7a7a7f21f3a7109e65503f4cc3305e78",
      "tree": "b06e9fa0da9176043652be8096c6d672b53a971b",
      "parents": [
        "8a102fe001cc016dabcc392247a2b008e37ffe6a"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:39 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:05 2009 -0700"
      },
      "message": "gianfar: Factor out gfar_init_bds() from gfar_alloc_skb_resources()\n\nAfter hibernation we want to just reinitialize BDs, no need to allocate\nanything. So, factor out BDs initialization code from\ngfar_alloc_skb_resourses().\n\nAlso, teach gfar_init_bds() to reuse already allocated RX SKBs, i.e.\njust call gfar_init_rxbdp() if a SKB was already allocated and mapped.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a102fe001cc016dabcc392247a2b008e37ffe6a",
      "tree": "1f64a312e00a030620e4874e614995dc575fe6cf",
      "parents": [
        "32c513bca062f6c04b902d09c716fea205671e23"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:04 2009 -0700"
      },
      "message": "gianfar: Factor out RX BDs initialization from gfar_new_rxbdp()\n\nWe want to just reinitialize RX BDs after hibernation, no need to\nmap the skb-\u003edata again. So let\u0027s factor gfar_init_rxbdp() out of\ngfar_new_rxbdp().\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32c513bca062f6c04b902d09c716fea205671e23",
      "tree": "1e0bc56d3d0b3c5b8c544c6a355ebbe3b33ae78a",
      "parents": [
        "826aa4a05669a46e435f65db901186e42bb43d8d"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:03 2009 -0700"
      },
      "message": "gianfar: Move tbase/rbase initialization to gfar_init_mac()\n\nFor hibernation we want to call gfar_init_mac() without need to\nfree/allocate_skb_resources sequence, so save the DMA address into a\nprivate struct, and move tbase/rbase initialization to gfar_init_mac().\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "826aa4a05669a46e435f65db901186e42bb43d8d",
      "tree": "05dd59c09653610b06ee20d957c7387fbe9bf413",
      "parents": [
        "14231176b0dc358f8693f25b62017d222dd995e6"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:03 2009 -0700"
      },
      "message": "gianfar: Split allocation and initialization steps out of startup_gfar()\n\nTwo new functions implemented: gfar_alloc_skb_resources() and\ngfar_init_mac(). We\u0027ll use gfar_init_mac() for restoring after\nhibernation.\n\nThe patch just moves the code around, there should be no functional\nchanges.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14231176b0dc358f8693f25b62017d222dd995e6",
      "tree": "c4340a05293f7a57b6c1a3e045b489349c6c2ffb",
      "parents": [
        "e69edd21819823bbad06d1d02f9fa21713fad173"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:02 2009 -0700"
      },
      "message": "gianfar: Don\u0027t needlessly set the wrap bit for the last RX BD\n\nstartup_gfar() sets the wrap bit for the last rxbd just after\ngfar_new_rxbdp() call, which is issued for all rxbds. And\ngfar_new_rxbdp() has the following check already:\n\n\tif (bdp \u003d\u003d priv-\u003erx_bd_base + priv-\u003erx_ring_size - 1)\n\t\tlstatus |\u003d BD_LFLAG(RXBD_WRAP);\n\nSo we don\u0027t need to set the bit again.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e69edd21819823bbad06d1d02f9fa21713fad173",
      "tree": "28069eedd9e8c972282b10de844f7a14737ad288",
      "parents": [
        "ccc05c6e1e4fb672c93c98d92079c89a976e80ba"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:02 2009 -0700"
      },
      "message": "gianfar: Simplify skb resources freeing code\n\nRemove dma_free_coherent() from stop_gfar() and gfar_start() calls,\nplace it into free_skb_resources(). That makes SKB resources management\nmore understandable, plus free_skb_resources() will be used as a cleanup\nroutine for gfar_alloc_skb_resources() that will be implemented soon.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ccc05c6e1e4fb672c93c98d92079c89a976e80ba",
      "tree": "f687178656c4d0b42f45a5b1648569c650c5617e",
      "parents": [
        "a2e2725541fad72416326798c2d7fa4dafb7d337"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Oct 12 06:00:26 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 23:54:01 2009 -0700"
      },
      "message": "gianfar: Some cleanups for startup_gfar()\n\nWe\u0027re going to split the startup_gfar() into 3 separate functions,\nso let\u0027s cleanup the code a little bit so that cosmetic changes\nwon\u0027t distract attention from logical ones.\n\n- Remove needless casts (e.g. (struct sk_buff **)kmalloc());\n- Turn \u0027unsigned long vaddr;\u0027 into \u0027void *vaddr\u0027, to avoid casting;\n- Add new \u0027struct device *dev\u0027 variable as a shorthand for\n  \u0027\u0026priv-\u003eofdev-\u003edev\u0027 that is used all over the place, also rename\n  \u0027struct net_device *dev\u0027 to \u0027struct net_device *ndev\u0027;\n- Turn printk(KERN_ERR ...) to pr_err(...), which is shorter;\n- Don\u0027t return bogus -1 (i.e. -EPERM) when request_irq() fails;\n- Turn \u0027\u0026priv-\u003eregs-\u003e\u0027 to just \u0027\u0026regs-\u003e\u0027.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7e9660ad9d5e0845f52848bce31bcf5cdcdea6b",
      "tree": "c6c67d145771187b194d79d603742b31090a59d6",
      "parents": [
        "b8cb48aae1b8c50b37dcb7710363aa69a7a0d9ca",
        "13af7a6ea502fcdd4c0e3d7de6e332b102309491"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:37:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 10:37:28 2009 -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: (1623 commits)\n  netxen: update copyright\n  netxen: fix tx timeout recovery\n  netxen: fix file firmware leak\n  netxen: improve pci memory access\n  netxen: change firmware write size\n  tg3: Fix return ring size breakage\n  netxen: build fix for INET\u003dn\n  cdc-phonet: autoconfigure Phonet address\n  Phonet: back-end for autoconfigured addresses\n  Phonet: fix netlink address dump error handling\n  ipv6: Add IFA_F_DADFAILED flag\n  net: Add DEVTYPE support for Ethernet based devices\n  mv643xx_eth.c: remove unused txq_set_wrr()\n  ucc_geth: Fix hangs after switching from full to half duplex\n  ucc_geth: Rearrange some code to avoid forward declarations\n  phy/marvell: Make non-aneg speed/duplex forcing work for 88E1111 PHYs\n  drivers/net/phy: introduce missing kfree\n  drivers/net/wan: introduce missing kfree\n  net: force bridge module(s) to be GPL\n  Subject: [PATCH] appletalk: Fix skb leak when ipddp interface is not loaded\n  ...\n\nFixed up trivial conflicts:\n\n - arch/x86/include/asm/socket.h\n\n   converted to \u003casm-generic/socket.h\u003e in the x86 tree.  The generic\n   header has the same new #define\u0027s, so that works out fine.\n\n - drivers/net/tun.c\n\n   fix conflict between 89f56d1e9 (\"tun: reuse struct sock fields\") that\n   switched over to using \u0027tun-\u003esocket.sk\u0027 instead of the redundantly\n   available (and thus removed) \u0027tun-\u003esk\u0027, and 2b980dbd (\"lsm: Add hooks\n   to the TUN driver\") which added a new \u0027tun-\u003esk\u0027 use.\n\n   Noted in \u0027next\u0027 by Stephen Rothwell.\n"
    },
    {
      "commit": "d9d8e0418ffd3d189345c435861e254c17ae06e5",
      "tree": "ee97d40fa4ccfd3c802e6844b3d38097ff7a6c7a",
      "parents": [
        "16ebb5e0b36ceadc8186f71d68b0c4fa4b6e781b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 01:41:02 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 01:41:24 2009 -0700"
      },
      "message": "gianfar: Fix build.\n\nReported by Michael Guntsche \u003cmike@it-loops.com\u003e\n\n--------------------\nCommit\n38bddf04bcfe661fbdab94888c3b72c32f6873b3 gianfar: gfar_remove needs to call unregister_netdev()\n\nbreaks the build of the gianfar driver because \"dev\" is undefined in\nthis function. To quickly test rc9 I changed this to priv-\u003endev but I do\nnot know if this is the correct one.\n--------------------\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6cdee2f96a97f6da26bd3759c3f8823332fbb438",
      "tree": "ec79086f05ffc3bdf1aecc37e108ccfc3a95450d",
      "parents": [
        "0625491493d9000e4556bf566d205c28c8e7dc4e",
        "2fbd3da3877ad8d923b055e5996f80b4d4a6daf4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 00:32:56 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 00:32:56 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/yellowfin.c\n"
    },
    {
      "commit": "38bddf04bcfe661fbdab94888c3b72c32f6873b3",
      "tree": "695e4a239ede7a9fcda0169bf29c4b6e8908cfc3",
      "parents": [
        "ab1f5e49f84e7072a0aade47cfeecef70be46c0f"
      ],
      "author": {
        "name": "Toru UCHIYAMA",
        "email": "uchiyama.toru@jp.fujitsu.com",
        "time": "Sun Aug 30 22:04:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 30 22:04:07 2009 -0700"
      },
      "message": "gianfar: gfar_remove needs to call unregister_netdev()\n\nThis patch solves the problem that the Oops(BUG_ON) occurs by rmmod.\n\n\t# rmmod gianfar_driver\n\t------------[ cut here ]------------\n\tKernel BUG at c01fec48 [verbose debug info unavailable]\n\tOops: Exception in kernel mode, sig: 5 [#1]\n\tMPC837x MDS\n\tModules linked in: gianfar_driver(-) usb_storage scsi_wait_scan\n\tNIP: c01fec48 LR: c01febf4 CTR: c01feba8\n\tREGS: dec5bd60 TRAP: 0700   Tainted: G        W   (2.6.31-rc2)\n\tMSR: 00029032 \u003cEE,ME,CE,IR,DR\u003e  CR: 22000424  XER: 20000000\n\tTASK \u003d dec4cac0[1135] \u0027rmmod\u0027 THREAD: dec5a000\n\tGPR00: 00000002 dec5be10 dec4cac0 dfba1820 c035d444 c035d478 ffffffff 00000000\n\tGPR08: 0000002b 00000001 dfba193c 00000001 22000424 10019b34 1ffcb000 00000000\n\tGPR16: 10012008 00000000 bf82ebe0 100017ec bf82ebec bf82ebe8 bf82ebd0 00000880\n\tGPR24: 00000000 bf82ebf0 c03532f0 c03532e4 c036b594 dfba183c dfba1800 dfba1820\n\tNIP [c01fec48] free_netdev+0xa0/0xb8\n\tLR [c01febf4] free_netdev+0x4c/0xb8\n\tCall Trace:\n\t[dec5be10] [c01febf4] free_netdev+0x4c/0xb8 (unreliable)\n\t[dec5be30] [e105f290] gfar_remove+0x50/0x68 [gianfar_driver]\n\t[dec5be40] [c01ec534] of_platform_device_remove+0x30/0x44\n\t[dec5be50] [c0181760] __device_release_driver+0x68/0xc8\n\t[dec5be60] [c0181868] driver_detach+0xa8/0xac\n\t[dec5be80] [c0180814] bus_remove_driver+0x9c/0xd8\n\t[dec5bea0] [c0181efc] driver_unregister+0x60/0x98\n\t[dec5beb0] [c01ec650] of_unregister_driver+0x14/0x24\n\t[dec5bec0] [e10631bc] gfar_exit+0x18/0x4bc [gianfar_driver]\n\t[dec5bed0] [c0047584] sys_delete_module+0x16c/0x228\n\t[dec5bf40] [c00116bc] ret_from_syscall+0x0/0x38\n\t--- Exception: c01 at 0xff3669c\n\t    LR \u003d 0x10000f34\n\tInstruction dump:\n\t409e0024 a07e00c0 7c63f050 4be74429 80010024 bba10014 38210020 7c0803a6\n\t4e800020 68000003 3160ffff 7d2b0110 \u003c0f090000\u003e 38000004 387e01f0 901e01d4\n\t---[ end trace 8c595bcd37230a0f ]---\n\t localhost kernel: ------------[ cut here ]------------\n\nSigned-off-by: Toru UCHIYAMA uchiyama.toru@jp.fujitsu.com\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa11d958d1a6572eda08214d7c6a735804fe48a5",
      "tree": "d025b05270ad1e010660d17eeadc6ac3c1abbd7d",
      "parents": [
        "07f6642ee9418e962e54cbc07471cfe2e559c568",
        "9799218ae36910af50f002a5db1802d576fffb43"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tarch/microblaze/include/asm/socket.h\n"
    },
    {
      "commit": "75c4885924f01aed1f887886a49dfa89960de240",
      "tree": "dc7e1c6ea8f5400041c2670c518a9372cc6e8e21",
      "parents": [
        "148675a7b2061b5a5eb194530b7c4d8de1f2887e"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang0@gmail.com",
        "time": "Fri Aug 07 16:36:52 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 09 21:45:40 2009 -0700"
      },
      "message": "gianfar: keep vlan related state when restart\n\nIf vlan has been enabled. ifdown followed by ifup will lost hardware\nrelated state.\n\nAlso remove duplicated operation in gfar_vlan_rx_register().\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nAcked-by: Dai Haruki \u003cdai.haruki@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "74d154189d597b91da4322996dbf4f5c3d1544ab",
      "tree": "6f09861b5e2f875d2d8ea2127b16add9103221c6",
      "parents": [
        "5a6338db37885af06760d40cad589316e48431e9",
        "ffafa60d496f80c250f2ae0340ae94434c0b0b4d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 19:03:51 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 19:03:51 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwmc3200wifi/netdev.c\n\tnet/wireless/scan.c\n"
    },
    {
      "commit": "1db780f8c7d361fe1b7d29b9dc849b97955ae944",
      "tree": "33007ec0bcd15ee0e3fffe089f74b728f4731caf",
      "parents": [
        "eedbc705f9a094560b8d08c58b6787a5420a76a1"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Thu Jul 16 21:31:42 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 22 09:27:23 2009 -0700"
      },
      "message": "gianfar: Revive fixed link support\n\nSince commit fe192a49118f5b1272317d60c7930ece4e13ae49 (\"Rework gianfar\ndriver to use of_mdio infrastructure\") the fixed-link support is\nbroken, the driver oopses at init_phy():\n\n  Unable to handle kernel paging request for data at address 0x000000e4\n  Faulting instruction address: 0xc01cf298\n  Oops: Kernel access of bad area, sig: 11 [#1]\n  [...]\n  NIP [c01cf298] init_phy+0x80/0xdc\n  LR [c01cf250] init_phy+0x38/0xdc\n  Call Trace:\n  [cf81fe80] [c01d1cf8] gfar_enet_open+0x6c/0x19c\n  [cf81fea0] [c024494c] dev_open+0xfc/0x134\n  [cf81fec0] [c0242edc] dev_change_flags+0x84/0x1ac\n  [cf81fee0] [c0399ee0] ic_open_devs+0x168/0x2d8\n  [cf81ff20] [c039b2e8] ip_auto_config+0x90/0x2a4\n  [cf81ff60] [c0003884] do_one_initcall+0x34/0x1a8\n\nThis patch fixes the oops, and removes phy_node checks, and adds a call\nto of_phy_connect_fixed_link() if a phy isn\u0027t attached..\n\nAlso, remove an old fixed-link code that we don\u0027t use any longer.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da8120355e80ddaf534adb8ed910871d97512d56",
      "tree": "9958a6c33e29b5af5faccf6650e98729151618a2",
      "parents": [
        "c86ae82605ef92594a0de809a8c588ae955fed63",
        "7fefe6a88494b00b151b5ca7bb84daaa781bbca7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 20:21:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 20:21:24 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/orinoco/main.c\n"
    },
    {
      "commit": "c86ae82605ef92594a0de809a8c588ae955fed63",
      "tree": "d0c0ac2f76c7dc23008fe4b9f04a78359bbe24da",
      "parents": [
        "1dacc76d0014a034b8aca14237c127d7c19d7726"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 15 11:31:10 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 15 11:31:10 2009 -0700"
      },
      "message": "gianfar: remove unused DECLARE_MAC_BUF\n\nThe use of it was converted to %pM, but the variable\nstuck -- remove it now to not cause spurious warnings.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "240c102d9c54fee7fdc87a4ef2fabc7eb539e00a",
      "tree": "f176b03249adbb1e3e495a8657cbc864ac76a71c",
      "parents": [
        "f2ba025b2036e52a176cddcf91b15ac2b10c644a"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Thu Jul 09 17:54:35 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 12 14:20:02 2009 -0700"
      },
      "message": "netdev: restore MAC address set and validate operations\n\nalloc_etherdev() used to install default implementations of these\noperations, but they must now be explicitly installed in struct\nnet_device_ops.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c649c0e31d5736a4b7c5c3454182091dda4bbe62",
      "tree": "93da11bf4ea828611ab5277a7dbadf57724c2b1e",
      "parents": [
        "daebafed7fef54fcc73d2d01431122cfd578d1e0",
        "4e2fd555199977c5994d1a4d2d3b8761b20ca4c7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 25 01:42:21 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 25 01:42:21 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/ath/ath5k/phy.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn.c\n\tdrivers/net/wireless/iwlwifi/iwl3945-base.c\n"
    },
    {
      "commit": "4e2fd555199977c5994d1a4d2d3b8761b20ca4c7",
      "tree": "474454cd8fbe7f643d5ae5136bf43ec8a8513359",
      "parents": [
        "0975ecba3b670df7c488a5e0e6fe9f1f370a8ad8"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Mon May 25 00:42:34 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 25 00:42:34 2009 -0700"
      },
      "message": "gianfar: fix BUG under load after introduction of skb recycling\n\nSince commit 0fd56bb5be6455d0d42241e65aed057244665e5e (\"gianfar:\nAdd support for skb recycling\"), gianfar puts skbuffs that are in\nthe rx ring back onto the recycle list as-is in case there was a\nreceive error, but this breaks the following invariant: that all\nskbuffs on the recycle list have skb-\u003edata \u003d skb-\u003ehead + NET_SKB_PAD.\n\nThe RXBUF_ALIGNMENT realignment done in gfar_new_skb() will be done\ntwice on skbuffs recycled in this way, causing there not to be enough\nroom in the skb anymore to receive a full packet, eventually leading\nto an skb_over_panic from gfar_clean_rx_ring() -\u003e skb_put().\n\nResetting the skb-\u003edata pointer to skb-\u003ehead + NET_SKB_PAD before\nputting the skb back onto the recycle list restores the mentioned\ninvariant, and should fix this issue.\n\nReported-by: Michael Guntsche \u003cmike@it-loops.com\u003e\nTested-by: Michael Guntsche \u003cmike@it-loops.com\u003e\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6c31d55f755ff2bc1f7dc3b45c500032fe90aff8",
      "tree": "8df9753c3f0ab4ebdb332650d11cf5bb5f2260e5",
      "parents": [
        "ac5978e7f83a6cbd9a70282d6e39bd936a31b2bc"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Tue Apr 28 08:04:10 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 28 08:04:10 2009 -0700"
      },
      "message": "gianfar: Use memset instead of cacheable_memzero\n\ncacheable_memzero() is completely overkill for the clearing out the FCB\nblock which is only 8-bytes.  The compiler should easily optimize this\nwith memset.  Additionally, cacheable_memzero() only exists on ppc32 and\nthus breaks builds of gianfar on ppc64.\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe192a49118f5b1272317d60c7930ece4e13ae49",
      "tree": "9bafb44af6a43861ec7b906c897ac9f4570124a0",
      "parents": [
        "324931ba21858c34787dee7d222388ef3fb41ee0"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat Apr 25 12:53:12 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 27 02:53:48 2009 -0700"
      },
      "message": "net: Rework gianfar driver to use of_mdio infrastructure.\n\nThis patch simplifies the driver by making use of more common code.\n\nTested on Freescale MPC8349emitxgp eval board\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbea270714faae389c48c2901ee7988ecd62f664",
      "tree": "7ba6f7f4aec9838e494fc35bee7e7acd2187b3a9",
      "parents": [
        "636d2f68a0814d84de26c021b2c15e3b4ffa29de"
      ],
      "author": {
        "name": "Markus Brunner",
        "email": "super.firetwister@gmail.com",
        "time": "Wed Apr 15 02:35:40 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 15 02:35:40 2009 -0700"
      },
      "message": "gianfar: stop send queue before resetting gianfar\n\nAfter a transmit timed out, the reset task will be called, which will free the\nallocated resources(stop_gfar). If gfar_poll will be called before the\nresources get allocated again gfar_clean_tx_ring will call\ndev_kfree_skb_any(NULL).\n\nExample crash:\n\nops: Kernel access of bad area, sig: 11 [#1]\nPREEMPT RSBBA100\nModules linked in:\nNIP: c01a10c4 LR: c013b254 CTR: c013c038\nREGS: c02e7d20 TRAP: 0300   Not tainted  (2.6.27.20)\nMSR: 00001032 \u003cME,IR,DR\u003e  CR: 24000082  XER: 20000000\nDAR: 000000a0, DSISR: 20000000\nTASK \u003d c02ce578[0] \u0027swapper\u0027 THREAD: c02e6000\nGPR00: 000000a0 c02e7dd0 c02ce578 00000000 00000040 00000001 c02ec1c0 \n00001032\nGPR08: c080d1e0 df9ea800 00000000 00000000 24000082 ffffffff 0404f000 \n00000000\nGPR16: ffffffbf ffffffff ffffffff ffdff7ff ffffffff c02d0fd4 00100100 \n00200200\nGPR24: c031220c 00000001 00000001 00000000 00000000 df849800 ff109000 \ndf849b80\nNIP [c01a10c4] dev_kfree_skb_irq+0x18/0x70\nLR [c013b254] gfar_clean_tx_ring+0x70/0x11c\nCall Trace:\n[c02e7dd0] [c003e978] update_wall_time+0x730/0x744 (unreliable)\n[c02e7df0] [c013b254] gfar_clean_tx_ring+0x70/0x11c\n[c02e7e10] [c013c07c] gfar_poll+0x44/0x150\n[c02e7e30] [c01a064c] net_rx_action+0xa8/0x19c\n[c02e7e70] [c00251d4] __do_softirq+0x64/0xc0\n[c02e7e90] [c0006384] do_softirq+0x40/0x58\n[c02e7ea0] [c00250a8] irq_exit+0x40/0x9c\n[c02e7eb0] [c000642c] do_IRQ+0x90/0xac\n[c02e7ec0] [c0010ab4] ret_from_except+0x0/0x14\n--- Exception: 501 at cpu_idle+0x9c/0xf8\n    LR \u003d cpu_idle+0x9c/0xf8\n[c02e7f80] [c0009820] cpu_idle+0x58/0xf8 (unreliable)\n[c02e7fa0] [c01fb8c8] __got2_end+0x7c/0x90\n[c02e7fc0] [c026c794] start_kernel+0x2c0/0x2d4\n[c02e7ff0] [00003438] 0x3438\nInstruction dump:\n7fa00124 80010024 bba10014 38210020 7c0803a6 4e800020 9421ffe0 7c0802a6\n7c6b1b78 90010024 380300a0 bfa10014 \u003c7d200028\u003e 3129ffff 7d20012d 40a2fff4\nKernel panic - not syncing: Fatal exception in interrupt\n\nThis Patch calls netif_stop_queue before calling stop_gfar.\n\nSigned-off-by: Markus Brunner \u003csuper.firetwister@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "ee76db5e9e9896312f001790855a798472440328",
      "tree": "7a83b12a69689dbde07fd545a48cbd8a771c3fe3",
      "parents": [
        "2c60b6885afc56a17b9d55b04c4328123063fc9d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 29 01:19:37 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 29 01:19:37 2009 -0700"
      },
      "message": "gianfar: Fix use-after-of_node_put() in gfar_of_init().\n\nWe can\u0027t put \u0027mdio\u0027 until after we\u0027ve used it in the\nfsl_pq_mdio_bus_name() call.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b28beaf88436fa44fc25ee27a2fadffb75f222e",
      "tree": "f8e6b7da27f9a90ac22e0359696572cdb6020ebc",
      "parents": [
        "8ebaebca7e9d371d79088190990f95e95e225b6d"
      ],
      "author": {
        "name": "Li Yang",
        "email": "leoli@freescale.com",
        "time": "Fri Mar 27 15:54:30 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 27 15:54:30 2009 -0700"
      },
      "message": "gianfar: only check headroom when FCB is needed\n\nSigned-off-by: Li Yang \u003cleoli@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd14ba842cd29edbbd40e566194bd33cf0c92f6c",
      "tree": "3f95479eb945f9741339abc4fdeae7e4716ffed3",
      "parents": [
        "5e68b772e6efd189d6aca76f6872fb75d51ace60"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 27 01:10:58 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 27 01:10:58 2009 -0700"
      },
      "message": "gianfar: Fix kfree(skb)\n\nNoticed by Li Yang.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "54dc79fe0d895758bdaa1dcf8512d3d21263d105",
      "tree": "8a6e73c9e3a227f420bd258d538dd525f3955f9c",
      "parents": [
        "83e0bbcbe2145f160fbaa109b0439dae7f4a38a9"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Mar 27 00:38:45 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 27 00:38:45 2009 -0700"
      },
      "message": "gianfar: fix headroom expansion code\n\nThe code that was added to increase headroom was wrong.\nIt doesn\u0027t handle the case where gfar_add_fcb() changes the skb.\nBetter to do check at start of transmit (outside of lock), where\nerror handling is better anyway.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "93c1285c5d92c31f9bcc20355f1e86e95bec165e",
      "tree": "ef24903fe05abdb9796ed4636d3a05f357b5c238",
      "parents": [
        "8ca51986be0c19c8a48ef8f36568c5a3c2c0ac50"
      ],
      "author": {
        "name": "Li Yang",
        "email": "leoli@freescale.com",
        "time": "Tue Mar 24 23:15:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 25 17:21:19 2009 -0700"
      },
      "message": "gianfar: reallocate skb when headroom is not enough for fcb\n\nGianfar uses a hardware header FCB for offloading.  However when used\nwith bridging or IP forwarding, TX skb might not have enough headroom\nfor the FCB.  Reallocate skb for such cases.\n\nSigned-off-by: Li Yang \u003cleoli@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "29ded5f76ce3c41f43b64643b074b7c9c9ebd925",
      "tree": "2de9edded589e6b7bdab82acfaa596624b8add75",
      "parents": [
        "b55de80e49892002a1878013ab9aee1a30970be6"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Sat Mar 21 13:27:55 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 13:27:55 2009 -0700"
      },
      "message": "gianfar: Fix build with CONFIG_PM enabled\n\ncommit 4826857f1bf07f9c0f1495e9b05d125552c88a85 (\"gianfar: pass the\nproper dev to DMA ops\") introduced this build breakage:\n\n  CC      drivers/net/gianfar.o\ndrivers/net/gianfar.c: In function \u0027gfar_suspend\u0027:\ndrivers/net/gianfar.c:552: error: \u0027struct gfar_private\u0027 has no member named \u0027dev\u0027\ndrivers/net/gianfar.c: In function \u0027gfar_resume\u0027:\ndrivers/net/gianfar.c:601: error: \u0027struct gfar_private\u0027 has no member named \u0027dev\u0027\nmake[2]: *** [drivers/net/gianfar.o] Error 1\n\nFix this by converting suspend and resume routines to use\ngfar_private-\u003endev.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4826857f1bf07f9c0f1495e9b05d125552c88a85",
      "tree": "247387255d4dc1939e88fb640da7cd9ebbae8a73",
      "parents": [
        "4b704d59d6fb152bcd0883b84af5936a29067f12"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Wed Mar 18 23:28:22 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 18 23:28:22 2009 -0700"
      },
      "message": "gianfar: pass the proper dev to DMA ops\n\nWe need to be passing the of_platform device struct into the DMA ops as\nits the one that has the archdata setup to know which low-level DMA ops we\nshould be using (not the net_device one).  This isn\u0027t an issue until we\nexpect the archdata to be setup correctly.\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "26ccfc37da21e6f02d5e805c38ca7551c16b2fe0",
      "tree": "0e4a942149b983600e0867a101144642a2693ba3",
      "parents": [
        "db46db157746e57fb1ca59223bf0f72d9f875d89"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Tue Mar 10 12:58:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 13 12:05:23 2009 -0700"
      },
      "message": "gianfar: Convert to use netdev_ops\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa4abc9bcce0d2a7ec189e897f8f8c58ca04643b",
      "tree": "22ef88d84a2e06380bb6a853c3ba28657e4e5f92",
      "parents": [
        "814c01dc7c533033b4e99981a2e24a6195bfb43c",
        "52c0326beaa3cb0049d0f1c51c6ad5d4a04e4430"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-tx.c\n\tnet/8021q/vlan_core.c\n\tnet/core/dev.c\n"
    },
    {
      "commit": "7958a45310519811134a5b911d863201786978ab",
      "tree": "d2f95d6c105e112429316289a8e30d1821e00e87",
      "parents": [
        "1844f747947bb89d7f12cd3034548805113f764b"
      ],
      "author": {
        "name": "Rini van Zetten",
        "email": "rini@arvoo.nl",
        "time": "Fri Feb 27 03:18:48 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 27 03:18:48 2009 -0800"
      },
      "message": "gianfar: Do right check on num_txbdfree\n\nThis patch fixes a wrong check on num_txbdfree. It could lead to\nnum_txbdfree become nagative.  Result was that the gianfar stops\nsending data.\n\nChanges from first version :\n- removed a space between parens (David Millers comment)\n- full email address in signed off line\n\nSigned-off-by: Rini van Zetten \u003crini@arvoo.nl\u003e\nAcked-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ecc103aec454288cbaa5a33d8960ab3467e8a11",
      "tree": "d911ae41c303a575913b8aca2a49f4acaaf0fc93",
      "parents": [
        "0012985d184b7b9d4513eacd35771715471e06ef",
        "4906f9985e310fc01f956256b0d58ac28b0dcb19"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 09 23:22:21 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 09 23:22:21 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/gianfar.c\n"
    },
    {
      "commit": "8707bdd48ab705a459ac1b12014075a139d1d4f9",
      "tree": "1dc59924b30949d20a6f7c4da9981005b6d612f7",
      "parents": [
        "d4e2675a61890a84849a24affedf80d5cae8b199"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Feb 09 14:59:30 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 09 14:59:30 2009 -0800"
      },
      "message": "gianfar: Fix boot hangs while bringing up gianfar ethernet\n\nIra Snyder found that commit 8c7396aebb68994c0519e438eecdf4d5fa9c7844\n\"gianfar: Merge Tx and Rx interrupt for scheduling clean up ring\" can\ncause hangs. It\u0027s because there was removed clearing of interrupts in\ngfar_schedule_cleanup() (which is called by an interrupt handler) in\ncase when netif scheduling has been disabled. This patch brings back\nthis action and a comment.\n\nReported-by: Ira Snyder \u003ciws@ovro.caltech.edu\u003e\nReported-by: Peter Korsgaard \u003cjacmet@sunsite.dk\u003e\nBisected-by: Ira Snyder \u003ciws@ovro.caltech.edu\u003e\nTested-by: Peter Korsgaard \u003cjacmet@sunsite.dk\u003e\nTested-by: Ira Snyder \u003ciws@ovro.caltech.edu\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7870389478d3c682c79c07abe7f1fce8b8a81952",
      "tree": "8dc50c5aa48c65c7eb5cc2770501a45f1e2371f6",
      "parents": [
        "005c79b3d4df48fa01b77e5ccf46e5cd4754cfd5",
        "b98ac702f49042ab0c382b839465b95a2bd0cd65"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 04 16:52:41 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 04 16:52:41 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "4d7902f22b0804730b80f7a4147f676430248a3a",
      "tree": "f3a2eb354156760e9f07b02774006fb2103aa20e",
      "parents": [
        "0fd56bb5be6455d0d42241e65aed057244665e5e"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Wed Feb 04 16:43:44 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 04 16:43:44 2009 -0800"
      },
      "message": "gianfar: Fix stashing support\n\nStashing is only supported on the 85xx (e500-based) SoCs.  The 83xx and 86xx\nchips don\u0027t have a proper cache for this.  U-Boot has been updated to add\nstashing properties to the device tree nodes of gianfar devices on 85xx.  So\nnow we modify Linux to keep stashing off unless those properties are there.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0fd56bb5be6455d0d42241e65aed057244665e5e",
      "tree": "45c37c6aa44d8719797a9ad5a4f2d6018a4305da",
      "parents": [
        "1577ecef766650a57fceb171acee2b13cbfaf1d3"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Wed Feb 04 16:43:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 04 16:43:16 2009 -0800"
      },
      "message": "gianfar: Add support for skb recycling\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1577ecef766650a57fceb171acee2b13cbfaf1d3",
      "tree": "b66df11d8815f95f815e65c3c3ffd32df81b8d43",
      "parents": [
        "9c46f6d42f1b5627c49a5906cb5b315ad8716ff0"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Wed Feb 04 16:42:12 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 04 16:42:35 2009 -0800"
      },
      "message": "netdev: Merge UCC and gianfar MDIO bus drivers\n\nThe MDIO bus drivers for the UCC and gianfar ethernet controllers are\nessentially the same.  There\u0027s no reason to duplicate that much code.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b98ac702f49042ab0c382b839465b95a2bd0cd65",
      "tree": "344e61f5798864cdcab11e071842578765c9ba55",
      "parents": [
        "1fbe49328f7442090439addddf441fb5b3186e71"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Wed Feb 04 16:38:05 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 04 16:38:05 2009 -0800"
      },
      "message": "gianfar: Fix potential soft reset race\n\nSOFT_RESET must be asserted for at least 3 TX clocks in order for it to work\nproperly.  The syncs in the gfar_write() commands have been hiding this, but\nwe need to guarantee it.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2f66d183966114fcc91591191ec9af14a252ac5",
      "tree": "e47ff4df2eec80073c4cf7f6e3495fd258bbf70a",
      "parents": [
        "3d1e4db2b0698785f4e4dd139d88257e855e53b8"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Sun Feb 01 00:54:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 01 00:54:16 2009 -0800"
      },
      "message": "gianfar: Fix sparse warnings\n\nThis patch fixes following sparse warnings:\n\n  CHECK   gianfar_ethtool.c\ngianfar_ethtool.c:610:26: warning: symbol \u0027gfar_ethtool_ops\u0027 was not declared. Should it be static?\n  CHECK   gianfar_mii.c\ngianfar_mii.c:108:35: warning: cast adds address space to expression (\u003casn:2\u003e)\ngianfar_mii.c:119:35: warning: cast adds address space to expression (\u003casn:2\u003e)\ngianfar_mii.c:128:35: warning: cast adds address space to expression (\u003casn:2\u003e)\ngianfar_mii.c:272:5: warning: cast removes address space of expression\ngianfar_mii.c:271:15: warning: cast adds address space to expression (\u003casn:2\u003e)\ngianfar_mii.c:340:11: warning: cast adds address space to expression (\u003casn:2\u003e)\n  CHECK   gianfar_sysfs.c\ngianfar_sysfs.c:84:1: warning: symbol \u0027dev_attr_bd_stash\u0027 was not declared. Should it be static?\ngianfar_sysfs.c:133:1: warning: symbol \u0027dev_attr_rx_stash_size\u0027 was not declared. Should it be static?\ngianfar_sysfs.c:175:1: warning: symbol \u0027dev_attr_rx_stash_index\u0027 was not declared. Should it be static?\ngianfar_sysfs.c:213:1: warning: symbol \u0027dev_attr_fifo_threshold\u0027 was not declared. Should it be static?\ngianfar_sysfs.c:250:1: warning: symbol \u0027dev_attr_fifo_starve\u0027 was not declared. Should it be static?\ngianfar_sysfs.c:287:1: warning: symbol \u0027dev_attr_fifo_starve_off\u0027 was not declared. Should it be static?\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2884e5cc9283d541977bdf5dc344849af94cd639",
      "tree": "937a66410637f6298ad038d173316edf27def66b",
      "parents": [
        "09640e6365c679b5642b1c41b6d7078f51689ddf"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Sun Feb 01 00:52:34 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 01 00:52:34 2009 -0800"
      },
      "message": "gianfar: Implement proper, per netdevice wakeup management\n\nThis patch implements wakeup management for the gianfar driver.\n\nThe driver should set wakeup enable if WOL is enabled, so that\nphylib won\u0027t power off an attached PHY.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3eacdf58c2c0b9507afedfc19108e98b992c31e4",
      "tree": "d95e7e022ff6e6181edce43fe97cf2883b5a91ed",
      "parents": [
        "dd0a251c8e087bca05e8f9a3657078591ae6e12b",
        "5376071069ec8a7e6a8112beab16fc24f5139475"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 26 17:43:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 26 17:43:16 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    }
  ],
  "next": "cd1f55a5b49b74e13ed9e7bc74d005803aaa0da8"
}
