)]}'
{
  "log": [
    {
      "commit": "84ff7a001270258f71d6ab0d164f351e32c9718a",
      "tree": "6b2f33a9ad492186062de247d3572fa5efebe4bd",
      "parents": [
        "478735e42bfa047384afa72dceb408035532db20",
        "1f4170e12db06fdde5279d665a7e6e2976b2b623"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:48:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:48:16 2008 -0700"
      },
      "message": "Merge branch \u0027kvm-updates-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm\n\n* \u0027kvm-updates-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:\n  KVM: s390: Fix kvm on IBM System z10\n  KVM: Advertise synchronized mmu support to userspace\n  KVM: Synchronize guest physical memory map to host virtual memory map\n  KVM: Allow browsing memslots with mmu_lock\n  KVM: Allow reading aliases with mmu_lock\n"
    },
    {
      "commit": "8978b74253280d59e97cf49a3ec2c0cbccd5b801",
      "tree": "7cecd6951437f01f541178c1afc14d4e1d2e2b23",
      "parents": [
        "35780c8ea7ad5c6d5483244d5f5bf37176fda86a"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 29 13:38:53 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 12:12:48 2008 +0200"
      },
      "message": "generic, x86: fix add iommu_num_pages helper function\n\nThis IOMMU helper function doesn\u0027t work for some architectures:\n\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d121699304403202\u0026w\u003d2\n\nIt also breaks POWER and SPARC builds:\n\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d121730388001890\u0026w\u003d2\n\nCurrently, only x86 IOMMUs use this so let\u0027s move it to x86 for\nnow.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e930bffe95e1e886a1ede80726ea38df5838d067",
      "tree": "d39227c3de8e7d4a70737c78693f6d7f458066af",
      "parents": [
        "604b38ac0369bd50fcbb33344aa5553c071009f7"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Fri Jul 25 16:24:52 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Jul 29 12:33:53 2008 +0300"
      },
      "message": "KVM: Synchronize guest physical memory map to host virtual memory map\n\nSynchronize changes to host virtual addresses which are part of\na KVM memory slot to the KVM shadow mmu.  This allows pte operations\nlike swapping, page migration, and madvise() to transparently work\nwith KVM.\n\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "cb28a1bbdb4790378e7366d6c9ee1d2340b84f92",
      "tree": "316436f77dac75335fd2c3ef5f109e71606c50d3",
      "parents": [
        "b6d4f7e3ef25beb8c658c97867d98883e69dc544",
        "f934fb19ef34730263e6afc01e8ec27a8a71470f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 00:07:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 00:07:55 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/generic-dma-coherent\n\nConflicts:\n\n\tarch/x86/Kconfig\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f4cb662a0a2533b45656607471571460310a5ca",
      "tree": "19f3f431f75f7103a1b98e1eea56978712399c6b",
      "parents": [
        "8be1a6d6c77ab4532e4476fdb8177030ef48b52c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Jul 14 20:36:36 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 27 11:34:09 2008 +0300"
      },
      "message": "KVM: SVM: allow enabling/disabling NPT by reloading only the architecture module\n\nIf NPT is enabled after loading both KVM modules on AMD and it should be\ndisabled, both KVM modules must be reloaded. If only the architecture module is\nreloaded the behavior is undefined. With this patch it is possible to disable\nNPT only by reloading the kvm_amd module.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "7f2da1e7d0330395e5e9e350b879b98a1ea495df",
      "tree": "adc01ced45bb1de10fe58511e7143bbbd138a192",
      "parents": [
        "8bb79224b87aab92071e94d46e70bd160d89bf34"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 10 20:44:54 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:20 2008 -0400"
      },
      "message": "[PATCH] kill altroot\n\nlong overdue...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "fb3b80614438f8b73b3879a19350439d6aa402da",
      "tree": "8397dc4dd85b3ecc8d3cb3f56d143843a6346b8c",
      "parents": [
        "7f268a2ba7c884a239713696238dd4207a57dd9a",
        "3a61ec387c9092dfc91a5959145d36835a72fc4c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 13:25:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 13:25:05 2008 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, AMD IOMMU: include amd_iommu_last_bdf in device initialization\n  x86: fix IBM Summit based systems\u0027 phys_cpu_present_map on 32-bit kernels\n  x86, RDC321x: remove gpio.h complications\n  x86, RDC321x: add to mach-default\n  crashdump: fix undefined reference to `elfcorehdr_addr\u0027\n  flag parameters: fix compile error of sys_epoll_create1\n"
    },
    {
      "commit": "8174c430e445a93016ef18f717fe570214fa38bf",
      "tree": "f1b4426eae7401425e9102c7b3e141be86f0930c",
      "parents": [
        "21cc199baa815d7b3f1ace4be20b9558cbddc00f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "x86: lockless get_user_pages_fast()\n\nImplement get_user_pages_fast without locking in the fastpath on x86.\n\nDo an optimistic lockless pagetable walk, without taking mmap_sem or any\npage table locks or even mmap_sem.  Page table existence is guaranteed by\nturning interrupts off (combined with the fact that we\u0027re always looking\nup the current mm, means we can do the lockless page table walk within the\nconstraints of the TLB shootdown design).  Basically we can do this\nlockless pagetable walk in a similar manner to the way the CPU\u0027s pagetable\nwalker does not have to take any locks to find present ptes.\n\nThis patch (combined with the subsequent ones to convert direct IO to use\nit) was found to give about 10% performance improvement on a 2 socket 8\ncore Intel Xeon system running an OLTP workload on DB2 v9.5\n\n \"To test the effects of the patch, an OLTP workload was run on an IBM\n  x3850 M2 server with 2 processors (quad-core Intel Xeon processors at\n  2.93 GHz) using IBM DB2 v9.5 running Linux 2.6.24rc7 kernel.  Comparing\n  runs with and without the patch resulted in an overall performance\n  benefit of ~9.8%.  Correspondingly, oprofiles showed that samples from\n  __up_read and __down_read routines that is seen during thread contention\n  for system resources was reduced from 2.8% down to .05%.  Monitoring the\n  /proc/vmstat output from the patched run showed that the counter for\n  fast_gup contained a very high number while the fast_gup_slow value was\n  zero.\"\n\n(fast_gup is the old name for get_user_pages_fast, fast_gup_slow is a\ncounter we had for the number of times the slowpath was invoked).\n\nThe main reason for the improvement is that DB2 has multiple threads each\nissuing direct-IO.  Direct-IO uses get_user_pages, and thus the threads\ncontend the mmap_sem cacheline, and can also contend on page table locks.\n\nI would anticipate larger performance gains on larger systems, however I\nthink DB2 uses an adaptive mix of threads and processes, so it could be\nthat thread contention remains pretty constant as machine size increases.\nIn which case, we stuck with \"only\" a 10% gain.\n\nThe downside of using get_user_pages_fast is that if there is not a pte\nwith the correct permissions for the access, we end up falling back to\nget_user_pages and so the get_user_pages_fast is a bit of extra work.\nHowever this should not be the common case in most performance critical\ncode.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: Kconfig fix]\n[akpm@linux-foundation.org: Makefile fix/cleanup]\n[akpm@linux-foundation.org: warning fix]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a0a8f5364a5ad248aec6cb705e0092ff563edc2f",
      "tree": "fe942b13adc527f66103d529c2ee91da05086d1c",
      "parents": [
        "2682497245e7d22160ae63032c378745a7f2cfe5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "x86: implement pte_special\n\nImplement the pte_special bit for x86.  This is required to support\nlockless get_user_pages, because we need to know whether or not we can\nrefcount a particular page given only its pte (and no vma).\n\n[hugh@veritas.com: fix a BUG]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ab83521378268044a448113c6aa9a9e245f4d2f",
      "tree": "e9e8496577e4b2e994edf204e9a8ae7c026eec95",
      "parents": [
        "7fccf0326536c1b245b98740d489abb9aab69a12"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Jul 25 19:45:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "kexec jump\n\nThis patch provides an enhancement to kexec/kdump.  It implements the\nfollowing features:\n\n- Backup/restore memory used by the original kernel before/after\n  kexec.\n\n- Save/restore CPU state before/after kexec.\n\nThe features of this patch can be used as a general method to call program in\nphysical mode (paging turning off).  This can be used to call BIOS code under\nLinux.\n\nkexec-tools needs to be patched to support kexec jump. The patches and\nthe precompiled kexec can be download from the following URL:\n\n       source: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-src_git_kh10.tar.bz2\n       patches: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-patches_git_kh10.tar.bz2\n       binary: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec_git_kh10\n\nUsage example of calling some physical mode code and return:\n\n1. Compile and install patched kernel with following options selected:\n\nCONFIG_X86_32\u003dy\nCONFIG_KEXEC\u003dy\nCONFIG_PM\u003dy\nCONFIG_KEXEC_JUMP\u003dy\n\n2. Build patched kexec-tool or download the pre-built one.\n\n3. Build some physical mode executable named such as \"phy_mode\"\n\n4. Boot kernel compiled in step 1.\n\n5. Load physical mode executable with /sbin/kexec. The shell command\n   line can be as follow:\n\n   /sbin/kexec --load-preserve-context --args-none phy_mode\n\n6. Call physical mode executable with following shell command line:\n\n   /sbin/kexec -e\n\nImplementation point:\n\nTo support jumping without reserving memory.  One shadow backup page (source\npage) is allocated for each page used by kexeced code image (destination\npage).  When do kexec_load, the image of kexeced code is loaded into source\npages, and before executing, the destination pages and the source pages are\nswapped, so the contents of destination pages are backupped.  Before jumping\nto the kexeced code image and after jumping back to the original kernel, the\ndestination pages and the source pages are swapped too.\n\nC ABI (calling convention) is used as communication protocol between\nkernel and called code.\n\nA flag named KEXEC_PRESERVE_CONTEXT for sys_kexec_load is added to\nindicate that the loaded kernel image is used for jumping back.\n\nNow, only the i386 architecture is supported.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1956a96de488feb05e95c08c9d5e80f63a4be2b1",
      "tree": "fd361f464386607e3d753e062ae7956e94c022e3",
      "parents": [
        "8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06"
      ],
      "author": {
        "name": "Alexis Bruemmer",
        "email": "alexisb@us.ibm.com",
        "time": "Fri Jul 25 19:44:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "x86 calgary: fix handling of devices that aren\u0027t behind the Calgary\n\nThe calgary code can give drivers addresses above 4GB which is very bad\nfor hardware that is only 32bit DMA addressable.\n\nWith this patch, the calgary code sets the global dma_ops to swiotlb or\nnommu properly, and the dma_ops of devices behind the Calgary/CalIOC2\nto calgary_dma_ops.  So the calgary code can handle devices safely that\naren\u0027t behind the Calgary/CalIOC2.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Alexis Bruemmer \u003calexisb@us.ibm.com\u003e\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06",
      "tree": "64090a84f4c4466f9f30ff46c993e0cede379052",
      "parents": [
        "c485b465a031b6f9b9a51300e0ee1f86efc6db87"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 25 19:44:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "dma-mapping: add the device argument to dma_mapping_error()\n\nAdd per-device dma_mapping_ops support for CONFIG_X86_64 as POWER\narchitecture does:\n\nThis enables us to cleanly fix the Calgary IOMMU issue that some devices\nare not behind the IOMMU (http://lkml.org/lkml/2008/5/8/423).\n\nI think that per-device dma_mapping_ops support would be also helpful for\nKVM people to support PCI passthrough but Andi thinks that this makes it\ndifficult to support the PCI passthrough (see the above thread).  So I\nCC\u0027ed this to KVM camp.  Comments are appreciated.\n\nA pointer to dma_mapping_ops to struct dev_archdata is added.  If the\npointer is non NULL, DMA operations in asm/dma-mapping.h use it.  If it\u0027s\nNULL, the system-wide dma_ops pointer is used as before.\n\nIf it\u0027s useful for KVM people, I plan to implement a mechanism to register\na hook called when a new pci (or dma capable) device is created (it works\nwith hot plugging).  It enables IOMMUs to set up an appropriate\ndma_mapping_ops per device.\n\nThe major obstacle is that dma_mapping_error doesn\u0027t take a pointer to the\ndevice unlike other DMA operations.  So x86 can\u0027t have dma_mapping_ops per\ndevice.  Note all the POWER IOMMUs use the same dma_mapping_error function\nso this is not a problem for POWER but x86 IOMMUs use different\ndma_mapping_error functions.\n\nThe first patch adds the device argument to dma_mapping_error.  The patch\nis trivial but large since it touches lots of drivers and dma-mapping.h in\nall the architecture.\n\nThis patch:\n\ndma_mapping_error() doesn\u0027t take a pointer to the device unlike other DMA\noperations.  So we can\u0027t have dma_mapping_ops per device.\n\nNote that POWER already has dma_mapping_ops per device but all the POWER\nIOMMUs use the same dma_mapping_error function.  x86 IOMMUs use device\nargument.\n\n[akpm@linux-foundation.org: fix sge]\n[akpm@linux-foundation.org: fix svc_rdma]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix bnx2x]\n[akpm@linux-foundation.org: fix s2io]\n[akpm@linux-foundation.org: fix pasemi_mac]\n[akpm@linux-foundation.org: fix sdhci]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix sparc]\n[akpm@linux-foundation.org: fix ibmvscsi]\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1ca9fda4b2f3413e4bc748b983f5585629ca0560",
      "tree": "377de3a94e8e42dbf33ff3e87041dcb3c7818429",
      "parents": [
        "071375bc76ee86e58592f4682030c81d410ddfd9"
      ],
      "author": {
        "name": "Chris McDermott",
        "email": "lcm@linux.vnet.ibm.com",
        "time": "Thu Jul 24 19:06:09 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 14:58:39 2008 +0200"
      },
      "message": "x86: fix IBM Summit based systems\u0027 phys_cpu_present_map on 32-bit kernels\n\nx86 kernels on IBM Summit based systems will only online 1 CPU because the\nphys_cpu_present_map is not set up correctly. Patch below applied to\n2.6.26-git10.\n\nSigned-off-by: Chris McDermott \u003clcm@linux.vnet.ibm.com\u003e\nTested-by: Tim Pepper \u003clnxninga@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "071375bc76ee86e58592f4682030c81d410ddfd9",
      "tree": "caa744ef6a873ffdd14befff35c58826f6c1f9a0",
      "parents": [
        "1f972768a1df1518f45adb6b8ffbf04fa1c99737"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 14:52:26 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 14:50:51 2008 +0200"
      },
      "message": "x86, RDC321x: remove gpio.h complications\n\nRemove the include/asm-x86/gpio.h specials, just use the generic\nversion.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "762b8291be6944bd891fbe2c8976a2b2e5bbc726",
      "tree": "4ce2572c050d473bd8dcde8bfbaad0ab830b1b1c",
      "parents": [
        "c6af5e9f8a57467df2e55e428316a43480174521",
        "7dcf2a9fced59e58e4694cdcf15850c01fdba89b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 12:01:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 12:01:37 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/random-2.6\n\n* git://git.infradead.org/~dwmw2/random-2.6:\n  remove dummy asm/kvm.h files\n  firmware: create firmware binaries during \u0027make modules\u0027.\n"
    },
    {
      "commit": "7dcf2a9fced59e58e4694cdcf15850c01fdba89b",
      "tree": "635476803ae017229f4a3dfaf7288d770b0dc1bf",
      "parents": [
        "44463f7dd6c8039904333e4374e5c6e9ad83006f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jul 01 19:27:16 2008 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Jul 25 14:35:50 2008 -0400"
      },
      "message": "remove dummy asm/kvm.h files\n\nThis patch removes the dummy asm/kvm.h files on architectures not (yet)\nsupporting KVM and uses the same conditional headers installation as\nalready used for a.out.h .\n\nAlso removed are superfluous install rules in the s390 and x86 Kbuild\nfiles (they are already in Kbuild.asm).\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "f22ab814a24e654b1de24db0c5f8b57b5ab2026a",
      "tree": "827f3fe1c94ba9cfd180f199ea6d2dc2dfa885df",
      "parents": [
        "bc64efd220dcd4449aef8dd2564d73127b583b09"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:47:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:39 2008 -0700"
      },
      "message": "include/asm/ptrace.h userspace headers cleanup\n\nThis patch contains the following cleanups for the asm/ptrace.h\nuserspace headers:\n\n- include/asm-generic/Kbuild.asm already lists ptrace.h, remove\n  the superfluous listings in the Kbuild files of the following\n  architectures:\n  - cris\n  - frv\n  - powerpc\n  - x86\n- don\u0027t expose function prototypes and macros to userspace:\n  - arm\n  - blackfin\n  - cris\n  - mn10300\n  - parisc\n- remove #ifdef CONFIG_\u0027s around #define\u0027s:\n  - blackfin\n  - m68knommu\n- sh: AFAIK __SH5__ should work in both kernel and userspace,\n      no need to leak CONFIG_SUPERH64 to userspace\n- xtensa: cosmetical change to remove empty\n            #ifndef __ASSEMBLY__ #else #endif\n          from the userspace headers\n\nNot changed by this patch is the fact that the following architectures\nhave a different struct pt_regs depending on CONFIG_ variables:\n- h8300\n- m68knommu\n- mips\n\nThis does not work in userspace.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nAcked-by: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nAcked-by: Chris Zankel \u003cchris@zankel.net\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7444a72effa632fcd8edc566f880d96fe213c73b",
      "tree": "89d3e70c22751a6b00091df2b4dce7202eb3b1f5",
      "parents": [
        "ff1d5c2f0268f4e32103536e2e65480b5b7b6530"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Fri Jul 25 01:46:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:30 2008 -0700"
      },
      "message": "gpiolib: allow user-selection\n\nThis patch adds functionality to the gpio-lib subsystem to make it\npossible to enable the gpio-lib code even if the architecture code didn\u0027t\nrequest to get it built in.\n\nThe archtitecture code does still need to implement the gpiolib accessor\nfunctions in its asm/gpio.h file.  This patch adds the implementations for\nx86 and PPC.\n\nWith these changes it is possible to run generic GPIO expansion cards on\nevery architecture that implements the trivial wrapper functions.  Support\nfor more architectures can easily be added.\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Samuel Ortiz \u003csameo@openedhand.com\u003e\nCc: Kumar Gala \u003cgalak@gate.crashing.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: 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": "b69c49b78457f681ecfb3147bd968434ee6559c1",
      "tree": "9557c950c21cf4336ccc403136ea11384150af31",
      "parents": [
        "62ec30d45ecbb85b5991474c8f04192697687495"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 25 01:45:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:28 2008 -0700"
      },
      "message": "clean up duplicated alloc/free_thread_info\n\nWe duplicate alloc/free_thread_info defines on many platforms (the\nmajority uses __get_free_pages/free_pages).  This patch defines common\ndefines and removes these duplicated defines.\n__HAVE_ARCH_THREAD_INFO_ALLOCATOR is introduced for platforms that do\nsomething different.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b30f3ae50cd03ef2ff433a5030fbf88dd8323528",
      "tree": "ec140aa507d73eb5f4dfb8d46ccbd9dd80ca84e7",
      "parents": [
        "b5684b83b1e1579bbbc80e703e990c0cccf5892c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 15:43:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 16:12:40 2008 -0700"
      },
      "message": "x86-64: Clean up \u0027save/restore_i387()\u0027 usage\n\nSuresh Siddha wants to fix a possible FPU leakage in error conditions,\nbut the fact that save/restore_i387() are inlines in a header file makes\nthat harder to do than necessary.  So start off with an obvious cleanup.\n\nThis just moves the x86-64 version of save/restore_i387() out of the\nheader file, and moves it to the only file that it is actually used in:\narch/x86/kernel/signal_64.c.  So exposing it in a header file was wrong\nto begin with.\n\n[ Side note: I\u0027d like to fix up some of the games we play with the\n  32-bit version of these functions too, but that\u0027s a separate\n  matter.  The 32-bit versions are shared - under different names\n  at that! - by both the native x86-32 code and the x86-64 32-bit\n  compatibility code ]\n\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b5684b83b1e1579bbbc80e703e990c0cccf5892c",
      "tree": "3f1b62b2320bce4d658d2ad0d4b77856499ac533",
      "parents": [
        "1481b9109fe771ec8b035d7760f42e36d2bed5d4",
        "1b8ebad87b459e2e1333fbf28005977245ff5402"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 14:55:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 14:55:09 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (76 commits)\n  ide: use proper printk() KERN_* levels in ide-probe.c\n  ide: fix for EATA SCSI HBA in ATA emulating mode\n  ide: remove stale comments from drivers/ide/Makefile\n  ide: enable local IRQs in all handlers for TASKFILE_NO_DATA data phase\n  ide-scsi: remove kmalloced struct request\n  ht6560b: remove old history\n  ht6560b: update email address\n  ide-cd: fix oops when using growisofs\n  gayle: release resources on ide_host_add() failure\n  palm_bk3710: add UltraDMA/100 support\n  ide: trivial sparse annotations\n  ide: ide-tape.c sparse annotations and unaligned access removal\n  ide: drop \u0027name\u0027 parameter from -\u003einit_chipset method\n  ide: prefix messages from IDE PCI host drivers by driver name\n  it821x: remove DECLARE_ITE_DEV() macro\n  it8213: remove DECLARE_ITE_DEV() macro\n  ide: include PCI device name in messages from IDE PCI host drivers\n  ide: remove \u003casm/ide.h\u003e for some archs\n  ide-generic: remove ide_default_{io_base,irq}() inlines (take 3)\n  ide-generic: is no longer needed on ppc32\n  ...\n"
    },
    {
      "commit": "2a8f7450f828eaee49d66f41f99ac2e54f1160a6",
      "tree": "e8762e9add74953a32ebd86c019638e5ed2d484d",
      "parents": [
        "f01d35d87f39ab794ddcdefadb79c11054bcbfbc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:31 2008 +0200"
      },
      "message": "ide: remove \u003casm/ide.h\u003e for some archs\n\n* Remove \u003clinux/irq.h\u003e include from \u003casm-ia64.h\u003e (\u003clinux/ide.h\u003e includes\n  \u003clinux/interrupt.h\u003e which is enough).\n\n* Remove \u003casm/ide.h\u003e for alpha/blackfin/h8300/ia64/m32r/sh/x86/xtensa\n  (this leaves us with arm/frv/m68k/mips/mn10300/parisc/powerpc/sparc[64]).\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "f01d35d87f39ab794ddcdefadb79c11054bcbfbc",
      "tree": "018c211b22e57819cc8456b4d85993bbdda92246",
      "parents": [
        "35bbac9a2f73a7e0967d0a1d3e3673e2590ef716"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:31 2008 +0200"
      },
      "message": "ide-generic: remove ide_default_{io_base,irq}() inlines (take 3)\n\nReplace ide_default_{io_base,irq}() inlines by legacy_{bases,irqs}[].\n\nv2:\nAdd missing zero-ing of hws[] (caught during testing by Borislav Petkov).\n\nv3:\nFix zero-oing of hws[] for _real_ this time.\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "d83b8b85cd56a083d30df73f3fd5e4714591b910",
      "tree": "1fac379e8d909361ecbf934645463a00e706dafc",
      "parents": [
        "2c9d86438a0104800da2a8ecdc1e27baf38ba6a4"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:30 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:30 2008 +0200"
      },
      "message": "ide: define MAX_HWIFS in \u003clinux/ide.h\u003e\n\n* Now that ide_hwif_t instances are allocated dynamically\n  the difference between MAX_HWIFS \u003d\u003d 2 and MAX_HWIFS \u003d\u003d 10\n  is ~100 bytes (x86-32) so use MAX_HWIFS \u003d\u003d 10 on all archs\n  except these ones that use MAX_HWIFS \u003d\u003d 1.\n\n* Define MAX_HWIFS in \u003clinux/ide.h\u003e instead of \u003casm/ide.h\u003e.\n\n[ Please note that avr32/cris/v850 have no \u003casm/ide.h\u003e\n  and alpha/ia64/sh always define CONFIG_IDE_MAX_HWIFS. ]\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "b6cd7da5be2522b62bbc48d41b36c828b88e02fe",
      "tree": "9c6089a431dfb7cd1539413656d343454607fdbe",
      "parents": [
        "dbdec839c4c2bfc8f2da8e50c06b9947e5ad0394"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:28 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Jul 24 22:53:28 2008 +0200"
      },
      "message": "ide-generic: remove \"no_pci_devices()\" quirk from ide_default_io_base()\n\nSince the decision to probe for ISA ide2-6 is now left to the user\n\"no_pci_devices()\" quirk is no longer needed and may be removed.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "6044110742bc2ae0577b962985e7c63e0634b2e9",
      "tree": "ab32f95f2b073d2bfcdf39909a718aa69ad127c6",
      "parents": [
        "7540081c6b16dc941895bca840749cabfd0d3b48",
        "04bbe430f73c6c31bbd067349c029e907e153a8d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 12:33:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 12:33:51 2008 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: fix header export, asm-x86/processor-flags.h, CONFIG_* leaks\n  x86: BUILD_IRQ say .text to avoid .data.percpu\n  xen: don\u0027t use sysret for sysexit32\n  x86: call early_cpu_init at the same point\n"
    },
    {
      "commit": "7540081c6b16dc941895bca840749cabfd0d3b48",
      "tree": "9e6b2270d700bf99489b570aa2b4c2c0b6cd0ead",
      "parents": [
        "3fde80e94c2bbffbb13f5faa3340cf438440ebea",
        "b552068999b0b05087c454e525b30b785c79dc9b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 12:24:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 12:24:40 2008 -0700"
      },
      "message": "Merge branch \u0027semaphore\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc\n\n* \u0027semaphore\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc:\n  Remove __DECLARE_SEMAPHORE_GENERIC\n  Remove asm/semaphore.h\n  Remove use of asm/semaphore.h\n  Add missing semaphore.h includes\n  Remove mention of semaphores from kernel-locking\n"
    },
    {
      "commit": "9fe5ad9c8cef9ad5873d8ee55d1cf00d9b607df0",
      "tree": "49fb04cf552192e566d2aa6e18f40585230cba5a",
      "parents": [
        "e38b36f325153eaadd1c2a7abc5762079233e540"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:29 2008 -0700"
      },
      "message": "flag parameters add-on: remove epoll_create size param\n\nRemove the size parameter from the new epoll_create syscall and renames the\nsyscall itself.  The updated test program follows.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003ctime.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_epoll_create2\n# ifdef __x86_64__\n#  define __NR_epoll_create2 291\n# elif defined __i386__\n#  define __NR_epoll_create2 329\n# else\n#  error \"need __NR_epoll_create2\"\n# endif\n#endif\n\n#define EPOLL_CLOEXEC O_CLOEXEC\n\nint\nmain (void)\n{\n  int fd \u003d syscall (__NR_epoll_create2, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"epoll_create2(0) failed\");\n      return 1;\n    }\n  int coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"epoll_create2(0) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  fd \u003d syscall (__NR_epoll_create2, EPOLL_CLOEXEC);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"epoll_create2(EPOLL_CLOEXEC) failed\");\n      return 1;\n    }\n  coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"epoll_create2(EPOLL_CLOEXEC) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4006553b06306b34054529477b06b68a1c66249b",
      "tree": "d4ebbe4a5294b0cec69fe4908b7b7c569f4ece03",
      "parents": [
        "ed8cae8ba01348bfd83333f4648dd807b04d7f08"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:28 2008 -0700"
      },
      "message": "flag parameters: inotify_init\n\nThis patch introduces the new syscall inotify_init1 (note: the 1 stands for\nthe one parameter the syscall takes, as opposed to no parameter before).  The\nvalues accepted for this parameter are function-specific and defined in the\ninotify.h header.  Here the values must match the O_* flags, though.  In this\npatch CLOEXEC support is introduced.\n\nThe following test must be adjusted for architectures other than x86 and\nx86-64 and in case the syscall numbers changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_inotify_init1\n# ifdef __x86_64__\n#  define __NR_inotify_init1 294\n# elif defined __i386__\n#  define __NR_inotify_init1 332\n# else\n#  error \"need __NR_inotify_init1\"\n# endif\n#endif\n\n#define IN_CLOEXEC O_CLOEXEC\n\nint\nmain (void)\n{\n  int fd;\n  fd \u003d syscall (__NR_inotify_init1, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"inotify_init1(0) failed\");\n      return 1;\n    }\n  int coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"inotify_init1(0) set close-on-exit\");\n      return 1;\n    }\n  close (fd);\n\n  fd \u003d syscall (__NR_inotify_init1, IN_CLOEXEC);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"inotify_init1(IN_CLOEXEC) failed\");\n      return 1;\n    }\n  coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"inotify_init1(O_CLOEXEC) does not set close-on-exit\");\n      return 1;\n    }\n  close (fd);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n[akpm@linux-foundation.org: add sys_ni stub]\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed8cae8ba01348bfd83333f4648dd807b04d7f08",
      "tree": "c71a1c8e771c1c55728bb7c40612fbdcefbc858a",
      "parents": [
        "336dd1f70ff62d7dd8655228caed4c5bfc818c56"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:28 2008 -0700"
      },
      "message": "flag parameters: pipe\n\nThis patch introduces the new syscall pipe2 which is like pipe but it also\ntakes an additional parameter which takes a flag value.  This patch implements\nthe handling of O_CLOEXEC for the flag.  I did not add support for the new\nsyscall for the architectures which have a special sys_pipe implementation.  I\nthink the maintainers of those archs have the chance to go with the unified\nimplementation but that\u0027s up to them.\n\nThe implementation introduces do_pipe_flags.  I did that instead of changing\nall callers of do_pipe because some of the callers are written in assembler.\nI would probably screw up changing the assembly code.  To avoid breaking code\ndo_pipe is now a small wrapper around do_pipe_flags.  Once all callers are\nchanged over to do_pipe_flags the old do_pipe function can be removed.\n\nThe following test must be adjusted for architectures other than x86 and\nx86-64 and in case the syscall numbers changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_pipe2\n# ifdef __x86_64__\n#  define __NR_pipe2 293\n# elif defined __i386__\n#  define __NR_pipe2 331\n# else\n#  error \"need __NR_pipe2\"\n# endif\n#endif\n\nint\nmain (void)\n{\n  int fd[2];\n  if (syscall (__NR_pipe2, fd, 0) !\u003d 0)\n    {\n      puts (\"pipe2(0) failed\");\n      return 1;\n    }\n  for (int i \u003d 0; i \u003c 2; ++i)\n    {\n      int coe \u003d fcntl (fd[i], F_GETFD);\n      if (coe \u003d\u003d -1)\n        {\n          puts (\"fcntl failed\");\n          return 1;\n        }\n      if (coe \u0026 FD_CLOEXEC)\n        {\n          printf (\"pipe2(0) set close-on-exit for fd[%d]\\n\", i);\n          return 1;\n        }\n    }\n  close (fd[0]);\n  close (fd[1]);\n\n  if (syscall (__NR_pipe2, fd, O_CLOEXEC) !\u003d 0)\n    {\n      puts (\"pipe2(O_CLOEXEC) failed\");\n      return 1;\n    }\n  for (int i \u003d 0; i \u003c 2; ++i)\n    {\n      int coe \u003d fcntl (fd[i], F_GETFD);\n      if (coe \u003d\u003d -1)\n        {\n          puts (\"fcntl failed\");\n          return 1;\n        }\n      if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n        {\n          printf (\"pipe2(O_CLOEXEC) does not set close-on-exit for fd[%d]\\n\", i);\n          return 1;\n        }\n    }\n  close (fd[0]);\n  close (fd[1]);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "336dd1f70ff62d7dd8655228caed4c5bfc818c56",
      "tree": "1441b76ea5f08f44167f41867f3555ac53712ebb",
      "parents": [
        "a0998b50c3f0b8fdd265c63e0032f86ebe377dbf"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:28 2008 -0700"
      },
      "message": "flag parameters: dup2\n\nThis patch adds the new dup3 syscall.  It extends the old dup2 syscall by one\nparameter which is meant to hold a flag value.  Support for the O_CLOEXEC flag\nis added in this patch.\n\nThe following test must be adjusted for architectures other than x86 and\nx86-64 and in case the syscall numbers changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003ctime.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_dup3\n# ifdef __x86_64__\n#  define __NR_dup3 292\n# elif defined __i386__\n#  define __NR_dup3 330\n# else\n#  error \"need __NR_dup3\"\n# endif\n#endif\n\nint\nmain (void)\n{\n  int fd \u003d syscall (__NR_dup3, 1, 4, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"dup3(0) failed\");\n      return 1;\n    }\n  int coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"dup3(0) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  fd \u003d syscall (__NR_dup3, 1, 4, O_CLOEXEC);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"dup3(O_CLOEXEC) failed\");\n      return 1;\n    }\n  coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"dup3(O_CLOEXEC) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a0998b50c3f0b8fdd265c63e0032f86ebe377dbf",
      "tree": "9132ecb7ef925374edabcaeea44e0287eb5043f4",
      "parents": [
        "11fcb6c14676023d0bd437841f5dcd670e7990a0"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:28 2008 -0700"
      },
      "message": "flag parameters: epoll_create\n\nThis patch adds the new epoll_create2 syscall.  It extends the old epoll_create\nsyscall by one parameter which is meant to hold a flag value.  In this\npatch the only flag support is EPOLL_CLOEXEC which causes the close-on-exec\nflag for the returned file descriptor to be set.\n\nA new name EPOLL_CLOEXEC is introduced which in this implementation must\nhave the same value as O_CLOEXEC.\n\nThe following test must be adjusted for architectures other than x86 and\nx86-64 and in case the syscall numbers changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003ctime.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_epoll_create2\n# ifdef __x86_64__\n#  define __NR_epoll_create2 291\n# elif defined __i386__\n#  define __NR_epoll_create2 329\n# else\n#  error \"need __NR_epoll_create2\"\n# endif\n#endif\n\n#define EPOLL_CLOEXEC O_CLOEXEC\n\nint\nmain (void)\n{\n  int fd \u003d syscall (__NR_epoll_create2, 1, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"epoll_create2(0) failed\");\n      return 1;\n    }\n  int coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"epoll_create2(0) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  fd \u003d syscall (__NR_epoll_create2, 1, EPOLL_CLOEXEC);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"epoll_create2(EPOLL_CLOEXEC) failed\");\n      return 1;\n    }\n  coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"epoll_create2(EPOLL_CLOEXEC) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b087498eb5605673b0f260a7620d91818cd72304",
      "tree": "977d9dbcd326a9582dfc5ad000995d26886c872e",
      "parents": [
        "9deb27baedb79759c3ab9435a7d8b841842d56e9"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:27 2008 -0700"
      },
      "message": "flag parameters: eventfd\n\nThis patch adds the new eventfd2 syscall.  It extends the old eventfd\nsyscall by one parameter which is meant to hold a flag value.  In this\npatch the only flag support is EFD_CLOEXEC which causes the close-on-exec\nflag for the returned file descriptor to be set.\n\nA new name EFD_CLOEXEC is introduced which in this implementation must\nhave the same value as O_CLOEXEC.\n\nThe following test must be adjusted for architectures other than x86 and\nx86-64 and in case the syscall numbers changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_eventfd2\n# ifdef __x86_64__\n#  define __NR_eventfd2 290\n# elif defined __i386__\n#  define __NR_eventfd2 328\n# else\n#  error \"need __NR_eventfd2\"\n# endif\n#endif\n\n#define EFD_CLOEXEC O_CLOEXEC\n\nint\nmain (void)\n{\n  int fd \u003d syscall (__NR_eventfd2, 1, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"eventfd2(0) failed\");\n      return 1;\n    }\n  int coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"eventfd2(0) sets close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  fd \u003d syscall (__NR_eventfd2, 1, EFD_CLOEXEC);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"eventfd2(EFD_CLOEXEC) failed\");\n      return 1;\n    }\n  coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"eventfd2(EFD_CLOEXEC) does not set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n[akpm@linux-foundation.org: add sys_ni stub]\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9deb27baedb79759c3ab9435a7d8b841842d56e9",
      "tree": "1c88393ba30db851ca0bb93c4e656d4e5dbb22b9",
      "parents": [
        "7d9dbca34240ebb6ff88d8a29c6c7bffd098f0c1"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:27 2008 -0700"
      },
      "message": "flag parameters: signalfd\n\nThis patch adds the new signalfd4 syscall.  It extends the old signalfd\nsyscall by one parameter which is meant to hold a flag value.  In this\npatch the only flag support is SFD_CLOEXEC which causes the close-on-exec\nflag for the returned file descriptor to be set.\n\nA new name SFD_CLOEXEC is introduced which in this implementation must\nhave the same value as O_CLOEXEC.\n\nThe following test must be adjusted for architectures other than x86 and\nx86-64 and in case the syscall numbers changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003csignal.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_signalfd4\n# ifdef __x86_64__\n#  define __NR_signalfd4 289\n# elif defined __i386__\n#  define __NR_signalfd4 327\n# else\n#  error \"need __NR_signalfd4\"\n# endif\n#endif\n\n#define SFD_CLOEXEC O_CLOEXEC\n\nint\nmain (void)\n{\n  sigset_t ss;\n  sigemptyset (\u0026ss);\n  sigaddset (\u0026ss, SIGUSR1);\n  int fd \u003d syscall (__NR_signalfd4, -1, \u0026ss, 8, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"signalfd4(0) failed\");\n      return 1;\n    }\n  int coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"signalfd4(0) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  fd \u003d syscall (__NR_signalfd4, -1, \u0026ss, 8, SFD_CLOEXEC);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"signalfd4(SFD_CLOEXEC) failed\");\n      return 1;\n    }\n  coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"signalfd4(SFD_CLOEXEC) does not set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n[akpm@linux-foundation.org: add sys_ni stub]\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aaca0bdca573f3f51ea03139f9c7289541e7bca3",
      "tree": "d25b0baa73b5301d91a5c848a896bad0fb719acc",
      "parents": [
        "a677a039be7243357d93502bff2b40850c942e2d"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:27 2008 -0700"
      },
      "message": "flag parameters: paccept\n\nThis patch is by far the most complex in the series.  It adds a new syscall\npaccept.  This syscall differs from accept in that it adds (at the userlevel)\ntwo additional parameters:\n\n- a signal mask\n- a flags value\n\nThe flags parameter can be used to set flag like SOCK_CLOEXEC.  This is\nimlpemented here as well.  Some people argued that this is a property which\nshould be inherited from the file desriptor for the server but this is against\nPOSIX.  Additionally, we really want the signal mask parameter as well\n(similar to pselect, ppoll, etc).  So an interface change in inevitable.\n\nThe flag value is the same as for socket and socketpair.  I think diverging\nhere will only create confusion.  Similar to the filesystem interfaces where\nthe use of the O_* constants differs, it is acceptable here.\n\nThe signal mask is handled as for pselect etc.  The mask is temporarily\ninstalled for the thread and removed before the call returns.  I modeled the\ncode after pselect.  If there is a problem it\u0027s likely also in pselect.\n\nFor architectures which use socketcall I maintained this interface instead of\nadding a system call.  The symmetry shouldn\u0027t be broken.\n\nThe following test must be adjusted for architectures other than x86 and\nx86-64 and in case the syscall numbers changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cerrno.h\u003e\n#include \u003cfcntl.h\u003e\n#include \u003cpthread.h\u003e\n#include \u003csignal.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003cnetinet/in.h\u003e\n#include \u003csys/socket.h\u003e\n#include \u003csys/syscall.h\u003e\n\n#ifndef __NR_paccept\n# ifdef __x86_64__\n#  define __NR_paccept 288\n# elif defined __i386__\n#  define SYS_PACCEPT 18\n#  define USE_SOCKETCALL 1\n# else\n#  error \"need __NR_paccept\"\n# endif\n#endif\n\n#ifdef USE_SOCKETCALL\n# define paccept(fd, addr, addrlen, mask, flags) \\\n  ({ long args[6] \u003d { \\\n       (long) fd, (long) addr, (long) addrlen, (long) mask, 8, (long) flags }; \\\n     syscall (__NR_socketcall, SYS_PACCEPT, args); })\n#else\n# define paccept(fd, addr, addrlen, mask, flags) \\\n  syscall (__NR_paccept, fd, addr, addrlen, mask, 8, flags)\n#endif\n\n#define PORT 57392\n\n#define SOCK_CLOEXEC O_CLOEXEC\n\nstatic pthread_barrier_t b;\n\nstatic void *\ntf (void *arg)\n{\n  pthread_barrier_wait (\u0026b);\n  int s \u003d socket (AF_INET, SOCK_STREAM, 0);\n  struct sockaddr_in sin;\n  sin.sin_family \u003d AF_INET;\n  sin.sin_addr.s_addr \u003d htonl (INADDR_LOOPBACK);\n  sin.sin_port \u003d htons (PORT);\n  connect (s, (const struct sockaddr *) \u0026sin, sizeof (sin));\n  close (s);\n\n  pthread_barrier_wait (\u0026b);\n  s \u003d socket (AF_INET, SOCK_STREAM, 0);\n  sin.sin_port \u003d htons (PORT);\n  connect (s, (const struct sockaddr *) \u0026sin, sizeof (sin));\n  close (s);\n  pthread_barrier_wait (\u0026b);\n\n  pthread_barrier_wait (\u0026b);\n  sleep (2);\n  pthread_kill ((pthread_t) arg, SIGUSR1);\n\n  return NULL;\n}\n\nstatic void\nhandler (int s)\n{\n}\n\nint\nmain (void)\n{\n  pthread_barrier_init (\u0026b, NULL, 2);\n\n  struct sockaddr_in sin;\n  pthread_t th;\n  if (pthread_create (\u0026th, NULL, tf, (void *) pthread_self ()) !\u003d 0)\n    {\n      puts (\"pthread_create failed\");\n      return 1;\n    }\n\n  int s \u003d socket (AF_INET, SOCK_STREAM, 0);\n  int reuse \u003d 1;\n  setsockopt (s, SOL_SOCKET, SO_REUSEADDR, \u0026reuse, sizeof (reuse));\n  sin.sin_family \u003d AF_INET;\n  sin.sin_addr.s_addr \u003d htonl (INADDR_LOOPBACK);\n  sin.sin_port \u003d htons (PORT);\n  bind (s, (struct sockaddr *) \u0026sin, sizeof (sin));\n  listen (s, SOMAXCONN);\n\n  pthread_barrier_wait (\u0026b);\n\n  int s2 \u003d paccept (s, NULL, 0, NULL, 0);\n  if (s2 \u003c 0)\n    {\n      puts (\"paccept(0) failed\");\n      return 1;\n    }\n\n  int coe \u003d fcntl (s2, F_GETFD);\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"paccept(0) set close-on-exec-flag\");\n      return 1;\n    }\n  close (s2);\n\n  pthread_barrier_wait (\u0026b);\n\n  s2 \u003d paccept (s, NULL, 0, NULL, SOCK_CLOEXEC);\n  if (s2 \u003c 0)\n    {\n      puts (\"paccept(SOCK_CLOEXEC) failed\");\n      return 1;\n    }\n\n  coe \u003d fcntl (s2, F_GETFD);\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"paccept(SOCK_CLOEXEC) does not set close-on-exec flag\");\n      return 1;\n    }\n  close (s2);\n\n  pthread_barrier_wait (\u0026b);\n\n  struct sigaction sa;\n  sa.sa_handler \u003d handler;\n  sa.sa_flags \u003d 0;\n  sigemptyset (\u0026sa.sa_mask);\n  sigaction (SIGUSR1, \u0026sa, NULL);\n\n  sigset_t ss;\n  pthread_sigmask (SIG_SETMASK, NULL, \u0026ss);\n  sigaddset (\u0026ss, SIGUSR1);\n  pthread_sigmask (SIG_SETMASK, \u0026ss, NULL);\n\n  sigdelset (\u0026ss, SIGUSR1);\n  alarm (4);\n  pthread_barrier_wait (\u0026b);\n\n  errno \u003d 0 ;\n  s2 \u003d paccept (s, NULL, 0, \u0026ss, 0);\n  if (s2 !\u003d -1 || errno !\u003d EINTR)\n    {\n      puts (\"paccept did not fail with EINTR\");\n      return 1;\n    }\n\n  close (s);\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n[akpm@linux-foundation.org: make it compile]\n[akpm@linux-foundation.org: add sys_ni stub]\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27ac792ca0b0a1e7e65f20342260650516c95864",
      "tree": "8e0bc93612da0803fe12303ccb75c837cd633c83",
      "parents": [
        "d92bc318547507a944a22e7ef936793dc0fe167f"
      ],
      "author": {
        "name": "Andrea Righi",
        "email": "righi.andrea@gmail.com",
        "time": "Wed Jul 23 21:28:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:21 2008 -0700"
      },
      "message": "PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures\n\nOn 32-bit architectures PAGE_ALIGN() truncates 64-bit values to the 32-bit\nboundary. For example:\n\n\tu64 val \u003d PAGE_ALIGN(size);\n\nalways returns a value \u003c 4GB even if size is greater than 4GB.\n\nThe problem resides in PAGE_MASK definition (from include/asm-x86/page.h for\nexample):\n\n#define PAGE_SHIFT      12\n#define PAGE_SIZE       (_AC(1,UL) \u003c\u003c PAGE_SHIFT)\n#define PAGE_MASK       (~(PAGE_SIZE-1))\n...\n#define PAGE_ALIGN(addr)       (((addr)+PAGE_SIZE-1)\u0026PAGE_MASK)\n\nThe \"~\" is performed on a 32-bit value, so everything in \"and\" with\nPAGE_MASK greater than 4GB will be truncated to the 32-bit boundary.\nUsing the ALIGN() macro seems to be the right way, because it uses\ntypeof(addr) for the mask.\n\nAlso move the PAGE_ALIGN() definitions out of include/asm-*/page.h in\ninclude/linux/mm.h.\n\nSee also lkml discussion: http://lkml.org/lkml/2008/6/11/237\n\n[akpm@linux-foundation.org: fix drivers/media/video/uvc/uvc_queue.c]\n[akpm@linux-foundation.org: fix v850]\n[akpm@linux-foundation.org: fix powerpc]\n[akpm@linux-foundation.org: fix arm]\n[akpm@linux-foundation.org: fix mips]\n[akpm@linux-foundation.org: fix drivers/media/video/pvrusb2/pvrusb2-dvb.c]\n[akpm@linux-foundation.org: fix drivers/mtd/maps/uclinux.c]\n[akpm@linux-foundation.org: fix powerpc]\nSigned-off-by: Andrea Righi \u003crighi.andrea@gmail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b4718e628dbf68a2dee23b5709e2aa3190409c56",
      "tree": "e685b2bd36a0fe731b128d2814996a693561d288",
      "parents": [
        "39c11e6c05b7fedbf7ed4df3908b25f622d56204"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jul 23 21:27:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:19 2008 -0700"
      },
      "message": "x86: add hugepagesz option on 64-bit\n\nAdd an hugepagesz\u003d...  option similar to IA64, PPC etc.  to x86-64.\n\nThis finally allows to select GB pages for hugetlbfs in x86 now that all\nthe infrastructure is in place.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\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": "a5516438959d90b071ff0a484ce4f3f523dc3152",
      "tree": "e356ba9364c76b93c176b4d4a262b7aca3ee8f91",
      "parents": [
        "b7ba30c679ed1eb7ed3ed8f281f6493282042bd4"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jul 23 21:27:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:17 2008 -0700"
      },
      "message": "hugetlb: modular state for hugetlb page size\n\nThe goal of this patchset is to support multiple hugetlb page sizes.  This\nis achieved by introducing a new struct hstate structure, which\nencapsulates the important hugetlb state and constants (eg.  huge page\nsize, number of huge pages currently allocated, etc).\n\nThe hstate structure is then passed around the code which requires these\nfields, they will do the right thing regardless of the exact hstate they\nare operating on.\n\nThis patch adds the hstate structure, with a single global instance of it\n(default_hstate), and does the basic work of converting hugetlb to use the\nhstate.\n\nFuture patches will add more hstate structures to allow for different\nhugetlbfs mounts to have different page sizes.\n\n[akpm@linux-foundation.org: coding-style fixes]\nAcked-by: Adam Litke \u003cagl@us.ibm.com\u003e\nAcked-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\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": "42b7772812d15b86543a23b82bd6070eef9a08b1",
      "tree": "10665ee01fe82ce17c68a6278d044531b1ed64c0",
      "parents": [
        "a352894d07059649398c4769dc8b645e1a1dad88"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Wed Jul 23 21:27:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:15 2008 -0700"
      },
      "message": "mm: remove double indirection on tlb parameter to free_pgd_range() \u0026 Co\n\nThe double indirection here is not needed anywhere and hence (at least)\nconfusing.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28b2ee20c7cba812b6f2ccf6d722cf86d00a84dc",
      "tree": "e8f1efd05c38c1cb26ca3ee051a454eb685fd122",
      "parents": [
        "0d71d10a4252a3938e6b70189bc776171c02e076"
      ],
      "author": {
        "name": "Rik van Riel",
        "email": "riel@redhat.com",
        "time": "Wed Jul 23 21:27:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:15 2008 -0700"
      },
      "message": "access_process_vm device memory infrastructure\n\nIn order to be able to debug things like the X server and programs using\nthe PPC Cell SPUs, the debugger needs to be able to access device memory\nthrough ptrace and /proc/pid/mem.\n\nThis patch:\n\nAdd the generic_access_phys access function and put the hooks in place\nto allow access_process_vm to access device or PPC Cell SPU memory.\n\n[riel@redhat.com: Add documentation for the vm_ops-\u003eaccess function]\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Benjamin Herrensmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2351ec533ed0dd56052ab96988d2161d5ecc8ed9",
      "tree": "f60585af065bc7728f55ff0681c3f3f1015ba0a1",
      "parents": [
        "6310e472717ed736c9bff9840febb71f7bb400ed"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Jul 24 08:09:32 2008 -0400"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Jul 24 08:31:12 2008 -0400"
      },
      "message": "Remove asm/semaphore.h\n\nAll users have now been converted to linux/semaphore.h and we don\u0027t need\nto keep these files around any longer.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "04bbe430f73c6c31bbd067349c029e907e153a8d",
      "tree": "9690157ea52c989a2accd52416cecf77710dec25",
      "parents": [
        "9d25d4db81833029d30b7b03cc1000cbbe09e192"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jul 21 15:06:35 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 24 12:49:53 2008 +0200"
      },
      "message": "x86: fix header export, asm-x86/processor-flags.h, CONFIG_* leaks\n\nApparently,\n\ncommit 6330a30a76c1e62d4b4ec238368957f8febf9113\nAuthor: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nDate:   Wed May 28 09:46:19 2008 +0200\n\n    x86: break mutual header inclusion\n\nintroduced some CONFIG names to processor-flags.h, which was exported in\n\ncommit 6093015db2bd9e70cf20cdd23be1a50733baafdd\nAuthor: Ingo Molnar \u003cmingo@elte.hu\u003e\nDate:   Sun Mar 30 11:45:23 2008 +0200\n\n    x86: cleanup replace most vm86 flags with flags from processor-flags.h, fix\n\nFix it by wrapping the CONFIG parts in __KERNEL__.\n\nReported-by: Olaf Hering \u003colaf@aepfle.de\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nCc: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Olaf Hering \u003colaf@aepfle.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7f9dce38378f0a4a298e885553d6bb7121376376",
      "tree": "5bfd688c9f356f7216bbc3cef3b4c10153de334b",
      "parents": [
        "26dcce0fabbef75ae426461edf21b5030bad60f3",
        "ba42059fbd0aa1ac91b582412b5fedb1258f241f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 23 19:36:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 23 19:36:53 2008 -0700"
      },
      "message": "Merge branch \u0027sched/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: hrtick_enabled() should use cpu_active()\n  sched, x86: clean up hrtick implementation\n  sched: fix build error, provide partition_sched_domains() unconditionally\n  sched: fix warning in inc_rt_tasks() to not declare variable \u0027rq\u0027 if it\u0027s not needed\n  cpu hotplug: Make cpu_active_map synchronization dependency clear\n  cpu hotplug, sched: Introduce cpu_active_map and redo sched domain managment (take 2)\n  sched: rework of \"prioritize non-migratable tasks over migratable ones\"\n  sched: reduce stack size in isolated_cpu_setup()\n  Revert parts of \"ftrace: do not trace scheduler functions\"\n\nFixed up conflicts in include/asm-x86/thread_info.h (due to the\nTIF_SINGLESTEP unification vs TIF_HRTICK_RESCHED removal) and\nkernel/sched_fair.c (due to cpu_active_map vs for_each_cpu_mask_nr()\nintroduction).\n"
    },
    {
      "commit": "26dcce0fabbef75ae426461edf21b5030bad60f3",
      "tree": "56c64fa47dc29f7ea5a8fd0cab0459fb0a05a2bc",
      "parents": [
        "d7b6de14a0ef8a376f9d57b867545b47302b7bfb",
        "eb6a12c2428d21a9f3e0f1a50e927d5fd80fc3d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 23 18:37:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 23 18:37:44 2008 -0700"
      },
      "message": "Merge branch \u0027cpus4096-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027cpus4096-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (31 commits)\n  NR_CPUS: Replace NR_CPUS in speedstep-centrino.c\n  cpumask: Provide a generic set of CPUMASK_ALLOC macros, FIXUP\n  NR_CPUS: Replace NR_CPUS in cpufreq userspace routines\n  NR_CPUS: Replace per_cpu(..., smp_processor_id()) with __get_cpu_var\n  NR_CPUS: Replace NR_CPUS in arch/x86/kernel/genapic_flat_64.c\n  NR_CPUS: Replace NR_CPUS in arch/x86/kernel/genx2apic_uv_x.c\n  NR_CPUS: Replace NR_CPUS in arch/x86/kernel/cpu/proc.c\n  NR_CPUS: Replace NR_CPUS in arch/x86/kernel/cpu/mcheck/mce_64.c\n  cpumask: Optimize cpumask_of_cpu in lib/smp_processor_id.c, fix\n  cpumask: Use optimized CPUMASK_ALLOC macros in the centrino_target\n  cpumask: Provide a generic set of CPUMASK_ALLOC macros\n  cpumask: Optimize cpumask_of_cpu in lib/smp_processor_id.c\n  cpumask: Optimize cpumask_of_cpu in kernel/time/tick-common.c\n  cpumask: Optimize cpumask_of_cpu in drivers/misc/sgi-xp/xpc_main.c\n  cpumask: Optimize cpumask_of_cpu in arch/x86/kernel/ldt.c\n  cpumask: Optimize cpumask_of_cpu in arch/x86/kernel/io_apic_64.c\n  cpumask: Replace cpumask_of_cpu with cpumask_of_cpu_ptr\n  Revert \"cpumask: introduce new APIs\"\n  cpumask: make for_each_cpu_mask a bit smaller\n  net: Pass reference to cpumask variable in net/sunrpc/svc.c\n  ...\n\nFix up trivial conflicts in drivers/cpufreq/cpufreq.c manually\n"
    },
    {
      "commit": "77be1fabd024b37423d12f832b1fbdb95dbdf494",
      "tree": "b1fa99ff9b1c0bcb63c7a602a425d72b24c1ede6",
      "parents": [
        "59438c9fc4f7a92c808c9049bc6b396f98bf954c"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Mon Jul 21 22:59:56 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 22 10:43:45 2008 +0200"
      },
      "message": "x86: add PTE_FLAGS_MASK\n\nPTE_PFN_MASK was getting lonely, so I made it a friend.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "59438c9fc4f7a92c808c9049bc6b396f98bf954c",
      "tree": "b86d6072612075bc256038a3430d86ab04778d51",
      "parents": [
        "c2e3277f875b83e5adc34e96989d6d87ec5f80f7"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Mon Jul 21 22:59:42 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 22 10:43:44 2008 +0200"
      },
      "message": "x86: rename PTE_MASK to PTE_PFN_MASK\n\nRusty, in his peevish way, complained that macros defining constants\nshould have a name which somewhat accurately reflects the actual\npurpose of the constant.\n\nAside from the fact that PTE_MASK gives no clue as to what\u0027s actually\nbeing masked, and is misleadingly similar to the functionally entirely\ndifferent PMD_MASK, PUD_MASK and PGD_MASK, I don\u0027t really see what the\nproblem is.\n\nBut if this patch silences the incessent noise, then it will have\nachieved its goal (TODO: write test-case).\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2e3277f875b83e5adc34e96989d6d87ec5f80f7",
      "tree": "c25f6dd50e136d720f8f35d689946b6d256d054b",
      "parents": [
        "988781dc3e1d9209192b04458d279815923f5e76"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Jul 22 15:40:46 2008 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 22 10:41:18 2008 +0200"
      },
      "message": "x86: fix pte_flags() to only return flags, fix lguest (updated)\n\n(Jeremy said:\n\trusty: use PTE_MASK\n\trusty: use PTE_MASK\n\trusty: use PTE_MASK\n When I asked:\n\tjsgf: does that include the NX flag?\n He responded eloquently:\n\trusty: use PTE_MASK\n\trusty: use PTE_MASK\n\tyes, it\u0027s the official constant of masking flags out of ptes\n)\n\nChange a15af1c9ea2750a9ff01e51615c45950bad8221b \u0027x86/paravirt: add\npte_flags to just get pte flags\u0027 removed lguest\u0027s private pte_flags()\nin favor of a generic one.\n\nUnfortunately, the generic one doesn\u0027t filter out the non-flags bits:\nthis results in lguest creating corrupt shadow page tables and blowing\nup host memory.\n\nSince noone is supposed to use the pfn part of pte_flags(), it seems\nsafest to always do the filtering.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-and-morning-tea-spilled-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cfc1b9a6a683c835a20d5b565ade55baf639f72f",
      "tree": "d9eb8b4a76185e6913ec542020f387a368132f9b",
      "parents": [
        "2e2dcc7631e331cf2e8396ce452e7f01e35f1182"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jul 21 21:35:38 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jul 21 21:35:38 2008 +0200"
      },
      "message": "x86: convert Dprintk to pr_debug\n\nThere are a couple of places where (P)Dprintk is used which is an old\ncompile time enabled printk wrapper. Convert it to the generic\npr_debug().\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "eb6a12c2428d21a9f3e0f1a50e927d5fd80fc3d0",
      "tree": "5ac6f43899648abeab1d43aad3107f664e7f13d5",
      "parents": [
        "c4762aba0b1f72659aae9ce37b772ca8bd8f06f4",
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 17:19:50 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 17:19:50 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into cpus4096-for-linus\n\nConflicts:\n\n\tnet/sunrpc/svc.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e2dcc7631e331cf2e8396ce452e7f01e35f1182",
      "tree": "5a02c9602db66bc8c8db9660899c0c4455d7464f",
      "parents": [
        "acee709cab689ec7703770e8b8cb5cc3a4abcb31",
        "1c29dd9a9e2f83ffb02e50bb3619c3b9db8fd526"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:45:56 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:45:56 2008 +0200"
      },
      "message": "Merge branch \u0027x86/paravirt-spinlocks\u0027 into x86/for-linus\n"
    },
    {
      "commit": "acee709cab689ec7703770e8b8cb5cc3a4abcb31",
      "tree": "258729f7d7bc385e08d471ade34bd3ce1e8ea280",
      "parents": [
        "33a37eb411d193851c334060780ab834ba534292",
        "5ff4789d045cdaec7629e027e4f8ff8e34308b81",
        "35b680557f95564f70f21a8d3f5c72e101fab260",
        "c4dc59ae7af8c1c116d2cb4dffba337f032a6bee",
        "7edf8891ad7aef5f4e97991fed6fb0e605e96ea0",
        "9781f39fd209cd93ab98b669814191acc67f32fd",
        "48fe4a76e27dc64b47f3d2a2af2b6bbf2b2f5b6b",
        "be54f9d1c8df93c4998e134a306652caaa58f67f",
        "77e442461c74068217b59b356cf18992c78ed896",
        "caadbdce240c43e3e46c82fce6c00eb7f01e1beb",
        "5e5a29bf2624a5984e1c36c3a2481ee91249ec9c",
        "e3a61b0a8c0e342e700a61cd554b01050f333a36",
        "fec0962e0bed407927b9ff54bb0596a3ab7e4b61",
        "fab3b58d3b242b5903f78d60d86803a8aecdf6de",
        "f2ba93929fdb91fd806be20e959a50f7db82790e",
        "48ae74443403ab25876959e84785f61bf421ccef",
        "3cabf37f6167125cb5185db05f5061650f685ab7",
        "7019cc2dd6fafcdc6b104005482dc910dcdbb797",
        "2ddf9b7b3e6660199269e34cfa27148440ddc3bf",
        "e66d90fb4abd0a27ee96f57a32fb561221c4d6ae"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:37:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:37:17 2008 +0200"
      },
      "message": "Merge branches \u0027x86/urgent\u0027, \u0027x86/amd-iommu\u0027, \u0027x86/apic\u0027, \u0027x86/cleanups\u0027, \u0027x86/core\u0027, \u0027x86/cpu\u0027, \u0027x86/fixmap\u0027, \u0027x86/gart\u0027, \u0027x86/kprobes\u0027, \u0027x86/memtest\u0027, \u0027x86/modules\u0027, \u0027x86/nmi\u0027, \u0027x86/pat\u0027, \u0027x86/reboot\u0027, \u0027x86/setup\u0027, \u0027x86/step\u0027, \u0027x86/unify-pci\u0027, \u0027x86/uv\u0027, \u0027x86/xen\u0027 and \u0027xen-64bit\u0027 into x86/for-linus\n"
    },
    {
      "commit": "e66d90fb4abd0a27ee96f57a32fb561221c4d6ae",
      "tree": "3337cba94c7444b06fdb0e8b487287d07b71f4a0",
      "parents": [
        "55ca089e2579de90f048aca2a3030b8b2f864813",
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:06:09 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:06:09 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into xen-64bit\n"
    },
    {
      "commit": "1c29dd9a9e2f83ffb02e50bb3619c3b9db8fd526",
      "tree": "b5691dd5aa48ac32fdbaef44afcbcc92f01592d3",
      "parents": [
        "32172561889868c0ea422ea8570f0413963a815f",
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:05:58 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:05:58 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/paravirt-spinlocks\n"
    },
    {
      "commit": "33a37eb411d193851c334060780ab834ba534292",
      "tree": "15eff4d19335ec69ef2c222c800a0073cf10b924",
      "parents": [
        "e27772b48df91a954a74b1411b57d83b945a58c7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 10:57:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 11:03:32 2008 +0200"
      },
      "message": "KVM: fix exception entry / build bug, on 64-bit\n\n-tip testing found this build bug:\n\n arch/x86/kvm/built-in.o:(.text.fixup+0x1): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0xb): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0x15): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0x1f): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0x29): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n\nIntroduced by commit 4ecac3fd. The problem is that \u0027push\u0027 will default\nto 32-bit, which is not wide enough as a fixup address. (and which would\ncrash on any real fixup event even if it was wide enough)\n\nIntroduce KVM_EX_PUSH to get the proper address push width on 64-bit too.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e27772b48df91a954a74b1411b57d83b945a58c7",
      "tree": "ebd4a434d9e3cbd0844109e4469f91daac581b59",
      "parents": [
        "d092633bff3b19faffc480fe9810805e7792a029",
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 11:02:45 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 11:02:45 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/urgent\n"
    },
    {
      "commit": "d6e88aec07aa8f6c7e4024f5734ec659fd7c5a40",
      "tree": "2f20376a678d720d2be4e5feab3f4049e0477a73",
      "parents": [
        "c65bbfa1d693d375da51f9c8aa9fb26f09fa19ed"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Thu Jul 10 16:53:33 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:39 2008 +0300"
      },
      "message": "KVM: Prefix some x86 low level function with kvm_, to avoid namespace issues\n\nFixes compilation with CONFIG_VMI enabled.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "7a5b56dfd3a682a51fc84682290d5147872a8e99",
      "tree": "f7b6f0e746df3c43ab8317d1c4b585334808e5fb",
      "parents": [
        "0adc8675d645940139d12477e5e05b8a0a7a1117"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jun 22 16:22:51 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:35 2008 +0300"
      },
      "message": "KVM: x86 emulator: lazily evaluate segment registers\n\nInstead of prefetching all segment bases before emulation, read them at the\nlast moment.  Since most of them are unneeded, we save some cycles on\nIntel machines where this is a bit expensive.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "f5b4edcd52e78556800f90d08bfc9126416ac82f",
      "tree": "5c40b9781cf18d66c9e71b837ffc3eaddac48ddb",
      "parents": [
        "84411d85dacdb6665578608c6a70fc8b819761a8"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jun 15 22:09:11 2008 -0700"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:34 2008 +0300"
      },
      "message": "KVM: x86 emulator: simplify rip relative decoding\n\nrip relative decoding is relative to the instruction pointer of the next\ninstruction; by moving address adjustment until after decoding is complete,\nwe remove the need to determine the instruction size.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "542472b53ea9e0add0ba23976018210191d84754",
      "tree": "8de46a03065f2fdf33485138f954a246e974070c",
      "parents": [
        "5f94c1741bdc7a336553122036e8a779e616ccbf"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "Laurent.Vivier@bull.net",
        "time": "Fri May 30 16:05:55 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:31 2008 +0300"
      },
      "message": "KVM: Add coalesced MMIO support (x86 part)\n\nThis patch enables coalesced MMIO for x86 architecture.\nIt defines KVM_MMIO_PAGE_OFFSET and KVM_CAP_COALESCED_MMIO.\nIt enables the compilation of coalesced_mmio.c.\n\nSigned-off-by: Laurent Vivier \u003cLaurent.Vivier@bull.net\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "3e6e0aab1ba1e8b354ce01f5659336f9aee69437",
      "tree": "50b4bae56f8f5672081e23b5595c3a6e45b12973",
      "parents": [
        "9ba075a664dff836fd6fb93f90fcc827f7683d91"
      ],
      "author": {
        "name": "Guillaume Thouvenin",
        "email": "guillaume.thouvenin@ext.bull.net",
        "time": "Tue May 27 10:18:46 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:27 2008 +0300"
      },
      "message": "KVM: Prefixes segment functions that will be exported with \"kvm_\"\n\nPrefixes functions that will be exported with kvm_.\nWe also prefixed set_segment() even if it still static\nto be coherent.\n\nsigned-off-by: Guillaume Thouvenin \u003cguillaume.thouvenin@ext.bull.net\u003e\nSigned-off-by: Laurent Vivier \u003claurent.vivier@bull.net\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "9ba075a664dff836fd6fb93f90fcc827f7683d91",
      "tree": "a5d939aa61833525a09fa2f346964c16a80f7957",
      "parents": [
        "81609e3e26508840a1b51414376f2541dd191483"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Mon May 26 20:06:35 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:26 2008 +0300"
      },
      "message": "KVM: MTRR support\n\nAdd emulation for the memory type range registers, needed by VMware esx 3.5,\nand by pci device assignment.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "81609e3e26508840a1b51414376f2541dd191483",
      "tree": "415e617271bc171ba5252b8d08e967bd6c088960",
      "parents": [
        "f08864b42a45581a64558aa5b6b673c77b97ee5d"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue May 27 16:26:01 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:26 2008 +0300"
      },
      "message": "KVM: Order segment register constants in the same way as cpu operand encoding\n\nThis can be used to simplify the x86 instruction decoder.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "f08864b42a45581a64558aa5b6b673c77b97ee5d",
      "tree": "d104bf34c951beffebb7c2402329f236a7bad7ad",
      "parents": [
        "3419ffc8e45a5344abc87684cbca6cdc5c9c8a01"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng.yang@intel.com",
        "time": "Thu May 15 18:23:25 2008 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:26 2008 +0300"
      },
      "message": "KVM: VMX: Enable NMI with in-kernel irqchip\n\nSigned-off-by: Sheng Yang \u003csheng.yang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "3419ffc8e45a5344abc87684cbca6cdc5c9c8a01",
      "tree": "53d00e67ba8844800d1f73242ce42fad117f0eaf",
      "parents": [
        "50d40d7fb9b09e68a657c68837fcfa067b70cc42"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng.yang@intel.com",
        "time": "Thu May 15 09:52:48 2008 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:25 2008 +0300"
      },
      "message": "KVM: IOAPIC/LAPIC: Enable NMI support\n\n[avi: fix ia64 build breakage]\n\nSigned-off-by: Sheng Yang \u003csheng.yang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "7cc8883074b040aa8c1ebd3a17463b0ea3a9ef16",
      "tree": "79feae8f0093534317d75f1776bd9f115d62dd91",
      "parents": [
        "543e42436643d68ad007d0bae2f485caac9c8a02"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue May 13 16:29:20 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:42:25 2008 +0300"
      },
      "message": "KVM: Remove decache_vcpus_on_cpu() and related callbacks\n\nObsoleted by the vmx-specific per-cpu list.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "4ecac3fd6dc2629ad76a658a486f081c44aef10e",
      "tree": "a078acb4c626432ac8cf887b911d912f4a316d06",
      "parents": [
        "1b7fcd3263e5f12dba43d27b64e1578bec070c28"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue May 13 13:23:38 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:41:43 2008 +0300"
      },
      "message": "KVM: Handle virtualization instruction #UD faults during reboot\n\nKVM turns off hardware virtualization extensions during reboot, in order\nto disassociate the memory used by the virtualization extensions from the\nprocessor, and in order to have the system in a consistent state.\nUnfortunately virtual machines may still be running while this goes on,\nand once virtualization extensions are turned off, any virtulization\ninstruction will #UD on execution.\n\nFix by adding an exception handler to virtualization instructions; if we get\nan exception during reboot, we simply spin waiting for the reset to complete.\nIf it\u0027s a true exception, BUG() so we can have our stack trace.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "1b7fcd3263e5f12dba43d27b64e1578bec070c28",
      "tree": "7f8d9679404f0b46803c6b1cf926235d170606ee",
      "parents": [
        "7682f2d0dd3ff5bd2756eac018a5b4e7e30ef16c"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Thu May 15 13:51:35 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:40:50 2008 +0300"
      },
      "message": "KVM: MMU: Fix false flooding when a pte points to page table\n\nThe KVM MMU tries to detect when a speculative pte update is not actually\nused by demand fault, by checking the accessed bit of the shadow pte.  If\nthe shadow pte has not been accessed, we deem that page table flooded and\nremove the shadow page table, allowing further pte updates to proceed\nwithout emulation.\n\nHowever, if the pte itself points at a page table and only used for write\noperations, the accessed bit will never be set since all access will happen\nthrough the emulator.\n\nThis is exactly what happens with kscand on old (2.4.x) HIGHMEM kernels.\nThe kernel points a kmap_atomic() pte at a page table, and then\nproceeds with read-modify-write operations to look at the dirty and accessed\nbits.  We get a false flood trigger on the kmap ptes, which results in the\nmmu spending all its time setting up and tearing down shadows.\n\nFix by setting the shadow accessed bit on emulated accesses.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "d2ebb4103ff349af6dac14955bf93e57487a6694",
      "tree": "5c205c2e36c4c4334855455336427d676e9535c0",
      "parents": [
        "af9ca2d703f4cefbf6441bfe127c4191092ad394"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Apr 30 17:56:04 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jul 20 12:40:48 2008 +0300"
      },
      "message": "KVM: SVM: add tracing support for TDP page faults\n\nTo distinguish between real page faults and nested page faults they should be\ntraced as different events. This is implemented by this patch.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "31656519e132f6612584815f128c83976a9aaaef",
      "tree": "595349fdcd65988d7a43d647594dcea8a8a4e80b",
      "parents": [
        "577b4a58d2e74a4d48050eeea3e3f952ce04eb86"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Jul 18 18:01:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 20 10:37:28 2008 +0200"
      },
      "message": "sched, x86: clean up hrtick implementation\n\nrandom uvesafb failures were reported against Gentoo:\n\n  http://bugs.gentoo.org/show_bug.cgi?id\u003d222799\n\nand Mihai Moldovan bisected it back to:\n\n\u003e 8f4d37ec073c17e2d4aa8851df5837d798606d6f is first bad commit\n\u003e commit 8f4d37ec073c17e2d4aa8851df5837d798606d6f\n\u003e Author: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n\u003e Date:   Fri Jan 25 21:08:29 2008 +0100\n\u003e\n\u003e    sched: high-res preemption tick\n\nLinus suspected it to be hrtick + vm86 interaction and observed:\n\n\u003e Btw, Peter, Ingo: I think that commit is doing bad things. They aren\u0027t\n\u003e _incorrect_ per se, but they are definitely bad.\n\u003e\n\u003e Why?\n\u003e\n\u003e Using random _TIF_WORK_MASK flags is really impolite for doing\n\u003e \"scheduling\" work. There\u0027s a reason that arch/x86/kernel/entry_32.S\n\u003e special-cases the _TIF_NEED_RESCHED flag: we don\u0027t want to exit out of\n\u003e vm86 mode unnecessarily.\n\u003e\n\u003e See the \"work_notifysig_v86\" label, and how it does that\n\u003e \"save_v86_state()\" thing etc etc.\n\nRight, I never liked having to fiddle with those TIF flags. Initially I\nneeded it because the hrtimer base lock could not nest in the rq lock.\nThat however is fixed these days.\n\nCurrently the only reason left to fiddle with the TIF flags is remote\nwakeups. We cannot program a remote cpu\u0027s hrtimer. I\u0027ve been thinking\nabout using the new and improved IPI function call stuff to implement\nhrtimer_start_on().\n\nHowever that does require that smp_call_function_single(.wait\u003d0) works\nfrom interrupt context - /me looks at the latest series from Jens - Yes\nthat does seem to be supported, good.\n\nHere\u0027s a stab at cleaning this stuff up ...\n\nMihai reported test success as well.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Mihai Moldovan \u003cionic@ionic.de\u003e\nCc: Michal Januszewski \u003cspock@gentoo.org\u003e\nCc: Antonino Daplas \u003cadaplas@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "94a1e869c7b96a9d30e260084866383a145fd8ae",
      "tree": "9331e15facc9af794ad1c21aaa231d4e5460eb80",
      "parents": [
        "1bd9d6b64e1474f1a03f8660e8721d746cffae57"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Jul 18 18:11:31 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 20 10:21:11 2008 +0200"
      },
      "message": "NR_CPUS: Replace per_cpu(..., smp_processor_id()) with __get_cpu_var\n\n  * Slight optimization when getting one\u0027s own cpu_info percpu data.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c4dc59ae7af8c1c116d2cb4dffba337f032a6bee",
      "tree": "09c40158db101e722aebdc6592291574d8f34f6b",
      "parents": [
        "63b5d7af2556a7de6bf72c5dd0b85a32fb4c3767"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 20 09:31:24 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 20 09:31:24 2008 +0200"
      },
      "message": "x86, VisWS: turn into generic arch, eliminate leftover files\n\nremove unused leftovers.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "63b5d7af2556a7de6bf72c5dd0b85a32fb4c3767",
      "tree": "83465d3c04f62c241d08cc7663328374e9edea4d",
      "parents": [
        "64898a8bad8c94ad7a4bd5cc86b66edfbb081f4a"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Sat Jul 19 18:02:26 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 20 09:25:52 2008 +0200"
      },
      "message": "x86: add -\u003epre_time_init to x86_quirks\n\nso NUMAQ can use that to call numaq_pre_time_init()\n\nThis allows us to remove a NUMAQ special from arch/x86/kernel/setup.c.\n\n(and paves the way to remove the NUMAQ subarch)\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "64898a8bad8c94ad7a4bd5cc86b66edfbb081f4a",
      "tree": "013c56a97a533c0843d28d838bc94e6de3da9e2c",
      "parents": [
        "3c9cb6de1e5ad37d1558fdb0d9d2bed5a7bac0d9"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Sat Jul 19 18:01:16 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 20 09:25:52 2008 +0200"
      },
      "message": "x86: extend and use x86_quirks to clean up NUMAQ code\n\nadd these new x86_quirks methods:\n\n\tint *mpc_record;\n\tint (*mpc_apic_id)(struct mpc_config_processor *m);\n\tvoid (*mpc_oem_bus_info)(struct mpc_config_bus *m, char *name);\n\tvoid (*mpc_oem_pci_bus)(struct mpc_config_bus *m);\n\tvoid (*smp_read_mpc_oem)(struct mp_config_oemtable *oemtable,\n                                    unsigned short oemsize);\n\n... and move NUMAQ related mps table handling to numaq_32.c.\n\nalso move the call to smp_read_mpc_oem() to smp_read_mpc() directly.\n\nShould not change functionality, albeit it would be nice to get it\ntested on real NUMAQ as well ...\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3c9cb6de1e5ad37d1558fdb0d9d2bed5a7bac0d9",
      "tree": "f579e0c0a09c6df7fc0fbf6e8008920eec325e2b",
      "parents": [
        "5f1f2b3d9dbaee82cd532f28da459adcbf611499"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Sat Jul 19 02:07:25 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jul 20 09:18:17 2008 +0200"
      },
      "message": "x86: introduce x86_quirks\n\nintroduce x86_quirks array of boot-time quirk methods.\n\nNo change in functionality intended.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "48fe4a76e27dc64b47f3d2a2af2b6bbf2b2f5b6b",
      "tree": "46649973dcd6bd5f1a7027730c6f824264b0059a",
      "parents": [
        "50515af207d410c9f228380e529c56f43c3de0bd"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Fri Jul 18 13:29:00 2008 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jul 18 16:17:52 2008 -0700"
      },
      "message": "x86: i386: reduce boot fixmap space\n\nAs 256 entries are needed, aligning to a 256-entry boundary is\nsufficient and still guarantees the single pte table requirement.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "08ad8afaa0f7343e9c64eec5dbbb178e390e03a2",
      "tree": "fbcc3f65431432c189c9ebf10cd434bc376acf5b",
      "parents": [
        "08e1a13e7d14ba5d6a22bf4b8c6e11128d3bcdfe"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Fri Jul 18 13:45:20 2008 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jul 18 15:55:09 2008 -0700"
      },
      "message": "x86: reduce force_mwait visibility\n\nIt\u0027s not used anywhere outside its single referencing file.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "08e1a13e7d14ba5d6a22bf4b8c6e11128d3bcdfe",
      "tree": "bb9de9c4d30b0b9ccba2bf98321e72ce84d021f9",
      "parents": [
        "369c99205f633d1e4038b15f5dc4a5500a4359c3"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Fri Jul 18 13:44:16 2008 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jul 18 14:39:37 2008 -0700"
      },
      "message": "x86: reduce forbid_dac\u0027s visibility\n\nIt\u0027s not used anywhere outside its declaring file.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "bb2c018b09b681d43f5e08124b83e362647ea82b",
      "tree": "d794902c78f9fdd04ed88a4b8d451ed6f9292ec0",
      "parents": [
        "82638844d9a8581bbf33201cc209a14876eca167",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 22:00:54 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 22:00:54 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into cpus4096\n\nConflicts:\n\n\tdrivers/acpi/processor_throttling.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6dc8ccaab6d8f63cbae1e6c73fe972b26f5376c",
      "tree": "c5643fcdc884a8d0bfc3f1bc28039cab7394e5bc",
      "parents": [
        "323ec001c6bb98eeabb5abbdbb8c8055d9496554",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 21:13:20 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 21:13:20 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/generic-dma-coherent\n\nConflicts:\n\n\tkernel/Makefile\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6ac8d51f01d345af5ea4209004a9ea29b2f20891",
      "tree": "4bed79ccabfe249e15be859e348ff835830e3715",
      "parents": [
        "3f9b5cc018566ad9562df0648395649aebdbc5e0"
      ],
      "author": {
        "name": "Jaswinder Singh",
        "email": "jaswinder@infradead.org",
        "time": "Tue Jul 15 21:09:13 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 18:51:57 2008 +0200"
      },
      "message": "x86: introducing asm-x86/traps.h\n\nDeclaring x86 traps under one hood.\nDeclaring x86 do_traps before defining them.\n\nSigned-off-by: Jaswinder Singh \u003cjaswinder@infradead.org\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f1b0c8d3d3b5ff9c0b14bb2383a4bc38d8922bd1",
      "tree": "b7d9f439d5b99d8b03bf490d4b17156414e48d45",
      "parents": [
        "d591b0a3ae25f587d0c4da1e1d1a425143590790",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 18:43:08 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 18:43:08 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/amd-iommu\n"
    },
    {
      "commit": "9781f39fd209cd93ab98b669814191acc67f32fd",
      "tree": "656791f621bc75b92ec207b19323194328d32371",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Thomas Petazzoni",
        "email": "thomas.petazzoni@free-electrons.com",
        "time": "Thu Jul 10 17:13:19 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 18:39:19 2008 +0200"
      },
      "message": "x86: consolidate the definition of the force_mwait variable\n\nThe force_mwait variable iss defined either in\narch/x86/kernel/cpu/amd.c or in arch/x86/kernel/setup_64.c, but it is\nonly initialized and used in arch/x86/kernel/process.c. This patch\nmoves the declaration to arch/x86/kernel/process.c.\n\nSigned-off-by: Thomas Petazzoni \u003cthomas.petazzoni@free-electrons.com\u003e\nCc: michael@free-electrons.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "723edb5060855ef36ddeca51a070784b0e0d16df",
      "tree": "2ddfbc77d5c48d806d8cea071c05301cbda6e893",
      "parents": [
        "8b2b9c1af065a45ef00c26964420489a53581779"
      ],
      "author": {
        "name": "Herton Ronaldo Krzesinski",
        "email": "herton@mandriva.com.br",
        "time": "Mon Jul 14 17:40:23 2008 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 17:59:13 2008 +0200"
      },
      "message": "Fix typos from signal_32/64.h merge\n\nFallout from commit 33185c504f8e521b398536b5a8d415779a24593c (\"x86:\nmerge signal_32/64.h\")\n\nThanks to Dick Streefland who provided an useful testcase on\nhttp://lkml.org/lkml/2008/3/17/205 (only applicable to 2.6.24.x), that\nhelped a lot as a deterministic way to bisect an issue that leaded to\nthis fix.\n\nSigned-off-by: Herton Ronaldo Krzesinski \u003cherton@mandriva.com.br\u003e\nSigned-off-by: Luiz Fernando N. Capitulino \u003clcapitulino@mandriva.com.br\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7019cc2dd6fafcdc6b104005482dc910dcdbb797",
      "tree": "0f8e67c0b5146543d407dc9f07ace6aeb4b0bd12",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Russ Anderson",
        "email": "rja@sgi.com",
        "time": "Wed Jul 09 15:27:19 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 14:35:14 2008 +0200"
      },
      "message": "x86 BIOS interface for RTC on SGI UV\n\nReal-time code needs to know the number of cycles per second\non SGI UV.  The information is provided via a run time BIOS\ncall.  This patch provides the linux side of that interface.\nThis is the first of several run time BIOS calls to be defined\nin uv/bios.h and bios_uv.c.\n\nNote that BIOS_CALL() is just a stub for now.  The bios\nside is being worked on.\n\nSigned-off-by: Russ Anderson \u003crja@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8450e85399031a192ffb34f0f9ac981173db6a31",
      "tree": "98ac828f3bf850063221440ff91865cfa16857a1",
      "parents": [
        "fbdb7da91b0382d4b148d8b43c2eb4bab642bb5b"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Sat Jul 05 19:53:46 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 14:32:38 2008 +0200"
      },
      "message": "x86, cleanup: fix description of __fls(): __fls(0) is undefined\n\nRicardo M. Correia spotted that the use of __fls() in fls64() did\nnot seem to make sense. In fact fls64()\u0027s implementation is fine,\nbut the description of __fls() was wrong. Fix that.\n\nReported-by: \"Ricardo M. Correia\" \u003cRicardo.M.Correia@Sun.COM\u003e\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "35b680557f95564f70f21a8d3f5c72e101fab260",
      "tree": "1bb558278166aae267849c1bdfc8616f47e5f696",
      "parents": [
        "49a66a0bcea8737e82035a31ad0d8cd64d027a5d"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Fri Jul 18 01:47:44 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 14:27:51 2008 +0200"
      },
      "message": "x86: more apic debugging\n\n[ mingo@elte.hu: picked up this patch from Maciej, lets make apic\u003ddebug\n                 print out more info - we had a lot of APIC changes ]\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "baa1318841d4bc95d783e6c15219b264720002c8",
      "tree": "b8c198abefeafa51e883e30d3d5b970980a61ffc",
      "parents": [
        "17c44697f293cf24cbbf51b4a5bd15f4fbc88b90"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Mon Jul 14 18:44:51 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 14:27:43 2008 +0200"
      },
      "message": "x86: APIC: Make apic_verbosity unsigned\n\nAs a microoptimisation, make apic_verbosity unsigned.  This will make\napic_printk(APIC_QUIET, ...) expand into just printk(...) with the\nsurrounding condition and a reference to apic_verbosity removed.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1f067167a83d1c7f80437fd1d32b55508aaca009",
      "tree": "6739a35c8c8c9e1a91a7c4fa79219278ac2316f8",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Jul 15 00:02:28 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 14:10:27 2008 +0200"
      },
      "message": "x86: seperate memtest from init_64.c\n\nit\u0027s separate functionality that deserves its own file.\n\nThis also prepares 32-bit memtest support.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "32172561889868c0ea422ea8570f0413963a815f",
      "tree": "a46ffe727f5ccbb2584355113865b1bbb12e3761",
      "parents": [
        "2fb5e1e101d1b1c9a1aeca7ad99a02b49241ba7b"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu Jul 17 14:22:34 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 13:42:01 2008 +0200"
      },
      "message": "x86: suppress sparse returning void warnings\n\ninclude/asm/paravirt.h:1404:2: warning: returning void-valued expression\ninclude/asm/paravirt.h:1414:2: warning: returning void-valued expression\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2fb5e1e101d1b1c9a1aeca7ad99a02b49241ba7b",
      "tree": "45c4575110c61ca181196c038e1579f0f4fb0174",
      "parents": [
        "34646bca474142e1424e5f6c4a33cb2ba0930ea1",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 13:41:27 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 13:41:27 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/paravirt-spinlocks\n\nConflicts:\n\n\tarch/x86/kernel/Makefile\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2b7207a6b53bd07be53b4753a3ea5ecb8d180048",
      "tree": "5c41a19ff29bfe8f7ab7cdc7d1e774ec863c1c9b",
      "parents": [
        "29cbeb0e17d9d2ca824f62f71cfa7360b3157112"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Wed Jul 16 23:31:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 13:14:08 2008 +0200"
      },
      "message": "ftrace: copy + paste typo in asm/ftrace.h\n\nSigned-off-by: Sebastian Siewior \u003cbigeasy@linutronix.de\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.co\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "593f4a788e5d09e9f00182561437461b0b564de4",
      "tree": "aafdcb1b8553e1d3012bc81e809131482300d3f2",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Wed Jul 16 19:15:30 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 12:51:21 2008 +0200"
      },
      "message": "x86: APIC: remove apic_write_around(); use alternatives\n\nUse alternatives to select the workaround for the 11AP Pentium erratum\nfor the affected steppings on the fly rather than build time.  Remove the\nX86_GOOD_APIC configuration option and replace all the calls to\napic_write_around() with plain apic_write(), protecting accesses to the\nESR as appropriate due to the 3AP Pentium erratum.  Remove\napic_read_around() and all its invocations altogether as not needed.\nRemove apic_write_atomic() and all its implementing backends.  The use of\nASM_OUTPUT2() is not strictly needed for input constraints, but I have\nused it for readability\u0027s sake.\n\nI had the feeling no one else was brave enough to do it, so I went ahead\nand here it is.  Verified by checking the generated assembly and tested\nwith both a 32-bit and a 64-bit configuration, also with the 11AP\n\"feature\" forced on and verified with gdb on /proc/kcore to work as\nexpected (as an 11AP machines are quite hard to get hands on these days).\nSome script complained about the use of \"volatile\", but apic_write() needs\nit for the same reason and is effectively a replacement for writel(), so I\nhave disregarded it.\n\nI am not sure what the policy wrt defconfig files is, they are generated\nand there is risk of a conflict resulting from an unrelated change, so I\nhave left changes to them out.  The option will get removed from them at\nthe next run.\n\nSome testing with machines other than mine will be needed to avoid some\nstupid mistake, but despite its volume, the change is not really that\nintrusive, so I am fairly confident that because it works for me, it will\neverywhere.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "48ae74443403ab25876959e84785f61bf421ccef",
      "tree": "dd6d8277f2f0e691edf49a38ff9a804f9a1532d0",
      "parents": [
        "1b82c9666a6f637ccb3a86d0fbe23d0427076815",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 10:14:56 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 10:14:56 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/step\n"
    },
    {
      "commit": "393d81aa026e19b6ede6f5f11955c97ee62e5df5",
      "tree": "a1d9511e488e19d41089ff0a736f6ce52a81c6e5",
      "parents": [
        "93a0886e2368eafb9df5e2021fb185195cee88b2",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 23:57:20 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 23:57:20 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into xen-64bit\n"
    },
    {
      "commit": "4fdf08b5bf8d449cc9897395895157c6ff8ddc41",
      "tree": "1f4cac0e1d7ef89bf24ba3fc9c0676f679aaaf4c",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Jul 17 11:29:24 2008 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Jul 17 11:29:24 2008 -0700"
      },
      "message": "x86: unify and correct the GDT_ENTRY() macro\n\nMerge the GDT_ENTRY() macro between arch/x86/boot/pm.c and\narch/x86/kernel/acpi/sleep.c and put the new one in\n\u003casm-x86/segment.h\u003e.\n\nWhile we\u0027re at it, correct the bitmasks for the limit and flags.  The\nnew version relies on using ULL constants in order to cause type\npromotion rather than explicit casts; this avoids having to include\n\u003clinux/types.h\u003e in \u003casm-x86/segments.h\u003e.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "2b04be7e8ab5756ea36e137dd03c8773d184e67e",
      "tree": "c08e68a41b055bf9d7823ffd6f8843b72098f020",
      "parents": [
        "bdec6cace4c3ecb6f90bcaa5424b92c97bd1df0f",
        "2567d71cc7acd99f0a0dd02e17fe17fd7df7b30c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 17 10:38:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 17 10:38:59 2008 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: fix asm/e820.h for userspace inclusion\n  x86: fix numaq_tsc_disable\n  x86: fix kernel_physical_mapping_init() for large x86 systems\n"
    },
    {
      "commit": "2567d71cc7acd99f0a0dd02e17fe17fd7df7b30c",
      "tree": "3fea316a13da0898212d34017b7c8945d06592a6",
      "parents": [
        "9354094a95aed456a46b353b1051a7e2fab29045"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Jul 15 15:02:27 2008 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 19:28:48 2008 +0200"
      },
      "message": "x86: fix asm/e820.h for userspace inclusion\n\nasm-x86/e820.h is included from userspace.  \u0027x86: make e820.c to have\ncommon functions\u0027 (b79cd8f1268bab57ff85b19d131f7f23deab2dee) broke it:\n\n\tmake -C Documentation/lguest\n\tcc -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -I../../include\nlguest.c  -lz -o lguest\n\tIn file included from ../../include/asm-x86/bootparam.h:8,\n\t                 from lguest.c:45:\n\t../../include/asm/e820.h:66: error: expected ‘)’ before ‘start’\n\t../../include/asm/e820.h:67: error: expected ‘)’ before ‘start’\n\t../../include/asm/e820.h:68: error: expected ‘)’ before ‘start’\n\t../../include/asm/e820.h:72: error: expected ‘\u003d’, ‘,’, ‘;’, ‘asm’\nor ‘__attribute__’ before ‘e820_update_range’\n\t...\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc7c65db2845a8d17432d89252c4227a9a7cb15f",
      "tree": "79030b0aaaafc04bc4303c21495134e744afc058",
      "parents": [
        "8a0ca91e1db5de5eb5b18cfa919d52ff8be375af",
        "58b6e5538460be358fdf1286d9a2fbcfcc2cfaba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 17:25:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 17:25:46 2008 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (72 commits)\n  Revert \"x86/PCI: ACPI based PCI gap calculation\"\n  PCI: remove unnecessary volatile in PCIe hotplug struct controller\n  x86/PCI: ACPI based PCI gap calculation\n  PCI: include linux/pm_wakeup.h for device_set_wakeup_capable\n  PCI PM: Fix pci_prepare_to_sleep\n  x86/PCI: Fix PCI config space for domains \u003e 0\n  Fix acpi_pm_device_sleep_wake() by providing a stub for CONFIG_PM_SLEEP\u003dn\n  PCI: Simplify PCI device PM code\n  PCI PM: Introduce pci_prepare_to_sleep and pci_back_from_sleep\n  PCI ACPI: Rework PCI handling of wake-up\n  ACPI: Introduce new device wakeup flag \u0027prepared\u0027\n  ACPI: Introduce acpi_device_sleep_wake function\n  PCI: rework pci_set_power_state function to call platform first\n  PCI: Introduce platform_pci_power_manageable function\n  ACPI: Introduce acpi_bus_power_manageable function\n  PCI: make pci_name use dev_name\n  PCI: handle pci_name() being const\n  PCI: add stub for pci_set_consistent_dma_mask()\n  PCI: remove unused arch pcibios_update_resource() functions\n  PCI: fix pci_setup_device()\u0027s sprinting into a const buffer\n  ...\n\nFixed up conflicts in various files (arch/x86/kernel/setup_64.c,\narch/x86/pci/irq.c, arch/x86/pci/pci.h, drivers/acpi/sleep/main.c,\ndrivers/pci/pci.c, drivers/pci/pci.h, include/acpi/acpi_bus.h) from x86\nand ACPI updates manually.\n"
    },
    {
      "commit": "da5e09a1b3e5a9fc0b15a3feb64e921ccc55ba74",
      "tree": "382a75c1180e458df826ef4efbc191f3f71275c1",
      "parents": [
        "c1e3b377ad48febba6f91b8ae42c44ee4d4ab45e"
      ],
      "author": {
        "name": "Zhao Yakui",
        "email": "yakui.zhao@intel.com",
        "time": "Tue Jun 24 18:01:09 2008 +0800"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed Jul 16 23:27:05 2008 +0200"
      },
      "message": "ACPI : Create \"idle\u003dnomwait\" bootparam\n\n\"idle\u003dnomwait\" disables the use of the MWAIT\ninstruction from both C1 (C1_FFH) and deeper (C2C3_FFH)\nC-states.\n\nWhen MWAIT is unavailable, the BIOS and OS generally\nnegotiate to use the HALT instruction for C1,\nand use IO accesses for deeper C-states.\n\nThis option is useful for power and performance\ncomparisons, and also to work around BIOS bugs\nwhere broken MWAIT support is advertised.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10807\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10914\n\nSigned-off-by: Zhao Yakui \u003cyakui.zhao@intel.com\u003e\nSigned-off-by: Li Shaohua \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "c1e3b377ad48febba6f91b8ae42c44ee4d4ab45e",
      "tree": "7893e4226f52c4001150066f544415c1b17741f5",
      "parents": [
        "5b53496a5ad79e91052f72761a7c5516b069bc99"
      ],
      "author": {
        "name": "Zhao Yakui",
        "email": "yakui.zhao@intel.com",
        "time": "Tue Jun 24 17:58:53 2008 +0800"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed Jul 16 23:27:05 2008 +0200"
      },
      "message": "ACPI: Create \"idle\u003dhalt\" bootparam\n\n\"idle\u003dhalt\" limits the idle loop to using\nthe halt instruction.  No MWAIT, no IO accesses,\nno C-states deeper than C1.\n\nIf something is broken in the idle code,\n\"idle\u003dhalt\" is a less severe workaround\nthan \"idle\u003dpoll\" which disables all power savings.\n\nSigned-off-by: Zhao Yakui \u003cyakui.zhao@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    }
  ],
  "next": "380fdd7585a4c2f41b48925eba85c0654b7b858b"
}
