)]}'
{
  "log": [
    {
      "commit": "b82b9183d4f18f9b8c4bb31f223eb6c79b734eb0",
      "tree": "c93bb04e52255fe3e313ce4469dd2df6c2a62789",
      "parents": [
        "c11bf1c8baff170fa478adc04964da519d160e62"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue Jan 24 05:16:00 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 24 15:51:00 2012 -0500"
      },
      "message": "team: send only changed options/ports via netlink\n\nThis patch changes event message behaviour to send only updated records\ninstead of whole list. This fixes bug on which userspace receives non-actual\ndata in case multiple events occur in row.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "57459185a19b0246866479522b77cbb9732201d1",
      "tree": "75a0d4ea2b0024428f5f519ab16a5b537d482e62",
      "parents": [
        "348a1443cc4303c72cf1ee3b26e476fec8e7b5fa"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Dec 08 04:11:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 08 19:52:43 2011 -0500"
      },
      "message": "team: use vlan_vids_[addr/del]_by_dev\n\nSo far when vlan id was added to team device befor port was added, this\nvid was not added to port\u0027s vlan filter. Also after removal, vid stayed\nin port device\u0027s vlan filter. Benefit of new vlan functions to handle\nthis work.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87002b03baabd2b8f6281ab6411ed88d24958de1",
      "tree": "0e5730c0d1ba887488ba420d4ea89a230f272c51",
      "parents": [
        "8e586137e6b63af1e881b328466ab5ffbe562510"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Dec 08 04:11:17 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 08 19:52:42 2011 -0500"
      },
      "message": "net: introduce vlan_vid_[add/del] and use them instead of direct [add/kill]_vid ndo calls\n\nThis patch adds wrapper for ndo_vlan_rx_add_vid/ndo_vlan_rx_kill_vid\nfunctions. Check for NETIF_F_HW_VLAN_FILTER feature is done in this\nwrapper.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e586137e6b63af1e881b328466ab5ffbe562510",
      "tree": "da0767e1b1361aa24bd32f485453079e31854c0c",
      "parents": [
        "7da82c06ded105bf601bfa0eafc92e84eb0ceeed"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Dec 08 19:52:37 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 08 19:52:37 2011 -0500"
      },
      "message": "net: make vlan ndo_vlan_rx_[add/kill]_vid return error value\n\nLet caller know the result of adding/removing vlan id to/from vlan\nfilter.\n\nIn some drivers I make those functions to just return 0. But in those\nwhere there is able to see if hw setup went correctly, return value is\nset appropriately.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2cfa5a0471fef43fda0b7bd87e3a5e4dbadb7809",
      "tree": "0603cf740823a45337e2b82ba63bae96a6e75186",
      "parents": [
        "8c2152286aabe753519d7627a2992625b97e4b20"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 23 07:09:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 23 18:48:19 2011 -0500"
      },
      "message": "net: treewide use of RCU_INIT_POINTER\n\nrcu_assign_pointer(ptr, NULL) can be safely replaced by\nRCU_INIT_POINTER(ptr, NULL)\n\n(old rcu_assign_pointer() macro was testing the NULL value and could\nomit the smp_wmb(), but this had to be removed because of compiler\nwarnings)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f8a15af093b19b86d56933c8757cee298d0f32a8",
      "tree": "a6e8cc92edac10c26b6336671aa4d24fc4bb9e9d",
      "parents": [
        "2bba19fff8d09bf19df5d5e2de7188d65de67c3e"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Nov 17 06:32:37 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 18 14:55:03 2011 -0500"
      },
      "message": "team: replace kmalloc+memcpy by kmemdup\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2bba19fff8d09bf19df5d5e2de7188d65de67c3e",
      "tree": "5b5a33cce321222efde828d282fd40f0b79a215a",
      "parents": [
        "234a8fd49d086f5a3debb379bfdf4e6b51f0c0e2"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Nov 17 04:16:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 18 14:55:00 2011 -0500"
      },
      "message": "team: avoid using variable-length array\n\nApparently using variable-length array is not correct\n(https://lkml.org/lkml/2011/10/23/25). So remove it.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "234a8fd49d086f5a3debb379bfdf4e6b51f0c0e2",
      "tree": "4ce3c4becc8f6b5ec0dd690f27569b25741b6f90",
      "parents": [
        "bdb6e697b2a76c541960b86ab8fda88f3de1adf2"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Nov 17 04:16:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 18 14:54:59 2011 -0500"
      },
      "message": "team: add fix_features\n\ndo fix features in similar way as bonding code does\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "358b838291f618278080bbed435b755f9b46748e",
      "tree": "b8203f872977fff505fcb8b1c7ce44deace9690b",
      "parents": [
        "61dc3461b9549bc10a2f16d254250680cadafcce"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Nov 16 11:09:09 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 16 18:16:38 2011 -0500"
      },
      "message": "team: replicate options on register\n\nSince multiple team instances are putting defined options into their\noption list, during register each option must be cloned before added\ninto list. This resolves uncool memory corruptions when using multiple\nteams.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "61dc3461b9549bc10a2f16d254250680cadafcce",
      "tree": "9072edbb001647be7731ddb192355b59bdb82315",
      "parents": [
        "8c0713a57482ebfadef197c856a38af3a55444c6"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Nov 16 11:09:08 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 16 18:16:37 2011 -0500"
      },
      "message": "team: convert overall spinlock to mutex\n\nNo need to have spinlock for this purpose. So convert this to mutex and\navoid current schedule while atomic problems in netlink code.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8c0713a57482ebfadef197c856a38af3a55444c6",
      "tree": "91b1f2f68bc576ef50c1130986b5d4a7f3d59217",
      "parents": [
        "d445ba613fe445c8f30733e68089614b40b3df5b"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Nov 16 11:55:54 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 16 18:16:17 2011 -0500"
      },
      "message": "team: Do not hold rcu_read_lock when running netlink cmds\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3d249d4ca7d0ed6629a135ea1ea21c72286c0d80",
      "tree": "e89c8b6bbf4f8d0e4a3428304c26305eca76e4b8",
      "parents": [
        "5d70b88cd41ef0f2ac0caaab4fd492dd686feee6"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Fri Nov 11 22:16:48 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 13 16:10:10 2011 -0500"
      },
      "message": "net: introduce ethernet teaming device\n\nThis patch introduces new network device called team. It supposes to be\nvery fast, simple, userspace-driven alternative to existing bonding\ndriver.\n\nUserspace library called libteam with couple of demo apps is available\nhere:\nhttps://github.com/jpirko/libteam\nNote it\u0027s still in its dipers atm.\n\nteam\u003c-\u003elibteam use generic netlink for communication. That and rtnl\nsuppose to be the only way to configure team device, no sysfs etc.\n\nPython binding of libteam was recently introduced.\nDaemon providing arpmon/miimon active-backup functionality will be\nintroduced shortly. All what\u0027s necessary is already implemented in\nkernel team driver.\n\nv7-\u003ev8:\n\t- check ndo_ndo_vlan_rx_[add/kill]_vid functions before calling\n\t  them.\n\t- use dev_kfree_skb_any() instead of dev_kfree_skb()\n\nv6-\u003ev7:\n\t- transmit and receive functions are not checked in hot paths.\n\t  That also resolves memory leak on transmit when no port is\n\t  present\n\nv5-\u003ev6:\n\t- changed couple of _rcu calls to non _rcu ones in non-readers\n\nv4-\u003ev5:\n\t- team_change_mtu() uses team-\u003elock while travesing though port\n\t  list\n\t- mac address changes are moved completely to jurisdiction of\n\t  userspace daemon. This way the daemon can do FOM1, FOM2 and\n\t  possibly other weird things with mac addresses.\n\t  Only round-robin mode sets up all ports to bond\u0027s address then\n\t  enslaved.\n\t- Extended Kconfig text\n\nv3-\u003ev4:\n\t- remove redundant synchronize_rcu from __team_change_mode()\n\t- revert \"set and clear of mode_ops happens per pointer, not per\n\t  byte\"\n\t- extend comment of function __team_change_mode()\n\nv2-\u003ev3:\n\t- team_change_mtu() uses rcu version of list traversal to unwind\n\t- set and clear of mode_ops happens per pointer, not per byte\n\t- port hashlist changed to be embedded into team structure\n\t- error branch in team_port_enter() does cleanup now\n\t- fixed rtln-\u003ertnl\n\nv1-\u003ev2:\n\t- modes are made as modules. Makes team more modular and\n\t  extendable.\n\t- several commenters\u0027 nitpicks found on v1 were fixed\n\t- several other bugs were fixed.\n\t- note I ignored Eric\u0027s comment about roundrobin port selector\n\t  as Eric\u0027s way may be easily implemented as another mode (mode\n\t  \"random\") in future.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
