)]}'
{
  "commit": "1f474646fdc36b457606bbcd6a3592e6cbd31ac4",
  "tree": "706149d39c9de0bc0ceacfb2ab44e909caba5b3c",
  "parents": [
    "d7ecfb3c2aa155c9f6152ebe91de92067d16ba6e"
  ],
  "author": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Fri Feb 19 15:19:52 2010 -0800"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Fri Feb 19 15:19:52 2010 -0800"
  },
  "message": "sparc64: Fix sun4u execute bit check in TSB I-TLB load.\n\nThanks to testcase and report from Brad Spengler:\n\n--------------------\n#include \u003cstdio.h\u003e\n\ntypedef int (* _wee)(void);\n\nint main(void)\n{\n        char buf[8] \u003d { \u0027\\x81\u0027, \u0027\\xc7\u0027, \u0027\\xe0\u0027, \u0027\\x08\u0027, \u0027\\x81\u0027, \u0027\\xe8\u0027,\n                        \u0027\\x00\u0027, \u0027\\x00\u0027 };\n        _wee wee;\n        printf(\"%p\\n\", \u0026buf);\n        wee \u003d (_wee)\u0026buf;\n        wee();\n\n        return 0;\n}\n--------------------\n\nTSB I-tlb load code tries to use andcc to check the _PAGE_EXEC_4U bit,\nbut that\u0027s bit 12 so it gets sign extended all the way up to bit 63\nand the test nearly always passes as a result.\n\nUse sethi to fix the bug.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8c91d9b29a2f24023849498a41f440b5ec1e6938",
      "old_mode": 33188,
      "old_path": "arch/sparc/kernel/tsb.S",
      "new_id": "db15d123f05447f9eac74c5fd168c14084eb25a3",
      "new_mode": 33188,
      "new_path": "arch/sparc/kernel/tsb.S"
    }
  ]
}
