)]}'
{
  "commit": "3bcf833da73069b6aca57ed36eb02f14fb6a9be8",
  "tree": "ae6f217f78bed66d4811a4d1db9e1e4d903e4934",
  "parents": [
    "209d5d11a19b5dc33852d195e99a292b8ef3fd51"
  ],
  "author": {
    "name": "Florian Westphal",
    "email": "fw@strlen.de",
    "time": "Fri Sep 22 18:30:29 2023 +0200"
  },
  "committer": {
    "name": "Oleksandr Tymoshenko",
    "email": "ovt@google.com",
    "time": "Wed Oct 11 05:25:51 2023 +0000"
  },
  "message": "netfilter: nf_tables: fix memleak when more than 255 elements expired\n\ncommit cf5000a7787cbc10341091d37245a42c119d26c5 upstream.\n\nWhen more than 255 elements expired we\u0027re supposed to switch to a new gc\ncontainer structure.\n\nThis never happens: u8 type will wrap before reaching the boundary\nand nft_trans_gc_space() always returns true.\n\nThis means we recycle the initial gc container structure and\nlose track of the elements that came before.\n\nWhile at it, don\u0027t deref \u0027gc\u0027 after we\u0027ve passed it to call_rcu.\n\nFixes: 5f68718b34a5 (\"netfilter: nf_tables: GC transaction API to avoid race with control plane\")\nReported-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Sasha Levin \u003csashal@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ab0a5e6dfc5d78c189ff466b2015d6dda5c6723d",
      "old_mode": 33188,
      "old_path": "include/net/netfilter/nf_tables.h",
      "new_id": "3ac815e2eac086b2616001ef54bc4b1a76a39eae",
      "new_mode": 33188,
      "new_path": "include/net/netfilter/nf_tables.h"
    },
    {
      "type": "modify",
      "old_id": "e20198795971e976f33acd9d92a3804a8512252f",
      "old_mode": 33188,
      "old_path": "net/netfilter/nf_tables_api.c",
      "new_id": "795c6e530f17c0e1fce928e30b86b6402bde6441",
      "new_mode": 33188,
      "new_path": "net/netfilter/nf_tables_api.c"
    }
  ]
}
