)]}'
{
  "log": [
    {
      "commit": "c5a1cb284b791fcc3c70962331a682452afaf6cd",
      "tree": "5d619ff74588c55393bd9842f2aae55c181a721e",
      "parents": [
        "4ff7b82f1e5fc65a7c9512b231b4ea533f28541a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Dec 08 10:22:07 2011 -0800"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Dec 08 10:22:07 2011 -0800"
      },
      "message": "memblock: Kill sentinel entries at the end of static region arrays\n\nmemblock no longer depends on having one more entry at the end during\naddition making the sentinel entries at the end of region arrays not\ntoo useful.  Remove the sentinels.  This eases further updates.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\n"
    },
    {
      "commit": "c9d8c3d0896bfa5b57531ecc41a85ffbc6d87dbe",
      "tree": "0de7519c20e066c820d37ff32be319745e7a2f8e",
      "parents": [
        "be8f684d73d8d916847e996bf69cef14352872c6"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Jul 25 17:12:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mm/memblock.c: avoid abuse of RED_INACTIVE\n\nRED_INACTIVE is a slab thing, and reusing it for memblock was\ninappropriate, because memblock is dealing with phys_addr_t\u0027s which have a\nKconfigurable sizeof().\n\nCreate a new poison type for this application.  Fixes the sparse warning\n\n    warning: cast truncates bits from constant value (9f911029d74e35b becomes 9d74e35b)\n\nReported-by: H Hartley Sweeten \u003chartleys@visionengravers.com\u003e\nTested-by: H Hartley Sweeten \u003chartleys@visionengravers.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@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": "0fe6e20b9c4c53b3e97096ee73a0857f60aad43f",
      "tree": "3014636f2ed66fdebecb6f6bab338b39c3543a07",
      "parents": [
        "8edf344c66a3f214d709dad1421c29d678915b3f"
      ],
      "author": {
        "name": "Naoya Horiguchi",
        "email": "n-horiguchi@ah.jp.nec.com",
        "time": "Fri May 28 09:29:16 2010 +0900"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Aug 11 09:21:15 2010 +0200"
      },
      "message": "hugetlb, rmap: add reverse mapping for hugepage\n\nThis patch adds reverse mapping feature for hugepage by introducing\nmapcount for shared/private-mapped hugepage and anon_vma for\nprivate-mapped hugepage.\n\nWhile hugepage is not currently swappable, reverse mapping can be useful\nfor memory error handler.\n\nWithout this patch, memory error handler cannot identify processes\nusing the bad hugepage nor unmap it from them. That is:\n- for shared hugepage:\n  we can collect processes using a hugepage through pagecache,\n  but can not unmap the hugepage because of the lack of mapcount.\n- for privately mapped hugepage:\n  we can neither collect processes nor unmap the hugepage.\nThis patch solves these problems.\n\nThis patch include the bug fix given by commit 23be7468e8, so reverts it.\n\nDependency:\n  \"hugetlb: move definition of is_vm_hugetlb_page() to hugepage_inline.h\"\n\nChangeLog since May 24.\n- create hugetlb_inline.h and move is_vm_hugetlb_index() in it.\n- move functions setting up anon_vma for hugepage into mm/rmap.c.\n\nChangeLog since May 13.\n- rebased to 2.6.34\n- fix logic error (in case that private mapping and shared mapping coexist)\n- move is_vm_hugetlb_page() into include/linux/mm.h to use this function\n  from linear_page_index()\n- define and use linear_hugepage_index() instead of compound_order()\n- use page_move_anon_rmap() in hugetlb_cow()\n- copy exclusive switch of __set_page_anon_rmap() into hugepage counterpart.\n- revert commit 24be7468 completely\n\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\nAcked-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "23be7468e8802a2ac1de6ee3eecb3ec7f14dc703",
      "tree": "2c01e547594b8d7f32ddda47b6bea284d8f19761",
      "parents": [
        "9a6a1ecd9e9b5d046a236da2f7eb6b6812f04229"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Fri Apr 23 13:17:56 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 24 11:31:25 2010 -0700"
      },
      "message": "hugetlb: fix infinite loop in get_futex_key() when backed by huge pages\n\nIf a futex key happens to be located within a huge page mapped\nMAP_PRIVATE, get_futex_key() can go into an infinite loop waiting for a\npage-\u003emapping that will never exist.\n\nSee https://bugzilla.redhat.com/show_bug.cgi?id\u003d552257 for more details\nabout the problem.\n\nThis patch makes page-\u003emapping a poisoned value that includes\nPAGE_MAPPING_ANON mapped MAP_PRIVATE.  This is enough for futex to\ncontinue but because of PAGE_MAPPING_ANON, the poisoned value is not\ndereferenced or used by futex.  No other part of the VM should be\ndereferencing the page-\u003emapping of a hugetlbfs page as its page cache is\nnot on the LRU.\n\nThis patch fixes the problem with the test case described in the bugzilla.\n\n[akpm@linux-foundation.org: mel cant spel]\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Darren Hart \u003cdarren@dvhart.com\u003e\nCc: \u003cstable@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": "a29815a333c6c6e677294bbe5958e771d0aad3fd",
      "tree": "589a782f1992a7da55469379688deaa9f355b779",
      "parents": [
        "c0f607c608ba889db5250235ba620f818aa44a4d"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jan 10 16:28:09 2010 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:45:37 2010 -0800"
      },
      "message": "core, x86: make LIST_POISON less deadly\n\nThe list macros use LIST_POISON1 and LIST_POISON2 as undereferencable\npointers in order to trap erronous use of freed list_heads.  Unfortunately\nuserspace can arrange for those pointers to actually be dereferencable,\npotentially turning an oops to an expolit.\n\nTo avoid this allow architectures (currently x86_64 only) to override\nthe default values for these pointers with truly-undereferencable values.\nThis is easy on x86_64 as the virtual address space is large and contains\nareas that cannot be mapped.\n\nOther 64-bit architectures will likely find similar unmapped ranges.\n\n[ingo: switch to 0xdead000000000000 as the unmapped area]\n[ingo: add comments, cleanup]\n[jaswinder: eliminate sparse warnings]\n\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19da3dd157f8db6fe727ff268dab4791d55a6371",
      "tree": "4259074638b384e765c73542d74dd8f44750068b",
      "parents": [
        "e6de3988aa52debb25a427d085061f3bf1181d54"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: poison free elements\n\nNewly initialized flex_array\u0027s and/or flex_array_part\u0027s are now poisoned\nwith a new poison value, FLEX_ARRAY_FREE.  It\u0027s value is similar to\nPOISON_FREE used in the various slab allocators, but is different to\ndistinguish between flex array\u0027s poisoned kmem and slab allocator poisoned\nkmem.\n\nThis will allow us to identify flex_array_part\u0027s that only contain free\nelements (and free them with an addition to the flex_array API).  This\ncould also be extended in the future to identify `get\u0027 uses on elements\nthat have not been `put\u0027.\n\nIf __GFP_ZERO is passed for a part\u0027s gfp mask, the poisoning is avoided.\nThese elements are considered to be in-use since they have been\ninitialized.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a11f75b6a17b5d9ac5025f8d048382fd1f47377",
      "tree": "a3415cd897823975b927f89a233d2703bf97ba2b",
      "parents": [
        "610a77e04a8d9fe8764dc484e2182fa251ce1cc2"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Mar 31 15:23:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:13 2009 -0700"
      },
      "message": "generic debug pagealloc\n\nCONFIG_DEBUG_PAGEALLOC is now supported by x86, powerpc, sparc64, and\ns390.  This patch implements it for the rest of the architectures by\nfilling the pages with poison byte patterns after free_pages() and\nverifying the poison patterns before alloc_pages().\n\nThis generic one cannot detect invalid page accesses immediately but\ninvalid read access may cause invalid dereference by poisoned memory and\ninvalid write access can be detected after a long delay.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.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": "c6f3a97f86a5c97be0ca255976110bb9c3cfe669",
      "tree": "95a7bf3c928a85b26aed128786fc09e18bc5dcfc",
      "parents": [
        "691cc54c7d28542434d2b3ee4ddbad6a99312dec"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 30 00:55:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:53 2008 -0700"
      },
      "message": "debugobjects: add timer specific object debugging code\n\nAdd calls to the generic object debugging infrastructure and provide fixup\nfunctions which allow to keep the system alive when recoverable problems have\nbeen detected by the object debugging core code.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd02ff0b14b7e27cbdfd7ff2814b08199a2b7168",
      "tree": "fd9158bb92d086838a1b81b549243f3cdc23a7b8",
      "parents": [
        "d802ffa8850f2a80d141457d7221809182ed8c9f"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Tue Oct 16 18:38:25 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Oct 17 18:49:58 2007 -0400"
      },
      "message": "jbd2: JBD_XXX to JBD2_XXX naming cleanup\n\nchange JBD_XXX macros to JBD2_XXX in JBD2/Ext4\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "b46b8f19c9cd435ecac4d9d12b39d78c137ecd66",
      "tree": "4b1e393eeb42f70867d30a7d0116ff948941095b",
      "parents": [
        "5b94f675f57e4ff16c8fda09088d7480a84dcd91"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue May 08 00:22:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:14:57 2007 -0700"
      },
      "message": "Increase slab redzone to 64bits\n\nThere are two problems with the existing redzone implementation.\n\nFirstly, it\u0027s causing misalignment of structures which contain a 64-bit\ninteger, such as netfilter\u0027s \u0027struct ipt_entry\u0027 -- causing netfilter\nmodules to fail to load because of the misalignment.  (In particular, the\nfirst check in\nnet/ipv4/netfilter/ip_tables.c::check_entry_size_and_hooks())\n\nOn ppc32 and sparc32, amongst others, __alignof__(uint64_t) \u003d\u003d 8.\n\nWith slab debugging, we use 32-bit redzones. And allocated slab objects\naren\u0027t sufficiently aligned to hold a structure containing a uint64_t.\n\nBy _just_ setting ARCH_KMALLOC_MINALIGN to __alignof__(u64) we\u0027d disable\nredzone checks on those architectures.  By using 64-bit redzones we avoid that\nloss of debugging, and also fix the other problem while we\u0027re at it.\n\nWhen investigating this, I noticed that on 64-bit platforms we\u0027re using a\n32-bit value of RED_ACTIVE/RED_INACTIVE in the 64-bit memory location set\naside for the redzone.  Which means that the four bytes immediately before\nor after the allocated object at 0x00,0x00,0x00,0x00 for LE and BE\nmachines, respectively.  Which is probably not the most useful choice of\npoison value.\n\nOne way to fix both of those at once is just to switch to 64-bit\nredzones in all cases.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81819f0fc8285a2a5a921c019e3e3d7b6169d225",
      "tree": "47e3da44d3ef6c74ceae6c3771b191b46467bb48",
      "parents": [
        "543691a6cd70b606dd9bed5e77b120c5d9c5c506"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sun May 06 14:49:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:53 2007 -0700"
      },
      "message": "SLUB core\n\nThis is a new slab allocator which was motivated by the complexity of the\nexisting code in mm/slab.c. It attempts to address a variety of concerns\nwith the existing implementation.\n\nA. Management of object queues\n\n   A particular concern was the complex management of the numerous object\n   queues in SLAB. SLUB has no such queues. Instead we dedicate a slab for\n   each allocating CPU and use objects from a slab directly instead of\n   queueing them up.\n\nB. Storage overhead of object queues\n\n   SLAB Object queues exist per node, per CPU. The alien cache queue even\n   has a queue array that contain a queue for each processor on each\n   node. For very large systems the number of queues and the number of\n   objects that may be caught in those queues grows exponentially. On our\n   systems with 1k nodes / processors we have several gigabytes just tied up\n   for storing references to objects for those queues  This does not include\n   the objects that could be on those queues. One fears that the whole\n   memory of the machine could one day be consumed by those queues.\n\nC. SLAB meta data overhead\n\n   SLAB has overhead at the beginning of each slab. This means that data\n   cannot be naturally aligned at the beginning of a slab block. SLUB keeps\n   all meta data in the corresponding page_struct. Objects can be naturally\n   aligned in the slab. F.e. a 128 byte object will be aligned at 128 byte\n   boundaries and can fit tightly into a 4k page with no bytes left over.\n   SLAB cannot do this.\n\nD. SLAB has a complex cache reaper\n\n   SLUB does not need a cache reaper for UP systems. On SMP systems\n   the per CPU slab may be pushed back into partial list but that\n   operation is simple and does not require an iteration over a list\n   of objects. SLAB expires per CPU, shared and alien object queues\n   during cache reaping which may cause strange hold offs.\n\nE. SLAB has complex NUMA policy layer support\n\n   SLUB pushes NUMA policy handling into the page allocator. This means that\n   allocation is coarser (SLUB does interleave on a page level) but that\n   situation was also present before 2.6.13. SLABs application of\n   policies to individual slab objects allocated in SLAB is\n   certainly a performance concern due to the frequent references to\n   memory policies which may lead a sequence of objects to come from\n   one node after another. SLUB will get a slab full of objects\n   from one node and then will switch to the next.\n\nF. Reduction of the size of partial slab lists\n\n   SLAB has per node partial lists. This means that over time a large\n   number of partial slabs may accumulate on those lists. These can\n   only be reused if allocator occur on specific nodes. SLUB has a global\n   pool of partial slabs and will consume slabs from that pool to\n   decrease fragmentation.\n\nG. Tunables\n\n   SLAB has sophisticated tuning abilities for each slab cache. One can\n   manipulate the queue sizes in detail. However, filling the queues still\n   requires the uses of the spin lock to check out slabs. SLUB has a global\n   parameter (min_slab_order) for tuning. Increasing the minimum slab\n   order can decrease the locking overhead. The bigger the slab order the\n   less motions of pages between per CPU and partial lists occur and the\n   better SLUB will be scaling.\n\nG. Slab merging\n\n   We often have slab caches with similar parameters. SLUB detects those\n   on boot up and merges them into the corresponding general caches. This\n   leads to more effective memory use. About 50% of all caches can\n   be eliminated through slab merging. This will also decrease\n   slab fragmentation because partial allocated slabs can be filled\n   up again. Slab merging can be switched off by specifying\n   slub_nomerge on boot up.\n\n   Note that merging can expose heretofore unknown bugs in the kernel\n   because corrupted objects may now be placed differently and corrupt\n   differing neighboring objects. Enable sanity checks to find those.\n\nH. Diagnostics\n\n   The current slab diagnostics are difficult to use and require a\n   recompilation of the kernel. SLUB contains debugging code that\n   is always available (but is kept out of the hot code paths).\n   SLUB diagnostics can be enabled via the \"slab_debug\" option.\n   Parameters can be specified to select a single or a group of\n   slab caches for diagnostics. This means that the system is running\n   with the usual performance and it is much more likely that\n   race conditions can be reproduced.\n\nI. Resiliency\n\n   If basic sanity checks are on then SLUB is capable of detecting\n   common error conditions and recover as best as possible to allow the\n   system to continue.\n\nJ. Tracing\n\n   Tracing can be enabled via the slab_debug\u003dT,\u003cslabcache\u003e option\n   during boot. SLUB will then protocol all actions on that slabcache\n   and dump the object contents on free.\n\nK. On demand DMA cache creation.\n\n   Generally DMA caches are not needed. If a kmalloc is used with\n   __GFP_DMA then just create this single slabcache that is needed.\n   For systems that have no ZONE_DMA requirement the support is\n   completely eliminated.\n\nL. Performance increase\n\n   Some benchmarks have shown speed improvements on kernbench in the\n   range of 5-10%. The locking overhead of slub is based on the\n   underlying base allocation size. If we can reliably allocate\n   larger order pages then it is possible to increase slub\n   performance much further. The anti-fragmentation patches may\n   enable further performance increases.\n\nTested on:\ni386 UP + SMP, x86_64 UP + SMP + NUMA emulation, IA64 NUMA + Simulator\n\nSLUB Boot options\n\nslub_nomerge\t\tDisable merging of slabs\nslub_min_order\u003dx\tRequire a minimum order for slab caches. This\n\t\t\tincreases the managed chunk size and therefore\n\t\t\treduces meta data and locking overhead.\nslub_min_objects\u003dx\tMininum objects per slab. Default is 8.\nslub_max_order\u003dx\tAvoid generating slabs larger than order specified.\nslub_debug\t\tEnable all diagnostics for all caches\nslub_debug\u003d\u003coptions\u003e\tEnable selective options for all caches\nslub_debug\u003d\u003co\u003e,\u003ccache\u003e\tEnable selective options for a certain set of\n\t\t\tcaches\n\nAvailable Debug options\nF\t\tDouble Free checking, sanity and resiliency\nR\t\tRed zoning\nP\t\tObject / padding poisoning\nU\t\tTrack last free / alloc\nT\t\tTrace all allocs / frees (only use for individual slabs).\n\nTo use SLUB: Apply this patch and then select SLUB as the default slab\nallocator.\n\n[hugh@veritas.com: fix an oops-causing locking error]\n[akpm@linux-foundation.org: various stupid cleanups and small fixes]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6fb14755a676282a4e6caa05a08c92db8e45cfff",
      "tree": "71a862edf87cafe61986c0aff90db72045cf14c3",
      "parents": [
        "d01ad8dd56527be72947b4b9997bb2c05783c3ed"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Wed May 02 19:27:10 2007 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed May 02 19:27:10 2007 +0200"
      },
      "message": "[PATCH] x86: tighten kernel image page access rights\n\nOn x86-64, kernel memory freed after init can be entirely unmapped instead\nof just getting \u0027poisoned\u0027 by overwriting with a debug pattern.\n\nOn i386 and x86-64 (under CONFIG_DEBUG_RODATA), kernel text and bug table\ncan also be write-protected.\n\nCompared to the first version, this one prevents re-creating deleted\nmappings in the kernel image range on x86-64, if those got removed\npreviously. This, together with the original changes, prevents temporarily\nhaving inconsistent mappings when cacheability attributes are being\nchanged on such pages (e.g. from AGP code). While on i386 such duplicate\nmappings don\u0027t exist, the same change is done there, too, both for\nconsistency and because checking pte_present() before using various other\npte_XXX functions is a requirement anyway. At once, i386 code gets\nadjusted to use pte_huge() instead of open coding this.\n\nAK: split out cpa() changes\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "3c6b377321678c649f9b3c66da0149975c614102",
      "tree": "0e7c7a40ad55402ae009fd5a59741a28b5d8ea4b",
      "parents": [
        "4bdbf6c033ba05bff65f69989baccd7103c5a530"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Mon Jul 03 19:48:25 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 03 19:48:25 2006 -0700"
      },
      "message": "[ATM]: add+use poison defines\n\nATM: add and use POISON define values.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4bdbf6c033ba05bff65f69989baccd7103c5a530",
      "tree": "e4559c8222b066113d441b9545744a1c2bd569fc",
      "parents": [
        "6508871eddbbd3e62799f3b6182a6a4fd3ef31d5"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Mon Jul 03 19:47:27 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 03 19:47:27 2006 -0700"
      },
      "message": "[NET]: add+use poison defines\n\nAdd and use poison defines in net/.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a7807a32bbb027ab9955b96734fdc7f1e6497a9f",
      "tree": "8ed62e305638e1b853f1c80b5bb7ed818418765c",
      "parents": [
        "b3c681e09193559ba15f6c9562bd37045f120a96"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Jun 27 02:53:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] poison: add \u0026 use more constants\n\nAdd more poison values to include/linux/poison.h.  It\u0027s not clear to me\nwhether some others should be added or not, so I haven\u0027t added any of\nthese:\n\n./include/linux/libata.h:#define ATA_TAG_POISON\t\t0xfafbfcfdU\n./arch/ppc/8260_io/fcc_enet.c:1918:\tmemset((char *)(\u0026(immap-\u003eim_dprambase[(mem_addr+64)])), 0x88, 32);\n./drivers/usb/mon/mon_text.c:429:\tmemset(mem, 0xe5, sizeof(struct mon_event_text));\n./drivers/char/ftape/lowlevel/ftape-ctl.c:738:\t\tmemset(ft_buffer[i]-\u003eaddress, 0xAA, FT_BUFF_SIZE);\n./drivers/block/sx8.c:/* 0xf is just arbitrary, non-zero noise; this is sorta like poisoning */\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b3c681e09193559ba15f6c9562bd37045f120a96",
      "tree": "8c70d20988e6b04171cb1f60b0da34978bca5f36",
      "parents": [
        "c9cf55285e87ac423c45d9efca750d3f50234d10"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Jun 27 02:53:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] update two drivers for poison.h\n\nUpdate two drivers to use poison.h.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c9cf55285e87ac423c45d9efca750d3f50234d10",
      "tree": "d46f3e90fbb38115c25b3315f6280ad65f83a14f",
      "parents": [
        "e6e5494cb23d1933735ee47cc674ffe1c4afed6f"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Jun 27 02:53:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] add poison.h and patch primary users\n\nLocalize poison values into one header file for better documentation and\neasier/quicker debugging and so that the same values won\u0027t be used for\nmultiple purposes.\n\nUse these constants in core arch., mm, driver, and fs code.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nAcked-by: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ]
}
