)]}'
{
  "commit": "e887bb41a177d6c6f245d80ad427f1b91fbed91e",
  "tree": "882552f514f19c0c7c695a17f43a6eef77e081d7",
  "parents": [
    "ff534f031ab3192952fc6403bb8618feda758a38"
  ],
  "author": {
    "name": "Josh Boyer",
    "email": "jwboyer@redhat.com",
    "time": "Mon Mar 11 17:48:53 2013 -0400"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Sat Jun 07 16:02:09 2014 -0700"
  },
  "message": "efi: be more paranoid about available space when creating variables\n\ncommit 68d929862e29a8b52a7f2f2f86a0600423b093cd upstream.\n\nUEFI variables are typically stored in flash. For various reasons, avaiable\nspace is typically not reclaimed immediately upon the deletion of a\nvariable - instead, the system will garbage collect during initialisation\nafter a reboot.\n\nSome systems appear to handle this garbage collection extremely poorly,\nfailing if more than 50% of the system flash is in use. This can result in\nthe machine refusing to boot. The safest thing to do for the moment is to\nforbid writes if they\u0027d end up using more than half of the storage space.\nWe can make this more finegrained later if we come up with a method for\nidentifying the broken machines.\n\nSigned-off-by: Matthew Garrett \u003cmatthew.garrett@nebula.com\u003e\nSigned-off-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\n[bwh: Backported to 3.2:\n - Drop efivarfs changes and unused check_var_size()\n - Add error codes to include/linux/efi.h, added upstream by\n   commit 5d9db883761a (\u0027efi: Add support for a UEFI variable filesystem\u0027)\n - Add efi_status_to_err(), added upstream by commit 7253eaba7b17\n   (\u0027efivarfs: Return an error if we fail to read a variable\u0027)]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Rui Xiang \u003crui.xiang@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "26775aecbe460064693bde6317b330b279abce19",
      "old_mode": 33188,
      "old_path": "drivers/firmware/efivars.c",
      "new_id": "c3ac356da0dc8c483a5b59055d8237ef8934eeeb",
      "new_mode": 33188,
      "new_path": "drivers/firmware/efivars.c"
    },
    {
      "type": "modify",
      "old_id": "8554af998b3163ad4facee925fe2c3e6f5d6c4cf",
      "old_mode": 33188,
      "old_path": "include/linux/efi.h",
      "new_id": "260b2c5cb4cbd4cc60d942673c9b10371015f049",
      "new_mode": 33188,
      "new_path": "include/linux/efi.h"
    }
  ]
}
