)]}'
{
  "commit": "4f3865fb57a04db7cca068fed1c15badc064a302",
  "tree": "4c923c72b6ac9b633c87cc73b55a75c7cfd0f044",
  "parents": [
    "4f1bcaf094ccc512c23e10104c05a6f8e5b7a9e4"
  ],
  "author": {
    "name": "Richard Purdie",
    "email": "rpurdie@rpsys.net",
    "time": "Thu Jun 22 14:47:34 2006 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Thu Jun 22 15:05:58 2006 -0700"
  },
  "message": "[PATCH] zlib_inflate: Upgrade library code to a recent version\n\nUpgrade the zlib_inflate implementation in the kernel from a patched\nversion 1.1.3/4 to a patched 1.2.3.\n\nThe code in the kernel is about seven years old and I noticed that the\nexternal zlib library\u0027s inflate performance was significantly faster (~50%)\nthan the code in the kernel on ARM (and faster again on x86_32).\n\nFor comparison the newer deflate code is 20% slower on ARM and 50% slower\non x86_32 but gives an approx 1% compression ratio improvement.  I don\u0027t\nconsider this to be an improvement for kernel use so have no plans to\nchange the zlib_deflate code.\n\nVarious changes have been made to the zlib code in the kernel, the most\nsignificant being the extra functions/flush option used by ppp_deflate.\nThis update reimplements the features PPP needs to ensure it continues to\nwork.\n\nThis code has been tested on ARM under both JFFS2 (with zlib compression\nenabled) and ppp_deflate and on x86_32.  JFFS2 sees an approx.  10% real\nworld file read speed improvement.\n\nThis patch also removes ZLIB_VERSION as it no longer has a correct value.\nWe don\u0027t need version checks anyway as the kernel\u0027s module handling will\ntake care of that for us.  This removal is also more in keeping with the\nzlib author\u0027s wishes (http://www.zlib.net/zlib_faq.html#faq24) and I\u0027ve\nadded something to the zlib.h header to note its a modified version.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nAcked-by: Joern Engel \u003cjoern@wh.fh-wedel.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "840ae595a6178e29c6f0089af02d3213a03369b9",
      "old_mode": 33188,
      "old_path": "arch/powerpc/boot/Makefile",
      "new_id": "d961bfeed05fccbdfbf4a1094fc7ec7a240fce8c",
      "new_mode": 33188,
      "new_path": "arch/powerpc/boot/Makefile"
    },
    {
      "type": "modify",
      "old_id": "80c84d562fa4ac173b595cd22cdd4d2e02540f2c",
      "old_mode": 33188,
      "old_path": "arch/ppc/boot/lib/Makefile",
      "new_id": "2f995f712ec55c90857bd71539f5f34b90df64f7",
      "new_mode": 33188,
      "new_path": "arch/ppc/boot/lib/Makefile"
    },
    {
      "type": "modify",
      "old_id": "9e73bb8aeb7affb3216c8eb16b8f617f15874781",
      "old_mode": 33188,
      "old_path": "arch/xtensa/boot/lib/Makefile",
      "new_id": "d3d2aa2d883aa6e4d9abfc7571b7e3e5eadbc30f",
      "new_mode": 33188,
      "new_path": "arch/xtensa/boot/lib/Makefile"
    },
    {
      "type": "modify",
      "old_id": "f1cfd66b9554bfe27fcfbd40559222909ff1c542",
      "old_mode": 33188,
      "old_path": "include/linux/zconf.h",
      "new_id": "0beb75e38caa6e93411879047d7c3b1b83b9fc81",
      "new_mode": 33188,
      "new_path": "include/linux/zconf.h"
    },
    {
      "type": "modify",
      "old_id": "4fa32f0d4df8a0ad345dabc793c4105cb4094648",
      "old_mode": 33188,
      "old_path": "include/linux/zlib.h",
      "new_id": "9e3192a7dc6fa7ca7bf6746766234cf9261ed382",
      "new_mode": 33188,
      "new_path": "include/linux/zlib.h"
    },
    {
      "type": "modify",
      "old_id": "ee0c59cf2136d5c3dfc7c812bb76e1866f1c7eec",
      "old_mode": 33188,
      "old_path": "include/linux/zutil.h",
      "new_id": "6adfa9a6ffe963dd89dcf895f65c576d1c7a7c97",
      "new_mode": 33188,
      "new_path": "include/linux/zutil.h"
    },
    {
      "type": "modify",
      "old_id": "1653dd9bb01a459aa6105e44b678928c52327c47",
      "old_mode": 33188,
      "old_path": "lib/zlib_deflate/deflate.c",
      "new_id": "c3e4a2baf835abe630929b6138de0a9130a08110",
      "new_mode": 33188,
      "new_path": "lib/zlib_deflate/deflate.c"
    },
    {
      "type": "modify",
      "old_id": "767b573d1ef66a931ff62eecd19cb9c91abb06c2",
      "old_mode": 33188,
      "old_path": "lib/zlib_deflate/deflate_syms.c",
      "new_id": "ccfe25f3920f5922ddcfb03ae325cd3cc7cc74a9",
      "new_mode": 33188,
      "new_path": "lib/zlib_deflate/deflate_syms.c"
    },
    {
      "type": "modify",
      "old_id": "221c139e0df1d253cd210726b962bfa94812b497",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/Makefile",
      "new_id": "bf065482fa6791a873eb08bbffbdb7eb870ff223",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/Makefile"
    },
    {
      "type": "delete",
      "old_id": "c16cdeff51aa9342615f6343ba15f1f8abe6f31b",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/infblock.c",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "ceee60b5107cd4ffa4abdd66037a886c2b521b43",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/infblock.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "07cd7591cbb7e8993063acb24231c29c19b4651a",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/infcodes.c",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "5cff417523b0a9dfeb7b714daa7047c7c2b3607d",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/infcodes.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "0bd7623fc85acefb2698cfc447ff2f6ca986a280",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/inffast.c",
      "new_id": "02a16eacb72dabb50861193db448004b175bd3dc",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inffast.c"
    },
    {
      "type": "modify",
      "old_id": "fc720f0fa7f55ba8c8aa76ff13fe2bf2331cabf3",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/inffast.h",
      "new_id": "40315d9fddc4d6c893b25ec4e61f7e5617b7e241",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inffast.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "75ed4b5978de4be3c44ad48a060b75500f17a0a2",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inffixed.h"
    },
    {
      "type": "modify",
      "old_id": "31b9e9054bf75c42b23b3b33ac80be795f63db63",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/inflate.c",
      "new_id": "7f922dccf1a5dd618c8553f4cf70cbd1ad2fd3b4",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inflate.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "df8a6c92052df2c49888504af7277e1cfdfecfd6",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inflate.h"
    },
    {
      "type": "modify",
      "old_id": "ef49738f57eca196c012508994883c0bf24911f5",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/inflate_syms.c",
      "new_id": "2061d4f06765e614875c2d16f386c42a9dde0686",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inflate_syms.c"
    },
    {
      "type": "delete",
      "old_id": "61411ff89d6160da831df3ac73bbd2f551b75c8e",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/inflate_sync.c",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "874950ec48582e4b85c48ba6f1be7cb1f04cc659",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/inftrees.c",
      "new_id": "62343c53bf7e671f2aa50e8e5e035e28b83ce906",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inftrees.c"
    },
    {
      "type": "modify",
      "old_id": "e37705adc008902e9e599dbc66744afadfd3554f",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/inftrees.h",
      "new_id": "5f5219b1240e58c7b5eb2c7a9e2a3a7add446ef8",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/inftrees.h"
    },
    {
      "type": "delete",
      "old_id": "00202b3438e17766ad4aaccd85cbfcdd37d70fa7",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/infutil.c",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "a15875fc5f7281afab71bc950ea705fac20f131e",
      "old_mode": 33188,
      "old_path": "lib/zlib_inflate/infutil.h",
      "new_id": "eb1a9007bd866f204b25c74a2ec20855a6aa85c3",
      "new_mode": 33188,
      "new_path": "lib/zlib_inflate/infutil.h"
    }
  ]
}
