)]}'
{
  "log": [
    {
      "commit": "80e8ff634169be3fc2ac48f258cc7638e898cd46",
      "tree": "481b805fedc77b28183ae2be0f114d50d4163bdb",
      "parents": [
        "4c416ab71164dc8d3f800a942fb18c4e67f67897"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Mon Apr 10 22:54:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:42 2006 -0700"
      },
      "message": "[PATCH] kdump proc vmcore size oveflow fix\n\nA couple of /proc/vmcore data structures overflow with 32bit systems having\nmemory more than 4G.  This patch fixes those.\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a9cdf410ca8f59b52bc7061a6751050010c7cc5b",
      "tree": "a7b63f15f2221e424b37989af1083701d1549adf",
      "parents": [
        "49b6e2ad00435209503863932d03470f825e0a1a"
      ],
      "author": {
        "name": "Keith Owens",
        "email": "kaos@sgi.com",
        "time": "Mon Apr 10 22:54:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:41 2006 -0700"
      },
      "message": "[PATCH] Reinstate const in next_thread()\n\nBefore commit 47e65328a7b1cdfc4e3102e50d60faf94ebba7d3, next_thread() took\na const task_t.  Reinstate the const qualifier, getting the next thread\nnever changes the current thread.\n\nSigned-off-by: Keith Owens \u003ckaos@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e1a2509023785bd3199ac068ab80155aeba01265",
      "tree": "2d1f4541893a39537e67a921a2d5999c38310c28",
      "parents": [
        "d824e66a9a427faf69c58f98dd7e1c3d1bb51c61"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Apr 10 22:54:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:41 2006 -0700"
      },
      "message": "[PATCH] make tty_insert_flip_string_flags() a non gpl export\n\nWe changed the wrong symbol.  It\u0027s tty_insert_flip_string_flags() which is\ncalled from the previously-non-GPL\u0027ed now-inlined tty_insert_flip_char().\n\nFix that up, and uninline tty_schedule_flip() while we\u0027re there.\n\nCc: Tobias Powalowski \u003ct.powa@gmx.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb5035dbbea8826cdbeb5c43d7605255eb6f0baa",
      "tree": "bf01a0b9321cd6715051f477750c108afa699963",
      "parents": [
        "24f51e81745861c70da2255ce30c7078aed2d20e"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Mon Apr 10 22:54:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:41 2006 -0700"
      },
      "message": "[PATCH] leds: re-layout include/linux/leds.h\n\nLay out the structure definitions in include/linux/leds.h to be aligned as\nmuch as possible.  Also minor updates to the comments to make them more\nconcise.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nAcked-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aa7271076ae6547d7f370ad7e91ef86fdb318f17",
      "tree": "5a04c82e8ea4dda6cfd7905da18f68752d10faa3",
      "parents": [
        "ba6edfcd1708da2e665f14eee76e87f39448ec40"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Apr 10 22:53:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:40 2006 -0700"
      },
      "message": "[PATCH] the scheduled unexport of panic_timeout\n\nImplement the scheduled unexport of panic_timeout.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5246d0503130fa58904c8beb987fcf93b96d8ab6",
      "tree": "c807f1bba6a1d5abf0b3a9f221bc3e49ca5810c8",
      "parents": [
        "8833d328caf009f8da58337e17a2cf5d52993a7c"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Apr 10 22:53:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:40 2006 -0700"
      },
      "message": "[PATCH] sync_file_range(): use unsigned for flags\n\nUlrich suggested that the `flags\u0027 arg to sync_file_range() become unsigned.\n\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8833d328caf009f8da58337e17a2cf5d52993a7c",
      "tree": "dc12f9c94f28ad0fb41ea6c4ebe6a0ae31c36ad1",
      "parents": [
        "894b5779ceeabdce139068310e58bcf51ed9bb22"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@parisc-linux.org",
        "time": "Mon Apr 10 22:53:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:40 2006 -0700"
      },
      "message": "[PATCH] Clean up arch-overrides in linux/string.h\n\nSome string functions were safely overrideable in lib/string.c, but their\ncorresponding declarations in linux/string.h were not.  Correct this, and\nmake strcspn overrideable.\n\nOdds of someone wanting to do optimized assembly of these are small, but\nfor the sake of cleanliness, might as well bring them into line with the\nrest of the file.\n\nSigned-off-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c80d79d746cc48bd94b0ce4f6d4f3c90cd403aaf",
      "tree": "5aa8d1590d95f8fd820ad797fe03a063b592e9bf",
      "parents": [
        "653edba1a8b2ed018bdfb078131324dfbfe1dd6a"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Mon Apr 10 22:53:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:39 2006 -0700"
      },
      "message": "[PATCH] Configurable NODES_SHIFT\n\nCurrent implementations define NODES_SHIFT in include/asm-xxx/numnodes.h for\neach arch.  Its definition is sometimes configurable.  Indeed, ia64 defines 5\nNODES_SHIFT values in the current git tree.  But it looks a bit messy.\n\nSGI-SN2(ia64) system requires 1024 nodes, and the number of nodes already has\nbeen changeable by config.  Suitable node\u0027s number may be changed in the\nfuture even if it is other architecture.  So, I wrote configurable node\u0027s\nnumber.\n\nThis patch set defines just default value for each arch which needs multi\nnodes except ia64.  But, it is easy to change to configurable if necessary.\n\nOn ia64 the number of nodes can be already configured in generic ia64 and SN2\nconfig.  But, NODES_SHIFT is defined for DIG64 and HP\u0027S machine too.  So, I\nchanged it so that all platforms can be configured via CONFIG_NODES_SHIFT.  It\nwould be simpler.\n\nSee also: http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114358010523896\u0026w\u003d2\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b04d7170e9af805cac19f97b28fff10db897893",
      "tree": "f4b0de67af631c1a1099bcd35621ae7fff38af67",
      "parents": [
        "a5d2f46a97cf8e23f5da17dec50a972642ac409f"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Apr 10 22:53:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:35 2006 -0700"
      },
      "message": "[PATCH] Add GFP_NOWAIT\n\nIntroduce GFP_NOWAIT, as an alias for GFP_ATOMIC \u0026 ~__GFP_HIGH.\n\nThis also changes XFS, which is the only in-tree user of this idiom that I\ncould find.  The XFS piece is compile-tested only.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nAcked-by: Nathan Scott \u003cnathans@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "91fc8ab3c6312931d64c72845ee2f93a0f87f1a5",
      "tree": "63cbc8d224a27f7d62bd1651afa5cd3b659c7587",
      "parents": [
        "d5ddc79bcaab6975e7671805c3578407dc33b764"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@shadowen.org",
        "time": "Mon Apr 10 22:53:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:32 2006 -0700"
      },
      "message": "[PATCH] page flags: add commentry regarding field reservation\n\nAdd some documentation regarding the utilisation of the flags field in\nstruct page.  This field is overloaded for per page bits and to hold node,\nzone and SPARSEMEM information.  Make it clear which areas are used for\nwhat and how many bits are in each area.\n\nSigned-off-by: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cb45b0e966cbe747b6189c15b108901cc7d6c97c",
      "tree": "0402d4809ec175e80b083f7a713ec32c0109baad",
      "parents": [
        "e23ca00bf1b1c6c0f04702cb4d29e275ab8dc330"
      ],
      "author": {
        "name": "Hideo AOKI",
        "email": "haoki@redhat.com",
        "time": "Mon Apr 10 22:52:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:32 2006 -0700"
      },
      "message": "[PATCH] overcommit: add calculate_totalreserve_pages()\n\nThese patches are an enhancement of OVERCOMMIT_GUESS algorithm in\n__vm_enough_memory().\n\n- why the kernel needed patching\n\n  When the kernel can\u0027t allocate anonymous pages in practice, currnet\n  OVERCOMMIT_GUESS could return success. This implementation might be\n  the cause of oom kill in memory pressure situation.\n\n  If the Linux runs with page reservation features like\n  /proc/sys/vm/lowmem_reserve_ratio and without swap region, I think\n  the oom kill occurs easily.\n\n- the overall design approach in the patch\n\n  When the OVERCOMMET_GUESS algorithm calculates number of free pages,\n  the reserved free pages are regarded as non-free pages.\n\n  This change helps to avoid the pitfall that the number of free pages\n  become less than the number which the kernel tries to keep free.\n\n- testing results\n\n  I tested the patches using my test kernel module.\n\n  If the patches aren\u0027t applied to the kernel, __vm_enough_memory()\n  returns success in the situation but autual page allocation is\n  failed.\n\n  On the other hand, if the patches are applied to the kernel, memory\n  allocation failure is avoided since __vm_enough_memory() returns\n  failure in the situation.\n\n  I checked that on i386 SMP 16GB memory machine. I haven\u0027t tested on\n  nommu environment currently.\n\nThis patch adds totalreserve_pages for __vm_enough_memory().\n\nCalculate_totalreserve_pages() checks maximum lowmem_reserve pages and\npages_high in each zone. Finally, the function stores the sum of each\nzone to totalreserve_pages.\n\nThe totalreserve_pages is calculated when the VM is initilized.\nAnd the variable is updated when /proc/sys/vm/lowmem_reserve_raito\nor /proc/sys/vm/min_free_kbytes are changed.\n\nSigned-off-by: Hideo Aoki \u003chaoki@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6f91fe88e4e28b40b4f08d99e0ea6d17b70e9567",
      "tree": "035ac07180e058579ee8023ed0fcb12e40315594",
      "parents": [
        "54404e72cd3758e465fb6362f6d71e22b705c589"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Apr 10 22:52:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:30 2006 -0700"
      },
      "message": "[PATCH] md: make sure 64bit fields in version-1 metadata are 64-bit aligned\n\nreshape_position is a 64bit field that was not 64bit aligned.  So swap with\nnew_level.\n\nNOTE: this is a user-visible change.  However:\n  - The bad code has not appeared in a released kernel\n  - This code is still marked \u0027experimental\u0027\n  - This only affects version-1 superblock, which are not in wide use\n  - These field are only used (rather than simply reported) by user-space\n    tools in extemely rare circumstances : after a reshape crashes in the\n    first second of the reshape process.\n\nSo I believe that, at this stage, the change is safe.  Especially if people\nheed the \u0027help\u0027 message on use mdadm-2.4.1.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "de12a7878c11f3b282d640888aa635e0711d0b5e",
      "tree": "742b72a47cc36a7e591dba1883cd9af3c44290c4",
      "parents": [
        "1b72373491a061be6d456d219a4e2d054ac2aaad"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Apr 10 17:16:49 2006 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Apr 10 16:36:50 2006 -0700"
      },
      "message": "[PATCH] de_thread: Don\u0027t confuse users do_each_thread.\n\nOleg Nesterov spotted two interesting bugs with the current de_thread\ncode.  The simplest is a long standing double decrement of\n__get_cpu_var(process_counts) in __unhash_process.  Caused by\ntwo processes exiting when only one was created.\n\nThe other is that since we no longer detach from the thread_group list\nit is possible for do_each_thread when run under the tasklist_lock to\nsee the same task_struct twice.  Once on the task list as a\nthread_group_leader, and once on the thread list of another\nthread.\n\nThe double appearance in do_each_thread can cause a double increment\nof mm_core_waiters in zap_threads resulting in problems later on in\ncoredump_wait.\n\nTo remedy those two problems this patch takes the simple approach\nof changing the old thread group leader into a child thread.\nThe only routine in release_task that cares is __unhash_process,\nand it can be trivially seen that we handle cleaning up a\nthread group leader properly.\n\nSince de_thread doesn\u0027t change the pid of the exiting leader process\nand instead shares it with the new leader process.  I change\nthread_group_leader to recognize group leadership based on the\ngroup_leader field and not based on pids.  This should also be\nslightly cheaper then the existing thread_group_leader macro.\n\nI performed a quick audit and I couldn\u0027t see any user of\nthread_group_leader that cared about the difference.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9227c33de80ac01f269ed33624990ce84358e419",
      "tree": "7678d342949db011d37e15516c3eaa22ec32ff2a",
      "parents": [
        "676165a8af7167f488abdcce6851a9bc36e83254"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Apr 01 19:21:04 2006 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Apr 10 14:15:47 2006 -0400"
      },
      "message": "[PATCH] move -\u003eeh_strategy_handler to the transport class\n\nOverriding the whole EH code is a per-transport, not per-host thing.\nMove -\u003eeh_strategy_handler to the transport class, same as\n-\u003eeh_timed_out.\n\nDownside is that scsi_host_alloc can\u0027t check for the total lack of EH\nanymore, but the transition period from old EH where we needed it is\nlong gone already.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "676165a8af7167f488abdcce6851a9bc36e83254",
      "tree": "a9b2b8dc155b48ce073b5ada31f2ac0694118e69",
      "parents": [
        "c3a9d6541f84ac3ff566982d08389b87c1c36b4e"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "piggin@cyberone.com.au",
        "time": "Mon Apr 10 11:21:48 2006 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Apr 10 10:16:37 2006 -0700"
      },
      "message": "[PATCH] Fix buddy list race that could lead to page lru list corruptions\n\nRohit found an obscure bug causing buddy list corruption.\n\npage_is_buddy is using a non-atomic test (PagePrivate \u0026\u0026 page_count \u003d\u003d 0)\nto determine whether or not a free page\u0027s buddy is itself free and in the\nbuddy lists.\n\nEach of the conjuncts may be true at different times due to unrelated\nconditions, so the non-atomic page_is_buddy test may find each conjunct to\nbe true even if they were not both true at the same time (ie. the page was\nnot on the buddy lists).\n\nSigned-off-by: Martin Bligh \u003cmbligh@google.com\u003e\nSigned-off-by: Rohit Seth \u003crohitseth@google.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "422c346fad806e2abaeffac686860ebc98dfe33e",
      "tree": "dd554d11e80ad33afef4b438ec4c2d8943ad37f4",
      "parents": [
        "bce8032ef3cc58170ab3550e9e271dba7b4c4764"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Apr 06 14:18:43 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Apr 09 22:25:41 2006 -0700"
      },
      "message": "[NETFILTER]: Add address family specific checksum helpers\n\nAdd checksum operation which takes care of verifying the checksum and\ndealing with HW checksum errors and avoids multiple checksum\noperations by setting ip_summed to CHECKSUM_UNNECESSARY after\nsuccessful verification.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bce8032ef3cc58170ab3550e9e271dba7b4c4764",
      "tree": "13dbdf12a6c567c3292daad4604eb55f7abd167e",
      "parents": [
        "a0aed49bdb2bbb4234789f241cffb607fd2e213d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Apr 06 14:18:09 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Apr 09 22:25:40 2006 -0700"
      },
      "message": "[NETFILTER]: Introduce infrastructure for address family specific operations\n\nChange the queue rerouter intrastructure to a generic usable\ninfrastructure for address family specific operations as a base for\nsome cleanups.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "48bfee5fad0e46f4f18d46285efceba39e897482",
      "tree": "f527020c7163d519fdc6fd6d38f9473b6ce739bf",
      "parents": [
        "32292a7ff1d9306841a8da6ea286847b1070cc6a"
      ],
      "author": {
        "name": "Jing Min Zhao",
        "email": "zhaojingmin@users.sourceforge.net",
        "time": "Thu Apr 06 14:13:42 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Apr 09 22:25:35 2006 -0700"
      },
      "message": "[NETFILTER]: H.323 helper: move some function prototypes to ip_conntrack_h323.h\n\nMove prototypes of NAT callbacks to ip_conntrack_h323.h. Because the\nuse of typedefs as arguments, some header files need to be moved as\nwell.\n\nSigned-off-by: Jing Min Zhao \u003czhaojingmin@users.sourceforge.net\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "972d1cb1427946f4980240363aac4e73fb375290",
      "tree": "6b4af7fa66b358ab2d167093cd4bd43baa75f0a3",
      "parents": [
        "137dc0233fba0bfa19679bdd96eb104f0e659c5a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Apr 06 14:09:12 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Apr 09 22:25:32 2006 -0700"
      },
      "message": "[NETFILTER]: Add helper functions for mass hook registration/unregistration\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b20367a6c2a0cd937cb1f0a8cf848f1402fef99c",
      "tree": "8624096baed40f8f89e757b2d170a7b4d1844575",
      "parents": [
        "49c93e84d8b2d602a07c302c7e3cd4fa09095fbb"
      ],
      "author": {
        "name": "Jordan Hargrave",
        "email": "jordan_hargrave@dell.com",
        "time": "Fri Apr 07 19:50:18 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:53 2006 -0700"
      },
      "message": "[PATCH] x86_64: Fix drift with HPET timer enabled\n\nIf the HPET timer is enabled, the clock can drift by ~3 seconds a day.\nThis is due to the HPET timer not being initialized with the correct\nsetting (still using PIT count).\n\nIf HZ changes, this drift can become even more pronounced.\n\nHPET patch initializes tick_nsec with correct tick_nsec settings for\nHPET timer.\n\nVojtech comments:\n\n  \"It\u0027s not entirely correct (it assumes the HPET ticks totally\n   exactly), but it\u0027s significantly better than assuming the PIT error\n   there.\"\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a8062231d80239cf3405982858c02aea21a6066a",
      "tree": "0576493fa99cda91069fe3b67c19bd024858e69e",
      "parents": [
        "68a3a7feb08f960095072f28ec20f7900793c506"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Apr 07 19:49:21 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: Handle empty PXMs that only contain hotplug memory\n\nThe node setup code would try to allocate the node metadata in the node\nitself, but that fails if there is no memory in there.\n\nThis can happen with memory hotplug when the hotplug area defines an so\nfar empty node.\n\nNow use bootmem to try to allocate the mem_map in other nodes.\n\nAnd if it fails don\u0027t panic, but just ignore the node.\n\nTo make this work I added a new __alloc_bootmem_nopanic function that\ndoes what its name implies.\n\nTBD should try to use nearby nodes here.  Currently we just use any.\nIt\u0027s hard to do it better because bootmem doesn\u0027t have proper fallback\nlists yet.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9d99aaa31f5994d1923c3713ce9144c4c42332e1",
      "tree": "ae608593ca196dd6493cccbdfc1b8dd098e91ee8",
      "parents": [
        "805e8c03c9ea9bdb402a36341e02ec24825d5417"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Apr 07 19:49:15 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: Support memory hotadd without sparsemem\n\nMemory hotadd doesn\u0027t need SPARSEMEM, but can be handled by just preallocating\nmem_maps. This only needs some untangling of ifdefs to enable the necessary\ncode even without SPARSEMEM.\n\nOriginally from Keith Mannthey, hacked by AK.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d69636157ad8fa6bb9fff452cefb34fcace851b5",
      "tree": "dc9c0cc41150042224a367ffcab77cf7d315e3a7",
      "parents": [
        "1810b6cb162e0c19e0ecbbacbcfd66f578f335ec",
        "3e7ee3e7b36fa4e2d88d8fb0a2577be95fc4636d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 14:22:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 14:22:06 2006 -0700"
      },
      "message": "Merge branch \u0027splice\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\n* \u0027splice\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block:\n  [PATCH] splice: fix page stealing LRU handling.\n  [PATCH] splice: page stealing needs to wait_on_page_writeback()\n  [PATCH] splice: export generic_splice_sendpage\n  [PATCH] splice: add a SPLICE_F_MORE flag\n  [PATCH] splice: add comments documenting more of the code\n  [PATCH] splice: improve writeback and clean up page stealing\n  [PATCH] splice: fix shadow[] filling logic\n"
    },
    {
      "commit": "3e7ee3e7b36fa4e2d88d8fb0a2577be95fc4636d",
      "tree": "46e972e78122f8a719dafc87572bffb25716e745",
      "parents": [
        "ad8d6f0a783ffa2ff9b0cf09910b889715772201"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Apr 02 23:11:04 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Apr 02 23:11:04 2006 +0200"
      },
      "message": "[PATCH] splice: fix page stealing LRU handling.\n\nOriginally from Nick Piggin, just adapted to the newer branch.\n\nYou can\u0027t check PageLRU without holding zone-\u003elru_lock.  The page\nrelease code can get away with it only because the page refcount is 0 at\nthat point. Also, you can\u0027t reliably remove pages from the LRU unless\nthe refcount is 0. Ever.\n\nSigned-off-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "b2b39fa478db6db89b7ccafb0649973845b0eb75",
      "tree": "784d85b94fb634e3b33dfd3f1153c98580cfac15",
      "parents": [
        "83f9135bddffded9f1716519b6c147bcf046c87e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Apr 02 23:05:41 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Apr 02 23:05:41 2006 +0200"
      },
      "message": "[PATCH] splice: add a SPLICE_F_MORE flag\n\nThis lets userspace indicate whether more data will be coming in a\nsubsequent splice call.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "4f6f0bd2ffa4e31c3524f5e65c84a29b6ab73307",
      "tree": "682ab1b41c3ee799d37bfa1874c79ae92b3755fd",
      "parents": [
        "53cd9ae886273d6c2b8ba4aa63d6cd6b1217b57f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Apr 02 23:04:46 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Apr 02 23:04:46 2006 +0200"
      },
      "message": "[PATCH] splice: improve writeback and clean up page stealing\n\nBy cleaning up the writeback logic (killing write_one_page() and the manual\nset_page_dirty()), we can get rid of -\u003estolen inside the pipe_buffer and\njust keep it local in pipe_to_file().\n\nThis also adds dirty page balancing logic and O_SYNC handling.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "63589ed0785ffc715777a54ccb96cdfaea9edbc0",
      "tree": "8ef3e50b7f87a5a2f5b0d96d1e22a1277c2381c0",
      "parents": [
        "24c7cd0630f76f0eb081d539c53893d9f15787e8",
        "a580290c3e64bb695158a090d02d1232d9609311"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:58:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:58:45 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (48 commits)\n  Documentation: fix minor kernel-doc warnings\n  BUG_ON() Conversion in drivers/net/\n  BUG_ON() Conversion in drivers/s390/net/lcs.c\n  BUG_ON() Conversion in mm/slab.c\n  BUG_ON() Conversion in mm/highmem.c\n  BUG_ON() Conversion in kernel/signal.c\n  BUG_ON() Conversion in kernel/signal.c\n  BUG_ON() Conversion in kernel/ptrace.c\n  BUG_ON() Conversion in ipc/shm.c\n  BUG_ON() Conversion in fs/freevxfs/\n  BUG_ON() Conversion in fs/udf/\n  BUG_ON() Conversion in fs/sysv/\n  BUG_ON() Conversion in fs/inode.c\n  BUG_ON() Conversion in fs/fcntl.c\n  BUG_ON() Conversion in fs/dquot.c\n  BUG_ON() Conversion in md/raid10.c\n  BUG_ON() Conversion in md/raid6main.c\n  BUG_ON() Conversion in md/raid5.c\n  Fix minor documentation typo\n  BFP-\u003eBPF in Documentation/networking/tuntap.txt\n  ...\n"
    },
    {
      "commit": "b043b673dc8a73daa233d5d92cf70b32e7351314",
      "tree": "d17fd0616420886adca7eb1bc19ba7a55a789fa8",
      "parents": [
        "cd5e25d93e6efeb93db7b6731b0a674495270621",
        "fb9c280d4c6d4586670e3dfd041d8258db36b330"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:53:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:53:57 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb\n\n* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (49 commits)\n  V4L/DVB (3667b): cpia2: fix function prototype\n  V4L/DVB (3702): Make msp3400 routing defines more consistent\n  V4L/DVB (3700): Remove obsolete commands from tvp5150.c\n  V4L/DVB (3697): More msp3400 and bttv fixes\n  V4L/DVB (3696): Previous change for cx2341X boards broke the remote support\n  V4L/DVB (3693): Fix msp3400c and bttv stereo/mono/bilingual detection/handling\n  V4L/DVB (3692): Keep experimental SLICED_VBI defines under an #if 0\n  V4L/DVB (3689): Kconfig: fix VP-3054 Secondary I2C Bus build configuration menu dependencies\n  V4L/DVB (3673): Fix budget-av CAM reset\n  V4L/DVB (3672): Fix memory leak in dvr open\n  V4L/DVB (3671): New module parameter \u0027tv_standard\u0027 (dvb-ttpci driver)\n  V4L/DVB (3670): Fix typo in comment\n  V4L/DVB (3669): Configurable dma buffer size for saa7146-based budget dvb cards\n  V4L/DVB (3653h): Move usb v4l docs into Documentation/video4linux\n  V4L/DVB (3667a): Fix SAP + stereo mode at msp3400\n  V4L/DVB (3666): Remove trailing newlines\n  V4L/DVB (3665): Add new NEC uPD64031A and uPD64083 i2c drivers\n  V4L/DVB (3663): Fix msp3400c wait time and better audio mode fallbacks\n  V4L/DVB (3662): Don\u0027t set msp3400c-non-existent register\n  V4L/DVB (3661): Add wm8739 stereo audio ADC i2c driver\n  ...\n"
    },
    {
      "commit": "9c8680e2cfbb60d5075f8caaf9d98276120bcc78",
      "tree": "1957cff26a46271d5b63a3c209629ddd7f9fe124",
      "parents": [
        "f900e5824a44ab65437b4f7e7c610b72f94820c5",
        "b9ec4e109d7a342e83e1210e05797222e36555c3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:49:19 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:49:19 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input\n\n* master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (26 commits)\n  Input: add support for Braille devices\n  Input: synaptics - limit rate to 40pps on Toshiba Protege M300\n  Input: gamecon - add SNES mouse support\n  Input: make modalias code respect allowed buffer size\n  Input: convert /proc handling to seq_file\n  Input: limit attributes\u0027 output to PAGE_SIZE\n  Input: gameport - fix memory leak\n  Input: serio - fix memory leak\n  Input: zaurus keyboard driver updates\n  Input: i8042 - fix logic around pnp_register_driver()\n  Input: ns558 - fix logic around pnp_register_driver()\n  Input: pcspkr - separate device and driver registration\n  Input: atkbd - allow disabling on X86_PC (if EMBEDDED)\n  Input: atkbd - disable softrepeat for dumb keyboards\n  Input: atkbd - fix complaints about \u0027releasing unknown key 0x7f\u0027\n  Input: HID - fix duplicate key mapping for Logitech UltraX remote\n  Input: use kzalloc() throughout the code\n  Input: fix input_free_device() implementation\n  Input: initialize serio and gameport at subsystem level\n  Input: uinput - semaphore to mutex conversion\n  ...\n"
    },
    {
      "commit": "bacd3add087770333bdce65cd3dd25e3b2cd67ac",
      "tree": "b9a5512a7abbf661020af87ee843e4ad711546ed",
      "parents": [
        "29e350944fdc2dfca102500790d8ad6d6ff4f69d",
        "9a1875e60e61b563737d8d1fc3876b279710fe93"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:47:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:47:12 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:\n  [NET]: Fully fix the memory leaks in sys_accept().\n  [NETFILTER]: iptables 32bit compat layer\n  [NETFILTER]: {ip,nf}_conntrack_netlink: fix expectation notifier unregistration\n  [NETFILTER]: fix ifdef for connmark support in nf_conntrack_netlink\n  [NETFILTER]: x_tables: unify IPv4/IPv6 multiport match\n  [NETFILTER]: x_tables: unify IPv4/IPv6 esp match\n  [NET]: Fix dentry leak in sys_accept().\n  [IPSEC]: Kill unused decap state structure\n  [IPSEC]: Kill unused decap state argument\n  [NET]: com90xx kmalloc fix\n  [TG3]: Update driver version and reldate.\n  [TG3]: Revert \"Speed up SRAM access\"\n"
    },
    {
      "commit": "29e350944fdc2dfca102500790d8ad6d6ff4f69d",
      "tree": "7630809d75149b0053dcc45ad34e95d5506e88b3",
      "parents": [
        "b45e516f701e0fc81fb3dbd1ba9db35f991a4465"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:46:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 02 12:46:35 2006 -0700"
      },
      "message": "splice: add SPLICE_F_NONBLOCK flag\n\nIt doesn\u0027t make the splice itself necessarily nonblocking (because the\nactual file descriptors that are spliced from/to may block unless they\nhave the O_NONBLOCK flag set), but it makes the splice pipe operations\nnonblocking.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a580290c3e64bb695158a090d02d1232d9609311",
      "tree": "70f29239b9a206a9afb77ddff35fc47b5b248866",
      "parents": [
        "5d9428de1a9785f10a4339f80b717be665ba51c7"
      ],
      "author": {
        "name": "Martin Waitz",
        "email": "tali@admingilde.org",
        "time": "Sun Apr 02 13:59:55 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sun Apr 02 13:59:55 2006 +0200"
      },
      "message": "Documentation: fix minor kernel-doc warnings\n\nThis patch updates the comments to match the actual code.\n\nSigned-off-by: Martin Waitz \u003ctali@admingilde.org\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "9bc7400a9d01b1fe05c7f0200e7384e17794f6e4",
      "tree": "7dad2e13853c3ba7c2e913e2ee40229b1474155a",
      "parents": [
        "2868c41fc45399b0f0855eb760e1a81881ff0c3d"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Wed Mar 29 18:02:51 2006 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Apr 02 04:56:04 2006 -0300"
      },
      "message": "V4L/DVB (3692): Keep experimental SLICED_VBI defines under an #if 0\n\nThe sliced VBI defines added in videodev2.h are removed since requires\nmore discussion.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "b9ec4e109d7a342e83e1210e05797222e36555c3",
      "tree": "47ff5cb19c3b43f9907006e7b491df547f29b71e",
      "parents": [
        "53a2670cd9611cf7c3b3bf9875b0b4041160fa60"
      ],
      "author": {
        "name": "Samuel Thibault",
        "email": "samuel.thibault@ens-lyon.org",
        "time": "Sun Apr 02 00:10:28 2006 -0500"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Sun Apr 02 00:10:28 2006 -0500"
      },
      "message": "Input: add support for Braille devices\n\n- Add KEY_BRL_* input keys and K_BRL_* keycodes;\n- Add emulation of how braille keyboards usually combine braille dots\n  to the console keyboard driver;\n- Add handling of unicode U+28xy diacritics.\n\nSigned-off-by: Samuel Thibault \u003csamuel.thibault@ens-lyon.org\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "95d465fd750897ab32462a6702fbfe1b122cbbc0",
      "tree": "65c38b2f11c51bb6932e44dd6c92f15b0091abfe",
      "parents": [
        "642fde17dceceb56c7ba2762733ac688666ae657",
        "683aa4012f53b2ada0f430487e05d37b0d94e90a"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Sun Apr 02 00:08:05 2006 -0500"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Sun Apr 02 00:08:05 2006 -0500"
      },
      "message": "Manual merge with Linus.\n\nConflicts:\n\tarch/powerpc/kernel/setup-common.c\n\tdrivers/input/keyboard/hil_kbd.c\n\tdrivers/input/mouse/hil_ptr.c\n"
    },
    {
      "commit": "2722971cbe831117686039d5c334f2c0f560be13",
      "tree": "b810ea96778e4f5de2a7713685c0551aa34c8f97",
      "parents": [
        "e64a70be5175ac2c209fa742123a6ce845852e0e"
      ],
      "author": {
        "name": "Dmitry Mishin",
        "email": "dim@openvz.org",
        "time": "Sat Apr 01 02:25:19 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 01 02:25:19 2006 -0800"
      },
      "message": "[NETFILTER]: iptables 32bit compat layer\n\nThis patch extends current iptables compatibility layer in order to get\n32bit iptables to work on 64bit kernel. Current layer is insufficient due\nto alignment checks both in kernel and user space tools.\n\nPatch is for current net-2.6.17 with addition of move of ipt_entry_{match|\ntarget} definitions to xt_entry_{match|target}.\n\nSigned-off-by: Dmitry Mishin \u003cdim@openvz.org\u003e\nAcked-off-by: Kirill Korotaev \u003cdev@openvz.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a89ecb6a2ef732d04058d87801e2b6bd7e5c7089",
      "tree": "c84c5b3167c116f0c419a2bbb04877bdac38dd07",
      "parents": [
        "dc5ab2faece3b7473931357db7f63f596678481d"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Apr 01 02:22:54 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 01 02:22:54 2006 -0800"
      },
      "message": "[NETFILTER]: x_tables: unify IPv4/IPv6 multiport match\n\nThis unifies ipt_multiport and ip6t_multiport to xt_multiport.\nAs a result, this addes support for inversion and port range match\nto IPv6 packets.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dc5ab2faece3b7473931357db7f63f596678481d",
      "tree": "d1e5fd3e805e7d2c4136459cca17d5f8ed44bfb6",
      "parents": [
        "9606a21635cec077e1928273751b44ecc824a49d"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Apr 01 02:22:30 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 01 02:22:30 2006 -0800"
      },
      "message": "[NETFILTER]: x_tables: unify IPv4/IPv6 esp match\n\nThis unifies ipt_esp and ip6t_esp to xt_esp. Please note that now\na user program needs to specify IPPROTO_ESP as protocol to use esp match\nwith IPv6. This means that ip6tables requires \u0027-p esp\u0027 like iptables.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ba8e95ed14a2771bbcb43300feda094f298853e",
      "tree": "8f487c4f31175eea531fbf7305c91819eca17bec",
      "parents": [
        "36a891b67f95fd5e1442fc0f7f953809b94b3fbc"
      ],
      "author": {
        "name": "Kalin KOZHUHAROV",
        "email": "kalin@thinrope.net",
        "time": "Sat Apr 01 01:41:22 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Apr 01 01:41:22 2006 +0200"
      },
      "message": "Fix comments: s/granuality/granularity/\n\nI was grepping through the code and some `grep ganularity -R .` didn\u0027t\ncatch what I thought. Then looking closer I saw the term \"granuality\"\nused in only four places (in comments) and granularity in many more\nplaces describing the same idea. Some other facts:\n\ndictionary.com does not know such a word\ndefine:granuality on google is not found (and pages for granuality are\nmostly related to patches to the kernel)\nit has not been discussed as a term on LKML, AFAICS (\u003dCan Search)\n\nTo be consistent, I think granularity should be used everywhere.\n\nSigned-off-by: Kalin KOZHUHAROV \u003ckalin@thinrope.net\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "4b75679f60d0ce780609cbff249769b669f4fb69",
      "tree": "2c8890020b5e7d340036acb01f73a6e53feb038d",
      "parents": [
        "30c14e40ed85469f166b5effdab6705c73c5cd5e",
        "025be81e83043f20538dcced1e12c5f8d152fbdb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:52:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:52:30 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:\n  [NET]: Allow skb headroom to be overridden\n  [TCP]: Kill unused extern decl for tcp_v4_hash_connecting()\n  [NET]: add SO_RCVBUF comment\n  [NET]: Deinline some larger functions from netdevice.h\n  [DCCP]: Use NULL for pointers, comfort sparse.\n  [DECNET]: Fix refcount\n"
    },
    {
      "commit": "a244e1698ae3609cdfe24088e1293593cb7a5278",
      "tree": "81f3e151c9b8118a3a917dd6b0d3c75556dc170b",
      "parents": [
        "0cb3463f04e771869f481e2dd44f66419e850586"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 31 02:32:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:01 2006 -0800"
      },
      "message": "[PATCH] fs/namei.c: make lookup_hash() static\n\nAs announced, lookup_hash() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a536093a2f07007aa572e922752b7491b9ea8ff2",
      "tree": "72f1036242f91ac77fbeb6b41c633af76e3d7358",
      "parents": [
        "2cbbb3b59c3ccdc55ad0c924fb49e09a962bb517"
      ],
      "author": {
        "name": "Antonino A. Daplas",
        "email": "adaplas@gmail.com",
        "time": "Fri Mar 31 02:31:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] fbcon: Fix big-endian bogosity in slow_imageblit()\n\nThe monochrome-\u003ecolor expansion routine that handles bitmaps which have\n(widths % 8) !\u003d 0 (slow_imageblit) produces corrupt characters in big-endian.\nThis is caused by a bogus bit test in slow_imageblit().\n\nFix.\n\nThis patch may deserve to go to the stable tree.  The code has already been\nwell tested in little-endian machines.  It\u0027s only in big-endian where there is\nuncertainty and Herbert confirmed that this is the correct way to go.\n\nIt should not introduce regressions.\n\nSigned-off-by: Antonino Daplas \u003cadaplas@pol.net\u003e\nAcked-by: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ca017658b1f902c9bba2cc1017e301581f7728d",
      "tree": "9180b3923d4f6ef09c11d7f7386024f391508759",
      "parents": [
        "9b0e1c5dd2941aec566047e10a5cc929ca7f7d4f"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] backlight: Backlight Class Improvements\n\nBacklight class attributes are currently easy to implement incorrectly.\nMoving certain handling into the backlight core prevents this whilst at the\nsame time makes the drivers simpler and consistent.  The following changes are\nincluded:\n\nThe brightness attribute only sets and reads the brightness variable in the\nbacklight_properties structure.\n\nThe power attribute only sets and reads the power variable in the\nbacklight_properties structure.\n\nAny framebuffer blanking events change a variable fb_blank in the\nbacklight_properties structure.\n\nThe backlight driver has only two functions to implement.  One function is\ncalled when any of the above properties change (to update the backlight\nbrightness), the second is called to return the current backlight brightness\nvalue.  A new attribute \"actual_brightness\" is added to return this brightness\nas determined by the driver having combined all the above factors (and any\ndriver/device specific factors).\n\nAdditionally, the backlight core takes care of checking the maximum brightness\nis not exceeded and of turning off the backlight before device removal.\n\nThe corgi backlight driver is updated to reflect these changes.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3e7e241f8c5c87cc3685364feface081c9fa3648",
      "tree": "43ea46cfec4da31a505e93875feeac945bf906ce",
      "parents": [
        "92476d7fc0326a409ab1d3864a04093a6be9aca7"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Mar 31 02:31:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] dcache: Add helper d_hash_and_lookup\n\nIt is very common to hash a dentry and then to call lookup.  If we take fs\nspecific hash functions into account the full hash logic can get ugly.\nFurther full_name_hash as an inline function is almost 100 bytes on x86 so\nhaving a non-inline choice in some cases can measurably decrease code size.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92476d7fc0326a409ab1d3864a04093a6be9aca7",
      "tree": "ea50a5a31522492d9915e0763a7adc6ac87c4fbc",
      "parents": [
        "8c7904a00b06d2ee51149794b619e07369fcf9d4"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Mar 31 02:31:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] pidhash: Refactor the pid hash table\n\nSimplifies the code, reduces the need for 4 pid hash tables, and makes the\ncode more capable.\n\nIn the discussions I had with Oleg it was felt that to a large extent the\ncleanup itself justified the work.  With struct pid being dynamically\nallocated meant we could create the hash table entry when the pid was\nallocated and free the hash table entry when the pid was freed.  Instead of\nplaying with the hash lists when ever a process would attach or detach to a\nprocess.\n\nFor myself the fact that it gave what my previous task_ref patch gave for free\nwith simpler code was a big win.  The problem is that if you hold a reference\nto struct task_struct you lock in 10K of low memory.  If you do that in a user\ncontrollable way like /proc does, with an unprivileged but hostile user space\napplication with typical resource limits of 1000 fds and 100 processes I can\ntrigger the OOM killer by consuming all of low memory with task structs, on a\nmachine wight 1GB of low memory.\n\nIf I instead hold a reference to struct pid which holds a pointer to my\ntask_struct, I don\u0027t suffer from that problem because struct pid is 2 orders\nof magnitude smaller.  In fact struct pid is small enough that most other\nkernel data structures dwarf it, so simply limiting the number of referring\ndata structures is enough to prevent exhaustion of low memory.\n\nThis splits the current struct pid into two structures, struct pid and struct\npid_link, and reduces our number of hash tables from PIDTYPE_MAX to just one.\nstruct pid_link is the per process linkage into the hash tables and lives in\nstruct task_struct.  struct pid is given an indepedent lifetime, and holds\npointers to each of the pid types.\n\nThe independent life of struct pid simplifies attach_pid, and detach_pid,\nbecause we are always manipulating the list of pids and not the hash table.\nIn addition in giving struct pid an indpendent life it makes the concept much\nmore powerful.\n\nKernel data structures can now embed a struct pid * instead of a pid_t and\nnot suffer from pid wrap around problems or from keeping unnecessarily\nlarge amounts of memory allocated.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8c7904a00b06d2ee51149794b619e07369fcf9d4",
      "tree": "c995150254e17dfda6e1679c3249343586e178cb",
      "parents": [
        "e4e5d3fc80d26ed26ebe42907b224f08d7eccfbf"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Mar 31 02:31:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] task: RCU protect task-\u003eusage\n\nA big problem with rcu protected data structures that are also reference\ncounted is that you must jump through several hoops to increase the reference\ncount.  I think someone finally implemented atomic_inc_not_zero(\u0026count) to\nautomate the common case.  Unfortunately this means you must special case the\nrcu access case.\n\nWhen data structures are only visible via rcu in a manner that is not\ndetermined by the reference count on the object (i.e.  tasks are visible until\ntheir zombies are reaped) there is a much simpler technique we can employ.\nSimply delaying the decrement of the reference count until the rcu interval is\nover.\n\nWhat that means is that the proc code that looks up a task and later\nwants to sleep can now do:\n\nrcu_read_lock();\ntask \u003d find_task_by_pid(some_pid);\nif (task) {\n\tget_task_struct(task);\n}\nrcu_read_unlock();\n\nThe effect on the rest of the kernel is that put_task_struct becomes cheaper\nand immediate, and in the case where the task has been reaped it frees the\ntask immediate instead of unnecessarily waiting an until the rcu interval is\nover.\n\nCleanup of task_struct does not happen when its reference count drops to\nzero, instead cleanup happens when release_task is called.  Tasks can only\nbe looked up via rcu before release_task is called.  All rcu protected\nmembers of task_struct are freed by release_task.\n\nTherefore we can move call_rcu from put_task_struct into release_task.  And\nwe can modify release_task to not immediately release the reference count\nbut instead have it call put_task_struct from the function it gives to\ncall_rcu.\n\nThe end result:\n\n- get_task_struct is safe in an rcu context where we have just looked\n  up the task.\n\n- put_task_struct() simplifies into its old pre rcu self.\n\nThis reorganization also makes put_task_struct uncallable from modules as\nit is not exported but it does not appear to be called from any modules so\nthis should not be an issue, and is trivially fixed.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "158d9ebd19280582da172626ad3edda1a626dace",
      "tree": "5b821a6faf28d136b65ae30a56e7f731adc11c28",
      "parents": [
        "390e2ff07712468ce6600a43aa91e897b056ce12"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:31:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] resurrect __put_task_struct\n\nThis just got nuked in mainline.  Bring it back because Eric\u0027s patches use it.\n\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d425b274ba83ba4e7746a40446ec0ba3267de51f",
      "tree": "73d3342be7ba8ef8d18a8c3cc9fea6e026e2bffa",
      "parents": [
        "7c4bb1f9b3788309e1159961c606ba0bdf7ed382"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] sched: activate SCHED BATCH expired\n\nTo increase the strength of SCHED_BATCH as a scheduling hint we can\nactivate batch tasks on the expired array since by definition they are\nlatency insensitive tasks.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3dee386e14045484a6c41c8f03a263f9d79de740",
      "tree": "4b1643508ad94981e8d4deb5136d0a626e60932d",
      "parents": [
        "db1b1fefc2cecbff2e4214062fa8c680cb6e7b7d"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] sched: cleanup task_activated()\n\nThe activated flag in task_struct is used to track different sleep types and\nits usage is somewhat obfuscated.  Convert the variable to an enum with more\ndescriptive names without altering the function.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "db1b1fefc2cecbff2e4214062fa8c680cb6e7b7d",
      "tree": "ad8e68882f7c36216e16ab264101c5da96ccd5c9",
      "parents": [
        "3055addadbe9bfb2365006a1c13fd342a8d30d52"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Fri Mar 31 02:31:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] sched: reduce overhead of calc_load\n\nCurrently, count_active_tasks() calls both nr_running() \u0026\nnr_interruptible().  Each of these functions does a \"for_each_cpu\" \u0026 reads\nvalues from the runqueue of each cpu.  Although this is not a lot of\ninstructions, each runqueue may be located on different node.  Depending on\nthe architecture, a unique TLB entry may be required to access each\nrunqueue.\n\nSince there may be more runqueues than cpu TLB entries, a scan of all\nrunqueues can trash the TLB.  Each memory reference incurs a TLB miss \u0026\nrefill.\n\nIn addition, the runqueue cacheline that contains nr_running \u0026\nnr_uninterruptible may be evicted from the cache between the two passes.\nThis causes unnecessary cache misses.\n\nCombining nr_running() \u0026 nr_interruptible() into a single function\nsubstantially reduces the TLB \u0026 cache misses on large systems.  This should\nhave no measureable effect on smaller systems.\n\nOn a 128p IA64 system running a memory stress workload, the new function\nreduced the overhead of calc_load() from 605 usec/call to 324 usec/call.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "00362e33f65f1cb5d15e62ea5509520ce2770360",
      "tree": "02694b1416f3d98c4eebaeca7864c7fd3bad6fa0",
      "parents": [
        "2bfb646cdf348cb77c572f06d5b9d17ea205c7e2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 31 02:31:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] hrtimer: create generic sleeper\n\nThe removal of the data field in the hrtimer structure enforces the\nembedding of the timer into another data structure.  nanosleep now uses a\nprivate implementation of the most common used timer callback function\n(simple task wakeup).\n\nIn order to avoid the reimplentation of such functionality all over the\nplace a generic hrtimer_sleeper functionality is created.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2bfb646cdf348cb77c572f06d5b9d17ea205c7e2",
      "tree": "a26ed9aedb7af67d9421b14ad6cdd0714d91195f",
      "parents": [
        "03731fbdd09f8db4af86dbf437e3169fb1920d5e"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: Add IDE disk activity LED trigger\n\nAdd an LED trigger for IDE disk activity to the ide-disk driver.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c3bc9956ec52fb2c70f29aa894d8eec766116584",
      "tree": "c93aa56e6793cfa283d13a28cfa6c02a30f6c794",
      "parents": [
        "c72a1d608dd0eb3d553a08bfdf1c0041bebaa8a0"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] LED: add LED trigger tupport\n\nAdd support for LED triggers to the LED subsystem.  \"Triggers\" are events\nwhich change the state of an LED.  Two kinds of trigger are available, simple\nones which can be added to exising code with minimum disruption and complex\nones for implementing new or more complex functionality.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c72a1d608dd0eb3d553a08bfdf1c0041bebaa8a0",
      "tree": "56715f0e0af8a9c33725f3db2f14cf7f870ad46d",
      "parents": [
        "75c1d31d9ea71025b73430c696b727e8aa15872d"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] LED: add LED class\n\nAdd the foundations of a new LEDs subsystem.  This patch adds a class which\npresents LED devices within sysfs and allows their brightness to be\ncontrolled.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0ca07731e495584bd84dca15a0f065470d594ec4",
      "tree": "d043e8b64b43361051e1e6b40ee37382591825df",
      "parents": [
        "d32af0fe11b1618572389723e93cf33a4cc11c81"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 31 02:30:58 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] vt: add TIOCL_GETKMSGREDIRECT\n\nAdd TIOCL_GETKMSGREDIRECT needed by the userland suspend tool to get the\ncurrent value of kmsg_redirect from the kernel so that it can save it and\nrestore it after resume.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f79e2abb9bd452d97295f34376dedbec9686b986",
      "tree": "56b9998caa11983556e842fb9a8143d86d765fa3",
      "parents": [
        "d6dfd1310d3562698fd7c3c086f6c239f96394ac"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:30:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] sys_sync_file_range()\n\nRemove the recently-added LINUX_FADV_ASYNC_WRITE and LINUX_FADV_WRITE_WAIT\nfadvise() additions, do it in a new sys_sync_file_range() syscall instead.\nReasons:\n\n- It\u0027s more flexible.  Things which would require two or three syscalls with\n  fadvise() can be done in a single syscall.\n\n- Using fadvise() in this manner is something not covered by POSIX.\n\nThe patch wires up the syscall for x86.\n\nThe sycall is implemented in the new fs/sync.c.  The intention is that we can\nmove sys_fsync(), sys_fdatasync() and perhaps sys_sync() into there later.\n\nDocumentation for the syscall is in fs/sync.c.\n\nA test app (sync_file_range.c) is in\nhttp://www.zip.com.au/~akpm/linux/patches/stuff/ext3-tools.tar.gz.\n\nThe available-to-GPL-modules do_sync_file_range() is for knfsd: \"A COMMIT can\nsay NFS_DATA_SYNC or NFS_FILE_SYNC.  I can skip the -\u003efsync call for\nNFS_DATA_SYNC which is hopefully the more common.\"\n\nNote: the `async\u0027 writeout mode SYNC_FILE_RANGE_WRITE will turn synchronous if\nthe queue is congested.  This is trivial to fix: add a new flag bit, set\nwbc-\u003enonblocking.  But I\u0027m not sure that we want to expose implementation\ndetails down to that level.\n\nNote: it\u0027s notable that we can sync an fd which wasn\u0027t opened for writing.\nSame with fsync() and fdatasync()).\n\nNote: the code takes some care to handle attempts to sync file contents\noutside the 16TB offset on 32-bit machines.  It makes such attempts appear to\nsucceed, for best 32-bit/64-bit compatibility.  Perhaps it should make such\nrequests fail...\n\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "453823ba08ba762b3d58934b6dce75edce37169e",
      "tree": "80170bf784145621467ba83ea44d25dc3e5e5964",
      "parents": [
        "ee37df7877eeaa16d7761cce64854110a7c17ad9"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "minyard@acm.org",
        "time": "Fri Mar 31 02:30:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] IPMI: fix startup race condition\n\nMatt Domsch noticed a startup race with the IPMI kernel thread, it was\npossible (though extraordinarly unlikely) that a message could come in\nbefore the upper layer was ready to handle it.  This patch splits the\nstartup processing of an IPMI interface into two parts, one to get ready\nand one to actually start the processes to receive messages from the\ninterface.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Corey Minyard \u003cminyard@acm.org\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "68eef3b4791572ecb70249c7fb145bb3742dd899",
      "tree": "1f61fce839cec8d672ae06a423d46f0a6fcd924d",
      "parents": [
        "a2c348fe0117adced11e374329a5ea3f7c43cb41"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Fri Mar 31 02:30:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:53 2006 -0800"
      },
      "message": "[PATCH] Simplify proc/devices and fix early termination regression\n\nMake baby-simple the code for /proc/devices.  Based on the proven design\nfor /proc/interrupts.\n\nThis also fixes the early-termination regression 2.6.16 introduced, as\ndemonstrated by:\n\n    # dd if\u003d/proc/devices bs\u003d1\n    Character devices:\n      1 mem\n    27+0 records in\n    27+0 records out\n\nThis should also work (but is untested) when /proc/devices \u003e4096 bytes,\nwhich I believe is what the original 2.6.16 rewrite fixed.\n\n[akpm@osdl.org: cleanups, simplifications]\nSigned-off-by: Joe Korty \u003cjoe.korty@ccur.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3691c5199e8a4be1c7a91b5ab925db5feb866e19",
      "tree": "025210545818b080df13faa31c9266432579794c",
      "parents": [
        "5ce29646ebe352587e3b3160d599010c5da1b9dd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Mar 31 02:30:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] kill __init_timer_base in favor of boot_tvec_bases\n\nCommit a4a6198b80cf82eb8160603c98da218d1bd5e104:\n\t[PATCH] tvec_bases too large for per-cpu data\n\nintroduced \"struct tvec_t_base_s boot_tvec_bases\" which is visible at\ncompile time.  This means we can kill __init_timer_base and move\ntimer_base_s\u0027s content into tvec_t_base_s.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "93fac7041f082297b93655a0e49f659cd7520e40",
      "tree": "2d8f295087377d4ac0ceea49dd67bb682b04c749",
      "parents": [
        "9bf9e89c3d147ca8cf9622d2d053684fba77a464"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Mar 31 02:29:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] mm: schedule find_trylock_page() removal\n\nfind_trylock_page() is an odd interface in that it doesn\u0027t take a reference\nlike the others.  Now that XFS no longer uses it, and its last remaining\ncaller actually wants an elevated refcount, opencode that callsite and\nschedule find_trylock_page() for removal.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9bf9e89c3d147ca8cf9622d2d053684fba77a464",
      "tree": "e47d654953aea7226b47489d4ed6e94acd8014d8",
      "parents": [
        "b5ac5d7edb64b3ca1a489b30d95d62492a1f0b80"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Mar 31 02:29:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] migrate_pages_to() must be defined for the no swap case\n\nFix migrate_pages_to() definition.\n\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": "0500abf52109d09bf60d740dec2e41d6cf265688",
      "tree": "1f1b4479e5ec5643647c02547bebe162ea8245a7",
      "parents": [
        "48b192686dd20cb1576ae1d8ccd17a07971ef24a"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 31 02:29:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] drivers/mtd/: small cleanups\n\n- chips/sharp.c: make two needlessly global functions static\n\n- move some declarations to a header file where they belong to\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "48b192686dd20cb1576ae1d8ccd17a07971ef24a",
      "tree": "a4e5f5a74c230439fdbdc895f7874c68bf505565",
      "parents": [
        "040d79f906654d55c810313f29c6605593bf21c5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 31 02:29:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: drivers/mtd/\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "025be81e83043f20538dcced1e12c5f8d152fbdb",
      "tree": "b5789ee2931739c7066f5369ce699ef4f3fa758e",
      "parents": [
        "0803dbed7a23721d091639c9e173c0389dcd524a"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Fri Mar 31 02:27:06 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 31 02:27:06 2006 -0800"
      },
      "message": "[NET]: Allow skb headroom to be overridden\n\nPreviously we added NET_IP_ALIGN so an architecture can override the\npadding done to align headers. The next step is to allow the skb\nheadroom to be overridden.\n\nWe currently always reserve 16 bytes to grow into, meaning all DMAs\nstart 16 bytes into a cacheline. On ppc64 we really want DMA writes to\nstart on a cacheline boundary, so we increase that headroom to one\ncacheline.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "256414dee44eaa0983f5ab1a71877de23c4e9ce7",
      "tree": "770768cdd6ff6324f55fd305cb26109e89322fb0",
      "parents": [
        "63e8d9114dab88c101be2372cb1f83a4fe74d9c1",
        "55d8ca4f8094246da6e71889a4e04bfafaa78b10"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 30 14:29:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 30 14:29:20 2006 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  [PATCH] sata_mv: three bug fixes\n  [PATCH] libata: ata_dev_init_params() fixes\n  [PATCH] libata: Fix interesting use of \"extern\" and also some bracketing\n  [PATCH] libata: Simplex and other mode filtering logic\n  [PATCH] libata - ATA is both ATA and CFA\n  [PATCH] libata: Add -\u003eset_mode hook for odd drivers\n  [PATCH] libata: BMDMA handling updates\n  [PATCH] libata: kill trailing whitespace\n  [PATCH] libata: add FIXME above ata_dev_xfermask()\n  [PATCH] libata: cosmetic changes in ata_bus_softreset()\n  [PATCH] libata: kill E.D.D.\n"
    },
    {
      "commit": "5abc97aa25b2c41413b3a520faee83f2282d9f18",
      "tree": "4ba13ae0e91f15d02986df7cdca5e9455212d7d4",
      "parents": [
        "5274f052e7b3dbd81935772eb551dfd0325dfa9d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 30 15:16:46 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 30 12:28:18 2006 -0800"
      },
      "message": "[PATCH] splice: add support for SPLICE_F_MOVE flag\n\nThis enables the caller to migrate pages from one address space page\ncache to another.  In buzz word marketing, you can do zero-copy file\ncopies!\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5274f052e7b3dbd81935772eb551dfd0325dfa9d",
      "tree": "c79f813ec513660edb6f1e4a75cb366c6b84f53f",
      "parents": [
        "5d4fe2c1ce83c3e967ccc1ba3d580c1a5603a866"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 30 15:15:30 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 30 12:28:18 2006 -0800"
      },
      "message": "[PATCH] Introduce sys_splice() system call\n\nThis adds support for the sys_splice system call. Using a pipe as a\ntransport, it can connect to files or sockets (latter as output only).\n\nFrom the splice.c comments:\n\n   \"splice\": joining two ropes together by interweaving their strands.\n\n   This is the \"extended pipe\" functionality, where a pipe is used as\n   an arbitrary in-memory buffer. Think of a pipe as a small kernel\n   buffer that you can use to transfer data from one end to the other.\n\n   The traditional unix read/write is extended with a \"splice()\" operation\n   that transfers data buffers to or from a pipe buffer.\n\n   Named by Larry McVoy, original implementation from Linus, extended by\n   Jens to support splicing to files and fixing the initial implementation\n   bugs.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5444a6f405618706eddbe1605ef8533b1b655764",
      "tree": "9265a1e65563add47a9fe5f1ddae44d6dd0742e3",
      "parents": [
        "692785e798f341c057ff976c35a3d86ad5af8ac6"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Mar 27 18:58:20 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 29 19:30:28 2006 -0500"
      },
      "message": "[PATCH] libata: Simplex and other mode filtering logic\n\nAdd a field to the host_set called \u0027flags\u0027 (was host_set_flags changed\nto suit Jeff)\nAdd a simplex_claimed field so we can remember who owns the DMA channel\nAdd a -\u003emode_filter() hook to allow drivers to filter modes\nAdd docs for mode_filter and set_mode\nFilter according to simplex state\nFilter cable in core\n\nThis provides the needed framework to support all the mode rules found\nin the PATA world. The simplex filter deals with \u0027to spec\u0027 simplex DMA\nsystems found in older chips. The cable filter avoids duplicating the\nsame rules in each chip driver with PATA. Finally the mode filter is\nneccessary because drive/chip combinations have errata that forbid\ncertain modes with some drives or types of ATA object.\n\nDrive speed setup remains per channel for now and the filters now use\nthe framework Tejun put into place which cleans them up a lot from the\nolder libata-pata patches.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e35a9e01f2a504871e70576a9e11dbe4d8dee456",
      "tree": "4761c2d8b9d827d95cc531376e5c02666734ecf6",
      "parents": [
        "4e5ec5dba22ea509b1a004f9815751f0ffc815e5"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Mar 27 18:46:37 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 29 19:30:27 2006 -0500"
      },
      "message": "[PATCH] libata: Add -\u003eset_mode hook for odd drivers\n\nSome hardware doesn\u0027t want the usual mode setup logic running. This\nallows the hardware driver to replace it for special cases in the least\ninvasive way possible.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "4e5ec5dba22ea509b1a004f9815751f0ffc815e5",
      "tree": "d7387c3051e51a8bca060918f4a3a8a1a7962715",
      "parents": [
        "05c8e0ac5c37e9739a852b526afeecae97607cbb"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Mar 27 18:42:40 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 29 19:30:27 2006 -0500"
      },
      "message": "[PATCH] libata: BMDMA handling updates\n\nThis is the minimal patch set to enable the current code to be used with\na controller following SFF (ie any PATA and early SATA controllers)\nsafely without crashes if there is no BMDMA area or if BMDMA is not\nassigned by the BIOS for some reason.\n\nSimplex status is recorded but not acted upon in this change, this isn\u0027t\na problem with the current drivers as none of them are for simplex\nhardware. A following diff will deal with that.\n\nThe flags in the probe structure remain -\u003ehost_set_flags although Jeff\nasked me to rename them, simply because the rename would break the usual\nLinux rules that old code should break when there are changes. not\ncompile and run and then blow up/eat your computer/etc. Renaming this\nlater is a trivial exercise once a better name is chosen.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "56079431b6ba163df8ba26b3eccc82379f0c0ce4",
      "tree": "cdcfb1fdee55c567603ede007c7b0c91efe29b3a",
      "parents": [
        "68907dad58cd7ef11536e1db6baeb98b20af91b2"
      ],
      "author": {
        "name": "Denis Vlasenko",
        "email": "vda@ilport.com.ua",
        "time": "Wed Mar 29 15:57:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 29 15:57:29 2006 -0800"
      },
      "message": "[NET]: Deinline some larger functions from netdevice.h\n\nOn a allyesconfig\u0027ured kernel:\n\nSize  Uses Wasted Name and definition\n\u003d\u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n   95  162  12075 netif_wake_queue      include/linux/netdevice.h\n  129   86   9265 dev_kfree_skb_any     include/linux/netdevice.h\n  127   56   5885 netif_device_attach   include/linux/netdevice.h\n   73   86   4505 dev_kfree_skb_irq     include/linux/netdevice.h\n   46   60   1534 netif_device_detach   include/linux/netdevice.h\n  119   16   1485 __netif_rx_schedule   include/linux/netdevice.h\n  143    5    492 netif_rx_schedule     include/linux/netdevice.h\n   81    7    366 netif_schedule        include/linux/netdevice.h\n\nnetif_wake_queue is big because __netif_schedule is a big inline:\n\nstatic inline void __netif_schedule(struct net_device *dev)\n{\n        if (!test_and_set_bit(__LINK_STATE_SCHED, \u0026dev-\u003estate)) {\n                unsigned long flags;\n                struct softnet_data *sd;\n\n                local_irq_save(flags);\n                sd \u003d \u0026__get_cpu_var(softnet_data);\n                dev-\u003enext_sched \u003d sd-\u003eoutput_queue;\n                sd-\u003eoutput_queue \u003d dev;\n                raise_softirq_irqoff(NET_TX_SOFTIRQ);\n                local_irq_restore(flags);\n        }\n}\n\nstatic inline void netif_wake_queue(struct net_device *dev)\n{\n#ifdef CONFIG_NETPOLL_TRAP\n        if (netpoll_trap())\n                return;\n#endif\n        if (test_and_clear_bit(__LINK_STATE_XOFF, \u0026dev-\u003estate))\n                __netif_schedule(dev);\n}\n\nBy de-inlining __netif_schedule we are saving a lot of text\nat each callsite of netif_wake_queue and netif_schedule.\n__netif_rx_schedule is also big, and it makes more sense to keep\nboth of them out of line.\n\nPatch also deinlines dev_kfree_skb_any. We can deinline dev_kfree_skb_irq\ninstead... oh well.\n\nnetif_device_attach/detach are not hot paths, we can deinline them too.\n\nSigned-off-by: Denis Vlasenko \u003cvda@ilport.com.ua\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e02a4cabfcb9a999b74a2e2e6f13ffcb7ff2d606",
      "tree": "2f3db60be4c57eca2a4c3ab3f3122dcf1ec0c624",
      "parents": [
        "600511e86babe3727264a0883a3a264f6fb6caf5",
        "f3cab8a0b1a772dc8b055b7affa567a366627c9e"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 29 17:18:49 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 29 17:18:49 2006 -0500"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "76babde121d2ffef04ca692ce64ef9f8a9866086",
      "tree": "294923bbb4974258d86d223e35eee691abacdfb1",
      "parents": [
        "e71ac6032edf77a1e4a81f3e3b260807e94b37a5",
        "15e812ad849e142e3dfc984d33c4d8042389f148"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 29 11:28:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 29 11:28:30 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (67 commits)\n  [PATCH] powerpc: Remove oprofile spinlock backtrace code\n  [PATCH] powerpc: Add oprofile calltrace support to all powerpc cpus\n  [PATCH] powerpc: Add oprofile calltrace support\n  [PATCH] for_each_possible_cpu: ppc\n  [PATCH] for_each_possible_cpu: powerpc\n  [PATCH] lock PTE before updating it in 440/BookE page fault handler\n  [PATCH] powerpc: Kill _machine and hard-coded platform numbers\n  ppc: Fix compile error in arch/ppc/lib/strcase.c\n  [PATCH] git-powerpc: WARN was a dumb idea\n  [PATCH] powerpc: a couple of trivial compile warning fixes\n  powerpc: remove OCP references\n  powerpc: Make uImage default build output for MPC8540 ADS\n  powerpc: move math-emu over to arch/powerpc\n  powerpc: use memparse() for mem\u003d command line parsing\n  ppc: fix strncasecmp prototype\n  [PATCH] powerpc: make ISA floppies work again\n  [PATCH] powerpc: Fix some initcall return values\n  [PATCH] powerpc: Workaround for pSeries RTAS bug\n  [PATCH] spufs: fix __init/__exit annotations\n  [PATCH] powerpc: add hvc backend for rtas\n  ...\n"
    },
    {
      "commit": "a7e5328a06a2beee3a2bbfaf87ce2a7bbe937de1",
      "tree": "168102a80e9b98d19e8bf39156d35dacdb253c3d",
      "parents": [
        "4a2c7a7837da1b91468e50426066d988050e4d56"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:44 2006 -0800"
      },
      "message": "[PATCH] cleanup __exit_signal-\u003ecleanup_sighand path\n\nMove \u0027tsk-\u003esighand \u003d NULL\u0027 from cleanup_sighand() to __exit_signal().  This\nmakes the exit path more understandable and allows us to do\ncleanup_sighand() outside of -\u003esiglock protected section.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "47e65328a7b1cdfc4e3102e50d60faf94ebba7d3",
      "tree": "78e00a5321cca87767806a91e623e71b5c6637c7",
      "parents": [
        "88531f725bd52e37a7be726860e4ff3f09031d89"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:44 2006 -0800"
      },
      "message": "[PATCH] pids: kill PIDTYPE_TGID\n\nThis patch kills PIDTYPE_TGID pid_type thus saving one hash table in\nkernel/pid.c and speeding up subthreads create/destroy a bit.  It is also a\npreparation for the further tref/pids rework.\n\nThis patch adds \u0027struct list_head thread_group\u0027 to \u0027struct task_struct\u0027\ninstead.\n\nWe don\u0027t detach group leader from PIDTYPE_PID namespace until another\nthread inherits it\u0027s -\u003epid \u003d\u003d -\u003etgid, so we are safe wrt premature\nfree_pidmap(-\u003etgid) call.\n\nCurrently there are no users of find_task_by_pid_type(PIDTYPE_TGID).\nShould the need arise, we can use find_task_by_pid()-\u003egroup_leader.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-By: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a14c5c9da0b4c34b5be783403c54f0396fcfe77",
      "tree": "63e40e5761eb5327ae4f713b284c67128cb4d261",
      "parents": [
        "c81addc9d3a0ebff2155e0cd86f90820ab97147e"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:43 2006 -0800"
      },
      "message": "[PATCH] move __exit_signal() to kernel/exit.c\n\n__exit_signal() is private to release_task() now.  I think it is better to\nmake it static in kernel/exit.c and export flush_sigqueue() instead - this\nfunction is much more simple and straightforward.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c81addc9d3a0ebff2155e0cd86f90820ab97147e",
      "tree": "56eb3a50f71e7a0e2a0f0daef4ec097375b06f8d",
      "parents": [
        "29ff471234d53c7235db287bc52f91884c2977c6"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:43 2006 -0800"
      },
      "message": "[PATCH] rename __exit_sighand to cleanup_sighand\n\nCosmetic, rename __exit_sighand to cleanup_sighand and move it close to\ncopy_sighand().\n\nThis matches copy_signal/cleanup_signal naming, and I think it is easier to\nfollow.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6b3934ef52712ece50605dfc72e55d00c580831a",
      "tree": "5ec3c4f69a20880f75de6ff8d7d2f67d96328df3",
      "parents": [
        "7001510d0cbf51ad202dd2d0744f54104285cbb9"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] copy_process: cleanup bad_fork_cleanup_signal\n\n__exit_signal() does important cleanups atomically under -\u003esiglock.  It is\nalso called from copy_process\u0027s error path.  This is not good, for example we\ncan\u0027t move __unhash_process() under -\u003esiglock for that reason.\n\nWe should not mix these 2 paths, just look at ugly \u0027if (p-\u003esighand)\u0027 under\n\u0027bad_fork_cleanup_sighand:\u0027 label.  For copy_process() case it is sufficient\nto just backout copy_signal(), nothing more.\n\nAgain, nobody can see this task yet.  For CLONE_THREAD case we just decrement\nsignal-\u003ecount, otherwise nobody can see this -\u003esignal and we can free it\nlockless.\n\nThis patch assumes it is safe to do exit_thread_group_keys() without\ntasklist_lock.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7001510d0cbf51ad202dd2d0744f54104285cbb9",
      "tree": "1df2a6930c460c12026231634b86d14b153a4a86",
      "parents": [
        "a9e88e84b5245da0a1dadb6ccca70ae84e93ccf6"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] copy_process: cleanup bad_fork_cleanup_sighand\n\nThe only caller of exit_sighand(tsk) is copy_process\u0027s error path.  We can\ncall __exit_sighand() directly and kill exit_sighand().\n\nThis \u0027tsk\u0027 was not yet registered in pid_hash[] or init_task.tasks, it has no\nexternal references, nobody can see it, and\n\n\tIF (clone_flags \u0026 CLONE_SIGHAND)\n\t\tAt least \u0027current\u0027 has a reference to -\u003esighand, this\n\t\tmeans atomic_dec_and_test(sighand-\u003ecount) can\u0027t be true.\n\n\tELSE\n\t\tNobody can see this -\u003esighand, this means we can free it\n\t\twithout any locking.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f63ee72e0fb82e504a0489490babc7612c7cd6c2",
      "tree": "85167f8016d1f746135bf1777646a58c44376af1",
      "parents": [
        "aa1757f90bea3f598b6e5d04d922a6a60200f1da"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] introduce lock_task_sighand() helper\n\nAdd lock_task_sighand() helper and converts group_send_sig_info() to use\nit.  Hopefully we will have more users soon.\n\nThis patch also removes \u0027!sighand-\u003ecount\u0027 and \u0027!p-\u003eusage\u0027 checks, I think\nthey both are bogus, racy and unneeded (but probably it makes sense to\nrestore them as BUG_ON()s).\n\n-\u003esighand is cleared and it\u0027s -\u003ecount is decremented in release_task() with\nsighand-\u003esiglock held, so it is a bug to have \u0027!p-\u003eusage || !-\u003ecount\u0027 after\nwe already locked and verified it is the same.  On the other hand, an\nalready dead task without -\u003esighand can have a non-zero -\u003eusage due to\nptrace, for example.\n\nIf we read the stale value of -\u003esighand we must see the change after\nspin_lock(), because that change was done while holding that same old\n-\u003esighand.siglock.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aa1757f90bea3f598b6e5d04d922a6a60200f1da",
      "tree": "4f8f3804b2595031d0b84de7086dc28375290f0d",
      "parents": [
        "1f09f9749cdde4e69f95d62d96d2e03f50b3353c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:42 2006 -0800"
      },
      "message": "[PATCH] convert sighand_cache to use SLAB_DESTROY_BY_RCU\n\nThis patch borrows a clever Hugh\u0027s \u0027struct anon_vma\u0027 trick.\n\nWithout tasklist_lock held we can\u0027t trust task-\u003esighand until we locked it\nand re-checked that it is still the same.\n\nBut this means we don\u0027t need to defer \u0027kmem_cache_free(sighand)\u0027.  We can\nreturn the memory to slab immediately, all we need is to be sure that\nsighand-\u003esiglock can\u0027t dissapear inside rcu protected section.\n\nTo do so we need to initialize -\u003esiglock inside ctor function,\nSLAB_DESTROY_BY_RCU does the rest.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c7c6464117a02b0d54feb4ebeca4db70fa493678",
      "tree": "903498de6685d769631edbd7bce7609d07365946",
      "parents": [
        "73b9ebfe126a4a886ee46cbab637374d7024668a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:41 2006 -0800"
      },
      "message": "[PATCH] pidhash: don\u0027t use zero pids\n\ndaemonize() calls set_special_pids(1,1), while init and kernel threads spawned\nfrom init/main.c:init() run with 0,0 special pids.  This patch changes\nINIT_SIGNALS() so that that they run with -\u003epgrp \u003d\u003d -\u003esession \u003d\u003d 1 also.  This\npatch relies on fact that swapper\u0027s pid \u003d\u003d 1.\n\nNow we have no hashed zero pids in pid_hash[].\n\nUser-space visibible change is that now /sbin/init runs with (1,1) special\npids and becomes a session leader.\n\nQuoting Eric W. Biederman:\n\u003e\n\u003e daemonize consuming pids (1,1) then consumes pgrp 1.  So that when\n\u003e /sbin/init calls setsid() it thinks /sbin/init is a process group\n\u003e leader and setsid() fails.  So /sbin/init wants pgrp 1 session 1\n\u003e but doesn\u0027t get it.  I am pretty certain daemonize did not exist so\n\u003e /sbin/init got pgrp 1 session 1 in 2.4.\n\u003e\n\u003e That is the bug that is being fixed.\n\u003e\n\u003e This patch takes things one step farther and essentially calls\n\u003e setsid() for pid \u003d\u003d 1 before init is execed.  That is new behavior\n\u003e but it cleans up the kernel as we now do not need to support the\n\u003e case of a process without a process group or a session.\n\u003e\n\u003e The only process that could have possibly cared was /sbin/init\n\u003e and it already calls setsid() because it doesn\u0027t want that.\n\u003e\n\u003e If this was going to break anything noticeable the change in behavior\n\u003e from 2.4 to 2.6 would have already done that.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "73b9ebfe126a4a886ee46cbab637374d7024668a",
      "tree": "d7ba00d4ce76b49c1569334956cd196b35977a04",
      "parents": [
        "c97d98931ac52ef110b62d9b75c6a6f2bfbc1898"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:41 2006 -0800"
      },
      "message": "[PATCH] pidhash: don\u0027t count idle threads\n\nfork_idle() does unhash_process() just after copy_process().  Contrary,\nboot_cpu\u0027s idle thread explicitely registers itself for each pid_type with nr\n\u003d 0.\n\ncopy_process() already checks p-\u003epid !\u003d 0 before process_counts++, I think we\ncan just skip attach_pid() calls and job control inits for idle threads and\nkill unhash_process().  We don\u0027t need to cleanup -\u003eproc_dentry in fork_idle()\nbecause with this patch idle threads are never hashed in\nkernel/pid.c:pid_hash[].\n\nWe don\u0027t need to hash pid \u003d\u003d 0 in pidmap_init().  free_pidmap() is never\ncalled with pid \u003d\u003d 0 arg, so it will never be reused.  So it is still possible\nto use pid \u003d\u003d 0 in any PIDTYPE_xxx namespace from kernel/pid.c\u0027s POV.\n\nHowever with this patch we don\u0027t hash pid \u003d\u003d 0 for PIDTYPE_PID case.  We still\nhave have PIDTYPE_PGID/PIDTYPE_SID entries with pid \u003d\u003d 0: /sbin/init and\nkernel threads which don\u0027t call daemonize().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c97d98931ac52ef110b62d9b75c6a6f2bfbc1898",
      "tree": "f811f8b2862692c2eb7ee92e62e8f0afcfd37a2d",
      "parents": [
        "9b678ece42893b53aae5ed7cb8d7cb261cacb72c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:41 2006 -0800"
      },
      "message": "[PATCH] kill SET_LINKS/REMOVE_LINKS\n\nBoth SET_LINKS() and SET_LINKS/REMOVE_LINKS() have exactly one caller, and\nthese callers already check thread_group_leader().\n\nThis patch kills theese macros, they mix two different things: setting\nprocess\u0027s parent and registering it in init_task.tasks list.  Callers are\nupdated to do these actions by hand.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8fafabd86f1b75ed3cc6a6ffbe6c3e53e3d8457d",
      "tree": "3ae1a8fc44870ac3046213b11cad4aa8b3ce5f04",
      "parents": [
        "d799f03597cabc6112acb518fc8ab4487aa4f953"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Mar 28 16:11:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:41 2006 -0800"
      },
      "message": "[PATCH] remove add_parent()\u0027s parent argument\n\nadd_parent(p, parent) is always called with parent \u003d\u003d p-\u003eparent, and it makes\nno sense to do it differently.  This patch removes this argument.\n\nNo changes in affected .o files.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d73d65293e3e2de7e916a89c8da30be0948afab7",
      "tree": "62b0ca76e3099c927f2960856dd060b136a8ccef",
      "parents": [
        "652486fb84a07ed750f1c11639518f55808bf555"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Mar 28 16:11:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:40 2006 -0800"
      },
      "message": "[PATCH] pidhash: kill switch_exec_pids\n\nswitch_exec_pids is only called from de_thread by way of exec, and it is\nonly called when we are exec\u0027ing from a non thread group leader.\n\nCurrently switch_exec_pids gives the leader the pid of the thread and\nunhashes and rehashes all of the process groups.  The leader is already in\nthe EXIT_DEAD state so no one cares about it\u0027s pids.  The only concern for\nthe leader is that __unhash_process called from release_task will function\ncorrectly.  If we don\u0027t touch the leader at all we know that\n__unhash_process will work fine so there is no need to touch the leader.\n\nFor the task becomming the thread group leader, we just need to give it the\npid of the old thread group leader, add it to the task list, and attach it\nto the session and the process group of the thread group.\n\nCurrently de_thread is also adding the task to the task list which is just\nsilly.\n\nCurrently the only leader of __detach_pid besides detach_pid is\nswitch_exec_pids because of the ugly extra work that was being\nperformed.\n\nSo this patch removes switch_exec_pids because it is doing too much, it is\ncreating an unnecessary special case in pid.c, duing work duplicated in\nde_thread, and generally obscuring what it is going on.\n\nThe necessary work is added to de_thread, and it seems to be a little\nclearer there what is going on.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6c99c5cb94319a601b5ec5ee31c331f84755dd74",
      "tree": "dca4d96ee6aa1cfbc36b3eaf060b14278e2bd0d7",
      "parents": [
        "1434261c07bcebd5ef8b8a18f919fdee533b84e0"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Mar 28 16:11:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 18:36:40 2006 -0800"
      },
      "message": "[PATCH] Remove dead kill_sl prototype from sched.h\n\nThe kill_sl function doesn\u0027t exist in the kernel so a prototype is completely\nunnecessary.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bac30d1a78d0f11c613968fc8b351a91ed465386",
      "tree": "e52f3c876522a2f6047a6ec1c27df2e8a79486b8",
      "parents": [
        "e8222502ee6157e2713da9e0792c21f4ad458d50",
        "ca9ba4471c1203bb6e759b76e83167fec54fe590"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 29 13:24:50 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 29 13:24:50 2006 +1100"
      },
      "message": "Merge ../linux-2.6\n"
    },
    {
      "commit": "d4965b3e2ff94d0c7b7e6e7e9794b54950a2f4b9",
      "tree": "e96e7a3e02acacd4ee200592ec176b94802d11e7",
      "parents": [
        "9561b03dc360068504cb296d325fb84295f91fbb",
        "aee85fe8e8143d3f54d9e6d3c6cdd40ead563267"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 13:52:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 13:52:37 2006 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-serial\n\n* master.kernel.org:/home/rmk/linux-2.6-serial:\n  [SERIAL] Provide Cirrus EP93xx AMBA PL010 serial support.\n  [SERIAL] amba-pl010: allow platforms to specify modem control method\n  [SERIAL] Remove obsoleted au1x00_uart driver\n  [SERIAL] Small time UART configuration fix for AU1100 processor\n"
    },
    {
      "commit": "7baf398f12585ae77748716fa77113c1f1831153",
      "tree": "492361d848d3dfc33563a1bdf0d0f61b454aac82",
      "parents": [
        "78cd9e04e0acea4f622e84ca0c760c7eae0c6854",
        "206dc69b31ca05baac68c75b8ed2ba7dd857d273"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:25:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:25:44 2006 -0800"
      },
      "message": "Merge branch \u0027cfq-merge\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\n* \u0027cfq-merge\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block:\n  [BLOCK] cfq-iosched: seek and async performance fixes\n  [PATCH] ll_rw_blk: fix 80-col offender in put_io_context()\n  [PATCH] cfq-iosched: small cfq_choose_req() optimization\n  [PATCH] [BLOCK] cfq-iosched: change cfq io context linking from list to tree\n"
    },
    {
      "commit": "7f927fcc2fd1575d01efb4b76665975007945690",
      "tree": "fbb84689600ea512d7b52f9fc46db2d7d8d7c1fd",
      "parents": [
        "ded23ac62776b4360d88e9b0330792d2c57fdfdf"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Mar 28 01:56:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:08 2006 -0800"
      },
      "message": "[PATCH] Typo fixes\n\nFix a lot of typos.  Eyeballed by jmc@ in OpenBSD.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "910638ae7ed4be27d6af55f6c9b5bf54b838e78b",
      "tree": "5eda3cfd0e312c8b0916f6d5eb1cd98225e67891",
      "parents": [
        "60c904ae5bded8bb71f7bff7d63f2a6959d2a8e4"
      ],
      "author": {
        "name": "Matthias Gehre",
        "email": "M.Gehre@gmx.de",
        "time": "Tue Mar 28 01:56:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:07 2006 -0800"
      },
      "message": "[PATCH] Replace 0xff.. with correct DMA_xBIT_MASK\n\nReplace all occurences of 0xff..  in calls to function pci_set_dma_mask()\nand pci_set_consistant_dma_mask() with the corresponding DMA_xBIT_MASK from\nlinux/dma-mapping.h.\n\nSigned-off-by: Matthias Gehre \u003cM.Gehre@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b6f5d20b04dcbc3d888555522b90ba6d36c4106",
      "tree": "420f271eaef7d3def7d4433b151c3cb6d7a54770",
      "parents": [
        "99ac48f54a91d02140c497edc31dc57d4bc5c85d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Tue Mar 28 01:56:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:06 2006 -0800"
      },
      "message": "[PATCH] Make most file operations structs in fs/ const\n\nThis is a conversion to make the various file_operations structs in fs/\nconst.  Basically a regexp job, with a few manual fixups\n\nThe goal is both to increase correctness (harder to accidentally write to\nshared datastructures) and reducing the false sharing of cachelines with\nthings that get dirty in .data (while .rodata is nicely read only and thus\ncache clean)\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "99ac48f54a91d02140c497edc31dc57d4bc5c85d",
      "tree": "68719391694a6914191bdf73d2071875f7653f6f",
      "parents": [
        "ec1b9466cb4f6ae6d950bd67055d9410d1056d2a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Tue Mar 28 01:56:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:05 2006 -0800"
      },
      "message": "[PATCH] mark f_ops const in the inode\n\nMark the f_ops members of inodes as const, as well as fix the\nripple-through this causes by places that copy this f_ops and then \"do\nstuff\" with it.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0a945022778f100115d0cb6234eb28fc1b15ccaf",
      "tree": "85df4b5f7dd8bf59557091379c59b23b09115bf6",
      "parents": [
        "631d6747e1d877a4baa924cb373b8b9511a53e5e"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Mar 28 01:56:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:05 2006 -0800"
      },
      "message": "[PATCH] for_each_possible_cpu: fixes for generic part\n\nreplaces for_each_cpu with for_each_possible_cpu().\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": "631d6747e1d877a4baa924cb373b8b9511a53e5e",
      "tree": "5bb88d5c9716b9d9f398a6a1e8c8be4501671643",
      "parents": [
        "68c3431ae22912be580c68d3955ef46515582943"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Mar 28 01:56:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:04 2006 -0800"
      },
      "message": "[PATCH] for_each_possible_cpu: defines for_each_possible_cpu\n\nfor_each_cpu() is a for-loop over cpu_possible_map.  for_each_online_cpu is\nfor-loop cpu over cpu_online_map.  .....for_each_cpu() is not sufficiently\nexplicit and can lead to mistakes.\n\nThis patch adds for_each_possible_cpu() in preparation for the removal of\nfor_each_cpu().\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": "70674f95c0a2ea694d5c39f4e514f538a09be36f",
      "tree": "906d109fafc5eafff6a90c8d866e0525fdaf6783",
      "parents": [
        "b02389e98a7b64ad5cd4823740defa8821f30bbd"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Tue Mar 28 01:56:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:04 2006 -0800"
      },
      "message": "[PATCH] Optimize select/poll by putting small data sets on the stack\n\nOptimize select and poll by a using stack space for small fd sets\n\nThis brings back an old optimization from Linux 2.0.  Using the stack is\nfaster than kmalloc.  On a Intel P4 system it speeds up a select of a\nsingle pty fd by about 13% (~4000 cycles -\u003e ~3500)\n\nIt also saves memory because a daemon hanging in select or poll will\nusually save one or two less pages.  This can add up - e.g.  if you have 10\ndaemons blocking in poll/select you save 40KB of memory.\n\nI did a patch for this long ago, but it was never applied.  This version is\na reimplementation of the old patch that tries to be less intrusive.  I\nonly did the minimal changes needed for the stack allocation.\n\nThe cut off point before external memory is allocated is currently at\n832bytes.  The system calls always allocate this much memory on the stack.\n\nThese 832 bytes are divided into 256 bytes frontend data (for the select\nbitmaps of the pollfds) and the rest of the space for the wait queues used\nby the low level drivers.  There are some extreme cases where this won\u0027t\nwork out for select and it falls back to allocating memory too early -\nespecially with very sparse large select bitmaps - but the majority of\nprocesses who only have a small number of file descriptors should be ok.\n[TBD: 832/256 might not be the best split for select or poll]\n\nI suspect more optimizations might be possible, but they would be more\ncomplicated.  One way would be to cache the select/poll context over\nmultiple system calls because typically the input values should be similar.\n Problem is when to flush the file descriptors out though.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d266ab88938e49aa95f1965ee020df1b1d4c5761",
      "tree": "b31fff6d3f9d2008f4672b21c7f37c9e91888043",
      "parents": [
        "9edc91df07a227dbde9f98ee1097f554130993dc"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Mar 28 01:56:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:04 2006 -0800"
      },
      "message": "[PATCH] Small fixes backported to old IDE SiS driver\n\nSome quick backport bits from the libata PATA work to fix things found in\nthe sis driver.  The piix driver needs some fixes too but those are way to\nlarge and need someone working on old IDE with time to do them.\n\nThis patch fixes the case where random bits get loaded into SIS timing\nregisters according to the description of the correct behaviour from\nVojtech Pavlik.  It also adds the SiS5517 ATA16 chipset which is not\ncurrently supported by the driver.  Thanks to Conrad Harriss for loaning me\nthe machine with the 5517 chipset.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e51236092d2f7e40e87e88804b5b42e5f8025415",
      "tree": "9ac887d944107d86dad6a534bb0399b7cd60c15e",
      "parents": [
        "3ca1da4a82b169417b738a35783008c35da26466"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Tue Mar 28 01:56:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:03 2006 -0800"
      },
      "message": "[PATCH] remove relayfs_fs.h\n\nThis is obsolete.\n\nCc: Tom Zanussi \u003czanussi@us.ibm.com\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a28af471b8946de052a0eb0c080d5457be93f168",
      "tree": "e1a17db252831fc2cd7ff206f37b8232a34957e9",
      "parents": [
        "3b71797eff4352b4295919efc52de84f84d33d94"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Mar 28 01:56:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:03 2006 -0800"
      },
      "message": "[PATCH] fs/fat/: proper prototypes for two functions\n\nAdd proper prototypes for fat_cache_init() and fat_cache_destroy() in\nmsdos_fs.h.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "273577165cd206d2d6689ee4b18aa13de1ec4bde"
}
