)]}'
{
  "commit": "be44d2aabce2d62f72d5751d1871b6212bf7a1c7",
  "tree": "3f190dd5b5747ee83b50c4596b4801ce6c6b551c",
  "parents": [
    "bb81a09e55eaf7e5f798468ab971469b6f66a259"
  ],
  "author": {
    "name": "Stas Sergeev",
    "email": "stsp@aknet.ru",
    "time": "Thu Dec 07 02:14:01 2006 +0100"
  },
  "committer": {
    "name": "Andi Kleen",
    "email": "andi@basil.nowhere.org",
    "time": "Thu Dec 07 02:14:01 2006 +0100"
  },
  "message": "[PATCH] i386: espfix cleanup\n\nClean up the espfix code:\n\n- Introduced PER_CPU() macro to be used from asm\n- Introduced GET_DESC_BASE() macro to be used from asm\n- Rewrote the fixup code in asm, as calling a C code with the altered %ss\n  appeared to be unsafe\n- No longer altering the stack from a .fixup section\n- 16bit per-cpu stack is no longer used, instead the stack segment base\n  is patched the way so that the high word of the kernel and user %esp\n  are the same.\n- Added the limit-patching for the espfix segment. (Chuck Ebbert)\n\n[jeremy@goop.org: use the x86 scaling addressing mode rather than shifting]\nSigned-off-by: Stas Sergeev \u003cstsp@aknet.ru\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nAcked-by: Zachary Amsden \u003czach@vmware.com\u003e\nAcked-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nAcked-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c80271f8f084c04014d926185cbe896a86fe8d9e",
      "old_mode": 33188,
      "old_path": "arch/i386/kernel/asm-offsets.c",
      "new_id": "e94d910a28bd28ba479d7bb94dcdaa8cf8898b4e",
      "new_mode": 33188,
      "new_path": "arch/i386/kernel/asm-offsets.c"
    },
    {
      "type": "modify",
      "old_id": "d9f3e3c31f054240c790bbb461c8f261f2726487",
      "old_mode": 33188,
      "old_path": "arch/i386/kernel/cpu/common.c",
      "new_id": "5532fc4e1bf040772c95e74387accb4a5b775993",
      "new_mode": 33188,
      "new_path": "arch/i386/kernel/cpu/common.c"
    },
    {
      "type": "modify",
      "old_id": "5a63d6fdb70e4ff75d09b69874334b758d5af07a",
      "old_mode": 33188,
      "old_path": "arch/i386/kernel/entry.S",
      "new_id": "c38d801ba0bb2823d9b41c899b535c279de39d79",
      "new_mode": 33188,
      "new_path": "arch/i386/kernel/entry.S"
    },
    {
      "type": "modify",
      "old_id": "ca31f18d277c5487e3afab809783f9d79beb4fbe",
      "old_mode": 33188,
      "old_path": "arch/i386/kernel/head.S",
      "new_id": "b1f1df11fcc69fdee85275d94f5d662b3bbd8db3",
      "new_mode": 33188,
      "new_path": "arch/i386/kernel/head.S"
    },
    {
      "type": "modify",
      "old_id": "56655ea8d98f62aed4744772b9b2cce8dde1f6b8",
      "old_mode": 33188,
      "old_path": "arch/i386/kernel/traps.c",
      "new_id": "f9bb1f89d687e15fa25ebac75b24eabe91a239c4",
      "new_mode": 33188,
      "new_path": "arch/i386/kernel/traps.c"
    },
    {
      "type": "modify",
      "old_id": "a0398f780ca11782f699e955373c8c689cfbad3e",
      "old_mode": 33188,
      "old_path": "include/asm-i386/desc.h",
      "new_id": "6cf2ac2bfde747111ce5e3b46f69811b22f6978a",
      "new_mode": 33188,
      "new_path": "include/asm-i386/desc.h"
    },
    {
      "type": "modify",
      "old_id": "5764afa4b6a4b4a690a595cad8df504a8b43cf8c",
      "old_mode": 33188,
      "old_path": "include/asm-i386/percpu.h",
      "new_id": "510ae1d3486c7c289b80e765af719aa80c166c94",
      "new_mode": 33188,
      "new_path": "include/asm-i386/percpu.h"
    }
  ]
}
