)]}'
{
  "log": [
    {
      "commit": "a634cc10164d1c229fbeca33923e6a0ed939e894",
      "tree": "a2cdc5403127ca71b2cf378feb86d46745022ac1",
      "parents": [
        "7777fab989b5d006903188c966058ebcd2d6342a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 19 01:47:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:42 2007 -0700"
      },
      "message": "swsusp: introduce restore platform operations\n\nAt least on some machines it is necessary to prepare the ACPI firmware for the\nrestoration of the system memory state from the hibernation image if the\n\"platform\" mode of hibernation has been used.  Namely, in that cases we need\nto disable the GPEs before replacing the \"boot\" kernel with the \"frozen\"\nkernel (cf.  http://bugzilla.kernel.org/show_bug.cgi?id\u003d7887).  After the\nrestore they will be re-enabled by hibernation_ops-\u003efinish(), but if the\nrestore fails, they have to be re-enabled by the restore code explicitly.\n\nFor this purpose we can introduce two additional hibernation operations,\ncalled pre_restore() and restore_cleanup() and call them from the restore code\npath.  Still, they should be called if the \"platform\" mode of hibernation has\nbeen used, so we need to pass the information about the hibernation mode from\nthe \"frozen\" kernel to the \"boot\" kernel in the image header.\n\nApparently, we can\u0027t drop the disabling of GPEs before the restore because of\nBug #7887 .   We also can\u0027t do it unconditionally, because the GPEs wouldn\u0027t\nhave been enabled after a successful restore if the suspend had been done in\nthe \u0027shutdown\u0027 or \u0027reboot\u0027 mode.\n\nIn principle we could (and probably should) unconditionally disable the GPEs\nbefore each snapshot creation *and* before the restore, but then we\u0027d have to\nunconditionally enable them after the snapshot creation as well as after the\nrestore (or restore failure)   Still, for this purpose we\u0027d need to modify\nacpi_enter_sleep_state_prep() and acpi_leave_sleep_state() and we\u0027d have to\nintroduce some mechanism synchronizing the disablind/enabling of the GPEs with\nthe device drivers\u0027 .suspend()/.resume() routines and with\ndisable_/enable_nonboot_cpus().   However, this would have affected the\nsuspend (ie.  s2ram) code as well as the hibernation, which I\u0027d like to avoid\nin this patch series.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bb2d5ce16409efcdf94017a6b6fecd468226e29c",
      "tree": "12ce94a51c3aa8bffb22e1aa22f122268013fec4",
      "parents": [
        "79352894b28550ee0eee919149f57626ec1b3572"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Thu Jul 19 01:47:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:41 2007 -0700"
      },
      "message": "Remove alloc_zeroed_user_highpage()\n\nalloc_zeroed_user_highpage() has no in-tree users and it is not exported.\nAs it is not exported, it can simply be removed.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83c54070ee1a2d05c89793884bea1a03f2851ed4",
      "tree": "dc732f5a9b93fb7004ed23f551bd98b77cc580e0",
      "parents": [
        "d0217ac04ca6591841e5665f518e38064f4e65bd"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Jul 19 01:47:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:41 2007 -0700"
      },
      "message": "mm: fault feedback #2\n\nThis patch completes Linus\u0027s wish that the fault return codes be made into\nbit flags, which I agree makes everything nicer.  This requires requires\nall handle_mm_fault callers to be modified (possibly the modifications\nshould go further and do things like fault accounting in handle_mm_fault --\nhowever that would be for another patch).\n\n[akpm@linux-foundation.org: fix alpha build]\n[akpm@linux-foundation.org: fix s390 build]\n[akpm@linux-foundation.org: fix sparc build]\n[akpm@linux-foundation.org: fix sparc64 build]\n[akpm@linux-foundation.org: fix ia64 build]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Bryan Wu \u003cbryan.wu@analog.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nCc: Richard Curnow \u003crc@rc0.org.uk\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nAcked-by: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n[ Still apparently needs some ARM and PPC loving - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d0217ac04ca6591841e5665f518e38064f4e65bd",
      "tree": "d3309094bb734d34773f97d642593e298a5cfcfc",
      "parents": [
        "ed2f2f9b3ff8debdf512f7687b232c3c1d7d60d7"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Jul 19 01:47:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:41 2007 -0700"
      },
      "message": "mm: fault feedback #1\n\nChange -\u003efault prototype.  We now return an int, which contains\nVM_FAULT_xxx code in the low byte, and FAULT_RET_xxx code in the next byte.\n FAULT_RET_ code tells the VM whether a page was found, whether it has been\nlocked, and potentially other things.  This is not quite the way he wanted\nit yet, but that\u0027s changed in the next patch (which requires changes to\narch code).\n\nThis means we no longer set VM_CAN_INVALIDATE in the vma in order to say\nthat a page is locked which requires filemap_nopage to go away (because we\ncan no longer remain backward compatible without that flag), but we were\ngoing to do that anyway.\n\nstruct fault_data is renamed to struct vm_fault as Linus asked. address\nis now a void __user * that we should firmly encourage drivers not to use\nwithout really good reason.\n\nThe page is now returned via a page pointer in the vm_fault struct.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54cb8821de07f2ffcd28c380ce9b93d5784b40d7",
      "tree": "1de676534963d96af42863b20191bc9f80060dea",
      "parents": [
        "d00806b183152af6d24f46f0c33f14162ca1262a"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Jul 19 01:46:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:41 2007 -0700"
      },
      "message": "mm: merge populate and nopage into fault (fixes nonlinear)\n\nNonlinear mappings are (AFAIKS) simply a virtual memory concept that encodes\nthe virtual address -\u003e file offset differently from linear mappings.\n\n-\u003epopulate is a layering violation because the filesystem/pagecache code\nshould need to know anything about the virtual memory mapping.  The hitch here\nis that the -\u003enopage handler didn\u0027t pass down enough information (ie.  pgoff).\n But it is more logical to pass pgoff rather than have the -\u003enopage function\ncalculate it itself anyway (because that\u0027s a similar layering violation).\n\nHaving the populate handler install the pte itself is likewise a nasty thing\nto be doing.\n\nThis patch introduces a new fault handler that replaces -\u003enopage and\n-\u003epopulate and (later) -\u003enopfn.  Most of the old mechanism is still in place\nso there is a lot of duplication and nice cleanups that can be removed if\neveryone switches over.\n\nThe rationale for doing this in the first place is that nonlinear mappings are\nsubject to the pagefault vs invalidate/truncate race too, and it seemed stupid\nto duplicate the synchronisation logic rather than just consolidate the two.\n\nAfter this patch, MAP_NONBLOCK no longer sets up ptes for pages present in\npagecache.  Seems like a fringe functionality anyway.\n\nNOPAGE_REFAULT is removed.  This should be implemented with -\u003efault, and no\nusers have hit mainline yet.\n\n[akpm@linux-foundation.org: cleanup]\n[randy.dunlap@oracle.com: doc. fixes for readahead]\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d00806b183152af6d24f46f0c33f14162ca1262a",
      "tree": "36f829cf13d5410374a3f00b56ec0b1f8dc3ce3c",
      "parents": [
        "589f1e81bde732dd0b1bc5d01b6bddd4bcb4527b"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Jul 19 01:46:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:41 2007 -0700"
      },
      "message": "mm: fix fault vs invalidate race for linear mappings\n\nFix the race between invalidate_inode_pages and do_no_page.\n\nAndrea Arcangeli identified a subtle race between invalidation of pages from\npagecache with userspace mappings, and do_no_page.\n\nThe issue is that invalidation has to shoot down all mappings to the page,\nbefore it can be discarded from the pagecache.  Between shooting down ptes to\na particular page, and actually dropping the struct page from the pagecache,\ndo_no_page from any process might fault on that page and establish a new\nmapping to the page just before it gets discarded from the pagecache.\n\nThe most common case where such invalidation is used is in file truncation.\nThis case was catered for by doing a sort of open-coded seqlock between the\nfile\u0027s i_size, and its truncate_count.\n\nTruncation will decrease i_size, then increment truncate_count before\nunmapping userspace pages; do_no_page will read truncate_count, then find the\npage if it is within i_size, and then check truncate_count under the page\ntable lock and back out and retry if it had subsequently been changed (ptl\nwill serialise against unmapping, and ensure a potentially updated\ntruncate_count is actually visible).\n\nComplexity and documentation issues aside, the locking protocol fails in the\ncase where we would like to invalidate pagecache inside i_size.  do_no_page\ncan come in anytime and filemap_nopage is not aware of the invalidation in\nprogress (as it is when it is outside i_size).  The end result is that\ndangling (-\u003emapping \u003d\u003d NULL) pages that appear to be from a particular file\nmay be mapped into userspace with nonsense data.  Valid mappings to the same\nplace will see a different page.\n\nAndrea implemented two working fixes, one using a real seqlock, another using\na page-\u003eflags bit.  He also proposed using the page lock in do_no_page, but\nthat was initially considered too heavyweight.  However, it is not a global or\nper-file lock, and the page cacheline is modified in do_no_page to increment\n_count and _mapcount anyway, so a further modification should not be a large\nperformance hit.  Scalability is not an issue.\n\nThis patch implements this latter approach.  -\u003enopage implementations return\nwith the page locked if it is possible for their underlying file to be\ninvalidated (in that case, they must set a special vm_flags bit to indicate\nso).  do_no_page only unlocks the page after setting up the mapping\ncompletely.  invalidation is excluded because it holds the page lock during\ninvalidation of each page (and ensures that the page is not mapped while\nholding the lock).\n\nThis also allows significant simplifications in do_no_page, because we have\nthe page locked in the right place in the pagecache from the start.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce524c8360d60cc6d3f77986bd58c4448d2b1e3a",
      "tree": "70ab63183f7952e66e4627ff5c655871b8a8c41c",
      "parents": [
        "789c56b7f73218141b8004cb4f775eed8c514212",
        "f9e29228e6f2058e7b086115ecb7008630ebd832"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:33:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:33:45 2007 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:\n  eHEA: Fix bonding support\n  Blackfin ethernet driver: on chip ethernet MAC controller driver\n  fix wrong argument of tc35815_read_plat_dev_addr()\n  ARM/ETHER3: Handle multicast frames.\n  SAA9730: Handle multicast frames.\n  NI5010: Handle multicast frames.\n  NS83820: Handle multicast frames.\n  Fix RGMII-ID handling in gianfar\n  Fix Vitesse RGMII-ID support\n  Add phy-connection-type to gianfar nodes\n  Fix Vitesse 824x PHY interrupt acking\n  [PATCH] zd1211rw: Add ID for Siemens Gigaset USB Stick 54\n  [PATCH] zd1211rw: Add ID for Planex GW-US54GXS\n  [PATCH] Update version ipw2200 stamp to 1.2.2\n  [PATCH] ipw2200: Fix ipw_isr() comments error on shared IRQ\n  [PATCH] Fix ipw2200 set wrong power parameter causing firmware error\n  [PATCH] ipw2100: Fix `iwpriv set_power` error\n  [PATCH] softmac: Channel is listed twice in scan output\n"
    },
    {
      "commit": "29e7ee378e2327c808ede66dec4d4d964f4d375f",
      "tree": "4f904bfc485acd2ba5f7abdf43f57eeb8ce1dbdb",
      "parents": [
        "fc15bc817eecd5c13581adab2a182c07edededa0",
        "967e35dcc9ac194b4a6fad69a5a51f93d69bb0d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:28:08 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6:\n  sysfs: cosmetic clean up on node creation failure paths\n  sysfs: kill an extra put in sysfs_create_link() failure path\n  Driver core: check return code of sysfs_create_link()\n  HOWTO: Add the knwon_regression URI to the documentation\n  dev_vdbg() documentation\n  dev_vdbg(), available with -DVERBOSE_DEBUG\n  sysfs: make sysfs_init_inode() static\n  sysfs: fix sysfs root inode nlink accounting\n  Documentation fix devres.txt: lib/iomap.c -\u003e lib/devres.c\n  sysfs: avoid kmem_cache_free(NULL)\n  PM: remove deprecated dpm_runtime_* routines\n  PM: Remove deprecated sysfs files\n  Driver core: accept all valid action-strings in uevent-trigger\n  debugfs: remove rmdir() non-empty complaint\n"
    },
    {
      "commit": "fc15bc817eecd5c13581adab2a182c07edededa0",
      "tree": "4495364581afd49596e88882f58a2f1196bc512f",
      "parents": [
        "a8dcf12f9e8ba113251c04d602f1695d537fb142",
        "bc4c4f45acbe1f1528d654b0b1793f25c175bf8f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:27:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:27:50 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/uio-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/uio-2.6:\n  UIO: Hilscher CIF card driver\n  UIO: Documentation\n  UIO: Add the User IO core code\n"
    },
    {
      "commit": "a8dcf12f9e8ba113251c04d602f1695d537fb142",
      "tree": "1b36a19e34a8471e847bfea88dc66ee6683b7b07",
      "parents": [
        "d796e641a3eea2109381d6b0af533454f44916fa",
        "6924c55492c904695f13c552c461c2211f4fdd6a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:27:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 18:27:00 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-linus\u0027 of git://linux-nfs.org/~bfields/linux:\n  locks: fix vfs_test_lock() comment\n  locks: make posix_test_lock() interface more consistent\n  nfs: disable leases over NFS\n  gfs2: stop giving out non-cluster-coherent leases\n  locks: export setlease to filesystems\n  locks: provide a file lease method enabling cluster-coherent leases\n  locks: rename lease functions to reflect locks.c conventions\n  locks: share more common lease code\n  locks: clean up lease_alloc()\n  locks: convert an -EINVAL return to a BUG\n  leases: minor break_lease() comment clarification\n"
    },
    {
      "commit": "6d34ac199a4af5c678a3a8f3275aeb2586b72da3",
      "tree": "4ab6cffcfe993baa0afb2ab361a8c94ebfc3a444",
      "parents": [
        "370f6599e8bc03fd9fc6d1a1be00ae0c6373ca59"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri May 11 16:09:32 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jul 18 19:17:19 2007 -0400"
      },
      "message": "locks: make posix_test_lock() interface more consistent\n\nSince posix_test_lock(), like fcntl() and -\u003elock(), indicates absence or\npresence of a conflict lock by setting fl_type to, respectively, F_UNLCK\nor something other than F_UNLCK, the return value is no longer needed.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "4698afe8e3a725576366f86560a8a8242b21b9f7",
      "tree": "dfa312e0a6bce21a6f502b8b9cf0844281d094a2",
      "parents": [
        "f9ffed26d6f3e6ac9988947242821579d615fda7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jul 04 17:21:37 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jul 18 19:17:06 2007 -0400"
      },
      "message": "locks: export setlease to filesystems\n\nExport setlease so it can used by filesystems to implement their lease\nmethods.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "f9ffed26d6f3e6ac9988947242821579d615fda7",
      "tree": "f7dc037b9b1a90511751532be5ebc47c820ed407",
      "parents": [
        "a9933cea7a1d80dd9efae9f1acd857f5dce742b9"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Tue Nov 14 15:51:40 2006 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jul 18 19:14:47 2007 -0400"
      },
      "message": "locks: provide a file lease method enabling cluster-coherent leases\n\nCurrently leases are only kept locally, so there\u0027s no way for a distributed\nfilesystem to enforce them against multiple clients.  We\u0027re particularly\ninterested in the case of nfsd exporting a cluster filesystem, in which\ncase nfsd needs cluster-coherent leases in order to implement delegations\ncorrectly.\n\nAlso add some documentation.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "a9933cea7a1d80dd9efae9f1acd857f5dce742b9",
      "tree": "d931351589579ce141110350de9ff11154328399",
      "parents": [
        "6d5e8b05caf074ae5676ad9aaf92e381226a14a7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jun 07 17:09:49 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jul 18 19:14:12 2007 -0400"
      },
      "message": "locks: rename lease functions to reflect locks.c conventions\n\nWe\u0027ve been using the convention that vfs_foo is the function that calls\na filesystem-specific foo method if it exists, or falls back on a\ngeneric method if it doesn\u0027t; thus vfs_foo is what is called when some\nother part of the kernel (normally lockd or nfsd) wants to get a lock,\nwhereas foo is what filesystems call to use the underlying local\nfunctionality as part of their lock implementation.\n\nSo rename setlease to vfs_setlease (which will call a\nfilesystem-specific setlease after a later patch) and __setlease to\nsetlease.\n\nAlso, vfs_setlease need only be GPL-exported as long as it\u0027s only needed\nby lockd and nfsd.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "beafc54c4e2fba24e1ca45cdb7f79d9aa83e3db1",
      "tree": "9f2d4060e4ab29b1483124fa398be30f72696b34",
      "parents": [
        "5bae7ac9feba925fd0099057f6b23d7be80b7b41"
      ],
      "author": {
        "name": "Hans J. Koch",
        "email": "hjk@linutronix.de",
        "time": "Thu Dec 07 10:58:29 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 18 15:57:15 2007 -0700"
      },
      "message": "UIO: Add the User IO core code\n\nThis interface allows the ability to write the majority of a driver in\nuserspace with only a very small shell of a driver in the kernel itself.\nIt uses a char device and sysfs to interact with a userspace process to\nprocess interrupts and control memory accesses.\n\nSee the docbook documentation for more details on how to use this\ninterface.\n\nFrom: Hans J. Koch \u003chjk@linutronix.de\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Benedikt Spranger \u003cb.spranger@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "aebdc3b450a3febf7d7d00cd2235509055ec7082",
      "tree": "3e9d53857d610d2b7eab3e2cce3cae2220202f52",
      "parents": [
        "bc37e2830339cbfa42ac8579a7bf62fc4cdd360d"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Thu Jul 12 22:08:22 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 18 15:49:50 2007 -0700"
      },
      "message": "dev_vdbg(), available with -DVERBOSE_DEBUG\n\nThis defines a dev_vdbg() call, which is enabled with -DVERBOSE_DEBUG.\nWhen enabled, dev_vdbg() acts just like dev_dbg().  When disabled, it is a\nNOP ...  just like dev_dbg() without -DDEBUG.  The specific code was moved\nout of a USB patch, but lots of drivers have similar support.\n\nThat is, code can now be written to use an additional level of debug\noutput, selected at compile time.  Many driver authors have found this\nidiom to be very useful.  A typical usage model is for \"normal\" debug\nmessages to focus on fault paths and not be very \"chatty\", so that those\nmessages can be left on during normal operation without much of a\nperformance or syslog load.  On the other hand \"verbose\" messages would be\nnoisy enough that they wouldn\u0027t normally be enabled; they might even affect\ntimings enough to change system or driver behavior.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3f8df781fc5f9ee5253a54ba669e1c8872844b86",
      "tree": "fbca591c1538dfe4b812910dfaacfa8ed928307d",
      "parents": [
        "471d0558045fe35f8c5f291c1ee63815eb9c2dcd"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu Jul 12 16:57:22 2007 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 18 15:49:49 2007 -0700"
      },
      "message": "PM: remove deprecated dpm_runtime_* routines\n\nThis patch (as933) removes the deprecated dpm_runtime_suspend() and\ndpm_runtime_resume() routines from the PM core.  The only user of\nthose routines is the PCMCIA ds driver; local replacements are added.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "60a96a59569bab85571d0089682109bd3324e896",
      "tree": "b70d0174ddae44224ae5c8cea90231e659beff30",
      "parents": [
        "a6bb340da32f0abf76656be1619fb85150eef61b"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sun Jul 08 22:29:26 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 18 15:49:49 2007 -0700"
      },
      "message": "Driver core: accept all valid action-strings in uevent-trigger\n\nThis allows the uevent file to handle any type of uevent action to be\ntriggered by userspace instead of just the \"add\" uevent.\n\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7132ab7f6e0309bb8e0424e395ba149aee0c750e",
      "tree": "b947434ef6edefdbe683b4a6c5740ccec977bc4e",
      "parents": [
        "af2d940df2b60b15c271033d381c2f3ead655562"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Wed Jul 11 11:43:07 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jul 18 18:29:37 2007 -0400"
      },
      "message": "Fix RGMII-ID handling in gianfar\n\nThe TSEC/eTSEC can detect the interface to the PHY automatically,\nbut it isn\u0027t able to detect whether the RGMII connection needs internal\ndelay.  So we need to detect that change in the device tree, propagate\nit to the platform data, and then check it if we\u0027re in RGMII.  This fixes\na bug on the 8641D HPCN board where the Vitesse PHY doesn\u0027t use the delay\nfor RGMII.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\n"
    },
    {
      "commit": "5bae7ac9feba925fd0099057f6b23d7be80b7b41",
      "tree": "7ff78cda1d18a7b5eb5c6384815bb8f7b87cf5ce",
      "parents": [
        "97405fe26b2a4df7090884b086ee8224ace2a6d1",
        "587ca7619a150cef0ce0dd8fd08c367e502f0421"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 12:57:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 12:57:52 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6:\n  [AVR32] Initialize phy_mask for both macb devices\n  [AVR32] Fix atomic_add_unless() and atomic_sub_unless()\n  [AVR32] Correct misspelled CONFIG_BLK_DEV_INITRD variable.\n  [AVR32] Fix build error in parse_tag_rdimg()\n  [AVR32] Don\u0027t wire up macb0 unless SW6 is in default position\n  [AVR32] Wire up SSC platform device 0 as TX on ATSTK1000 board\n  [AVR32] Add Atmel SSC driver platform device to AT32AP architecture\n  [AVR32] Remove optimization of unaligned word loads\n  [AVR32] Make STK1000 mux settings configurable\n  [AVR32] CPU frequency scaling for AT32AP\n  [AVR32] Split SM device into PM, RTC, WDT and EIC\n  [AVR32] faster avr32 unaligned access\n"
    },
    {
      "commit": "3da86ee4f1884c70edbf76f61bfbbe028d2d1685",
      "tree": "be4216a6846b45cde1418706b357fca678a9f966",
      "parents": [
        "f3e26984f1794f3472a50f330c5561766faa477b"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Jul 18 20:06:04 2007 +0200"
      },
      "committer": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Jul 18 20:47:04 2007 +0200"
      },
      "message": "[AVR32] Fix atomic_add_unless() and atomic_sub_unless()\n\nThese functions depend on \"result\" being initalized to 0, but \"result\"\nis not included as an input constraint to the inline assembly block\nfollowing its initialization, only as an output constraint. Thus gcc\nthinks it doesn\u0027t need to initialize it, so result ends up undefined\nif the \"unless\" condition is true.\n\nThis fixes an oops in sunrpc where the faulty atomics caused\nrpciod_up() to not start the workqueue as it should.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\n"
    },
    {
      "commit": "9cf6cf58d06527fc5bc8e2965ddccdeca59ccee3",
      "tree": "f0f8b3eb7cd431cb8a3240981c1f54c8a04f736b",
      "parents": [
        "e122eaf69422e5d9ce93fc9786099098e3b9e1c4"
      ],
      "author": {
        "name": "Hans-Christian Egtvedt",
        "email": "hcegtvedt@atmel.com",
        "time": "Fri Jul 06 14:31:55 2007 +0200"
      },
      "committer": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Jul 18 20:45:52 2007 +0200"
      },
      "message": "[AVR32] Add Atmel SSC driver platform device to AT32AP architecture\n\nThis patch adds register definitions, clocks and IRQs to the platform devices.\n\nSigned-off-by: Hans-Christian Egtvedt \u003chcegtvedt@atmel.com\u003e\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\n"
    },
    {
      "commit": "e122eaf69422e5d9ce93fc9786099098e3b9e1c4",
      "tree": "2300448ae2e0ea454619de01c3ca59715d861fe8",
      "parents": [
        "a8e93ed8cb3d9aa22d192033009357526548c825"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Jun 20 15:29:15 2007 +0200"
      },
      "committer": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Jul 18 20:45:51 2007 +0200"
      },
      "message": "[AVR32] Remove optimization of unaligned word loads\n\nIf we let unaligned word loads bypass the generic unaligned handling,\ngcc may combine it with a swap.b instruction and turn it into a ldwsp\ninstruction, which does not work with unaligned addresses.\n\nRevert the optimization to prevent the RNDIS driver from crashing.\nHopefully we\u0027ll figure something out later (it may be better to do the\noptimization in gcc.)\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\n"
    },
    {
      "commit": "7a5b80590772c29bba1d54d3685622177d6fe39f",
      "tree": "d643198d28f6578febc2bcc0317a0681f951e62b",
      "parents": [
        "c6083cd61b5a64a1c73d1634744382f54cb99595"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Mon Jun 04 12:58:30 2007 +0200"
      },
      "committer": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Jul 18 20:45:51 2007 +0200"
      },
      "message": "[AVR32] Split SM device into PM, RTC, WDT and EIC\n\nSplit the SM platform device into separate platform devices for PM,\nRTC, WDT and EIC. This is more correct according to the documentation\nand allows us to simplify the code a little.\n\nAlso turn the EIC driver into a real platform driver.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nAcked-by: Hans-Christian Egtvedt \u003chcegtvedt@atmel.com\u003e\n"
    },
    {
      "commit": "c6083cd61b5a64a1c73d1634744382f54cb99595",
      "tree": "4ad4409a074a9de87a03bc2162d27e326f2c0498",
      "parents": [
        "8b4a40809e5330c9da5d20107d693d92d73b31dc"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Fri May 25 18:47:47 2007 -0700"
      },
      "committer": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Jul 18 20:45:50 2007 +0200"
      },
      "message": "[AVR32] faster avr32 unaligned access\n\nUse a more conventional implementation for unaligned access, and include\nan AT32AP-specific optimization:  the CPU will handle unaligned words.\n\nThe result is always faster and smaller for 8, 16, and 32 bit values.\nFor 64 bit quantities, it\u0027s presumably larger.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\n"
    },
    {
      "commit": "a267c0a887064720dfab5775a4f09b20b4f8ec37",
      "tree": "25de1f109ff6ef7f0967c22755604cc667944afd",
      "parents": [
        "d756d10e246a01515d07f8161181b8a14afba7cc",
        "97989ada7628da262eafb4bebce0a319c7cb0f5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 11:25:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 11:25:58 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://master.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb\n\n* \u0027master\u0027 of ssh://master.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (126 commits)\n  V4L/DVB (5847): Clean up schedule_timeout calls in cpia2 and ivtv code\n  V4L/DVB (5846): Clean up setting state and scheduling timeouts\n  V4L/DVB (5844): ivtv: add high volume debugging flag\n  V4L/DVB (5843): ivtv: fix missing signal_pending check.\n  V4L/DVB (5842): ivtv: Add locking to ensure stream setup is atomic.\n  V4L/DVB (5841): tveeprom: add support for Philips FQ1216LME MK3 tuner.\n  V4L/DVB (5840): fix dst and cx24123: tune() callback changed signess for delay\n  V4L/DVB (5838): dvb-core: Fix signedness warnings (gcc 4.1.1, kernel 2.6.22)\n  V4L/DVB (5837): stv0299: Fix signedness warning (gcc 4.1.1, kernel 2.6.22)\n  V4L/DVB (5836): dvb-ttpci: re-initialize aspect ratio and pan scan after arm crash\n  V4L/DVB (5835): saa7146/dvb-ttpci: Fix signedness warnings (gcc 4.1.1, kernel 2.6.22)\n  V4L/DVB (5834): dvb-core: fix signedness warnings and const stripping\n  V4L/DVB (5832): ir-common: optimize bit extract function\n  V4L/DVB (5831): stradis: use ARRAY_SIZE\n  V4L/DVB (5829): Firmware extract and loading for opera dvb-usb update\n  V4L/DVB (5828): Kconfig: Added GemTek USB radio and removed experimental dependency.\n  V4L/DVB (5826): Usbvision: video mux cleanup\n  V4L/DVB (5825): Alter the tuner type for the WinTV USB UK PAL model.\n  V4L/DVB (5824): Usbvision: Hauppauge WinTV USB SECAM_L fix\n  V4L/DVB (5821): Saa7134: add remote control support for LifeView FlyDVB-S LR300\n  ...\n"
    },
    {
      "commit": "d756d10e246a01515d07f8161181b8a14afba7cc",
      "tree": "de7336f2b4b596881468bf65cb2f2f88cedcde86",
      "parents": [
        "cdf4a6482dd4c739f8c1132c5a9356912911fec5",
        "e9f410b1c035b6e63f0b4c3d6cfe4298d6a04492"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:32:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:32:00 2007 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: extent macros cleanup\n  Fix compilation with EXT_DEBUG, also fix leXX_to_cpu conversions.\n  ext4: remove extra IS_RDONLY() check\n  ext4: Use is_power_of_2()\n  Use zero_user_page() in ext4 where possible\n  ext4: Remove 65000 subdirectory limit\n  ext4: Expand extra_inodes space per the s_{want,min}_extra_isize fields \n  ext4: Add nanosecond timestamps\n  jbd2: Move jbd2-debug file to debugfs\n  jbd2: Fix CONFIG_JBD_DEBUG ifdef to be CONFIG_JBD2_DEBUG\n  ext4: Set the journal JBD2_FEATURE_INCOMPAT_64BIT on large devices\n  ext4: Make extents code sanely handle on-disk corruption\n  ext4: copy i_flags to inode flags on write\n  ext4: Enable extents by default\n  Change on-disk format to support 2^15 uninitialized extents\n  write support for preallocated blocks\n  fallocate support in ext4\n  sys_fallocate() implementation on i386, x86_64 and powerpc\n"
    },
    {
      "commit": "cdf4a6482dd4c739f8c1132c5a9356912911fec5",
      "tree": "fa7b67c8ef5723d88cdc400f90a9b6e927e159a5",
      "parents": [
        "485cf925d8b7a6b3c62fe5f1e167f2d0d4edf32a",
        "add0b43ca67bf281ef7ac8ab47e9ee7b2d97a69f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:27:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:27:24 2007 -0700"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://git.infradead.org/~dedekind/ubi-2.6\n\n* \u0027upstream\u0027 of git://git.infradead.org/~dedekind/ubi-2.6: (28 commits)\n  UBI: fix compile warning\n  UBI: fix error handling in erase worker\n  UBI: fix comments\n  UBI: remove unneeded error checks\n  UBI: cleanup usage of try_module_get\n  UBI: fix overflow bug\n  UBI: bugfix in max_sqnum calculation\n  UBI: bugfix in sqnum calculation\n  UBI: fix signed-unsigned multiplication\n  UBI: fix bug in atomic_leb_change()\n  UBI: fix message\n  UBI: fix debugging stuff\n  UBI: bugfix in error path\n  UBI: use is_power_of_2()\n  UBI: fix freeing ubi-\u003evtbl while unloading\n  UBI: fix MAINTAINERS\n  UBI: bugfix in ubi_leb_change()\n  UBI: kill homegrown endian macros\n  UBI: cleanup ioctl handling\n  UBI: error path bugfix\n  ...\n"
    },
    {
      "commit": "804b4458943f14bf144d3c3ba50097ced9b27b29",
      "tree": "4c8b32cd168c3ded1215218b84545ec2361ca764",
      "parents": [
        "372280d2a3593e90d8849a5dc5676d2e9799e3a3"
      ],
      "author": {
        "name": "Oliver Endriss",
        "email": "o.endriss@gmx.de",
        "time": "Thu Jul 12 20:37:50 2007 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Wed Jul 18 14:24:44 2007 -0300"
      },
      "message": "V4L/DVB (5835): saa7146/dvb-ttpci: Fix signedness warnings (gcc 4.1.1, kernel 2.6.22)\n\nFix signedness warnings (gcc 4.1.1, kernel 2.6.22).\n\nSigned-off-by: Oliver Endriss \u003co.endriss@gmx.de\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "485cf925d8b7a6b3c62fe5f1e167f2d0d4edf32a",
      "tree": "57798f48123a62dd1801f039b676b06913e34e72",
      "parents": [
        "31bdc5dc7666aa2fe04c626cea30fe3c20cf481c",
        "3fd8f9e4b6c184d03d340bc86630f700de967fa8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:24:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:24:36 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (24 commits)\n  [NETFILTER]: xt_connlimit needs to depend on nf_conntrack\n  [NETFILTER]: ipt_iprange.h must #include \u003clinux/types.h\u003e\n  [IrDA]: Fix IrDA build failure\n  [ATM]: nicstar needs virt_to_bus\n  [NET]: move __dev_addr_discard adjacent to dev_addr_discard for readability\n  [NET]: merge dev_unicast_discard and dev_mc_discard into one\n  [NET]: move dev_mc_discard from dev_mcast.c to dev.c\n  [NETLINK]: negative groups in netlink_setsockopt\n  [PPPOL2TP]: Reset meta-data in xmit function\n  [PPPOL2TP]: Fix use-after-free\n  [PKT_SCHED]: Some typo fixes in net/sched/Kconfig\n  [XFRM]: Fix crash introduced by struct dst_entry reordering\n  [TCP]: remove unused argument to cong_avoid op\n  [ATM]: [idt77252] Rename CONFIG_ATM_IDT77252_SEND_IDLE to not resemble a Kconfig variable\n  [ATM]: [drivers] ioremap balanced with iounmap\n  [ATM]: [lanai] sram_test_word() must be __devinit\n  [ATM]: [nicstar] Replace C code with call to ARRAY_SIZE() macro.\n  [ATM]: Eliminate dead config variable CONFIG_BR2684_FAST_TRANS.\n  [ATM]: Replacing kmalloc/memset combination with kzalloc.\n  [NET]: gen_estimator deadlock fix\n  ...\n"
    },
    {
      "commit": "8218b0b2caecf4af55742e12e9986c15605bb197",
      "tree": "99285845e50f4b0f0a05466743a721955e26fc74",
      "parents": [
        "bebeaea0a54869b59b45ea22a93f325ce0369d61"
      ],
      "author": {
        "name": "Michael Krufky",
        "email": "mkrufky@linuxtv.org",
        "time": "Tue Jun 26 13:12:08 2007 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Wed Jul 18 14:24:23 2007 -0300"
      },
      "message": "V4L/DVB (5793): Tuner: remove hardware-specific info from public header\n\nMove internal structures and debug macros to drivers/media/video/tuner-driver.h\n\nSigned-off-by: Michael Krufky \u003cmkrufky@linuxtv.org\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "7a91a80a0d1a0a83a94e773ec6245b31b7c4ceed",
      "tree": "d524d57405944826d4a6c375af1a77bab22546a2",
      "parents": [
        "018ec5440b4994f560cdde78be6fb10d7ab370d7"
      ],
      "author": {
        "name": "Michael Krufky",
        "email": "mkrufky@linuxtv.org",
        "time": "Wed Jun 06 16:10:39 2007 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Wed Jul 18 14:24:02 2007 -0300"
      },
      "message": "V4L/DVB (5753): Tuner: create struct tuner_operations\n\nMove tuner callback function pointers out of struct tuner, into\nstruct tuner_operations.\n\nSigned-off-by: Michael Krufky \u003cmkrufky@linuxtv.org\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "be2b85a13543bbaf1a141b3a54f84c1e3b059e69",
      "tree": "9f44d2aa513237b5baab578a51f66a4d2e731b6c",
      "parents": [
        "9ee476a56c3ee119a02b6823659f5698b1241f04"
      ],
      "author": {
        "name": "Michael Krufky",
        "email": "mkrufky@linuxtv.org",
        "time": "Mon Jun 04 14:40:27 2007 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Wed Jul 18 14:23:54 2007 -0300"
      },
      "message": "V4L/DVB (5741): Tuner: add release callback\n\nIndividual tuner drivers are now allocating memory themselves for\ntheir own private data structures.  This changeset adds a release\ncallback to the tuner operations, so that newer drivers that may\nrequire more complex data structures may release this private data\nthemselves.\n\nSigned-off-by: Michael Krufky \u003cmkrufky@linuxtv.org\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "b208319993ceff7ebfcc6bb914fe94d29e48a891",
      "tree": "0a0697806b221c7711914dbdfe2bd3972c206b23",
      "parents": [
        "56584c9ea9a6dcd672f97ebfeebc4903e8b903bc"
      ],
      "author": {
        "name": "Michael Krufky",
        "email": "mkrufky@linuxtv.org",
        "time": "Tue May 29 22:54:06 2007 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Wed Jul 18 14:23:48 2007 -0300"
      },
      "message": "V4L/DVB (5719): Tuner: Move device-specific private data out of tuner struct\n\nCreate private data struct for device specific private data.\n\nSigned-off-by: Michael Krufky \u003cmkrufky@linuxtv.org\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "31bdc5dc7666aa2fe04c626cea30fe3c20cf481c",
      "tree": "a1a78a39379e081e9982c3273a71b4e93e8c1fd0",
      "parents": [
        "5cc97bf2d8eaa6cab60727c3eba3e85e29062669",
        "a5f8967e171a6fa27da8e6d06d3ef85f7fed43c1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:23:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 10:23:37 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  [SPARC64]: Set vio-\u003edesc_buf to NULL after freeing.\n  [SPARC]: Mark sparc and sparc64 as not having virt_to_bus\n  [SPARC64]: Fix reset handling in VNET driver.\n  [SPARC64]: Handle reset events in vio_link_state_change().\n  [SPARC64]: Handle LDC resets properly in domain-services driver.\n  [SPARC64]: Massively simplify VIO device layer and support hot add/remove.\n  [SPARC64]: Simplify VNET probing.\n  [SPARC64]: Simplify VDC device probing.\n  [SPARC64]: Add basic infrastructure for MD add/remove notification.\n"
    },
    {
      "commit": "8573a9e6a8ed724b7e3074dc8762d4117ed0b3aa",
      "tree": "c84aa587103700a3db61f271dfb7c0b99aa37492",
      "parents": [
        "8b4a40809e5330c9da5d20107d693d92d73b31dc"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Apr 08 01:09:11 2007 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Wed Jul 18 14:23:11 2007 -0300"
      },
      "message": "V4L/DVB (5563a): Add experimental support for tea5761 tuner\n\nThis driver were made based on tea5761 specs.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "60223a326fc8fa6e90e2c3fd28ae6de4a311d731",
      "tree": "cf4e667a56402b846488373bfaf5bf840395e219",
      "parents": [
        "3e2b8fbeec8f005672f2a2e862fb9c26a0bafedc"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:07 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:45 2007 -0700"
      },
      "message": "xen: Place vcpu_info structure into per-cpu memory\n\nAn experimental patch for Xen allows guests to place their vcpu_info\nstructs anywhere.  We try to use this to place the vcpu_info into the\nPDA, which allows direct access.\n\nIf this works, then switch to using direct access operations for\nirq_enable, disable, save_fl and restore_fl.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Keir Fraser \u003ckeir@xensource.com\u003e\n"
    },
    {
      "commit": "9f27ee595038653ddf8bca871200d39247d6f4fc",
      "tree": "602b4fe83ccfd6cb65b146ed80e84baec0fb6cb7",
      "parents": [
        "4bac07c993d03434ea902d3d4290d9e45944b66c"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:06 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:45 2007 -0700"
      },
      "message": "xen: add virtual block device driver.\n\nThe block device frontend driver allows the kernel to access block\ndevices exported exported by a virtual machine containing a physical\nblock device driver.\n\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "4bac07c993d03434ea902d3d4290d9e45944b66c",
      "tree": "1930a1d8c23d3968d4644edda50791ff390bfe93",
      "parents": [
        "ad9a86121f5a374b48ce2924f8a9d7e94a04db27"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:06 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:45 2007 -0700"
      },
      "message": "xen: add the Xenbus sysfs and virtual device hotplug driver\n\nThis communicates with the machine control software via a registry\nresiding in a controlling virtual machine. This allows dynamic\ncreation, destruction and modification of virtual device\nconfigurations (network devices, block devices and CPUS, to name some\nexamples).\n\n[ Greg, would you mind giving this a review?  Thanks -J ]\n\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\n"
    },
    {
      "commit": "ad9a86121f5a374b48ce2924f8a9d7e94a04db27",
      "tree": "c14af462957ce9ee6de3e4537e15879c25a679aa",
      "parents": [
        "b536b4b9623084d86f2b1f19cb44a2d6d74f00bf"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:06 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:44 2007 -0700"
      },
      "message": "xen: Add grant table support\n\nAdd Xen \u0027grant table\u0027 driver which allows granting of access to\nselected local memory pages by other virtual machines and,\nsymmetrically, the mapping of remote memory pages which other virtual\nmachines have granted access to.\n\nThis driver is a prerequisite for many of the Xen virtual device\ndrivers, which grant the \u0027device driver domain\u0027 restricted and\ntemporary access to only those memory pages that are currently\ninvolved in I/O operations.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\n"
    },
    {
      "commit": "b536b4b9623084d86f2b1f19cb44a2d6d74f00bf",
      "tree": "86c1981309dbd8b9bf120d4ddba50abd105af89a",
      "parents": [
        "8b84ad942b534f8faeb34b68f0f7277ea375fed0"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:06 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:44 2007 -0700"
      },
      "message": "xen: use the hvc console infrastructure for Xen console\n\nImplement a Xen back-end for hvc console.\n\n* * *\nAdd early printk support via hvc console, enable using\n\"earlyprintk\u003dxen\" on the kernel command line.\n\nFrom: Gerd Hoffmann \u003ckraxel@suse.de\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Olof Johansson \u003colof@lixom.net\u003e\n"
    },
    {
      "commit": "f87e4cac4f4e940b328d3deb5b53e642e3881f43",
      "tree": "7409f86561e5f97459378abd2ae21e9a5c82bfea",
      "parents": [
        "ab55028886dd1dd54585f22bf19a00eb23869340"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:06 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:44 2007 -0700"
      },
      "message": "xen: SMP guest support\n\nThis is a fairly straightforward Xen implementation of smp_ops.\n\nXen has its own IPI mechanisms, and has no dependency on any\nAPIC-based IPI.  The smp_ops hooks and the flush_tlb_others pv_op\nallow a Xen guest to avoid all APIC code in arch/i386 (the only apic\noperation is a single apic_read for the apic version number).\n\nOne subtle point which needs to be addressed is unpinning pagetables\nwhen another cpu may have a lazy tlb reference to the pagetable. Xen\nwill not allow an in-use pagetable to be unpinned, so we must find any\nother cpus with a reference to the pagetable and get them to shoot\ndown their references.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "c85b04c3749507546f6d5868976e4793e35c2ec0",
      "tree": "77ad99f3850d11dab3df2b8b7e1998754d72d8bd",
      "parents": [
        "e738fca8d7dffec30eeee231c38f128eed56c8c8"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:05 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:43 2007 -0700"
      },
      "message": "xen: add pinned page flag\n\nAdd a new definition for PG_owner_priv_1 to define PG_pinned on Xen\npagetable pages.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\n"
    },
    {
      "commit": "e46cdb66c8fc1c8d61cfae0f219ff47ac4b9d531",
      "tree": "7d9cdfef91e69fcfcba762a5a70cd58900308a5b",
      "parents": [
        "3b827c1b3aadf3adb4c602d19863f2d24e7cbc18"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:05 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:42 2007 -0700"
      },
      "message": "xen: event channels\n\nXen implements interrupts in terms of event channels.  Each guest\ndomain gets 1024 event channels which can be used for a variety of\npurposes, such as Xen timer events, inter-domain events,\ninter-processor events (IPI) or for real hardware IRQs.\n\nWithin the kernel, we map the event channels to IRQs, and implement\nthe whole interrupt handling using a Xen irq_chip.\n\nRather than setting NR_IRQ to 1024 under PARAVIRT in order to\naccomodate Xen, we create a dynamic mapping between event channels and\nIRQs.  Ideally, Linux will eventually move towards dynamically\nallocating per-irq structures, and we can use a 1:1 mapping between\nevent channels and irqs.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "5ead97c84fa7d63a6a7a2f4e9f18f452bd109045",
      "tree": "26f6bc55dce0f119f7d3c8d6b40d2f287601db36",
      "parents": [
        "a42089dd358a7673a0a23126589a9029e57c2049"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:04 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:42 2007 -0700"
      },
      "message": "xen: Core Xen implementation\n\nThis patch is a rollup of all the core pieces of the Xen\nimplementation, including:\n - booting and setup\n - pagetable setup\n - privileged instructions\n - segmentation\n - interrupt flags\n - upcalls\n - multicall batching\n\nBOOTING AND SETUP\n\nThe vmlinux image is decorated with ELF notes which tell the Xen\ndomain builder what the kernel\u0027s requirements are; the domain builder\nthen constructs the address space accordingly and starts the kernel.\n\nXen has its own entrypoint for the kernel (contained in an ELF note).\nThe ELF notes are set up by xen-head.S, which is included into head.S.\nIn principle it could be linked separately, but it seems to provoke\nlots of binutils bugs.\n\nBecause the domain builder starts the kernel in a fairly sane state\n(32-bit protected mode, paging enabled, flat segments set up), there\u0027s\nnot a lot of setup needed before starting the kernel proper.  The main\nsteps are:\n  1. Install the Xen paravirt_ops, which is simply a matter of a\n     structure assignment.\n  2. Set init_mm to use the Xen-supplied pagetables (analogous to the\n     head.S generated pagetables in a native boot).\n  3. Reserve address space for Xen, since it takes a chunk at the top\n     of the address space for its own use.\n  4. Call start_kernel()\n\nPAGETABLE SETUP\n\nOnce we hit the main kernel boot sequence, it will end up calling back\nvia paravirt_ops to set up various pieces of Xen specific state.  One\nof the critical things which requires a bit of extra care is the\nconstruction of the initial init_mm pagetable.  Because Xen places\ntight constraints on pagetables (an active pagetable must always be\nvalid, and must always be mapped read-only to the guest domain), we\nneed to be careful when constructing the new pagetable to keep these\nconstraints in mind.  It turns out that the easiest way to do this is\nuse the initial Xen-provided pagetable as a template, and then just\ninsert new mappings for memory where a mapping doesn\u0027t already exist.\n\nThis means that during pagetable setup, it uses a special version of\nxen_set_pte which ignores any attempt to remap a read-only page as\nread-write (since Xen will map its own initial pagetable as RO), but\nlets other changes to the ptes happen, so that things like NX are set\nproperly.\n\nPRIVILEGED INSTRUCTIONS AND SEGMENTATION\n\nWhen the kernel runs under Xen, it runs in ring 1 rather than ring 0.\nThis means that it is more privileged than user-mode in ring 3, but it\nstill can\u0027t run privileged instructions directly.  Non-performance\ncritical instructions are dealt with by taking a privilege exception\nand trapping into the hypervisor and emulating the instruction, but\nmore performance-critical instructions have their own specific\nparavirt_ops.  In many cases we can avoid having to do any hypercalls\nfor these instructions, or the Xen implementation is quite different\nfrom the normal native version.\n\nThe privileged instructions fall into the broad classes of:\n  Segmentation: setting up the GDT and the GDT entries, LDT,\n     TLS and so on.  Xen doesn\u0027t allow the GDT to be directly\n     modified; all GDT updates are done via hypercalls where the new\n     entries can be validated.  This is important because Xen uses\n     segment limits to prevent the guest kernel from damaging the\n     hypervisor itself.\n  Traps and exceptions: Xen uses a special format for trap entrypoints,\n     so when the kernel wants to set an IDT entry, it needs to be\n     converted to the form Xen expects.  Xen sets int 0x80 up specially\n     so that the trap goes straight from userspace into the guest kernel\n     without going via the hypervisor.  sysenter isn\u0027t supported.\n  Kernel stack: The esp0 entry is extracted from the tss and provided to\n     Xen.\n  TLB operations: the various TLB calls are mapped into corresponding\n     Xen hypercalls.\n  Control registers: all the control registers are privileged.  The most\n     important is cr3, which points to the base of the current pagetable,\n     and we handle it specially.\n\nAnother instruction we treat specially is CPUID, even though its not\nprivileged.  We want to control what CPU features are visible to the\nrest of the kernel, and so CPUID ends up going into a paravirt_op.\nXen implements this mainly to disable the ACPI and APIC subsystems.\n\nINTERRUPT FLAGS\n\nXen maintains its own separate flag for masking events, which is\ncontained within the per-cpu vcpu_info structure.  Because the guest\nkernel runs in ring 1 and not 0, the IF flag in EFLAGS is completely\nignored (and must be, because even if a guest domain disables\ninterrupts for itself, it can\u0027t disable them overall).\n\n(A note on terminology: \"events\" and interrupts are effectively\nsynonymous.  However, rather than using an \"enable flag\", Xen uses a\n\"mask flag\", which blocks event delivery when it is non-zero.)\n\nThere are paravirt_ops for each of cli/sti/save_fl/restore_fl, which\nare implemented to manage the Xen event mask state.  The only thing\nworth noting is that when events are unmasked, we need to explicitly\nsee if there\u0027s a pending event and call into the hypervisor to make\nsure it gets delivered.\n\nUPCALLS\n\nXen needs a couple of upcall (or callback) functions to be implemented\nby each guest.  One is the event upcalls, which is how events\n(interrupts, effectively) are delivered to the guests.  The other is\nthe failsafe callback, which is used to report errors in either\nreloading a segment register, or caused by iret.  These are\nimplemented in i386/kernel/entry.S so they can jump into the normal\niret_exc path when necessary.\n\nMULTICALL BATCHING\n\nXen provides a multicall mechanism, which allows multiple hypercalls\nto be issued at once in order to mitigate the cost of trapping into\nthe hypervisor.  This is particularly useful for context switches,\nsince the 4-5 hypercalls they would normally need (reload cr3, update\nTLS, maybe update LDT) can be reduced to one.  This patch implements a\ngeneric batching mechanism for hypercalls, which gets used in many\nplaces in the Xen code.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Ian Pratt \u003cian.pratt@xensource.com\u003e\nCc: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nCc: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "a42089dd358a7673a0a23126589a9029e57c2049",
      "tree": "aa076610832f5cdb0ee209c42ea7e40d54534ef4",
      "parents": [
        "24037a8b69dbf15bfed8fd42a2a2e442d7b0395b"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:04 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:42 2007 -0700"
      },
      "message": "xen: Add Xen interface header files\n\nAdd Xen interface header files. These are taken fairly directly from\nthe Xen tree, but somewhat rearranged to suit the kernel\u0027s conventions.\n\nDefine macros and inline functions for doing hypercalls into the\nhypervisor.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\n"
    },
    {
      "commit": "688340ea34c61ad12473ccd837325b59aada9a93",
      "tree": "2862f4dca8d47fc4e6ecfaba2243d813344e3cd2",
      "parents": [
        "d572929cdd12a60732c3522f7cf011bfa29165cf"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:04 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:42 2007 -0700"
      },
      "message": "Add a sched_clock paravirt_op\n\nThe tsc-based get_scheduled_cycles interface is not a good match for\nXen\u0027s runstate accounting, which reports everything in nanoseconds.\n\nThis patch replaces this interface with a sched_clock interface, which\nmatches both Xen and VMI\u0027s requirements.\n\nIn order to do this, we:\n   1. replace get_scheduled_cycles with sched_clock\n   2. hoist cycles_2_ns into a common header\n   3. update vmi accordingly\n\nOne thing to note: because sched_clock is implemented as a weak\nfunction in kernel/sched.c, we must define a real function in order to\noverride this weak binding.  This means the usual paravirt_ops\ntechnique of using an inline function won\u0027t work in this case.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Dan Hecht \u003cdhecht@vmware.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\n"
    },
    {
      "commit": "d572929cdd12a60732c3522f7cf011bfa29165cf",
      "tree": "4b1c351d7574b679f2d250483cffcedf3fdfa9be",
      "parents": [
        "5f4352fbffd6c45123dbce9e195efd54df4e177e"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:04 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:42 2007 -0700"
      },
      "message": "paravirt: helper to disable all IO space\n\nIn a virtual environment, device drivers such as legacy IDE will waste\nquite a lot of time probing for their devices which will never appear.\nThis helper function allows a paravirt implementation to lay claim to\nthe whole iomem and ioport space, thereby disabling all device drivers\ntrying to claim IO resources.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "5f4352fbffd6c45123dbce9e195efd54df4e177e",
      "tree": "e2a0316e2f2d22c266e7cae3015ddc0f2f77f64f",
      "parents": [
        "bdef40a6af64a0140a65df49bf504124d57094a9"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:04 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:41 2007 -0700"
      },
      "message": "Allocate and free vmalloc areas\n\nAllocate/release a chunk of vmalloc address space:\n alloc_vm_area reserves a chunk of address space, and makes sure all\n the pagetables are constructed for that address range - but no pages.\n\n free_vm_area releases the address space range.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: \"Jan Beulich\" \u003cJBeulich@novell.com\u003e\nCc: \"Andi Kleen\" \u003cak@muc.de\u003e\n"
    },
    {
      "commit": "c70df74376c1e29a04e07e23dd3f4c384d6166dd",
      "tree": "e85b195f67547e9e8bc914ce9426b6969a1ec60a",
      "parents": [
        "724faa89ccd8fae65f3d41a47b0e1034cf07918b"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:41 2007 -0700"
      },
      "message": "paravirt: make siblingmap functions visible\n\nParavirt implementations need to set the sibling map on new cpus.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\n"
    },
    {
      "commit": "724faa89ccd8fae65f3d41a47b0e1034cf07918b",
      "tree": "6e720d0d35ac99eae1bc8f3e8bc304f4f144d6b5",
      "parents": [
        "53787013248f52af81d99f63454e5a5cf34d6f12"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:41 2007 -0700"
      },
      "message": "paravirt: unstatic smp_store_cpu_info\n\nParavirt implementations need to store cpu info when bringing up cpus.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\n"
    },
    {
      "commit": "53787013248f52af81d99f63454e5a5cf34d6f12",
      "tree": "3a56e7439d8ee407af34899501ab663ee8202054",
      "parents": [
        "03f0c2f950f813e3b26c56ed041ba170479d479c"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:41 2007 -0700"
      },
      "message": "paravirt: unstatic leave_mm\n\nMake globally leave_mm visible, specifically so that Xen can use it to\nshoot-down lazy uses of cr3.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\n"
    },
    {
      "commit": "03f0c2f950f813e3b26c56ed041ba170479d479c",
      "tree": "752961d777482f5c2b7b1f68e2cddc26dc259024",
      "parents": [
        "6996d3b63fd9a64341bc80dad1b556fd3eb81272"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:41 2007 -0700"
      },
      "message": "paravirt: increase IRQ limit\n\nWhen running with CONFIG_PARAVIRT, we may want lots of IRQs even if\nthere\u0027s no IO APIC.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "6996d3b63fd9a64341bc80dad1b556fd3eb81272",
      "tree": "74ddc02eeb33c5ce6a9670cd3fcd1613444e0711",
      "parents": [
        "fdb4c338c8d1d494e17c3422a3ea2129f6791596"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:41 2007 -0700"
      },
      "message": "paravirt: add a hook for once the allocator is ready\n\nAdd a hook so that the paravirt backend knows when the allocator is\nready.  This is useful for the obvious reason that the allocator is\navailable, but the other side-effect of having the bootmem allocator\navailable is that each page now has an associated \"struct page\".\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\n"
    },
    {
      "commit": "fdb4c338c8d1d494e17c3422a3ea2129f6791596",
      "tree": "08305dcbbf4179299f5d001796d658ff08ecc014",
      "parents": [
        "810bab448e563ffd1718d78e9a3756806b626acc"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:40 2007 -0700"
      },
      "message": "paravirt: add an \"mm\" argument to alloc_pt\n\nIt\u0027s useful to know which mm is allocating a pagetable.  Xen uses this\nto determine whether the pagetable being added to is pinned or not.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\n"
    },
    {
      "commit": "810bab448e563ffd1718d78e9a3756806b626acc",
      "tree": "238983d8120772f81b5d6fd74f570608c7d53663",
      "parents": [
        "86313c488a6848b7ec2ba04e74f25f79dd32a0b7"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:40 2007 -0700"
      },
      "message": "use elfnote.h to generate vsyscall notes.\n\nUse existing elfnote.h to generate vsyscall notes, rather than doing\nit locally.  Changes elfnote.h a bit to suit, since this is the first\nasm user, and it wasn\u0027t quite right.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.com\u003e\n"
    },
    {
      "commit": "86313c488a6848b7ec2ba04e74f25f79dd32a0b7",
      "tree": "3b190f7afc338362470573b563f65a1eb83795ac",
      "parents": [
        "10a0a8d4e3f6bf2d077f94344441909abe670f5a"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:03 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:40 2007 -0700"
      },
      "message": "usermodehelper: Tidy up waiting\n\nRather than using a tri-state integer for the wait flag in\ncall_usermodehelper_exec, define a proper enum, and use that.  I\u0027ve\npreserved the integer values so that any callers I\u0027ve missed should\nstill work OK.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Joel Becker \u003cjoel.becker@oracle.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "10a0a8d4e3f6bf2d077f94344441909abe670f5a",
      "tree": "b834c912629498e9fefb5958ee9965c414d32d69",
      "parents": [
        "0ab4dc92278a0f3816e486d6350c6652a72e06c8"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:02 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:40 2007 -0700"
      },
      "message": "Add common orderly_poweroff()\n\nVarious pieces of code around the kernel want to be able to trigger an\norderly poweroff.  This pulls them together into a single\nimplementation.\n\nBy default the poweroff command is /sbin/poweroff, but it can be set\nvia sysctl: kernel/poweroff_cmd.  This is split at whitespace, so it\ncan include command-line arguments.\n\nThis patch replaces four other instances of invoking either \"poweroff\"\nor \"shutdown -h now\": two sbus drivers, and acpi thermal\nmanagement.\n\nsparc64 has its own \"powerd\"; still need to determine whether it should\nbe replaced by orderly_poweroff().\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nAcked-by: Len Brown \u003clenb@kernel.org\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ab4dc92278a0f3816e486d6350c6652a72e06c8",
      "tree": "84bc321c94ca86a3b5eafa308c8dba9af85a725c",
      "parents": [
        "d84d1cc7647c7e4f77d517e2d87b4a106a0420d9"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:02 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:40 2007 -0700"
      },
      "message": "usermodehelper: split setup from execution\n\nRather than having hundreds of variations of call_usermodehelper for\nvarious pieces of usermode state which could be set up, split the\ninfo allocation and initialization from the actual process execution.\n\nThis means the general pattern becomes:\n info \u003d call_usermodehelper_setup(path, argv, envp); /* basic state */\n call_usermodehelper_\u003cSET EXTRA STATE\u003e(info, stuff...);\t/* extra state */\n call_usermodehelper_exec(info, wait);\t/* run process and free info */\n\nThis patch introduces wrappers for all the existing calling styles for\ncall_usermodehelper_*, but folds their implementations into one.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Bj?rn Steinbrink \u003cB.Steinbrink@gmx.de\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n"
    },
    {
      "commit": "d84d1cc7647c7e4f77d517e2d87b4a106a0420d9",
      "tree": "b6ccc40d323998d4ad013c7b05613bc727a8f4e0",
      "parents": [
        "1e66df3ee301209f4a38df097d7cc5cb9b367a3f"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:02 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:40 2007 -0700"
      },
      "message": "add argv_split()\n\nargv_split() is a helper function which takes a string, splits it at\nwhitespace, and returns a NULL-terminated argv vector.  This is\ndeliberately simple - it does no quote processing of any kind.\n\n[ Seems to me that this is something which is already being done in\n  the kernel, but I couldn\u0027t find any other implementations, either to\n  steal or replace.  Keep an eye out. ]\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n"
    },
    {
      "commit": "1e66df3ee301209f4a38df097d7cc5cb9b367a3f",
      "tree": "55beb2a342dbe08c0404f749e02808e3f09023ac",
      "parents": [
        "8b4a40809e5330c9da5d20107d693d92d73b31dc"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:02 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:39 2007 -0700"
      },
      "message": "add kstrndup\n\nAdd a kstrndup function, modelled on strndup.  Like strndup this\nreturns a string copied into its own allocated memory, but it copies\nno more than the specified number of bytes from the source.\n\nRemove private strndup() from irda code.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nCc: Panagiotis Issaris \u003ctakis@issaris.org\u003e\nCc: Rene Scharfe \u003crene.scharfe@lsrfire.ath.cx\u003e\n"
    },
    {
      "commit": "8b4a40809e5330c9da5d20107d693d92d73b31dc",
      "tree": "14de7320d32a7e72dc2cddf4833405db0f49a7ba",
      "parents": [
        "b187f180cc942e50007aa039f8e3a620ee5f3171"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Wed Jul 18 00:49:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 08:38:22 2007 -0700"
      },
      "message": "zs: move to the serial subsystem\n\nThis is a reimplementation of the zs driver for the serial subsystem.  Any\nresemblance to the old driver is purely coincidential.  ;-) I do hope I got\nthe handling of modem lines right -- better do not tackle me about the\nissue unless you feel too good...\n\nAny users of the old driver: please note the numbers of the serial lines\nhave now been swapped, i.e.  ttyS0 \u003c-\u003e ttyS1 and ttyS2 \u003c-\u003e ttyS3.  It has\nto do with the modem lines mentioned above; basically the port A in a given\nchip has to be initialised before the port B if you want to use the latter\nas the serial console (which is usually the case), as operations on modem\nlines of the serial line associated with the port B access both ports (see\nthe comment at the top of the driver for the details of wiring used).\nPlease update your scripts.\n\nThis is also the reason each SCC now requests an IRQ once only (as seen in\n\"/proc/interrupts\") -- the handler takes care of both ports at once as the\nline associated with the port B has to take status update interrupts from\nboth ports (and yet the line of the port A takes its own for itself too).\nThe old driver never got it right...\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b187f180cc942e50007aa039f8e3a620ee5f3171",
      "tree": "5a46af1f8a1a3e2d4852b7ff4df4b339a9b31b7d",
      "parents": [
        "04e08d0e9b936b91e761454b3134e260c4f50696"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "Yinghai.Lu@Sun.COM",
        "time": "Wed Jul 18 00:49:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 18 08:38:22 2007 -0700"
      },
      "message": "serial: add early_serial_setup() back to header file\n\nearly_serial_setup was removed from serial.h, but forgot to put in\nserial_8250.h\n\nSigned-off-by: Yinghai Lu \u003cyinghai.lu@sun.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3261ebd7d4194ff30d0eae7ba8d937dcccf7235d",
      "tree": "75381f6dd24263cdf484ebc9a5c8a93db6d83cb4",
      "parents": [
        "bf07803a6827ef8d4c9d840a1de800ba36db0213"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon May 21 17:41:46 2007 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Jul 18 16:53:49 2007 +0300"
      },
      "message": "UBI: kill homegrown endian macros\n\nKill UBI\u0027s homegrown endianess handling and replace it with\nthe standard kernel endianess handling.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "f8628a14a27eb4512a1ede43de1d9db4d9f92bc3",
      "tree": "45719452db34112382a1b3e83dc648abe45eac70",
      "parents": [
        "6dd4ee7cab7e3a17c571aebd444f4344c8c4946e"
      ],
      "author": {
        "name": "Andreas Dilger",
        "email": "adilger@clusterfs.com",
        "time": "Wed Jul 18 08:38:01 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jul 18 08:38:01 2007 -0400"
      },
      "message": "ext4: Remove 65000 subdirectory limit\n\nThis patch adds support to ext4 for allowing more than 65000\nsubdirectories. Currently the maximum number of subdirectories is capped\nat 32000.\n\nIf we exceed 65000 subdirectories in an htree directory it sets the\ninode link count to 1 and no longer counts subdirectories.  The\ndirectory link count is not actually used when determining if a\ndirectory is empty, as that only counts subdirectories and not regular\nfiles that might be in there. \n\nA EXT4_FEATURE_RO_COMPAT_DIR_NLINK flag has been added and it is set if\nthe subdir count for any directory crosses 65000. A later fsck will clear\nEXT4_FEATURE_RO_COMPAT_DIR_NLINK if there are no longer any directory\nwith \u003e65000 subdirs.\n\nSigned-off-by: Andreas Dilger \u003cadilger@clusterfs.com\u003e\nSigned-off-by: Kalpak Shah \u003ckalpak@clusterfs.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n\n"
    },
    {
      "commit": "6dd4ee7cab7e3a17c571aebd444f4344c8c4946e",
      "tree": "ee7b36d3a83ea843746ed3c906a9ad778838b9c6",
      "parents": [
        "ef7f38359ea8b3e9c7f2cae9a4d4935f55ca9e80"
      ],
      "author": {
        "name": "Kalpak Shah",
        "email": "kalpak@clusterfs.com",
        "time": "Wed Jul 18 09:19:57 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jul 18 09:19:57 2007 -0400"
      },
      "message": "ext4: Expand extra_inodes space per the s_{want,min}_extra_isize fields \n\nWe need to make sure that existing ext3 filesystems can also avail the\nnew fields that have been added to the ext4 inode. We use\ns_want_extra_isize and s_min_extra_isize to decide by how much we should\nexpand the inode. If EXT4_FEATURE_RO_COMPAT_EXTRA_ISIZE feature is set\nthen we expand the inode by max(s_want_extra_isize, s_min_extra_isize ,\nsizeof(ext4_inode) - EXT4_GOOD_OLD_INODE_SIZE) bytes. Actually it is\nstill an open question about whether users should be able to set\ns_*_extra_isize smaller than the known fields or not.\n\nThis patch also adds the functionality to expand inodes to include the\nnewly added fields. We start by trying to expand by s_want_extra_isize\nbytes and if its fails we try to expand by s_min_extra_isize bytes. This\nis done by changing the i_extra_isize if enough space is available in\nthe inode and no EAs are present. If EAs are present and there is enough\nspace in the inode then the EAs in the inode are shifted to make space.\nIf enough space is not available in the inode due to the EAs then 1 or\nmore EAs are shifted to the external EA block. In the worst case when\neven the external EA block does not have enough space we inform the user\nthat some EA would need to be deleted or s_min_extra_isize would have to\nbe reduced.\n\nSigned-off-by: Andreas Dilger \u003cadilger@clusterfs.com\u003e\nSigned-off-by: Kalpak Shah \u003ckalpak@clusterfs.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "ef7f38359ea8b3e9c7f2cae9a4d4935f55ca9e80",
      "tree": "ee34a5821332cf70b89827eb872f08bc0dd43f89",
      "parents": [
        "0f49d5d019afa4e94253bfc92f0daca3badb990b"
      ],
      "author": {
        "name": "Kalpak Shah",
        "email": "kalpak@clusterfs.com",
        "time": "Wed Jul 18 09:15:20 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jul 18 09:15:20 2007 -0400"
      },
      "message": "ext4: Add nanosecond timestamps\n\nThis patch adds nanosecond timestamps for ext4. This involves adding\n*time_extra fields to the ext4_inode to extend the timestamps to\n64-bits.  Creation time is also added by this patch.\n\nThese extended fields will fit into an inode if the filesystem was\nformatted with large inodes (-I 256 or larger) and there are currently\nno EAs consuming all of the available space. For new inodes we always\nreserve enough space for the kernel\u0027s known extended fields, but for\ninodes created with an old kernel this might not have been the case. So\nthis patch also adds the EXT4_FEATURE_RO_COMPAT_EXTRA_ISIZE feature\nflag(ro-compat so that older kernels can\u0027t create inodes with a smaller\nextra_isize). which indicates if the fields fitting inside\ns_min_extra_isize are available or not.  If the expansion of inodes if\nunsuccessful then this feature will be disabled.  This feature is only\nenabled if requested by the sysadmin.\n\nNone of the extended inode fields is critical for correct filesystem\noperation.\n\nSigned-off-by: Andreas Dilger \u003cadilger@clusterfs.com\u003e\nSigned-off-by: Kalpak Shah \u003ckalpak@clusterfs.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "0f49d5d019afa4e94253bfc92f0daca3badb990b",
      "tree": "9a8266d3a7292a0632df0f970f6377a8b8b98658",
      "parents": [
        "e23291b9120c11aafb2ee76fb71a062eb3c1056c"
      ],
      "author": {
        "name": "Jose R. Santos",
        "email": "jrs@us.ibm.com",
        "time": "Wed Jul 18 08:50:18 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jul 18 08:50:18 2007 -0400"
      },
      "message": "jbd2: Move jbd2-debug file to debugfs\n\nThe jbd2-debug file used to be located in /proc/sys/fs/jbd2-debug, but it\nincorrectly used create_proc_entry() instead of the sysctl routines, and\nno proc entry was ever created.\n\nInstead of fixing this we might as well move the jbd2-debug file to\ndebugfs which would be the preferred location for this kind of tunable.\nThe new location is now /sys/kernel/debug/jbd2/jbd2-debug.\n\nSigned-off-by: Jose R. Santos \u003cjrs@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "e23291b9120c11aafb2ee76fb71a062eb3c1056c",
      "tree": "1a0f458c5c2803eb9a959e79622974cd5db4f985",
      "parents": [
        "eb40a09c679d7f9709f7087add57f2e1c7122bb3"
      ],
      "author": {
        "name": "Jose R. Santos",
        "email": "jrs@us.ibm.com",
        "time": "Wed Jul 18 08:57:06 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jul 18 08:57:06 2007 -0400"
      },
      "message": "jbd2: Fix CONFIG_JBD_DEBUG ifdef to be CONFIG_JBD2_DEBUG\n\nWhen the JBD code was forked to create the new JBD2 code base, the\nreferences to CONFIG_JBD_DEBUG where never changed to\nCONFIG_JBD2_DEBUG.  This patch fixes that.\n\nSigned-off-by: Jose R. Santos \u003cjrs@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "ff9ddf7e847c4dc533f119efb6c77a6e57ab6397",
      "tree": "fff8ab26370c0e466d96fb99bf3dc566b909a104",
      "parents": [
        "1e2462f93e011f63fd0f1fedd2c05338ca6b31c2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 18 09:24:20 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jul 18 09:24:20 2007 -0400"
      },
      "message": "ext4: copy i_flags to inode flags on write\n    \nPropagate flags such as S_APPEND, S_IMMUTABLE, etc. from i_flags into\next4-specific i_flags.  Quota code changes these flags on quota files\n(to make it harder for sysadmin to screw himself) and these changes were\nnot correctly propagated into the filesystem.\n\n(This is a forward port patch from ext3)\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "749269facaf87f6e516c3af12763e03181b9c139",
      "tree": "5c8a2091d4b1ce7636de404a1366bd174b4634fd",
      "parents": [
        "56055d3ae4cc7fa6d2b10885f20269de8a989ed7"
      ],
      "author": {
        "name": "Amit Arora",
        "email": "aarora@in.ibm.com",
        "time": "Wed Jul 18 09:02:56 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jul 18 09:02:56 2007 -0400"
      },
      "message": "Change on-disk format to support 2^15 uninitialized extents\n\nThis change was suggested by Andreas Dilger. \nThis patch changes the EXT_MAX_LEN value and extent code which marks/checks\nuninitialized extents. With this change it will be possible to have\ninitialized extents with 2^15 blocks (earlier the max blocks we could have\nwas 2^15 - 1). This way we can have better extent-to-block alignment.\nNow, maximum number of blocks we can have in an initialized extent is 2^15\nand in an uninitialized extent is 2^15 - 1.\n\nSigned-off-by: Amit Arora \u003caarora@in.ibm.com\u003e\n"
    },
    {
      "commit": "ebd61cc042b16e6cf2486aafbfff9e4be8c213ee",
      "tree": "8e8144e7839977f65c7bbbafbbd7ff26999f213a",
      "parents": [
        "75a69ac6d66d2504ecbc4b46645fb0835a55a57c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Jul 18 02:21:50 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 18 02:21:50 2007 -0700"
      },
      "message": "[NETFILTER]: ipt_iprange.h must #include \u003clinux/types.h\u003e\n\nipt_iprange.h must #include \u003clinux/types.h\u003e since it uses __be32.\n\nThis patch fixes kernel Bugzilla #7604.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "456ad75c89cdb72e11dcdb6b0794802a6f50c8a3",
      "tree": "0e220771195438b704985418e47a7dc29d9a7d7b",
      "parents": [
        "eb4965344965530411359891214cd6fcab483649"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Wed Jul 18 02:10:54 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 18 02:10:54 2007 -0700"
      },
      "message": "[NET]: move dev_mc_discard from dev_mcast.c to dev.c\n\nBecause this function is only called by unregister_netdevice,\nthis moving could make this non-global function static,\nand also remove its declaration in netdevice.h;\n\nAny further, function __dev_addr_discard is also just called by\ndev_mc_discard and dev_unicast_discard, keeping this two functions\nboth in one c file could make __dev_addr_discard also static\nand remove its declaration in netdevice.h;\n\nFuthermore, the sequential call to dev_unicast_discard and then\ndev_mc_discard in unregister_netdevice have a similar mechanism that:\n(netif_tx_lock_bh / __dev_addr_discard / netif_tx_unlock_bh),\nthey should merged into one to eliminate duplicates in acquiring and\nreleasing the dev-\u003e_xmit_lock, this would be done in my following patch.\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd0bf0765ea1fba80d7085e1f0375ec045631dc1",
      "tree": "7a637d217e6f090f3eebe127a11fcbfaabc1c3cd",
      "parents": [
        "16751347a060a10c09b11593bb179fd5b0240c04"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jul 18 01:55:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 18 01:55:52 2007 -0700"
      },
      "message": "[XFRM]: Fix crash introduced by struct dst_entry reordering\n\nXFRM expects xfrm_dst-\u003eu.next to be same pointer as dst-\u003enext, which\nwas broken by the dst_entry reordering in commit 1e19e02c~, causing\nan oops in xfrm_bundle_ok when walking the bundle upwards.\n\nKill xfrm_dst-\u003eu.next and change the only user to use dst-\u003enext instead.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "16751347a060a10c09b11593bb179fd5b0240c04",
      "tree": "40399ba217d9e4c45060c4d12334c53f931ca635",
      "parents": [
        "44beac008631d1b8a52f103e04eacba2bda81511"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Mon Jul 16 18:35:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 18 01:46:58 2007 -0700"
      },
      "message": "[TCP]: remove unused argument to cong_avoid op\n\nNone of the existing TCP congestion controls use the rtt value pased\nin the ca_ops-\u003econg_avoid interface.  Which is lucky because seq_rtt\ncould have been -1 when handling a duplicate ack.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0785b9dcdc3d93e67529e4bd819a427776d3a07e",
      "tree": "c9c3d556ba4f10352c50d6d137cc68f50802885f",
      "parents": [
        "d762acdbd3b2bd9a714ace47d7b0c76133d7b295"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Wed Jul 18 00:09:30 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 18 01:20:22 2007 -0700"
      },
      "message": "[SPARC]: Mark sparc and sparc64 as not having virt_to_bus\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6160f63518406485c7009cb0f2e1588ea3abccc1",
      "tree": "d0adeedae350dc4829e7eacbf198627a107f393f",
      "parents": [
        "9184a046328d2dfc9f2cf0f831e649a108492124"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 17 23:03:47 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 18 01:20:04 2007 -0700"
      },
      "message": "[SPARC64]: Massively simplify VIO device layer and support hot add/remove.\n\nCreate and destroy VIO devices in response to MD update events.  These\nrun synchronously inside of the MD update mutex so the VIO layer\ndoesn\u0027t need to do internal locking of any sort.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "920c3ed741340a88f2042ab0c44a25b8c743a379",
      "tree": "fecca3490f84274a6a1cc36956937f3b7bba3394",
      "parents": [
        "cb32da0416b823b7f4b65e7e85d6cba16ca4d1e1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 17 21:37:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 18 01:19:51 2007 -0700"
      },
      "message": "[SPARC64]: Add basic infrastructure for MD add/remove notification.\n\nAnd add dummy handlers for the VIO device layer.  These will be filled\nin with real code after the vdc, vnet, and ds drivers are reworked to\nhave simpler dependencies on the VIO device tree.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56055d3ae4cc7fa6d2b10885f20269de8a989ed7",
      "tree": "ab0008be38ef4d2789aee16d084fdaa2d5acfc32",
      "parents": [
        "a2df2a63407803a833f82e1fa6693826c8c9d584"
      ],
      "author": {
        "name": "Amit Arora",
        "email": "aarora@in.ibm.com",
        "time": "Tue Jul 17 21:42:38 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jul 17 21:42:38 2007 -0400"
      },
      "message": "write support for preallocated blocks\n\nThis patch adds write support to the uninitialized extents that get\ncreated when a preallocation is done using fallocate(). It takes care of\nsplitting the extents into multiple (upto three) extents and merging the\nnew split extents with neighbouring ones, if possible.\n\nSigned-off-by: Amit Arora \u003caarora@in.ibm.com\u003e\n"
    },
    {
      "commit": "a2df2a63407803a833f82e1fa6693826c8c9d584",
      "tree": "db761e8d82dbbe53e166511a9f8af9162541a212",
      "parents": [
        "97ac73506c0ba93f30239bb57b4cfc5d73e68a62"
      ],
      "author": {
        "name": "Amit Arora",
        "email": "aarora@in.ibm.com",
        "time": "Tue Jul 17 21:42:41 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jul 17 21:42:41 2007 -0400"
      },
      "message": "fallocate support in ext4\n\nThis patch implements -\u003efallocate() inode operation in ext4. With this\npatch users of ext4 file systems will be able to use fallocate() system\ncall for persistent preallocation. Current implementation only supports\npreallocation for regular files (directories not supported as of date)\nwith extent maps. This patch does not support block-mapped files currently.\nOnly FALLOC_ALLOCATE and FALLOC_RESV_SPACE modes are being supported as of\nnow.\n\nSigned-off-by: Amit Arora \u003caarora@in.ibm.com\u003e\n"
    },
    {
      "commit": "97ac73506c0ba93f30239bb57b4cfc5d73e68a62",
      "tree": "4d02848d6c792a70b413deadcaffd7bf8c8d61de",
      "parents": [
        "cb32da0416b823b7f4b65e7e85d6cba16ca4d1e1"
      ],
      "author": {
        "name": "Amit Arora",
        "email": "aarora@in.ibm.com",
        "time": "Tue Jul 17 21:42:44 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jul 17 21:42:44 2007 -0400"
      },
      "message": "sys_fallocate() implementation on i386, x86_64 and powerpc\n\nfallocate() is a new system call being proposed here which will allow\napplications to preallocate space to any file(s) in a file system.\nEach file system implementation that wants to use this feature will need\nto support an inode operation called -\u003efallocate().\nApplications can use this feature to avoid fragmentation to certain\nlevel and thus get faster access speed. With preallocation, applications\nalso get a guarantee of space for particular file(s) - even if later the\nthe system becomes full.\n\nCurrently, glibc provides an interface called posix_fallocate() which\ncan be used for similar cause. Though this has the advantage of working\non all file systems, but it is quite slow (since it writes zeroes to\neach block that has to be preallocated). Without a doubt, file systems\ncan do this more efficiently within the kernel, by implementing\nthe proposed fallocate() system call. It is expected that\nposix_fallocate() will be modified to call this new system call first\nand incase the kernel/filesystem does not implement it, it should fall\nback to the current implementation of writing zeroes to the new blocks.\nToDos:\n1. Implementation on other architectures (other than i386, x86_64,\n   and ppc). Patches for s390(x) and ia64 are already available from\n   previous posts, but it was decided that they should be added later\n   once fallocate is in the mainline. Hence not including those patches\n   in this take.\n2. Changes to glibc,\n   a) to support fallocate() system call\n   b) to make posix_fallocate() and posix_fallocate64() call fallocate()\n\nSigned-off-by: Amit Arora \u003caarora@in.ibm.com\u003e\n"
    },
    {
      "commit": "cb32da0416b823b7f4b65e7e85d6cba16ca4d1e1",
      "tree": "1d09075441ae985fbdb4347b6b63da1ed7fcc754",
      "parents": [
        "1985026d32e69ed6dac3ba0ef8ff10366f060ed3"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Wed Jul 18 09:18:36 2007 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 17:26:43 2007 -0700"
      },
      "message": "slob: Kill off duplicate kzalloc() definition.\n\nWith the slab zeroing allocations cleanups Christoph stubbed in a generic\nkzalloc(), which was missed on SLOB. Follow the SLAB/SLUB changes and\nkill off the __kzalloc() wrapper that SLOB was using.\n\nReported-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f3d9071667752e5d419e59f76912ed3fb4a6bb9c",
      "tree": "e8787124dbe9bdd7e12d7c427c9ee6036cbe7783",
      "parents": [
        "6dfce901a450534d046b7950682243d5fb665783",
        "5d3a8cd34beb1521a2697c6ed7b647ef9bafdbf1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 15:26:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 15:26:31 2007 -0700"
      },
      "message": "Merge branch \u0027bsg\u0027 of git://git.kernel.dk/data/git/linux-2.6-block\n\n* \u0027bsg\u0027 of git://git.kernel.dk/data/git/linux-2.6-block:\n  bsg: fix missing space in version print\n  Don\u0027t define empty struct bsg_class_device if !CONFIG_BLK_DEV_BSG\n  bsg: Kconfig updates\n  bsg: minor cleanup\n  bsg: device hash table cleanup\n  bsg: fix initialization error handling bugs\n  bsg: mark FUJITA Tomonori as bsg maintainer\n  bsg: convert to dynamic major\n  bsg: address various review comments\n"
    },
    {
      "commit": "8dfd588c3180b7403c402b4545164ee4543f8f86",
      "tree": "9bd261e2b78f20ea852f60ee1a13f57cff51cdae",
      "parents": [
        "44052e0d91757ecac4a2f659ea3e1a658dd6057e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Jul 17 22:29:46 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 14:39:19 2007 -0700"
      },
      "message": "smp_call_function_single() should be a macro on UP\n\n... or we end up with header include order problems from hell.\n\nE.g. on m68k this is 100% fatal - local_irq_enable() there\nwants preempt_count(), which wants task_struct fields, which\nwe won\u0027t have when we are in smp.h pulled from sched.h.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3bd858ab1c451725c07a805dcb315215dc85b86e",
      "tree": "5d49c4300e350d64fd81eb3230b81f754117e0c1",
      "parents": [
        "49c13b51a15f1ba9f6d47e26e4a3886c4f3931e2"
      ],
      "author": {
        "name": "Satyam Sharma",
        "email": "ssatyam@cse.iitk.ac.in",
        "time": "Tue Jul 17 15:00:08 2007 +0530"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 12:00:03 2007 -0700"
      },
      "message": "Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check\n\nIntroduce is_owner_or_cap() macro in fs.h, and convert over relevant\nusers to it. This is done because we want to avoid bugs in the future\nwhere we check for only effective fsuid of the current task against a\nfile\u0027s owning uid, without simultaneously checking for CAP_FOWNER as\nwell, thus violating its semantics.\n[ XFS uses special macros and structures, and in general looked ...\nuntouchable, so we leave it alone -- but it has been looked over. ]\n\nThe (current-\u003efsuid !\u003d inode-\u003ei_uid) check in generic_permission() and\nexec_permission_lite() is left alone, because those operations are\ncovered by CAP_DAC_OVERRIDE and CAP_DAC_READ_SEARCH. Similarly operations\nfalling under the purview of CAP_CHOWN and CAP_LEASE are also left alone.\n\nSigned-off-by: Satyam Sharma \u003cssatyam@cse.iitk.ac.in\u003e\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nAcked-by: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "49c13b51a15f1ba9f6d47e26e4a3886c4f3931e2",
      "tree": "a96d7fc5884e56a61993f9393afa9077f8068b47",
      "parents": [
        "492559af235eb56884d62553f191c0b5c4def990",
        "cec9ad279b66793bee0b5009b7ca311060061efd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 11:50:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 11:50:26 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: (80 commits)\n  KVM: Use CPU_DYING for disabling virtualization\n  KVM: Tune hotplug/suspend IPIs\n  KVM: Keep track of which cpus have virtualization enabled\n  SMP: Allow smp_call_function_single() to current cpu\n  i386: Allow smp_call_function_single() to current cpu\n  x86_64: Allow smp_call_function_single() to current cpu\n  HOTPLUG: Adapt thermal throttle to CPU_DYING\n  HOTPLUG: Adapt cpuset hotplug callback to CPU_DYING\n  HOTPLUG: Add CPU_DYING notifier\n  KVM: Clean up #includes\n  KVM: Remove kvmfs in favor of the anonymous inodes source\n  KVM: SVM: Reliably detect if SVM was disabled by BIOS\n  KVM: VMX: Remove unnecessary code in vmx_tlb_flush()\n  KVM: MMU: Fix Wrong tlb flush order\n  KVM: VMX: Reinitialize the real-mode tss when entering real mode\n  KVM: Avoid useless memory write when possible\n  KVM: Fix x86 emulator writeback\n  KVM: Add support for in-kernel pio handlers\n  KVM: VMX: Fix interrupt checking on lightweight exit\n  KVM: Adds support for in-kernel mmio handlers\n  ...\n"
    },
    {
      "commit": "492559af235eb56884d62553f191c0b5c4def990",
      "tree": "a5dfa19243b3b8b976e9f5b9c788cafcd3ad80c7",
      "parents": [
        "d3676756968eef4a31da11be5addc4eec1b6db2c",
        "4f8de2745629330d78776282ea490fece22ee5e4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 11:31:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 11:31:57 2007 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] Clean away some code inside some non-existent CONFIG ifdefs\n  [IA64] ar.itc access must really be after xtime_lock.sequence has been read\n  [IA64] correctly count CPU objects in the ia64/sn hwperf interface\n  [IA64] arbitary speed tty ioctl support\n  [IA64] use machvec\u003ddig on hpzx1 platforms\n"
    },
    {
      "commit": "d37c6e1b67e8d7f3c5fceba491dcb09a15cb7772",
      "tree": "0475cc3e841e22994b3a779125d4cd90b52dc76d",
      "parents": [
        "cc040a8a0e8ba95fbb0ae1edcb9ec83623b422e3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Jul 17 08:49:35 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 11:01:07 2007 -0700"
      },
      "message": "saner typechecking in generic unaligned.h\n\nVerify that types would match for assignment (under sizeof, so we are safe from\nside effects or any code actually getting generated), then explicitly cast\neverywhere to the fixed-sized types.  Kills a bunch of bogus warnings about\nconstants being truncated (gcc, sparse), finds a pile of endianness problems\nhidden by old noise (sparse).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5072d5d58ef67bd7131d0be208ad1b6cd0631648",
      "tree": "71e373849933063f903d78c0bcf1d61ee951c5e2",
      "parents": [
        "0ab7a252a52943786d6d12ad8032266841d68b8e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Jul 17 08:49:35 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 11:01:07 2007 -0700"
      },
      "message": "alpha termios.h hadn\u0027t been updated\n\n... fortunately, termios and ktermios there are identical, so no\nrun-time breakage happened.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ad1366376bfef32ec0ffa12d1faa483d6f330bd",
      "tree": "87a9c864ec5ebd446f6c99f3298bc7638efa8f1e",
      "parents": [
        "f0d76d70bc77b9b11256a3a23e98e80878be1578"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Jul 17 04:06:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:15 2007 -0700"
      },
      "message": "md: change bitmap_unplug and others to void functions\n\nbitmap_unplug only ever returns 0, so it may as well be void.  Two callers try\nto print a message if it returns non-zero, but that message is already printed\nby bitmap_file_kick.\n\nwrite_page returns an error which is not consistently checked.  It always\ncauses BITMAP_WRITE_ERROR to be set on an error, and that can more\nconveniently be checked.\n\nWhen the return of write_page is checked, an error causes bitmap_file_kick to\nbe called - so move that call into write_page - and protect against recursive\ncalls into bitmap_file_kick.\n\nbitmap_update_sb returns an error that is never checked.\n\nSo make these \u0027void\u0027 and be consistent about checking the bit.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "713f6ab18b0e7d39f14401362bfe8015b1aedde1",
      "tree": "fc6ef865d09de1ec816ed96860ffc27dd48d837b",
      "parents": [
        "df968c4e8d809deb2602fb0e8db758f26a4006b9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Jul 17 04:06:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:15 2007 -0700"
      },
      "message": "md: improve the is_mddev_idle test fix\n\nDon\u0027t use \u0027unsigned\u0027 variable to track sync vs non-sync IO, as the only thing\nwe want to do with them is a signed comparison, and fix up the comment which\nhad become quite wrong.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe0e3a9df6372d357d3fdc4b6265a5417f1e84e8",
      "tree": "be6c941bc2ffd089cada078c30d5a958bff61760",
      "parents": [
        "8b08cf2b64f5a60594b07795b2ad518c6d044566"
      ],
      "author": {
        "name": "Imre Deak",
        "email": "imre.deak@solidboot.com",
        "time": "Tue Jul 17 04:05:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:13 2007 -0700"
      },
      "message": "OMAP: add TI OMAP1610 accelerator entry.\n\nSigned-off-by: Trilok Soni \u003csoni.trilok@gmail.com\u003e\nCc: Tony Lindgren \u003ctony@atomide.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9900abfb5e8192f0eafcd9b9dd5d54011e46c76c",
      "tree": "d12ac087db68aedb0a26848a51292389eefea35c",
      "parents": [
        "90da63e54604fd515c17014a0a7f332a018a0a11"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Tue Jul 17 04:05:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:13 2007 -0700"
      },
      "message": "fbdev: Add fb_append_extra_logo()\n\nAdd fb_append_extra_logo(), to append extra lines of logos below the standard\nLinux logo.\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nSigned-off-by: Geoff Levand \u003cgeoffrey.levand@am.sony.com\u003e\nAcked-By: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb3daa83c2f63743fb7597f620beac75e1ba5633",
      "tree": "be59200d2ed567f6ac0a0e7dc1369b0ee67c8db6",
      "parents": [
        "9965f5b137f11a7dce01b2c32874a4875f024306"
      ],
      "author": {
        "name": "Antonino A. Daplas",
        "email": "adaplas@gmail.com",
        "time": "Tue Jul 17 04:05:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:12 2007 -0700"
      },
      "message": "tgafb: actually allocate memory for the pseudo_palette\n\nNo memory allocation was done for the pseudo_palette.  Allocate one for it.\n\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nAcked-by: \"Maciej W. Rozycki\" \u003cmacro@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7269dd2b97b9aedb64e15fdec5575345d091925",
      "tree": "4e6776192ef784a19f9b29411ba3236a8f57cc49",
      "parents": [
        "cfafca8067c6defbaeb28cb898b7b3f8abdfe20d"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jul 17 04:05:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:11 2007 -0700"
      },
      "message": "vt: add comment for unbind_con_driver()\n\n- add comment for unbind_con_driver().\n- bind_con_driver() is made private again\n\nSigned-off-by: Jesse Barnes \u003cjesse.barnes@intel.com\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cfafca8067c6defbaeb28cb898b7b3f8abdfe20d",
      "tree": "93c5bae1e14a4d9bec3e9396c5dd9ef0fecfaf1d",
      "parents": [
        "afd1db1632c3f8f95cbc2786bfa122cead79db58"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jesse.barnes@intel.com",
        "time": "Tue Jul 17 04:05:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:11 2007 -0700"
      },
      "message": "fbdev: fbcon: console unregistration from unregister_framebuffer\n\nThis allows for proper console unregistration via the VT layer, and updates\nthe FB layer to use it.  This makes debugging new console drivers much easier,\nsince you can properly clean them up before unloading.\n\n[adaplas]\nunregister_framebuffer() is typically called as part of the driver\u0027s\nmodule_exit(). Doing so otherwise will freeze the machine as the VT layer is\nholding reference counts on fbcon, and fbcon on the driver.  With this change,\nit allows unregister_framebuffer() to be called safely anywhere as needed.\n\nAdditions from the original:  If multiple drivers are used by fbcon, and if\none of them unregisters, a driver will take over the consoles vacated by the\noutgoing one (via set_con2fb_map).   Once only the outgoing driver remains,\nthen fbcon will unbind from the VT layer (if CONFIG_HW_CONSOLE_UNBINDING is\nset to y).\n\nIt is important that these drivers implement fb_open() and fb_release()\njust to ensure that no other process is using the driver. Likewise, these\ndrivers _must_ check the return value of unregister_framebuffer().\n\n[akpm@linux-foundation.org: make fbcon_unbind() stub inline]\nSigned-off-by: Jesse Barnes \u003cjesse.barnes@intel.com\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "623e71b035cb5271028500720b3622ba76db42bb",
      "tree": "651cd606c57b1e1322f92e0406d744a2b341da7e",
      "parents": [
        "317b3c2167f5326a7de30a1abe50c9897da7a0e3"
      ],
      "author": {
        "name": "Antonino A. Daplas",
        "email": "adaplas@gmail.com",
        "time": "Tue Jul 17 04:05:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:11 2007 -0700"
      },
      "message": "fbcon: allow fbcon to use the primary display driver\n\nAllow fbcon to select the primary display adapter using the\nfb_is_primary_device() arch-specific helper.  If a a primary adapter is\ndetected, fbcon will unbind the old adapter from the VT layer, then rebind\nusing the new adapter.  This requires that bind_/unbind_con_driver() be made\npublic.\n\nBecause this feature may produce unexpected behavior (from the user\u0027s POV),\nthis must be explicitly enabled in Kconfig.\n\n[akpm@linux-foundation.org: export unbind_con_driver]\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "317b3c2167f5326a7de30a1abe50c9897da7a0e3",
      "tree": "e0a8481121bb54bc2e714ea3b6c89b67a881a278",
      "parents": [
        "10eb2659cc6059d0c4de2e2c66d1534091519f56"
      ],
      "author": {
        "name": "Antonino A. Daplas",
        "email": "adaplas@gmail.com",
        "time": "Tue Jul 17 04:05:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:11 2007 -0700"
      },
      "message": "fbdev: detect primary display device\n\nAdd function helper, fb_is_primary_device().  Given struct fb_info, it will\nreturn a nonzero value if the device is the primary display.\n\nCurrently, only the i386 is supported where the function checks for the\nIORESOURCE_ROM_SHADOW flag.\n\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "10eb2659cc6059d0c4de2e2c66d1534091519f56",
      "tree": "804a53c7a3fd6fb4ef72454a0d962c3883bbb828",
      "parents": [
        "0c6c1ce079082ddde9ba5636c352c235cd395aa1"
      ],
      "author": {
        "name": "Antonino A. Daplas",
        "email": "adaplas@gmail.com",
        "time": "Tue Jul 17 04:05:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:11 2007 -0700"
      },
      "message": "fbdev: move arch-specific bits to their respective subdirectories\n\nMove arch-specific bits of fb_mmap() to their respective subdirectories\n\n[bob.picco@hp.com: efi_range_is_wc is referenced but not declared]\n[bunk@stusta.de: fix include/asm-m68k/fb.h]\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2e774c7caf84455d5e7d492d123bad6f417818b5",
      "tree": "01e81a82fa4921887b3295000c2901dcab5bcb70",
      "parents": [
        "617780d290bd6eb2b260928c6acff5b7c6084154"
      ],
      "author": {
        "name": "Mark Zhan",
        "email": "rongkai.zhan@windriver.com",
        "time": "Tue Jul 17 04:05:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:09 2007 -0700"
      },
      "message": "rtc: add support for the ST M48T59 RTC\n\n[akpm@linux-foundation.org: x86_64 build fix]\n[akpm@linux-foundation.org: The acpi guys changed the bin_attribute code]\nSigned-off-by: Mark Zhan \u003crongkai.zhan@windriver.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "1269bc69b6649282091bb7007372acf4ab8357fd"
}
