)]}'
{
  "commit": "694cfd87b0c8a48af2f1afb225563571c0b975c4",
  "tree": "4168684815310fcff9342fd9f32f32a87c6aba97",
  "parents": [
    "6a8b55ed4056ea5559ebe4f6a4b247f627870d4c"
  ],
  "author": {
    "name": "Ronald G. Minnich",
    "email": "rminnich@gmail.com",
    "time": "Sat Apr 25 18:10:21 2020 -0700"
  },
  "committer": {
    "name": "Borislav Petkov",
    "email": "bp@suse.de",
    "time": "Mon Apr 27 09:28:16 2020 +0200"
  },
  "message": "x86/setup: Add an initrdmem\u003d option to specify initrd physical address\n\nAdd the initrdmem option:\n\n  initrdmem\u003dss[KMG],nn[KMG]\n\nwhich is used to specify the physical address of the initrd, almost\nalways an address in FLASH. Also add code for x86 to use the existing\nphys_init_start and phys_init_size variables in the kernel.\n\nThis is useful in cases where a kernel and an initrd is placed in FLASH,\nbut there is no firmware file system structure in the FLASH.\n\nOne such situation occurs when unused FLASH space on UEFI systems has\nbeen reclaimed by, e.g., taking it from the Management Engine. For\nexample, on many systems, the ME is given half the FLASH part; not only\nis 2.75M of an 8M part unused; but 10.75M of a 16M part is unused. This\nspace can be used to contain an initrd, but need to tell Linux where it\nis.\n\nThis space is \"raw\": due to, e.g., UEFI limitations: it can not be added\nto UEFI firmware volumes without rebuilding UEFI from source or writing\na UEFI device driver. It can be referenced only as a physical address\nand size.\n\nAt the same time, if a kernel can be \"netbooted\" or loaded from GRUB or\nsyslinux, the option of not using the physical address specification\nshould be available.\n\nThen, it is easy to boot the kernel and provide an initrd; or boot the\nthe kernel and let it use the initrd in FLASH. In practice, this has\nproven to be very helpful when integrating Linux into FLASH on x86.\n\nHence, the most flexible and convenient path is to enable the initrdmem\ncommand line option in a way that it is the last choice tried.\n\nFor example, on the DigitalLoggers Atomic Pi, an image into FLASH can be\nburnt in with a built-in command line which includes:\n\n  initrdmem\u003d0xff968000,0x200000\n\nwhich specifies a location and size.\n\n [ bp: Massage commit message, make it passive. ]\n\n[akpm@linux-foundation.org: coding style fixes]\nSigned-off-by: Ronald G. Minnich \u003crminnich@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Borislav Petkov \u003cbp@suse.de\u003e\nReviewed-by: H. Peter Anvin (Intel) \u003chpa@zytor.com\u003e\nLink: http://lkml.kernel.org/r/CAP6exYLK11rhreX\u003d6QPyDQmW7wPHsKNEFtXE47pjx41xS6O7-A@mail.gmail.com\nLink: https://lkml.kernel.org/r/20200426011021.1cskg0AGd%akpm@linux-foundation.org\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7bc83f3d9bdfe376762ede68db1d2982eb4d586e",
      "old_mode": 33188,
      "old_path": "Documentation/admin-guide/kernel-parameters.txt",
      "new_id": "a441b4f974b0eee279af491b23e367bba3d48d64",
      "new_mode": 33188,
      "new_path": "Documentation/admin-guide/kernel-parameters.txt"
    },
    {
      "type": "modify",
      "old_id": "4b3fa6cd3106d44e85c6588331d2182080ca347f",
      "old_mode": 33188,
      "old_path": "arch/x86/kernel/setup.c",
      "new_id": "a3767e74c758c0b8bb82b3d9a159c940d1b6dd6b",
      "new_mode": 33188,
      "new_path": "arch/x86/kernel/setup.c"
    },
    {
      "type": "modify",
      "old_id": "dab8b1151b5698719cc9bbb072cead21c8773181",
      "old_mode": 33188,
      "old_path": "init/do_mounts_initrd.c",
      "new_id": "d72beda824aa79537b33da889d99063ed27f9ac0",
      "new_mode": 33188,
      "new_path": "init/do_mounts_initrd.c"
    }
  ]
}
