)]}'
{
  "commit": "ecf5d430a4fd11dcb0212ded41e3f31d66807a93",
  "tree": "2d5916dba1f6a7055e6deffae63e77f7cf7bcf8c",
  "parents": [
    "8297886712dafa9bd0f641e27ca5352229d2357e"
  ],
  "author": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Fri Feb 15 20:58:54 2008 +0100"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@suse.de",
    "time": "Mon Feb 25 16:14:08 2008 -0800"
  },
  "message": "x86_64: CPA, fix cache attribute inconsistency bug\n\nno upstream git id as the code has been rewritten.\n\nfix CPA cache attribute bug in v2.6.23. When phys_base is nonzero\n(when CONFIG_RELOCATABLE\u003dy) then change_page_attr_addr() miscalculates\nthe secondary alias address by -14 MB (depending on the configured\noffset).\n\nThe default 64-bit kernels of Fedora and Ubuntu are affected:\n\n   $ grep RELOCA /boot/config-2.6.23.9-85.fc8\n     CONFIG_RELOCATABLE\u003dy\n\n   $ grep RELOC /boot/config-2.6.22-14-generic\n     CONFIG_RELOCATABLE\u003dy\n\nand probably on many other distros as well.\n\nthe bug affects all pages in the first 40 MB of physical RAM that\nare allocated by some subsystem that does ioremap_nocache() on them:\n\n       if (__pa(address) \u003c KERNEL_TEXT_SIZE) {\n\nHence we might leave page table entries with inconsistent cache\nattributes around (pages mapped at both UnCacheable and Write-Back),\nand we can also set the wrong kernel text pages to UnCacheable.\n\nthe effects of this bug can be random slowdowns and other misbehavior.\nIf for example AGP allocates its aperture pages into the first 40 MB\nof physical RAM, then the -14 MB bug might mark random kernel texto\npages as uncacheable, slowing down a random portion of the 64-bit\nkernel until the AGP driver is unloaded.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "eff3b22a2fb74acaed64fee9c187e63d4a0ab738",
      "old_mode": 33188,
      "old_path": "arch/x86_64/mm/pageattr.c",
      "new_id": "7770e1039f30ca20bf6d94517fc85b2cf220ef79",
      "new_mode": 33188,
      "new_path": "arch/x86_64/mm/pageattr.c"
    }
  ]
}
