)]}'
{
  "log": [
    {
      "commit": "f4112de6b679d84bd9b9681c7504be7bdfb7c7d5",
      "tree": "c9a5665b31e751e1d4255b8c35a6245d5abfa3eb",
      "parents": [
        "851a039cc547b33b8139fe6d7c2bbfb158e2724e"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Mar 31 15:23:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:14 2009 -0700"
      },
      "message": "mm: introduce debug_kmap_atomic\n\nx86 has debug_kmap_atomic_prot() which is error checking function for\nkmap_atomic.  It is usefull for the other architectures, although it needs\nCONFIG_TRACE_IRQFLAGS_SUPPORT.\n\nThis patch exposes it to the other architectures.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3297e760776af18a26bf30046cbaaae2e730c5c2",
      "tree": "2ccbafb9aade478d6ad351cd6ecb80298f5a7e8a",
      "parents": [
        "3835f6cb645bdb9a58aa6e062fe1d5777f1a9748"
      ],
      "author": {
        "name": "Nicolas Pitre",
        "email": "nico@cam.org",
        "time": "Wed Mar 04 22:49:41 2009 -0500"
      },
      "committer": {
        "name": "Nicolas Pitre",
        "email": "nico@cam.org",
        "time": "Sun Mar 15 21:01:21 2009 -0400"
      },
      "message": "highmem: atomic highmem kmap page pinning\n\nMost ARM machines have a non IO coherent cache, meaning that the\ndma_map_*() set of functions must clean and/or invalidate the affected\nmemory manually before DMA occurs.  And because the majority of those\nmachines have a VIVT cache, the cache maintenance operations must be\nperformed using virtual\naddresses.\n\nWhen a highmem page is kunmap\u0027d, its mapping (and cache) remains in place\nin case it is kmap\u0027d again. However if dma_map_page() is then called with\nsuch a page, some cache maintenance on the remaining mapping must be\nperformed. In that case, page_address(page) is non null and we can use\nthat to synchronize the cache.\n\nIt is unlikely but still possible for kmap() to race and recycle the\nvirtual address obtained above, and use it for another page before some\non-going cache invalidation loop in dma_map_page() is done. In that case,\nthe new mapping could end up with dirty cache lines for another page,\nand the unsuspecting cache invalidation loop in dma_map_page() might\nsimply discard those dirty cache lines resulting in data loss.\n\nFor example, let\u0027s consider this sequence of events:\n\n\t- dma_map_page(..., DMA_FROM_DEVICE) is called on a highmem page.\n\n\t--\u003e\t- vaddr \u003d page_address(page) is non null. In this case\n\t\tit is likely that the page has valid cache lines\n\t\tassociated with vaddr. Remember that the cache is VIVT.\n\n\t\t--\u003e\tfor (i \u003d vaddr; i \u003c vaddr + PAGE_SIZE; i +\u003d 32)\n\t\t\t\tinvalidate_cache_line(i);\n\n\t*** preemption occurs in the middle of the loop above ***\n\n\t- kmap_high() is called for a different page.\n\n\t--\u003e\t- last_pkmap_nr wraps to zero and flush_all_zero_pkmaps()\n\t\t  is called.  The pkmap_count value for the page passed\n\t\t  to dma_map_page() above happens to be 1, so the page\n\t\t  is unmapped.  But prior to that, flush_cache_kmaps()\n\t\t  cleared the cache for it.  So far so good.\n\n\t\t- A fresh pkmap entry is assigned for this kmap request.\n\t\t  The Murphy law says this pkmap entry will eventually\n\t\t  happen to use the same vaddr as the one which used to\n\t\t  belong to the other page being processed by\n\t\t  dma_map_page() in the preempted thread above.\n\n\t- The kmap_high() caller start dirtying the cache using the\n\t  just assigned virtual mapping for its page.\n\n\t*** the first thread is rescheduled ***\n\n\t\t\t- The for(...) loop is resumed, but now cached\n\t\t\t  data belonging to a different physical page is\n\t\t\t  being discarded !\n\nAnd this is not only a preemption issue as ARM can be SMP as well,\nmaking the above scenario just as likely. Hence the need for some kind\nof pkmap page pinning which can be used in any context, primarily for\nthe benefit of dma_map_page() on ARM.\n\nThis provides the necessary interface to cope with the above issue if\nARCH_NEEDS_KMAP_HIGH_GET is defined, otherwise the resulting code is\nunchanged.\n\nSigned-off-by: Nicolas Pitre \u003cnico@marvell.com\u003e\nReviewed-by: MinChan Kim \u003cminchan.kim@gmail.com\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5843d9a4d0ba89719916c8f07fc9c57b7126be6d",
      "tree": "3c55d6f17ce32ec3f53a324ce8fc90e291b44d79",
      "parents": [
        "466ae837424dcc538b1af2a0eaf53be32edcdbe7"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Aug 01 03:15:21 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 15 17:22:57 2008 +0200"
      },
      "message": "x86, pat: avoid highmem cache attribute aliasing\n\nHighmem code can leave ptes and tlb entries around for a given page even after\nkunmap, and after it has been freed.\n\n\u003eFrom what I can gather, the PAT code may change the cache attributes of\narbitrary physical addresses (ie. including highmem pages), which would result\nin aliases in the case that it operates on one of these lazy tlb highmem\npages.\n\nFlushing kmaps should solve the problem.\n\nI\u0027ve also just added code for conditional flushing if we haven\u0027t got\nany dangling highmem aliases -- this should help performance if we\nchange page attributes frequently or systems that aren\u0027t using much\nhighmem pages (eg. if \u003c 4G RAM). Should be turned into 2 patches, but\njust for RFC...\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "db7a94d60f871ce6a52e97d82dea476cee0c4ea0",
      "tree": "1f68ce11e11a4b0b9088271ffa6187e274349f4a",
      "parents": [
        "a6ffb404dc03f806a257faaab831a6cb55c0b790"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 19 22:39:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 19 22:39:46 2008 -0700"
      },
      "message": "highmem: Export totalhigh_pages.\n\nHash et al. sizing code in SCTP wants to make the\ncalculation totalram_pages - totalhigh_pages, just\nlike TCP.  But this requires an export for the\nCONFIG_HIGHMEM case to work.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77f6078aa8945a18a7780694940e52be0322c2b8",
      "tree": "89cab8be618e775993c8a899ef34dbbfe9901c1a",
      "parents": [
        "1b578df02207a67a29e8ced4db3b36d89df52fef"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Mar 19 17:00:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 19 18:53:35 2008 -0700"
      },
      "message": "mm: highmem kernel-doc additions\n\nAdd kernel-doc comments to highmem.c.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "920c7a5d0c94b8ce740f1d76fa06422f2a95a757",
      "tree": "74ab4b9b5a6f4279b9b9d2a463c6700546ba0011",
      "parents": [
        "1e548deb5d1630ca14ba04da04e3b6b3766178c7"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Mon Feb 04 22:29:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:18 2008 -0800"
      },
      "message": "mm: remove fastcall from mm/\n\nfastcall is always defined to be empty, remove it\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a1e274acf0b1c192face19a4be7c12d4503eaaf",
      "tree": "f7e98e1fe19d38bb10bf178fb8f8ed1789b659b2",
      "parents": [
        "769848c03895b63e5662eb7e4ec8c4866f7d0183"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Tue Jul 17 04:03:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:22:59 2007 -0700"
      },
      "message": "Create the ZONE_MOVABLE zone\n\nThe following 8 patches against 2.6.20-mm2 create a zone called ZONE_MOVABLE\nthat is only usable by allocations that specify both __GFP_HIGHMEM and\n__GFP_MOVABLE.  This has the effect of keeping all non-movable pages within a\nsingle memory partition while allowing movable allocations to be satisfied\nfrom either partition.  The patches may be applied with the list-based\nanti-fragmentation patches that groups pages together based on mobility.\n\nThe size of the zone is determined by a kernelcore\u003d parameter specified at\nboot-time.  This specifies how much memory is usable by non-movable\nallocations and the remainder is used for ZONE_MOVABLE.  Any range of pages\nwithin ZONE_MOVABLE can be released by migrating the pages or by reclaiming.\n\nWhen selecting a zone to take pages from for ZONE_MOVABLE, there are two\nthings to consider.  First, only memory from the highest populated zone is\nused for ZONE_MOVABLE.  On the x86, this is probably going to be ZONE_HIGHMEM\nbut it would be ZONE_DMA on ppc64 or possibly ZONE_DMA32 on x86_64.  Second,\nthe amount of memory usable by the kernel will be spread evenly throughout\nNUMA nodes where possible.  If the nodes are not of equal size, the amount of\nmemory usable by the kernel on some nodes may be greater than others.\n\nBy default, the zone is not as useful for hugetlb allocations because they are\npinned and non-migratable (currently at least).  A sysctl is provided that\nallows huge pages to be allocated from that zone.  This means that the huge\npage pool can be resized to the size of ZONE_MOVABLE during the lifetime of\nthe system assuming that pages are not mlocked.  Despite huge pages being\nnon-movable, we do not introduce additional external fragmentation of note as\nhuge pages are always the largest contiguous block we care about.\n\nCredit goes to Andy Whitcroft for catching a large variety of problems during\nreview of the patches.\n\nThis patch creates an additional zone, ZONE_MOVABLE.  This zone is only usable\nby allocations which specify both __GFP_HIGHMEM and __GFP_MOVABLE.  Hot-added\nmemory continues to be placed in their existing destination as there is no\nmechanism to redirect them to a specific zone.\n\n[y-goto@jp.fujitsu.com: Fix section mismatch of memory hotplug related code]\n[akpm@linux-foundation.org: various fixes]\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce6234b5298902aaec831a67d5f8d9bd2ef5a488",
      "tree": "939c22684e11a4f5f17abb89c4898f016e878e21",
      "parents": [
        "a27fe809b82c5e18932fcceded28d0d1481ce7bb"
      ],
      "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] i386: PARAVIRT: add kmap_atomic_pte for mapping highpte pages\n\nXen and VMI both have special requirements when mapping a highmem pte\npage into the kernel address space.  These can be dealt with by adding\na new kmap_atomic_pte() function for mapping highptes, and hooking it\ninto the paravirt_ops infrastructure.\n\nXen specifically wants to map the pte page RO, so this patch exposes a\nhelper function, kmap_atomic_prot, which maps the page with the\nspecified page protections.\n\nThis also adds a kmap_flush_unused() function to clear out the cached\nkmap mappings.  Xen needs this to clear out any potential stray RW\nmappings of pages which will become part of a pagetable.\n\n[ Zach - vmi.c will need some attention after this patch.  It wasn\u0027t\n  immediately obvious to me what needs to be done. ]\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Zachary Amsden \u003czach@vmware.com\u003e\n"
    },
    {
      "commit": "d23ad42324cc4378132e51f2fc5c9ba6cbe75182",
      "tree": "6844416befb3988e432e8f422f3a369e2f760d39",
      "parents": [
        "c878538598d1e7ab41ecc0de8894e34e2fdef630"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sat Feb 10 01:43:02 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:17 2007 -0800"
      },
      "message": "[PATCH] Use ZVC for free_pages\n\nThis is again simplifies some of the VM counter calculations through the use\nof the ZVC consolidated counters.\n\n[michal.k.k.piotrowski@gmail.com: build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Michal Piotrowski \u003cmichal.k.k.piotrowski@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "831058dec3735665fe91bd0d37b6a8cf56b91abd",
      "tree": "5ef7d38d9c43b24d5a31eb8f0e23c91e20e799e7",
      "parents": [
        "b398f6bff93a247d2a7099e92905374966e4558f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 29 19:06:00 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:32:11 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Separate the bounce buffering code from the highmem code [try #6]\n\nMove the bounce buffer code from mm/highmem.c to mm/bounce.c so that it can be\nmore easily disabled when the block layer is disabled.\n\n!!!NOTE!!! There may be a bug in this code: Should init_emergency_pool() be\n\t   contingent on CONFIG_HIGHMEM?\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "c1f60a5a419cc60aff27daffb150f5a3a3a79ef4",
      "tree": "8ae176462d6f220cd744ae6c3454113eebda02a8",
      "parents": [
        "182e8e237349e7b6354f45aee4780b6423fd6a50"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: move HIGHMEM counters into highmem.c/.h\n\nMove totalhigh_pages and nr_free_highpages() into highmem.c/.h\n\nMove the totalhigh_pages definition into highmem.c/.h.  Move the\nnr_free_highpages function into highmem.c\n\n[yoichi_yuasa@tripeaks.co.jp: build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Yoichi Yuasa \u003cyoichi_yuasa@tripeaks.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d2c5e30c9a1420902262aa923794d2ae4e0bc391",
      "tree": "b8c42c189c2bc8dd4b6d808ee8ed2b28dbd70ddd",
      "parents": [
        "fd39fc8561be33065306bdac0e30414e1e8ac8e1"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] zoned vm counters: conversion of nr_bounce to per zone counter\n\nConversion of nr_bounce to a per zone counter\n\nnr_bounce is only used for proc output.  So it could be left as an event\ncounter.  However, the event counters may not be accurate and nr_bounce is\ncategorizing types of pages in a zone.  So we really need this to also be a\nper zone counter.\n\n[akpm@osdl.org: bugfix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "75babcacede876608f14ef1a20e795ce17ae637f",
      "tree": "6e81e826ceb3d91662c431ff8c699e95782e207c",
      "parents": [
        "9f31252cb61d5bc641cdef8a069a2ca5a77855f2"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Sun Apr 02 13:47:35 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sun Apr 02 13:47:35 2006 +0200"
      },
      "message": "BUG_ON() Conversion in mm/highmem.c\n\nthis changes if() BUG(); constructs to BUG_ON() which is\ncleaner, contains unlikely() and can better optimized away.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "a19b27ce3847c3a5d4ea6b6c91b6f7154759af23",
      "tree": "794dc69869408bee9154b3e9d9852327e5219f4c",
      "parents": [
        "6e0678f394c7bd21bfa5d252b071a09e10e7a749"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:59 2006 -0800"
      },
      "message": "[PATCH] mempool: use common mempool page allocator\n\nConvert two mempool users that currently use their own mempool-backed page\nallocators to use the generic mempool page allocator.\n\nAlso included are 2 trivial whitespace fixes.\n\nSigned-off-by: Matthew Dobson \u003ccolpatch@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2056a782f8e7e65fd4bfd027506b4ce1c5e9ccd4",
      "tree": "d4fe59a7ca0c110690937085548936a4535c39db",
      "parents": [
        "6dac40a7ce2483a47b54af07afebeb84131c7228"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 23 20:00:26 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 23 20:00:26 2006 +0100"
      },
      "message": "[PATCH] Block queue IO tracing support (blktrace) as of 2006-03-23\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "260b23674fdb570f3235ce55892246bef1c24c2a",
      "tree": "471e7b546cbf1f7ee4a165e5bd9a2de0770e53be",
      "parents": [
        "c4cdd038318863e912e9b992489f61497f98b442"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 21 03:22:44 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 28 08:16:51 2005 -0700"
      },
      "message": "[PATCH] gfp_t: the rest\n\nzone handling, mapping-\u003eflags handling\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd0fc66fb33cd610bc1a5db8a5e232d34879b4d7",
      "tree": "51f96a9db96293b352e358f66032e1f4ff79fafb",
      "parents": [
        "3b0e77bd144203a507eb191f7117d2c5004ea1de"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Fri Oct 07 07:46:04 2005 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 08 15:00:57 2005 -0700"
      },
      "message": "[PATCH] gfp flags annotations - part 1\n\n - added typedef unsigned int __nocast gfp_t;\n\n - replaced __nocast uses for gfp flags with gfp_t - it gives exactly\n   the same warnings as far as sparse is concerned, doesn\u0027t change\n   generated code (from gcc point of view we replaced unsigned int with\n   typedef) and documents what\u0027s going on far better.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "edfbe2b0038723e5699ab22695ccd62b5542a5c1",
      "tree": "f1c613d32824f274b0e3daf492e87b0c9051c789",
      "parents": [
        "2054606ad6dd6fee559fe790f190b15ed9355237"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Sun May 01 08:58:37 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:37 2005 -0700"
      },
      "message": "[PATCH] count bounce buffer pages in vmstat\n\nThis is a patch for counting the number of pages for bounce buffers.  It\u0027s\nshown in /proc/vmstat.\n\nCurrently, the number of bounce pages are not counted anywhere.  So, if\nthere are many bounce pages, it seems that there are leaked pages.  And\nit\u0027s difficult for a user to imagine the usage of bounce pages.  So, it\u0027s\nmeaningful to show # of bouce pages.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.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"
    }
  ]
}
