)]}'
{
  "commit": "47436aa4ad054c1c7c8231618e86ebd9305308dc",
  "tree": "a9ba6e0521f9116442144a86e781a3164ec86094",
  "parents": [
    "c18acd73ffc209def08003a1927473096f66c5ad"
  ],
  "author": {
    "name": "Rusty Russell",
    "email": "rusty@rustcorp.com.au",
    "time": "Mon Oct 22 11:03:36 2007 +1000"
  },
  "committer": {
    "name": "Rusty Russell",
    "email": "rusty@rustcorp.com.au",
    "time": "Tue Oct 23 15:49:54 2007 +1000"
  },
  "message": "Boot with virtual \u003d\u003d physical to get closer to native Linux.\n\n1) This allows us to get alot closer to booting bzImages.\n\n2) It means we don\u0027t have to know page_offset.\n\n3) The Guest needs to modify the boot pagetables to create the\n   PAGE_OFFSET mapping before jumping to C code.\n\n4) guest_pa() walks the page tables rather than using page_offset.\n\n5) We don\u0027t use page_offset to figure out whether to emulate: it was\n   always kinda quesationable, and won\u0027t work for instructions done\n   before remapping (bzImage unpacking in particular).\n\n6) We still want the kernel address for tlb flushing: have the initial\n   hypercall give us that, too.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4950b03514e60164f96c899497e8a4a61c1b2b1c",
      "old_mode": 33188,
      "old_path": "Documentation/lguest/lguest.c",
      "new_id": "32c2eaf94c4df59a260e7990406329057fea5c68",
      "new_mode": 33188,
      "new_path": "Documentation/lguest/lguest.c"
    },
    {
      "type": "modify",
      "old_id": "f8764716b0c0266fb12084865c36aff271891cd1",
      "old_mode": 33188,
      "old_path": "arch/x86/kernel/asm-offsets_32.c",
      "new_id": "0e45981b2dd7f15406962ec8f85d334e21451ff1",
      "new_mode": 33188,
      "new_path": "arch/x86/kernel/asm-offsets_32.c"
    },
    {
      "type": "modify",
      "old_id": "3a06b51c98ad7aac428aba56b2b933aaf1a8ee86",
      "old_mode": 33188,
      "old_path": "arch/x86/lguest/boot.c",
      "new_id": "090f30cbf24c5c8308d7eec1fb6bc784136f081f",
      "new_mode": 33188,
      "new_path": "arch/x86/lguest/boot.c"
    },
    {
      "type": "modify",
      "old_id": "6d7a74f07c413fbb1b86c5fd07f19c2fa9c801a2",
      "old_mode": 33188,
      "old_path": "arch/x86/lguest/i386_head.S",
      "new_id": "ba4282eba5bfda6d09e19983b485ee9cf78b35f9",
      "new_mode": 33188,
      "new_path": "arch/x86/lguest/i386_head.S"
    },
    {
      "type": "modify",
      "old_id": "02d0ae268267943d9b5a3da36b004b9104fd02e8",
      "old_mode": 33188,
      "old_path": "drivers/lguest/hypercalls.c",
      "new_id": "13b5f2f813de08d45b7d3ed4396d500364cfb3b8",
      "new_mode": 33188,
      "new_path": "drivers/lguest/hypercalls.c"
    },
    {
      "type": "modify",
      "old_id": "a57d757eab6e16caae0b4cccbe152a43b00f1245",
      "old_mode": 33188,
      "old_path": "drivers/lguest/interrupts_and_traps.c",
      "new_id": "3271c0031a1bb667a0c6c5729920e93aa47078f1",
      "new_mode": 33188,
      "new_path": "drivers/lguest/interrupts_and_traps.c"
    },
    {
      "type": "modify",
      "old_id": "7408cebe995e60422b017c19050978ed964eefd3",
      "old_mode": 33188,
      "old_path": "drivers/lguest/lg.h",
      "new_id": "e4845d7f068860fb8974d6383ba4fbee0796ff44",
      "new_mode": 33188,
      "new_path": "drivers/lguest/lg.h"
    },
    {
      "type": "modify",
      "old_id": "b184652e45d7811f9b518b79b112021f1eeaa079",
      "old_mode": 33188,
      "old_path": "drivers/lguest/lguest_user.c",
      "new_id": "61b177e1e6497a0c804cff1df2710519983b147d",
      "new_mode": 33188,
      "new_path": "drivers/lguest/lguest_user.c"
    },
    {
      "type": "modify",
      "old_id": "bfe3650b28d6d75ec953e044193e3a4ae85383ea",
      "old_mode": 33188,
      "old_path": "drivers/lguest/page_tables.c",
      "new_id": "fe3c7575647bd97ce4effa2938da64a0ab068309",
      "new_mode": 33188,
      "new_path": "drivers/lguest/page_tables.c"
    },
    {
      "type": "modify",
      "old_id": "a125109446dcfec80ccbaede0ce0886bebf967d4",
      "old_mode": 33188,
      "old_path": "drivers/lguest/x86/core.c",
      "new_id": "39f64c95de188cfae9d817fa22fa9932b48b0065",
      "new_mode": 33188,
      "new_path": "drivers/lguest/x86/core.c"
    },
    {
      "type": "modify",
      "old_id": "8f2a1edc4fe2c986ca5f243d1233ae1cbdeb7af9",
      "old_mode": 33188,
      "old_path": "include/asm-x86/lguest_hcall.h",
      "new_id": "0c553ef36240899d164106602a2d4e32544c2a1d",
      "new_mode": 33188,
      "new_path": "include/asm-x86/lguest_hcall.h"
    },
    {
      "type": "modify",
      "old_id": "083052236db976abd3d03785a2dfabc433daf2e1",
      "old_mode": 33188,
      "old_path": "include/linux/lguest.h",
      "new_id": "8beb2913462682c8850dac18aa6dab11f2184b42",
      "new_mode": 33188,
      "new_path": "include/linux/lguest.h"
    }
  ]
}
