)]}'
{
  "commit": "5edabca9d4cff7f1f2b68f0bac55ef99d9798ba4",
  "tree": "6472d92163649ed669f5814120ecf500765a0548",
  "parents": [
    "785f35775d968e0f45231b754e945fcb3ed6bded"
  ],
  "author": {
    "name": "Andrey Konovalov",
    "email": "andreyknvl@google.com",
    "time": "Thu Feb 16 17:22:46 2017 +0100"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Fri Feb 17 13:36:25 2017 -0500"
  },
  "message": "dccp: fix freeing skb too early for IPV6_RECVPKTINFO\n\nIn the current DCCP implementation an skb for a DCCP_PKT_REQUEST packet\nis forcibly freed via __kfree_skb in dccp_rcv_state_process if\ndccp_v6_conn_request successfully returns.\n\nHowever, if IPV6_RECVPKTINFO is set on a socket, the address of the skb\nis saved to ireq-\u003epktopts and the ref count for skb is incremented in\ndccp_v6_conn_request, so skb is still in use. Nevertheless, it gets freed\nin dccp_rcv_state_process.\n\nFix by calling consume_skb instead of doing goto discard and therefore\ncalling __kfree_skb.\n\nSimilar fixes for TCP:\n\nfb7e2399ec17f1004c0e0ccfd17439f8759ede01 [TCP]: skb is unexpectedly freed.\n0aea76d35c9651d55bbaf746e7914e5f9ae5a25d tcp: SYN packets are now\nsimply consumed\n\nSigned-off-by: Andrey Konovalov \u003candreyknvl@google.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ba347184bda9b3fee1f86db847352ab133ddaa3f",
      "old_mode": 33188,
      "old_path": "net/dccp/input.c",
      "new_id": "8fedc2d497709b3dea9202894f45bf5cab043361",
      "new_mode": 33188,
      "new_path": "net/dccp/input.c"
    }
  ]
}
