)]}'
{
  "commit": "6ef4852b1326301f6e9657e99b2c3221be1a3a44",
  "tree": "40dd9a837e70edc21faa3fcaea3555ae9536ce24",
  "parents": [
    "1bd4f29d0af5b4b1c022d8fded14665dd5932905"
  ],
  "author": {
    "name": "Németh Márton",
    "email": "nm127@freemail.hu",
    "time": "Sun Jan 10 15:33:45 2010 +0100"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@suse.de",
    "time": "Tue Mar 02 14:54:15 2010 -0800"
  },
  "message": "USB class: make USB device id constant\n\nThe id_table field of the struct usb_device_id is constant in \u003clinux/usb.h\u003e\nso it is worth to make the initialization data also constant.\n\nThe semantic match that finds this kind of pattern is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r@\ndisable decl_init,const_decl_init;\nidentifier I1, I2, x;\n@@\n\tstruct I1 {\n\t  ...\n\t  const struct I2 *x;\n\t  ...\n\t};\n@s@\nidentifier r.I1, y;\nidentifier r.x, E;\n@@\n\tstruct I1 y \u003d {\n\t  .x \u003d E,\n\t};\n@c@\nidentifier r.I2;\nidentifier s.E;\n@@\n\tconst struct I2 E[] \u003d ... ;\n@depends on !c@\nidentifier r.I2;\nidentifier s.E;\n@@\n+\tconst\n\tstruct I2 E[] \u003d ...;\n// \u003c/smpl\u003e\n\nSigned-off-by: Németh Márton \u003cnm127@freemail.hu\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: cocci@diku.dk\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "95f29a293041f6bf1ba0b8f42d3aa82c5255b8d7",
      "old_mode": 33188,
      "old_path": "drivers/usb/class/cdc-acm.c",
      "new_id": "5155ff2b22820b5aa328055f90de43f91d009a18",
      "new_mode": 33188,
      "new_path": "drivers/usb/class/cdc-acm.c"
    },
    {
      "type": "modify",
      "old_id": "3e564bfe17d16b8673f26bdd32fc4da64e201fdc",
      "old_mode": 33188,
      "old_path": "drivers/usb/class/cdc-wdm.c",
      "new_id": "18aafcb08fc8be08536a4ff3caf75859bc003116",
      "new_mode": 33188,
      "new_path": "drivers/usb/class/cdc-wdm.c"
    },
    {
      "type": "modify",
      "old_id": "9d8ec729c263a031c1f411778ca3f7ef40737043",
      "old_mode": 33188,
      "old_path": "drivers/usb/class/usblp.c",
      "new_id": "93b5f85d7cebda8f1dcae4e248ab9f3f8adc2285",
      "new_mode": 33188,
      "new_path": "drivers/usb/class/usblp.c"
    },
    {
      "type": "modify",
      "old_id": "7c5f4e32c9202b9f7ac0b0b95c92fc5a3343f482",
      "old_mode": 33188,
      "old_path": "drivers/usb/class/usbtmc.c",
      "new_id": "8588c0937a89ea948dd8d839af7902e815e7d02e",
      "new_mode": 33188,
      "new_path": "drivers/usb/class/usbtmc.c"
    },
    {
      "type": "modify",
      "old_id": "25eae405f62252bd9cffef3c4dba28ab100ad1de",
      "old_mode": 33188,
      "old_path": "drivers/usb/wusbcore/cbaf.c",
      "new_id": "51a8e0d5789d0da9654e13dca6e6ab53290d51cc",
      "new_mode": 33188,
      "new_path": "drivers/usb/wusbcore/cbaf.c"
    }
  ]
}
