)]}'
{
  "log": [
    {
      "commit": "2d6ffcca623a9a16df6cdfbe8250b7a5904a5f5e",
      "tree": "70d30cb6516608e9a8a1dce60c59f3a5ff21b305",
      "parents": [
        "ba92a43dbaee339cf5915ef766d3d3ffbaaf103c"
      ],
      "author": {
        "name": "Thomas Petazzoni",
        "email": "thomas.petazzoni@free-electrons.com",
        "time": "Fri Jul 25 01:45:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:28 2008 -0700"
      },
      "message": "inflate: refactor inflate malloc code\n\nInflate requires some dynamic memory allocation very early in the boot\nprocess and this is provided with a set of four functions:\nmalloc/free/gzip_mark/gzip_release.\n\nThe old inflate code used a mark/release strategy rather than implement\nfree.  This new version instead keeps a count on the number of outstanding\nallocations and when it hits zero, it resets the malloc arena.\n\nThis allows removing all the mark and release implementations and unifying\nall the malloc/free implementations.\n\nThe architecture-dependent code must define two addresses:\n - free_mem_ptr, the address of the beginning of the area in which\n   allocations should be made\n - free_mem_end_ptr, the address of the end of the area in which\n   allocations should be made. If set to 0, then no check is made on\n   the number of allocations, it just grows as much as needed\n\nThe architecture-dependent code can also provide an arch_decomp_wdog()\nfunction call.  This function will be called several times during the\ndecompression process, and allow to notify the watchdog that the system is\nstill running.  If an architecture provides such a call, then it must\ndefine ARCH_HAS_DECOMP_WDOG so that the generic inflate code calls\narch_decomp_wdog().\n\nWork initially done by Matt Mackall, updated to a recent version of the\nkernel and improved by me.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Thomas Petazzoni \u003cthomas.petazzoni@free-electrons.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Mikael Starvik \u003cmikael.starvik@axis.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22caa0417db3b1d3dfafc9b7c0bf31baf8d667e7",
      "tree": "9d83fa00c532035b9f7c08f498973e5499483e6a",
      "parents": [
        "cd6fda36089cf3b450821228c2f575a3b5d0e7a7"
      ],
      "author": {
        "name": "Jim Meyering",
        "email": "jim@meyering.net",
        "time": "Tue Apr 29 00:59:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:02 2008 -0700"
      },
      "message": "lib/inflate.c: handle failed malloc()\n\nlib/inflate.c (inflate_dynamic): Don\u0027t deref NULL upon failed malloc.\n\nSigned-off-by: Jim Meyering \u003cmeyering@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39b7ee06859b07ca5fd4fabb44c4600316532574",
      "tree": "938d2e25cdf8068e9604dc40775aede665f6e98b",
      "parents": [
        "35c7422649ee7a3d0eb4ebd32c997eeb45f81046"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed May 02 19:27:15 2007 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed May 02 19:27:15 2007 +0200"
      },
      "message": "[PATCH] x86-64: deflate inflate_dynamic too\n\ninflate_dynamic() has piggy stack usage too, so heap allocate it too.\nI\u0027m not sure it actually gets used, but it shows up large in \"make\ncheckstack\".\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "35c7422649ee7a3d0eb4ebd32c997eeb45f81046",
      "tree": "8baebdb9aeb46844c7e9becc5a7699c47257f86d",
      "parents": [
        "4cdd9c8931767e1c56a51a1078d33a8c340f4405"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed May 02 19:27:15 2007 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed May 02 19:27:15 2007 +0200"
      },
      "message": "[PATCH] x86: deflate stack usage in lib/inflate.c\n\ninflate_fixed and huft_build together use around 2.7k of stack.  When\nusing 4k stacks, I saw stack overflows from interrupts arriving while\nunpacking the root initrd:\n\ndo_IRQ: stack overflow: 384\n [\u003cc0106b64\u003e] show_trace_log_lvl+0x1a/0x30\n [\u003cc01075e6\u003e] show_trace+0x12/0x14\n [\u003cc010763f\u003e] dump_stack+0x16/0x18\n [\u003cc0107ca4\u003e] do_IRQ+0x6d/0xd9\n [\u003cc010202b\u003e] xen_evtchn_do_upcall+0x6e/0xa2\n [\u003cc0106781\u003e] xen_hypervisor_callback+0x25/0x2c\n [\u003cc010116c\u003e] xen_restore_fl+0x27/0x29\n [\u003cc0330f63\u003e] _spin_unlock_irqrestore+0x4a/0x50\n [\u003cc0117aab\u003e] change_page_attr+0x577/0x584\n [\u003cc0117b45\u003e] kernel_map_pages+0x8d/0xb4\n [\u003cc016a314\u003e] cache_alloc_refill+0x53f/0x632\n [\u003cc016a6c2\u003e] __kmalloc+0xc1/0x10d\n [\u003cc0463d34\u003e] malloc+0x10/0x12\n [\u003cc04641c1\u003e] huft_build+0x2a7/0x5fa\n [\u003cc04645a5\u003e] inflate_fixed+0x91/0x136\n [\u003cc04657e2\u003e] unpack_to_rootfs+0x5f2/0x8c1\n [\u003cc0465acf\u003e] populate_rootfs+0x1e/0xe4\n\n(This was under Xen, but there\u0027s no reason it couldn\u0027t happen on bare\n  hardware.)\n\nThis patch mallocs the local variables, thereby reducing the stack\nusage to sane levels.\n\nAlso, up the heap size for the kernel decompressor to deal with the\nextra allocation.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Tim Yamin \u003cplasmaroo@gentoo.org\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\n"
    },
    {
      "commit": "4aad724d3e52238e1ce005f166fbba5b4072a7f6",
      "tree": "c313006c1e59a41914a96c0c0b5b2b557736a0a9",
      "parents": [
        "00a5dfdb93f74e4d95fb0d83c890728e331f8810"
      ],
      "author": {
        "name": "Tim Yamin",
        "email": "plasmaroo@gentoo.org",
        "time": "Mon Jul 25 23:16:13 2005 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Aug 05 16:23:21 2005 -0700"
      },
      "message": "[PATCH] Update in-kernel zlib routines\n\nThese bugs have been fixed in the standard zlib for a while.\n\nSee for example\n\n a) http://sources.redhat.com/ml/bug-gnu-utils/1999-06/msg00183.html\n b) http://bugs.gentoo.org/show_bug.cgi?id\u003d94584\n\nSigned-off-by: Tim Yamin \u003cplasmaroo@gentoo.org\u003e\nSigned-off-by: Tavis Ormandy \u003ctaviso@gentoo.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
