)]}'
{
  "commit": "fc7c028dcdbfe981bca75d2a7b95f363eb691ef3",
  "tree": "7066ffe8658976fd44124247d8eee9fc4d14bde8",
  "parents": [
    "d6efd3f18763ac84098fa318742cd2a3bfdf4d72"
  ],
  "author": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Mon Sep 06 16:06:04 2021 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Wed Sep 15 13:42:33 2021 -0700"
  },
  "message": "sparc: avoid stringop-overread errors\n\nThe sparc mdesc code does pointer games with \u0027struct mdesc_hdr\u0027, but\ndidn\u0027t describe to the compiler how that header is then followed by the\ndata that the header describes.\n\nAs a result, gcc is now unhappy since it does stricter pointer range\ntracking, and doesn\u0027t understand about how these things work.  This\nresults in various errors like:\n\n    arch/sparc/kernel/mdesc.c: In function ‘mdesc_node_by_name’:\n    arch/sparc/kernel/mdesc.c:647:22: error: ‘strcmp’ reading 1 or more bytes from a region of size 0 [-Werror\u003dstringop-overread]\n      647 |                 if (!strcmp(names + ep[ret].name_offset, name))\n          |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nwhich are easily avoided by just describing \u0027struct mdesc_hdr\u0027 better,\nand making the node_block() helper function look into that unsized\ndata[] that follows the header.\n\nThis makes the sparc64 build happy again at least for my cross-compiler\nversion (gcc version 11.2.1).\n\nLink: https://lore.kernel.org/lkml/CAHk-\u003dwi4NW3NC0xWykkw\u003d6LnjQD6D_rtRtxY9g8gQAJXtQMi8A@mail.gmail.com/\nCc: Guenter Roeck \u003clinux@roeck-us.net\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8e645ddac58e2dea89d88efd156c4c3128d4e215",
      "old_mode": 33188,
      "old_path": "arch/sparc/kernel/mdesc.c",
      "new_id": "30f171b7b00c23aeb887a3c7fa13020e47420f45",
      "new_mode": 33188,
      "new_path": "arch/sparc/kernel/mdesc.c"
    }
  ]
}
