)]}'
{
  "log": [
    {
      "commit": "5274f052e7b3dbd81935772eb551dfd0325dfa9d",
      "tree": "c79f813ec513660edb6f1e4a75cb366c6b84f53f",
      "parents": [
        "5d4fe2c1ce83c3e967ccc1ba3d580c1a5603a866"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 30 15:15:30 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 30 12:28:18 2006 -0800"
      },
      "message": "[PATCH] Introduce sys_splice() system call\n\nThis adds support for the sys_splice system call. Using a pipe as a\ntransport, it can connect to files or sockets (latter as output only).\n\nFrom the splice.c comments:\n\n   \"splice\": joining two ropes together by interweaving their strands.\n\n   This is the \"extended pipe\" functionality, where a pipe is used as\n   an arbitrary in-memory buffer. Think of a pipe as a small kernel\n   buffer that you can use to transfer data from one end to the other.\n\n   The traditional unix read/write is extended with a \"splice()\" operation\n   that transfers data buffers to or from a pipe buffer.\n\n   Named by Larry McVoy, original implementation from Linus, extended by\n   Jens to support splicing to files and fixing the initial implementation\n   bugs.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f45e4656ac0609437267b242953c07d523649f8d",
      "tree": "bd70b8ae51d2a29c435a6567852f32badafb2720",
      "parents": [
        "50fc9999ec27ad66ce6db31ebb03759f77962bc1"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Mar 28 01:56:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:06 2006 -0800"
      },
      "message": "[PATCH] arch/i386/kernel/microcode.c: remove the obsolete microcode_ioctl\n\nNowadays, even Debian stable ships a microcode_ctl utility recent enough to no\nlonger use this ioctl.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Tigran Aivazian \u003ctigran_aivazian@symantec.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e041c683412d5bf44dc2b109053e3b837b71742d",
      "tree": "9d271066ef379da0c0fb3b8cb4137abd5d2ebba0",
      "parents": [
        "76b81e2b0e2241accebcc68e126bc5ab958661b9"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Mar 27 01:16:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:50 2006 -0800"
      },
      "message": "[PATCH] Notifier chain update: API changes\n\nThe kernel\u0027s implementation of notifier chains is unsafe.  There is no\nprotection against entries being added to or removed from a chain while the\nchain is in use.  The issues were discussed in this thread:\n\n    http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113018709002036\u0026w\u003d2\n\nWe noticed that notifier chains in the kernel fall into two basic usage\nclasses:\n\n\t\"Blocking\" chains are always called from a process context\n\tand the callout routines are allowed to sleep;\n\n\t\"Atomic\" chains can be called from an atomic context and\n\tthe callout routines are not allowed to sleep.\n\nWe decided to codify this distinction and make it part of the API.  Therefore\nthis set of patches introduces three new, parallel APIs: one for blocking\nnotifiers, one for atomic notifiers, and one for \"raw\" notifiers (which is\nreally just the old API under a new name).  New kinds of data structures are\nused for the heads of the chains, and new routines are defined for\nregistration, unregistration, and calling a chain.  The three APIs are\nexplained in include/linux/notifier.h and their implementation is in\nkernel/sys.c.\n\nWith atomic and blocking chains, the implementation guarantees that the chain\nlinks will not be corrupted and that chain callers will not get messed up by\nentries being added or removed.  For raw chains the implementation provides no\nguarantees at all; users of this API must provide their own protections.  (The\nidea was that situations may come up where the assumptions of the atomic and\nblocking APIs are not appropriate, so it should be possible for users to\nhandle these things in their own way.)\n\nThere are some limitations, which should not be too hard to live with.  For\natomic/blocking chains, registration and unregistration must always be done in\na process context since the chain is protected by a mutex/rwsem.  Also, a\ncallout routine for a non-raw chain must not try to register or unregister\nentries on its own chain.  (This did happen in a couple of places and the code\nhad to be changed to avoid it.)\n\nSince atomic chains may be called from within an NMI handler, they cannot use\nspinlocks for synchronization.  Instead we use RCU.  The overhead falls almost\nentirely in the unregister routine, which is okay since unregistration is much\nless frequent that calling a chain.\n\nHere is the list of chains that we adjusted and their classifications.  None\nof them use the raw API, so for the moment it is only a placeholder.\n\n  ATOMIC CHAINS\n  -------------\narch/i386/kernel/traps.c:\t\ti386die_chain\narch/ia64/kernel/traps.c:\t\tia64die_chain\narch/powerpc/kernel/traps.c:\t\tpowerpc_die_chain\narch/sparc64/kernel/traps.c:\t\tsparc64die_chain\narch/x86_64/kernel/traps.c:\t\tdie_chain\ndrivers/char/ipmi/ipmi_si_intf.c:\txaction_notifier_list\nkernel/panic.c:\t\t\t\tpanic_notifier_list\nkernel/profile.c:\t\t\ttask_free_notifier\nnet/bluetooth/hci_core.c:\t\thci_notifier\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_chain\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_expect_chain\nnet/ipv6/addrconf.c:\t\t\tinet6addr_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_expect_chain\nnet/netlink/af_netlink.c:\t\tnetlink_chain\n\n  BLOCKING CHAINS\n  ---------------\narch/powerpc/platforms/pseries/reconfig.c:\tpSeries_reconfig_chain\narch/s390/kernel/process.c:\t\tidle_chain\narch/x86_64/kernel/process.c\t\tidle_notifier\ndrivers/base/memory.c:\t\t\tmemory_chain\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_policy_notifier_list\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_transition_notifier_list\ndrivers/macintosh/adb.c:\t\tadb_client_list\ndrivers/macintosh/via-pmu.c\t\tsleep_notifier_list\ndrivers/macintosh/via-pmu68k.c\t\tsleep_notifier_list\ndrivers/macintosh/windfarm_core.c\twf_client_list\ndrivers/usb/core/notify.c\t\tusb_notifier_list\ndrivers/video/fbmem.c\t\t\tfb_notifier_list\nkernel/cpu.c\t\t\t\tcpu_chain\nkernel/module.c\t\t\t\tmodule_notify_list\nkernel/profile.c\t\t\tmunmap_notifier\nkernel/profile.c\t\t\ttask_exit_notifier\nkernel/sys.c\t\t\t\treboot_notifier_list\nnet/core/dev.c\t\t\t\tnetdev_chain\nnet/decnet/dn_dev.c:\t\t\tdnaddr_chain\nnet/ipv4/devinet.c:\t\t\tinetaddr_chain\n\nIt\u0027s possible that some of these classifications are wrong.  If they are,\nplease let us know or submit a patch to fix them.  Note that any chain that\ngets called very frequently should be atomic, because the rwsem read-locking\nused for blocking chains is very likely to incur cache misses on SMP systems.\n(However, if the chain\u0027s callout routines may sleep then the chain cannot be\natomic.)\n\nThe patch set was written by Alan Stern and Chandra Seetharaman, incorporating\nmaterial written by Keith Owens and suggestions from Paul McKenney and Andrew\nMorton.\n\n[jes@sgi.com: restructure the notifier chain initialization macros]\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f17d3a5049d32392b79925c73a0cf99ce6d5af0",
      "tree": "3c2aa0cbe337684d353dd2cfb0c177b4ae15217c",
      "parents": [
        "8fdd6c6df7889dc89df3d9fe0f5bbe6733e39f48"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes updates\n\n- fix: initialize the robust list(s) to NULL in copy_process.\n\n- doc update\n\n- cleanup: rename _inuser to _inatomic\n\n- __user cleanups and other small cleanups\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8fdd6c6df7889dc89df3d9fe0f5bbe6733e39f48",
      "tree": "e037a0eb7214818ad4ef177c618ef1e302c2aed9",
      "parents": [
        "dfd4e3ec246355274c9cf62c6b04a1ee6fa3caba"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes: x86_64\n\nx86_64: add the futex_atomic_cmpxchg_inuser() assembly implementation, and\nwire up the new syscalls.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e9056f13bfcdd054a0c3d730e4e096748d8a363a",
      "tree": "876d70d99cb679f7c4cbf6609d6341cadfb5c57e",
      "parents": [
        "62ac285f3c701f0457a15fe01baa64a965c4f5f1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes: arch defaults\n\nThis patchset provides a new (written from scratch) implementation of robust\nfutexes, called \"lightweight robust futexes\".  We believe this new\nimplementation is faster and simpler than the vma-based robust futex solutions\npresented before, and we\u0027d like this patchset to be adopted in the upstream\nkernel.  This is version 1 of the patchset.\n\n  Background\n  ----------\n\nWhat are robust futexes?  To answer that, we first need to understand what\nfutexes are: normal futexes are special types of locks that in the\nnoncontended case can be acquired/released from userspace without having to\nenter the kernel.\n\nA futex is in essence a user-space address, e.g.  a 32-bit lock variable\nfield.  If userspace notices contention (the lock is already owned and someone\nelse wants to grab it too) then the lock is marked with a value that says\n\"there\u0027s a waiter pending\", and the sys_futex(FUTEX_WAIT) syscall is used to\nwait for the other guy to release it.  The kernel creates a \u0027futex queue\u0027\ninternally, so that it can later on match up the waiter with the waker -\nwithout them having to know about each other.  When the owner thread releases\nthe futex, it notices (via the variable value) that there were waiter(s)\npending, and does the sys_futex(FUTEX_WAKE) syscall to wake them up.  Once all\nwaiters have taken and released the lock, the futex is again back to\n\u0027uncontended\u0027 state, and there\u0027s no in-kernel state associated with it.  The\nkernel completely forgets that there ever was a futex at that address.  This\nmethod makes futexes very lightweight and scalable.\n\n\"Robustness\" is about dealing with crashes while holding a lock: if a process\nexits prematurely while holding a pthread_mutex_t lock that is also shared\nwith some other process (e.g.  yum segfaults while holding a pthread_mutex_t,\nor yum is kill -9-ed), then waiters for that lock need to be notified that the\nlast owner of the lock exited in some irregular way.\n\nTo solve such types of problems, \"robust mutex\" userspace APIs were created:\npthread_mutex_lock() returns an error value if the owner exits prematurely -\nand the new owner can decide whether the data protected by the lock can be\nrecovered safely.\n\nThere is a big conceptual problem with futex based mutexes though: it is the\nkernel that destroys the owner task (e.g.  due to a SEGFAULT), but the kernel\ncannot help with the cleanup: if there is no \u0027futex queue\u0027 (and in most cases\nthere is none, futexes being fast lightweight locks) then the kernel has no\ninformation to clean up after the held lock!  Userspace has no chance to clean\nup after the lock either - userspace is the one that crashes, so it has no\nopportunity to clean up.  Catch-22.\n\nIn practice, when e.g.  yum is kill -9-ed (or segfaults), a system reboot is\nneeded to release that futex based lock.  This is one of the leading\nbugreports against yum.\n\nTo solve this problem, \u0027Robust Futex\u0027 patches were created and presented on\nlkml: the one written by Todd Kneisel and David Singleton is the most advanced\nat the moment.  These patches all tried to extend the futex abstraction by\nregistering futex-based locks in the kernel - and thus give the kernel a\nchance to clean up.\n\nE.g.  in David Singleton\u0027s robust-futex-6.patch, there are 3 new syscall\nvariants to sys_futex(): FUTEX_REGISTER, FUTEX_DEREGISTER and FUTEX_RECOVER.\nThe kernel attaches such robust futexes to vmas (via\nvma-\u003evm_file-\u003ef_mapping-\u003erobust_head), and at do_exit() time, all vmas are\nsearched to see whether they have a robust_head set.\n\nLots of work went into the vma-based robust-futex patch, and recently it has\nimproved significantly, but unfortunately it still has two fundamental\nproblems left:\n\n - they have quite complex locking and race scenarios.  The vma-based\n   patches had been pending for years, but they are still not completely\n   reliable.\n\n - they have to scan _every_ vma at sys_exit() time, per thread!\n\nThe second disadvantage is a real killer: pthread_exit() takes around 1\nmicrosecond on Linux, but with thousands (or tens of thousands) of vmas every\npthread_exit() takes a millisecond or more, also totally destroying the CPU\u0027s\nL1 and L2 caches!\n\nThis is very much noticeable even for normal process sys_exit_group() calls:\nthe kernel has to do the vma scanning unconditionally!  (this is because the\nkernel has no knowledge about how many robust futexes there are to be cleaned\nup, because a robust futex might have been registered in another task, and the\nfutex variable might have been simply mmap()-ed into this process\u0027s address\nspace).\n\nThis huge overhead forced the creation of CONFIG_FUTEX_ROBUST, but worse than\nthat: the overhead makes robust futexes impractical for any type of generic\nLinux distribution.\n\nSo it became clear to us, something had to be done.  Last week, when Thomas\nGleixner tried to fix up the vma-based robust futex patch in the -rt tree, he\nfound a handful of new races and we were talking about it and were analyzing\nthe situation.  At that point a fundamentally different solution occured to\nme.  This patchset (written in the past couple of days) implements that new\nsolution.  Be warned though - the patchset does things we normally dont do in\nLinux, so some might find the approach disturbing.  Parental advice\nrecommended ;-)\n\n  New approach to robust futexes\n  ------------------------------\n\nAt the heart of this new approach there is a per-thread private list of robust\nlocks that userspace is holding (maintained by glibc) - which userspace list\nis registered with the kernel via a new syscall [this registration happens at\nmost once per thread lifetime].  At do_exit() time, the kernel checks this\nuser-space list: are there any robust futex locks to be cleaned up?\n\nIn the common case, at do_exit() time, there is no list registered, so the\ncost of robust futexes is just a simple current-\u003erobust_list !\u003d NULL\ncomparison.  If the thread has registered a list, then normally the list is\nempty.  If the thread/process crashed or terminated in some incorrect way then\nthe list might be non-empty: in this case the kernel carefully walks the list\n[not trusting it], and marks all locks that are owned by this thread with the\nFUTEX_OWNER_DEAD bit, and wakes up one waiter (if any).\n\nThe list is guaranteed to be private and per-thread, so it\u0027s lockless.  There\nis one race possible though: since adding to and removing from the list is\ndone after the futex is acquired by glibc, there is a few instructions window\nfor the thread (or process) to die there, leaving the futex hung.  To protect\nagainst this possibility, userspace (glibc) also maintains a simple per-thread\n\u0027list_op_pending\u0027 field, to allow the kernel to clean up if the thread dies\nafter acquiring the lock, but just before it could have added itself to the\nlist.  Glibc sets this list_op_pending field before it tries to acquire the\nfutex, and clears it after the list-add (or list-remove) has finished.\n\nThat\u0027s all that is needed - all the rest of robust-futex cleanup is done in\nuserspace [just like with the previous patches].\n\nUlrich Drepper has implemented the necessary glibc support for this new\nmechanism, which fully enables robust mutexes.  (Ulrich plans to commit these\nchanges to glibc-HEAD later today.)\n\nKey differences of this userspace-list based approach, compared to the vma\nbased method:\n\n - it\u0027s much, much faster: at thread exit time, there\u0027s no need to loop\n   over every vma (!), which the VM-based method has to do.  Only a very\n   simple \u0027is the list empty\u0027 op is done.\n\n - no VM changes are needed - \u0027struct address_space\u0027 is left alone.\n\n - no registration of individual locks is needed: robust mutexes dont need\n   any extra per-lock syscalls.  Robust mutexes thus become a very lightweight\n   primitive - so they dont force the application designer to do a hard choice\n   between performance and robustness - robust mutexes are just as fast.\n\n - no per-lock kernel allocation happens.\n\n - no resource limits are needed.\n\n - no kernel-space recovery call (FUTEX_RECOVER) is needed.\n\n - the implementation and the locking is \"obvious\", and there are no\n   interactions with the VM.\n\n  Performance\n  -----------\n\nI have benchmarked the time needed for the kernel to process a list of 1\nmillion (!) held locks, using the new method [on a 2GHz CPU]:\n\n - with FUTEX_WAIT set [contended mutex]: 130 msecs\n - without FUTEX_WAIT set [uncontended mutex]: 30 msecs\n\nI have also measured an approach where glibc does the lock notification [which\nit currently does for !pshared robust mutexes], and that took 256 msecs -\nclearly slower, due to the 1 million FUTEX_WAKE syscalls userspace had to do.\n\n(1 million held locks are unheard of - we expect at most a handful of locks to\nbe held at a time.  Nevertheless it\u0027s nice to know that this approach scales\nnicely.)\n\n  Implementation details\n  ----------------------\n\nThe patch adds two new syscalls: one to register the userspace list, and one\nto query the registered list pointer:\n\n asmlinkage long\n sys_set_robust_list(struct robust_list_head __user *head,\n                     size_t len);\n\n asmlinkage long\n sys_get_robust_list(int pid, struct robust_list_head __user **head_ptr,\n                     size_t __user *len_ptr);\n\nList registration is very fast: the pointer is simply stored in\ncurrent-\u003erobust_list.  [Note that in the future, if robust futexes become\nwidespread, we could extend sys_clone() to register a robust-list head for new\nthreads, without the need of another syscall.]\n\nSo there is virtually zero overhead for tasks not using robust futexes, and\neven for robust futex users, there is only one extra syscall per thread\nlifetime, and the cleanup operation, if it happens, is fast and\nstraightforward.  The kernel doesnt have any internal distinction between\nrobust and normal futexes.\n\nIf a futex is found to be held at exit time, the kernel sets the highest bit\nof the futex word:\n\n\t#define FUTEX_OWNER_DIED        0x40000000\n\nand wakes up the next futex waiter (if any). User-space does the rest of\nthe cleanup.\n\nOtherwise, robust futexes are acquired by glibc by putting the TID into the\nfutex field atomically.  Waiters set the FUTEX_WAITERS bit:\n\n\t#define FUTEX_WAITERS           0x80000000\n\nand the remaining bits are for the TID.\n\n  Testing, architecture support\n  -----------------------------\n\nI\u0027ve tested the new syscalls on x86 and x86_64, and have made sure the parsing\nof the userspace list is robust [ ;-) ] even if the list is deliberately\ncorrupted.\n\ni386 and x86_64 syscalls are wired up at the moment, and Ulrich has tested the\nnew glibc code (on x86_64 and i386), and it works for his robust-mutex\ntestcases.\n\nAll other architectures should build just fine too - but they wont have the\nnew syscalls yet.\n\nArchitectures need to implement the new futex_atomic_cmpxchg_inuser() inline\nfunction before writing up the syscalls (that function returns -ENOSYS right\nnow).\n\nThis patch:\n\nAdd placeholder futex_atomic_cmpxchg_inuser() implementations to every\narchitecture that supports futexes.  It returns -ENOSYS.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dc8ecb43701a78bd3c38e7fed1d1c76840579450",
      "tree": "4e9056ec8a86fc321384da15ba7a05bfda32e034",
      "parents": [
        "ad658b385e6308066f9084a7ea01305b223cd3a0"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Mar 27 01:15:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:44 2006 -0800"
      },
      "message": "[PATCH] unify pfn_to_page: x86_64 pfn_to_page\n\nx86_64 can use generic funcs.\nFor DISCONTIGMEM, CONFIG_OUT_OF_LINE_PFN_TO_PAGE is selected.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e9f28fa1eb9773bf65bae08288c6a0a38eef4a7",
      "tree": "ccfa4927ebc7a8f663f9ac9e7789a713a33253ff",
      "parents": [
        "77e4bfbcf071f795b54862455dce8902b3fc29c2"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Mon Mar 27 01:15:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:43 2006 -0800"
      },
      "message": "[PATCH] sched: new sched domain for representing multi-core\n\nAdd a new sched domain for representing multi-core with shared caches\nbetween cores.  Consider a dual package system, each package containing two\ncores and with last level cache shared between cores with in a package.  If\nthere are two runnable processes, with this appended patch those two\nprocesses will be scheduled on different packages.\n\nOn such systems, with this patch we have observed 8% perf improvement with\nspecJBB(2 warehouse) benchmark and 35% improvement with CFP2000 rate(with 2\nusers).\n\nThis new domain will come into play only on multi-core systems with shared\ncaches.  On other systems, this sched domain will be removed by domain\ndegeneration code.  This new domain can be also used for implementing power\nsavings policy (see OLS 2005 CMP kernel scheduler paper for more details..\nI will post another patch for power savings policy soon)\n\nMost of the arch/* file changes are for cpu_coregroup_map() implementation.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f33e2fbacce8008984db99c45120db31081577c5",
      "tree": "762b2bdbbc10e36cca280ed06710d7a4964fba88",
      "parents": [
        "a58259cddf9f824af27abf8960ed604bee53f7c1"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "mita@miraclelinux.com",
        "time": "Sun Mar 26 01:39:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:14 2006 -0800"
      },
      "message": "[PATCH] bitops: x86_64: use generic bitops\n\n- remove sched_find_first_bit()\n- remove generic_hweight{64,32,16,8}()\n- remove ext2_{set,clear,test,find_first_zero,find_next_zero}_bit()\n- remove minix_{test,set,test_and_clear,test,find_first_zero}_bit()\n\nSigned-off-by: Akinobu Mita \u003cmita@miraclelinux.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f271a6f557497830f3995138b0c78d8634b33863",
      "tree": "32d2fdb8f4e95c7414bdf8a2aa339daecabe14c8",
      "parents": [
        "3076a492a5e8dd624f237886646b35d12193502d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:58 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:39 2006 -0800"
      },
      "message": "[PATCH] x86_64: Removed duplicated declaration of force_iommu\n\nNoticed by Andrew Morton.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dcf36bfa5de6d4e37878d4c98b6986fee4eb8b4c",
      "tree": "6b18d3efd64e55f14209f40ee3232da2ea25d69e",
      "parents": [
        "40caa884650fc6931cf55918dbf7496c49b3ddf8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sat Mar 25 16:31:46 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: group memnodemap and memnodeshift in a memnode structure\n\npfn_to_page() and others need to access both memnode_shift and the very\nfirst bytes of memnodemap[]. If we force memnode_shift to be just before the\nmemnodemap array, we can reduce the memory footprint to one cache line\ninstead of two for most setups. This patch introduce a \u0027memnode\u0027 structure\nwhere shift and map[] are carefully placed.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "94949436191f69dac735919a9698612ef6b3dbba",
      "tree": "9648177bb03f620b6333153102e5bdd7e56f47ca",
      "parents": [
        "5d05f4de414c98348219b633401ad9c9a5348a8b"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:37 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: Make local_t 64bit instead of 32bit\n\nFor consistency with other architectures\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ba22f13563de5773701fc318ccaaa37b1fb6d294",
      "tree": "e29ddeaca4c9f7b1b5ef08804980600d0e089f5b",
      "parents": [
        "9d95dd849ccc43c4b21504e1829b5bed68cdb1bc"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:31 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove CONFIG_UNORDERED_IO\n\nIt was a failed experiment - all benchmarks done with it on both AMD\nand Intel showed it was a loss. That was probably because the store\nbuffers of the CPUs for write combining traffic weren\u0027t large enough.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da7ed9f98f6f3f18664f8ab24303f9428b9d78f8",
      "tree": "692653ace76f945b130eeb991b8e3857caf866b6",
      "parents": [
        "b1fc513d81b0f50f9543428ce95ec63ae70ab184"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Sat Mar 25 16:31:16 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:57 2006 -0800"
      },
      "message": "[PATCH] x86_64: timer interrupt lockup due to pending interrupt\n\no check_timer() routine fails while second kernel is booting after a crash\n  on an opetron box. Problem happens because timer vector (0x31) seems to be\n  locked.\n\no After a system crash, it is not safe to service interrupts any more, hence\n  interrupts are disabled. This leads to pending interrupts at LAPIC. LAPIC\n  sends these interrupts to the CPU during early boot of second kernel. Other\n  pending interrupts are discarded saying unexpected trap but timer interrupt\n  is serviced and CPU does not issue an LAPIC EOI because it think this\n  interrupt came from i8259 and sends ack to 8259. This leads to vector 0x31\n  locking as LAPIC does not clear respective ISR and keeps on waiting for\n  EOI.\n\no This patch issues extra EOI for the pending interrupts who have ISR set.\n\no Though today only timer seems to be the special case because in early\n  boot it thinks interrupts are coming from i8259 and uses\n  mask_and_ack_8259A() as ack handler and does not issue LAPIC EOI. But\n  probably doing it in generic manner for all vectors makes sense.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "df92004ce60a0bb60c8315903c0765873c34a702",
      "tree": "420782e1621f8d5d44dd8b4ecc640cbcfc0c4131",
      "parents": [
        "01d4bed417b5943577e9290fbf672ea9a449dc46"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Mar 25 16:31:01 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:56 2006 -0800"
      },
      "message": "[PATCH] x86_64: Reorder one field of the PDA to reduce padding\n\nThis reorders the mmu_state int in the pda, such that there is no more\npadding (there currently is 4 bytes of padding).  Boot tested.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "554d284ba90bc2306c31e5363789f05c320969c3",
      "tree": "8fb67f8c7bed5c6525a060b094ff461fb4bfb104",
      "parents": [
        "28456edeff2ef9273c55cd12e4b193208717d4cd"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:30:40 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t invoke OOM killer while allocating floppy DMA buffers\n\nFloppy can fall back to smaller buffers, so don\u0027t do OOM killing.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f2d3efedbecc04dc348d723e4c90b46731b3bb48",
      "tree": "982c7838a97a5c2420de392e5a36f49eaa1778b0",
      "parents": [
        "f083a329e63d471a5e9238e837772b1b76c218db"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:30:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Implement early DMI scanning\n\nThere are more and more cases where we need to know DMI information\nearly to work around bugs.  i386 already had early DMI scanning, but\nx86-64 didn\u0027t.  Implement this now.\n\nThis required some cleanup in the i386 code.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6edfba1b33c701108717f4e036320fc39abe1912",
      "tree": "48f69c4e9c103c88541d4c5e36fae9a688c45bb1",
      "parents": [
        "681558fdb5848f0a6dc248108f0f7323f7380857"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:49 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t define string functions to builtin\n\ngcc should handle this anyways, and it causes problems when\nsprintf is turned into strcpy by gcc behind our backs and\nthe C fallback version of strcpy is actually defining __builtin_strcpy\n\nThen drop -ffreestanding from the main Makefile because it isn\u0027t\nneeded anymore and implies -fno-builtin, which is wrong now.\n(it was only added for x86-64, so dropping it should be safe)\n\nNoticed by Roman Zippel\n\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "86ebcea899ff01274c1e8e15bf1d1f1cf5fac471",
      "tree": "d14b575e09c71aaf6f467a28c72f943ab815dd8f",
      "parents": [
        "8c914cb704a11460eec7ed2a572bb5e9bd513d24"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:43 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: remove dead do_softirq_thunk\n\nAppearantly a left-over...\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8c914cb704a11460eec7ed2a572bb5e9bd513d24",
      "tree": "3d735f0e33f474b296f106dee70935d77e267a74",
      "parents": [
        "85f9eebccde51e24896f31383f5b70776362e1a6"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:40 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: actively synchronize vmalloc area when registering certain callbacks\n\nWhile the modular aspect of the respective i386 patch doesn\u0027t apply to\nx86-64 (as the top level page directory entry is shared between modules\nand the base kernel), handlers registered with register_die_notifier()\nare still under similar constraints for touching ioremap()ed or\nvmalloc()ed memory. The likelihood of this problem becoming visible is\nof course significantly lower, as the assigned virtual addresses would\nhave to cross a 2**39 byte boundary. This is because the callback gets\ninvoked\n(a) in the page fault path before the top level page table propagation\ngets carried out (hence a fault to propagate the top level page table\nentry/entries mapping to module\u0027s code/data would nest infinitly) and\n(b) in the NMI path, where nested faults must absolutely not happen,\nsince otherwise the IRET from the nested fault re-enables NMIs,\npotentially resulting in nested NMI occurences.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2b514e74f4e59e3b8e54891580fef2c9ff6c7bd0",
      "tree": "106ddc876df761c2b3d9aa3ef27c576ad15ed54b",
      "parents": [
        "893efca9279d7a78bae6532de0524e53370819d5"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: eliminate set_debug()\n\nFor consistency and to have only a single place of definition, replace\nset_debug() uses with set_debugreg(), and eliminate the definition of\nthj former.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "abe059e7590fd4475285f2d037c70dec712a4572",
      "tree": "4c15ffcf11786a89cd87d0766c6d6717342aa722",
      "parents": [
        "913bd906019514579b3c7ec5ab9c463e89207a57"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: Rename struct node in x86-64 NUMA code to struct bootnode\n\nIt conflicts with the struct node in node.h\nActually the x86-64 version was there first, but ..\n\nSuggested by Jan Beulich\n\nCc: jbeulich@novell.com\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "913bd906019514579b3c7ec5ab9c463e89207a57",
      "tree": "8f73c66bf2b30afb2807814d97f9307af0508454",
      "parents": [
        "dca99a38bccceda9e079d4c95abefbd9028605fe"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:09 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: Increase the variability of the process stack on 64bit architectures\n\n8MB is not really very random, use 1GB (or more with larger page sizes)\ninstead.\n\nAlso use the low bits of the random generator output now instead of\nthrowing them away.\n\nOnly enabled on x86-64 right now. Other architectures need to add\na suitable STACK_RND_MASK\n\nCc: mingo@elte.hu\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f348d70a324e15afc701a494f32ec468abb7d1eb",
      "tree": "a4cb43429f7f08a6621c581bd99e4a03198e8c67",
      "parents": [
        "501f2499b897ca4be68b1acc7a4bc8cf66f5fd24"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Sat Mar 25 03:07:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:56 2006 -0800"
      },
      "message": "[PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications\n\nImplement the half-closed devices notifiation, by adding a new POLLRDHUP\n(and its alias EPOLLRDHUP) bit to the existing poll/select sets.  Since the\nexisting POLLHUP handling, that does not report correctly half-closed\ndevices, was feared to be changed, this implementation leaves the current\nPOLLHUP reporting unchanged and simply add a new bit that is set in the few\nplaces where it makes sense.  The same thing was discussed and conceptually\nagreed quite some time ago:\n\nhttp://lkml.org/lkml/2003/7/12/116\n\nSince this new event bit is added to the existing Linux poll infrastruture,\neven the existing poll/select system calls will be able to use it.  As far\nas the existing POLLHUP handling, the patch leaves it as is.  The\npollrdhup-2.6.16.rc5-0.10.diff defines the POLLRDHUP for all the existing\narchs and sets the bit in the six relevant files.  The other attached diff\nis the simple change required to sys/epoll.h to add the EPOLLRDHUP\ndefinition.\n\nThere is \"a stupid program\" to test POLLRDHUP delivery here:\n\n http://www.xmailserver.org/pollrdhup-test.c\n\nIt tests poll(2), but since the delivery is same epoll(2) will work equally.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "57f3ebccaa560d1eeb40b5c719773bed5cb0df46",
      "tree": "5c475fe84dbd352f9758f63c20a3c76c1b89c8ca",
      "parents": [
        "c44fec118b62baad3fc70e2ef3447729a1d9b194"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 24 03:15:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 24 07:33:19 2006 -0800"
      },
      "message": "[PATCH] remove ISA legacy functions: remove the helpers\n\nunused isa_...() helpers removed.\n\nAdrian Bunk:\nThe asm-sh part was rediffed due to unrelated changes.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3d1712c91df01d2573b934e972e231e8edb102c7",
      "tree": "71ed84ab8e8a59517ec1b7b1af082adc2beb1758",
      "parents": [
        "9b04c997b1120feefa1e6ee8e2902270bc055cd2"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "mita@miraclelinux.com",
        "time": "Fri Mar 24 03:15:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 24 07:33:15 2006 -0800"
      },
      "message": "[PATCH] x86_64: {set,clear,test}_bit() related cleanup and pci_mmcfg_init() fix\n\nWhile working on these patch set, I found several possible cleanup on x86-64\nand ia64.\n\nakpm: I stole this from Andi\u0027s queue.\n\nNot only does it clean up bitops.  It also unrelatedly changes the prototype\nof pci_mmcfg_init() and removes its arch_initcall().  It seems that the wrong\ntwo patches got joined together, but this is the one which has been tested.\n\nThis patch fixes the current x86_64 build error (the pci_mmcfg_init()\ndeclaration in arch/i386/pci/pci.h disagrees with the definition in\narch/x86_64/pci/mmconfig.c)\n\nThis also means that x86_64\u0027s pci_mmcfg_init() gets called in the same (new)\nmanner as x86\u0027s: from arch/i386/pci/init.c:pci_access_init(), rather than via\ninitcall.\n\nThe bitops cleanups came along for free.\n\nAll this worked OK in -mm testing (since 2.6.16-rc4-mm1) because x86_64 was\ntested with both patches applied.\n\nSigned-off-by: Akinobu Mita \u003cmita@miraclelinux.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Con Kolivas \u003ckernel@kolivas.org\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "394e3902c55e667945f6f1c2bdbc59842cce70f7",
      "tree": "f4bca0bdc0c291fda6f6949265aacec0669b9084",
      "parents": [
        "63872f87a151413100678f110d1556026002809e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Mar 23 03:01:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:17 2006 -0800"
      },
      "message": "[PATCH] more for_each_cpu() conversions\n\nWhen we stop allocating percpu memory for not-possible CPUs we must not touch\nthe percpu data for not-possible CPUs at all.  The correct way of doing this\nis to test cpu_possible() or to use for_each_cpu().\n\nThis patch is a kernel-wide sweep of all instances of NR_CPUS.  I found very\nfew instances of this bug, if any.  But the patch converts lots of open-coded\ntest to use the preferred helper macros.\n\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Christian Zankel \u003cchris@zankel.net\u003e\nCc: Philippe Elie \u003cphil.el@wanadoo.fr\u003e\nCc: Nathan Scott \u003cnathans@sgi.com\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0b2fcfdb8b4e7e379192f24ea2203163ddf5df1d",
      "tree": "1f3995e41ab12ff76e737389e0b59a40c0c73668",
      "parents": [
        "713729e8b993cb880225e2ced50a3f5ac05c2b3f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Mar 23 03:01:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:17 2006 -0800"
      },
      "message": "[PATCH] atomic: add_unless cmpxchg optimise\n\nWithout branch hints, the very unlikely chance of the loop repeating due to\ncmpxchg failure is unrolled with gcc-4 that I have tested.\n\nImprove this for architectures with a native cas/cmpxchg.  llsc archs\nshould try to implement this natively.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "804f1594cc3deb161e531a43d90c501f0db2635a",
      "tree": "81f7a7cea8dbf671c733df379c6582e36459e8da",
      "parents": [
        "6a2900b67652421b51fe25e4b86ecfec742b1f30"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@parisc-linux.org",
        "time": "Thu Mar 23 03:00:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:10 2006 -0800"
      },
      "message": "[PATCH] Move read_mostly definition to asm/cache.h\n\nSeems like needless clutter having a bunch of #if defined(CONFIG_$ARCH) in\ninclude/linux/cache.h.  Move the per architecture section definition to\nasm/cache.h, and keep the if-not-defined dummy case in linux/cache.h to\ncatch architectures which don\u0027t implement the section.\n\nVerified that symbols still go in .data.read_mostly on parisc,\nand the compile doesn\u0027t break.\n\nSigned-off-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f860591ffb29738cf5539b6fbf27f50dcdeb380",
      "tree": "4265e45c4a79d86a16cd5175a836e8c531be8117",
      "parents": [
        "aed75ff3caafce404d9be7f0c088716375be5279"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Wed Mar 22 00:08:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] Enable mprotect on huge pages\n\n2.6.16-rc3 uses hugetlb on-demand paging, but it doesn_t support hugetlb\nmprotect.\n\nFrom: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\n\n  Remove a test from the mprotect() path which checks that the mprotect()ed\n  range on a hugepage VMA is hugepage aligned (yes, really, the sense of\n  is_aligned_hugepage_range() is the opposite of what you\u0027d guess :-/).\n\n  In fact, we don\u0027t need this test.  If the given addresses match the\n  beginning/end of a hugepage VMA they must already be suitably aligned.  If\n  they don\u0027t, then mprotect_fixup() will attempt to split the VMA.  The very\n  first test in split_vma() will check for a badly aligned address on a\n  hugepage VMA and return -EINVAL if necessary.\n\nFrom: \"Chen, Kenneth W\" \u003ckenneth.w.chen@intel.com\u003e\n\n  On i386 and x86-64, pte flag _PAGE_PSE collides with _PAGE_PROTNONE.  The\n  identify of hugetlb pte is lost when changing page protection via mprotect.\n  A page fault occurs later will trigger a bug check in huge_pte_alloc().\n\n  The fix is to always make new pte a hugetlb pte and also to clean up\n  legacy code where _PAGE_PRESENT is forced on in the pre-faulting day.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin.zhang@intel.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "637029c6cb5efcbaa3d5831af4c1972bdd629779",
      "tree": "cd6d32dceef73f0ad467f495f51f331a459d01db",
      "parents": [
        "d4f0f122ec407bd1b4d1c773d0c87edc6a92cd26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Feb 27 20:41:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Feb 27 20:41:56 2006 -0800"
      },
      "message": "Revert \"[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems\"\n\nThis reverts commit 13a229abc25640813f1480c0478dfc6bdbc1c19e.\n\nQuoth Andi:\n  \"After some consideration and feedback from various people it turns\n   out this wasn\u0027t that good an idea.  It has some problems and needs\n   more work.  Since it was only an optimization anyways it\u0027s best to\n   just back it out again for now.\"\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e8b917775b572bc27de105f1317c2de4335db5b3",
      "tree": "940351af2d1690331d82a65331acf34254621936",
      "parents": [
        "e2c0388866dc12bef56b178b958f9b778fe6c687"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sun Feb 26 04:18:49 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:31 2006 -0800"
      },
      "message": "[PATCH] x86_64: Move the SMP time selection earlier\n\nSMP time selection originally ran after all CPUs were brought up because\nit needed to know the number of CPUs to decide if it needs an MP safe\ntimer or not.\n\nThis is not needed anymore because we know present CPUs early.\n\nThis fixes a couple of problems:\n - apicmaintimer didn\u0027t always work because it relied on state that was\n   set up time_init_gtod too late.\n - The output for the used timer in early kernel log was misleading\n   because time_init_gtod could actually change it later.  Now always\n   print the final timer choice\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e2c0388866dc12bef56b178b958f9b778fe6c687",
      "tree": "8a029b1e859215340fd7a029194bffdd7661e4c8",
      "parents": [
        "2eb1bdbad89b19c99f8ac1de1492cdabbff6b3d3"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sun Feb 26 04:18:46 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:30 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix the additional_cpus\u003d.. option\n\nIt didn\u0027t set up the CPU possible map early enough, so the\noption didn\u0027t actually work.\n\nNoticed by Heiko Carstens\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "13a229abc25640813f1480c0478dfc6bdbc1c19e",
      "tree": "bdb9da6ba327bd4f6ee64aa3ca1548670be395f2",
      "parents": [
        "5342fba5412cead88b61ead07168615dbeba1ee3"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sun Feb 26 04:18:31 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:30 2006 -0800"
      },
      "message": "[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems\n\nBig Unisys systems have multiple clusters too, but they have an\nsynchronized TSC.\n\nI\u0027m using the SMBIOS to check for vendor \u003d\u003d IBM.\n\nCc: Chris McDermott \u003clcm@us.ibm.com\u003e\nCc: \"Protasevich, Natalie\" \u003cNatalie.Protasevich@unisys.com\u003e\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f83f2b5fbab4585f4de4523c7879d60e3f85a248",
      "tree": "93377911ff62ca519e918bd061c77c79cb90fbda",
      "parents": [
        "60b08c67220cf6faef7410ac6adba23a8a743bf7"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sun Feb 26 04:18:25 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:30 2006 -0800"
      },
      "message": "[PATCH] x86_64: fix USER_PTRS_PER_PGD\n\nThe value, while currently unused in the native kernel, was off by one.\n\nSigned-Off-By: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "60b08c67220cf6faef7410ac6adba23a8a743bf7",
      "tree": "ad3c5f6933f06ce46ff41b0fe456a10900a04567",
      "parents": [
        "04a3d311c01d3ad287750c5c8d03fa614475af91"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Sun Feb 26 04:18:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:29 2006 -0800"
      },
      "message": "[PATCH] x86_64: no_iommu removal in pci-gart.c\n\nIn previous versions of pci-gart.c, no_iommu was used to determine if IOMMU was\ndisabled in the GART DMA mapping functions.  This changed in 2.6.16 and now\ngart_xxx() functions are only called if gart is enabled.  Therefore, uses of\nno_iommu in the GART code are no longer necessary and can be removed.\n\nAlso, it removes double deceleration of no_iommu and force_iommu in pci.h and\nproto.h, by removing the deceleration in pci.h.\n\nLastly, end_pfn off by one error.\n\nTested (along with patch 1/2) on dual opteron with gart enabled, iommu\u003dsoft,\nand iommu\u003doff.\n\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7fd67843b96f90f59c9a244a1bc25137978a3ff9",
      "tree": "600a7951745cc67f36075e5d60c30bd5ea842112",
      "parents": [
        "ab68805955ee3dd84a6aa76cd70e61fde996968d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Feb 16 23:42:07 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 17 08:00:40 2006 -0800"
      },
      "message": "[PATCH] x86_64: Disable tsc when apicpmtimer is active\n\nOtherwise it has no effect anyways.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f6164f3092832e0d9b12eed52e09a76bf39c64a",
      "tree": "507043c3eafa00ad7241f1102c860e486f8dc544",
      "parents": [
        "06fed33849c13af637c4d09e9ba27828fac9edd5"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Wed Feb 15 15:17:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 15 15:32:22 2006 -0800"
      },
      "message": "[PATCH] add asm-generic/mman.h\n\nMake new MADV_REMOVE, MADV_DONTFORK, MADV_DOFORK consistent across all\narches.  The idea is to make it possible to use them portably even before\ndistros include them in libc headers.\n\nMove common flags to asm-generic/mman.h\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f822566165dd46ff5de9bf895cfa6c51f53bb0c4",
      "tree": "e052f406d5a14140d17f76dc8914d33bbc8e5f1d",
      "parents": [
        "8861da31e3b3e3df7b05e7b157230de3d486e53b"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Tue Feb 14 13:53:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Feb 14 16:09:34 2006 -0800"
      },
      "message": "[PATCH] madvise MADV_DONTFORK/MADV_DOFORK\n\nCurrently, copy-on-write may change the physical address of a page even if the\nuser requested that the page is pinned in memory (either by mlock or by\nget_user_pages).  This happens if the process forks meanwhile, and the parent\nwrites to that page.  As a result, the page is orphaned: in case of\nget_user_pages, the application will never see any data hardware DMA\u0027s into\nthis page after the COW.  In case of mlock\u0027d memory, the parent is not getting\nthe realtime/security benefits of mlock.\n\nIn particular, this affects the Infiniband modules which do DMA from and into\nuser pages all the time.\n\nThis patch adds madvise options to control whether memory range is inherited\nacross fork.  Useful e.g.  for when hardware is doing DMA from/into these\npages.  Could also be useful to an application wanting to speed up its forks\nby cutting large areas out of consideration.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "33042a9ff4d126ba944b9dc3076665a2029e0a34",
      "tree": "d5cf22cebc02316058ad860feecef20742a4ae5e",
      "parents": [
        "e00d82d07fb112446586d225763d3572e64b7abf"
      ],
      "author": {
        "name": "Chris McDermott",
        "email": "lcm@us.ibm.com",
        "time": "Sat Feb 11 17:55:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 11 21:41:11 2006 -0800"
      },
      "message": "[PATCH] x86-64: Fix HPET timer on x460\n\n[description from AK]\n\nThe IBM Summit 3 chipset doesn\u0027t implement the HPET timer replacement\noption.  Since the current Linux code relies on it use a mixed mode with\nboth PIT for the interrupt and HPET counters for the time keeping.  That\nwas already implemented, but didn\u0027t work properly because it was still\nusing the last interrupt offset in HPET.  This resulted in x460 not\nbooting.  Fix this up by using the free running HPET counter.\n\nShouldn\u0027t affect any other machine because they either use full HPET mode\nor no HPET at all.\n\nTBD needs a similar 32bit fix.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Pallipadi, Venkatesh\" \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Bob Picco \u003cbob.picco@hp.com\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cff2b760096d1e6feaa31948e7af4abbefe47822",
      "tree": "9bd6d2796ffb8c6611ca06b74c6349f8f1289ce2",
      "parents": [
        "25bf368b3d98668c5d5f38e2201d8bca16e52680"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Sat Feb 11 17:55:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 11 21:41:10 2006 -0800"
      },
      "message": "[PATCH] fstatat64 support\n\nThe *at patches introduced fstatat and, due to inusfficient research, I\nused the newfstat functions generally as the guideline.  The result is that\non 32-bit platforms we don\u0027t have all the information needed to implement\nfstatat64.\n\nThis patch modifies the code to pass up 64-bit information if\n__ARCH_WANT_STAT64 is defined.  I renamed the syscall entry point to make\nthis clear.  Other archs will continue to use the existing code.  On x86-64\nthe compat code is implemented using a new sys32_ function.  this is what\nis done for the other stat syscalls as well.\n\nThis patch might break some other archs (those which define\n__ARCH_WANT_STAT64 and which already wired up the syscall).  Yet others\nmight need changes to accomodate the compatibility mode.  I really don\u0027t\nwant to do that work because all this stat handling is a mess (more so in\nglibc, but the kernel is also affected).  It should be done by the arch\nmaintainers.  I\u0027ll provide some stand-alone test shortly.  Those who are\neager could compile glibc and run \u0027make check\u0027 (no installation needed).\n\nThe patch below has been tested on x86 and x86-64.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b88f09364e94b05b66fb1441131e8460495a2f8",
      "tree": "006c9594aa26a8ee6805b337901ecf7823c17dd9",
      "parents": [
        "ca76a2f3a5202ec1618cb7e76aa8a573235e469f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Feb 09 00:35:50 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 08 15:52:15 2006 -0800"
      },
      "message": "[PATCH] x86-64: Add sys_unshare\n\nAdd unshare syscall for x86-64\n\nppoll/pselect are not ready yet, but add reservations.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "488fc08d914f2b07b701c9b9c811437cc1c1c518",
      "tree": "e84cdb61842a6b6f3286a83aad34f9e87857c32c",
      "parents": [
        "7714d5985bb7101a90fb427dc29dc592cf1b960e"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Tue Feb 07 12:58:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Feb 07 16:12:31 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix the node cpumask of a cpu going down\n\nCurrently, x86_64 and ia64 arches do not clear the corresponding bits in\nthe node\u0027s cpumask when a cpu goes down or cpu bring up is cancelled.  This\nis buggy since there are pieces of common code where the cpumask is checked\nin the cpu down code path to decide on things (like in the slab down path).\n PPC does the right thing, but x86_64 and ia64 don\u0027t (This was the reason\nSonny hit upon a slab bug during cpu offline on ppc and could not reproduce\non other arches).  This patch fixes it for x86_64.  I won\u0027t attempt ia64 as\nI cannot test it.\n\nCredit for spotting this should go to Alok.\n\n(akpm: this was applied, then reverted.  But it\u0027s OK now because we now use\nfor_each_cpu() in the right places).\n\nSigned-off-by: Alok N Kataria \u003calokk@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "911b0ad25d167fede6aadc05065b414ec7ab5086",
      "tree": "8e85fd8a70a75aa8b2d18b89b2ebd8fc843c361c",
      "parents": [
        "b53e8f68e07fb8f3ba9ab1812c9c186c09a50c16"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sat Feb 04 23:28:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 11:06:54 2006 -0800"
      },
      "message": "[PATCH] Fix \"value computed is not used\" compile warnings with gcc-4.1\n\nFix gcc4.1 compile warnings \"value computed is not used\" with\nset_current_state() and set_task_state() on i386/SMP and x86-64.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cef5076987dd545ac74f4efcf1c962be8eac34b0",
      "tree": "d404e17d44665c39006d6a5f25cd6b02819a4772",
      "parents": [
        "5b7b644ca9a12396a46fad825a973fb8bed17102"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 10:51:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 10:51:57 2006 -0800"
      },
      "message": "Revert \"[PATCH] x86_64: Fix the node cpumask of a cpu going down\"\n\nThis reverts commit 10f4dc8b27ac42f930ac55adb8c521264dc997f8.\n\nQuoth Andi Kleen:\n  \"Kiran decided that it makes the problem worse than it was before.\n   Fixing it fully requires more work which is too much for 2.6.16.  So\n   please revert that commit for now.\"\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3777a95903953c55f2309a89679b73c19ae5535b",
      "tree": "45a922a1ff82fc0f3d2a3865bfcb23d68c12792c",
      "parents": [
        "7f66ae48de27bc9506cff0f2991d74901a0c2f8d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:51:53 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:15 2006 -0800"
      },
      "message": "[PATCH] i386/x86-64: Don\u0027t ack the APIC for bad interrupts when the APIC is not enabled\n\nIt\u0027s bad juju to touch the APIC when it hasn\u0027t been enabled.\nI also moved ack_bad_irq for x86-64 out of line following i386.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0c3749c41f5eee0da36bbf92b2793338b4d8574f",
      "tree": "3af004c5533ab04297004f5ec40da4c6801b8fda",
      "parents": [
        "099f318b8d97490e58c595eb1b6d3415da5ccc03"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:51:41 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:15 2006 -0800"
      },
      "message": "[PATCH] x86_64: Calibrate APIC timer using PM timer\n\nOn some broken motherboards (at least one NForce3 based AMD64 laptop)\nthe PIT timer runs at a incorrect frequency.  This patch adds a new\noption \"apicpmtimer\" that allows to use the APIC timer and calibrate it\nusing the PMTimer.  It requires the earlier patch that allows to run the\nmain timer from the APIC.\n\nSpecifying apicpmtimer implies apicmaintimer.\n\nThe option defaults to off for now.\n\nI tested it on a few systems and the resulting APIC timer frequencies\nwere usually a bit off, but always \u003c1%, which should be tolerable.\n\nTBD figure out heuristic to enable this automatically on the affected\nsystems TBD perhaps do it on all NForce3s or using DMI?\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "10f4dc8b27ac42f930ac55adb8c521264dc997f8",
      "tree": "88d56b784d7ae5d84fd5e486f666b779c161d8af",
      "parents": [
        "7bcd3f34e262bbebffa954d80eab3a84f053da31"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Fri Feb 03 21:51:05 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix the node cpumask of a cpu going down\n\nCurrently, x86_64 and ia64 arches do not clear the corresponding bits\nin the node\u0027s cpumask when a cpu goes down or cpu bring up is cancelled.\nThis is buggy since there are pieces of common code where the cpumask is\nchecked in the cpu down code path to decide on things (like in  the slab\ndown path).  PPC does the right thing, but x86_64 and ia64 don\u0027t (This\nwas the reason Sonny hit upon a slab bug during cpu offline on ppc and\ncould not reproduce on other arches).  This patch fixes it for x86_64.\nI won\u0027t attempt ia64 as I cannot test it.\n\nCredit for spotting this should go to Alok.\n\nSigned-off-by: Alok N Kataria \u003calokk@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7bcd3f34e262bbebffa954d80eab3a84f053da31",
      "tree": "f0765da9eaa8024a2b1d67d3e43730cb32f99fa7",
      "parents": [
        "6bca52b544489b626c7d0db801df6b4aa3d5adb5"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:51:02 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: Undo the earlier changes to remove unrolled copy/memset functions\n\nThey cause quite bad performance regressions on Netburst\nThis is temporary until we can get new optimized functions\nfor these CPUs.\n\nThis undoes changes that were done in 2.6.15 and in 2.6.16-rc1,\nessentially bringing the code back to 2.6.14 level. Only change\nis I renamed the X86_FEATURE_K8_C flag to X86_FEATURE_REP_GOOD\nand fixed the check for the flag and also fixed some comments.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0dd2ea9af8f0eca43cf6200baa182b3aba307049",
      "tree": "68d19724e9c50e14ea7d900493a9af37ff26c948",
      "parents": [
        "6f3814cd2fb5ea4d53a7fa5b0635d68fa4036c1b"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Feb 03 21:50:56 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: [PATCH] timer resume\n\nAt resume time, TSC\u0027s value or something similar might be changed a lot\nagainst suspend time. This could make system gets a very big lost ticks.\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d5825\n\nSigned-off-by: Shaohua Li\u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "73dea47faeb96d54a984b9d7f4de564816966354",
      "tree": "6b1f090e9071e281367bc106c1b2ab05cb43e459",
      "parents": [
        "76b461c21468f41837283b7888d55f1c0671f719"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:50:50 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: Allow to run main time keeping from the local APIC interrupt\n\nAnother piece from the no-idle-tick patch.\n\nThis can be enabled with the \"apicmaintimer\" option.\n\nThis is mainly useful when the PIT/HPET interrupt is unreliable.\nNote there are some systems that are known to stop the APIC\ntimer in C3. For those it will never work, but this case\nshould be automatically detected.\n\nIt also only works with PM timer right now. When HPET is used\nthe way the main timer handler computes the delay doesn\u0027t work.\n\nIt should be a bit more efficient because there is one less\nregular interrupt to process on the boot processor.\n\nRequires earlier bugfix from Venkatesh\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "226d780909f71bebfa4dfffa21493244aa22dfdc",
      "tree": "ae9f0ff1e2b62076585825379c3b859ad3f3a1af",
      "parents": [
        "eddb6fb9a54cdc8c7c37e056a2b4bbbc8a128a36"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:50:44 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:12 2006 -0800"
      },
      "message": "[PATCH] x86_64: Define pmtmr_ioport to 0 when PM_TIMER is not available\n\nAvoids some ifdef mess later.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2c5d81a58106fa333467beab5f11dafab07b3e66",
      "tree": "7fabac3f87c1c0d385569cbc127df36e5ff6a05f",
      "parents": [
        "bb3b9cf122eb097ed9fe8ae50e1b0dbba9bbe447"
      ],
      "author": {
        "name": "Fernando Luis Vazquez Cao",
        "email": "fernando@intellilink.co.jp",
        "time": "Fri Feb 03 03:04:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 03 08:32:09 2006 -0800"
      },
      "message": "[PATCH] Compilation of kexec/kdump broken\n\nThe compilation of kexec/kdump seems to be broken for x86_64.  Remove the\ndependency of kexec on CONFIG_IA32_EMULATION.\n\nSigned-off-by: Fernando Vazquez \u003cfernando@intellilink.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "69dcc99199fe29b0a29471a3488d39d9d33b25fc",
      "tree": "4232ad9a782dee6abfe7fa20c95a49249195de8f",
      "parents": [
        "66ac5a294db70aa377c0d7bbdb0c4e3ef2349b7b"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin.zhang@intel.com",
        "time": "Fri Feb 03 03:04:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 03 08:32:09 2006 -0800"
      },
      "message": "[PATCH] Export cpu topology in sysfs\n\nThe patch implements cpu topology exportation by sysfs.\n\nItems (attributes) are similar to /proc/cpuinfo.\n\n1) /sys/devices/system/cpu/cpuX/topology/physical_package_id:\n\trepresent the physical package id of  cpu X;\n2) /sys/devices/system/cpu/cpuX/topology/core_id:\n\trepresent the cpu core id to cpu X;\n3) /sys/devices/system/cpu/cpuX/topology/thread_siblings:\n\trepresent the thread siblings to cpu X in the same core;\n4) /sys/devices/system/cpu/cpuX/topology/core_siblings:\n\trepresent the thread siblings to cpu X in the same physical package;\n\nTo implement it in an architecture-neutral way, a new source file,\ndriver/base/topology.c, is to export the 5 attributes.\n\nIf one architecture wants to support this feature, it just needs to\nimplement 4 defines, typically in file include/asm-XXX/topology.h.\nThe 4 defines are:\n#define topology_physical_package_id(cpu)\n#define topology_core_id(cpu)\n#define topology_thread_siblings(cpu)\n#define topology_core_siblings(cpu)\n\nThe type of **_id is int.\nThe type of siblings is cpumask_t.\n\nTo be consistent on all architectures, the 4 attributes should have\ndeafult values if their values are unavailable. Below is the rule.\n\n1) physical_package_id: If cpu has no physical package id, -1 is the\ndefault value.\n\n2) core_id: If cpu doesn\u0027t support multi-core, its core id is 0.\n\n3) thread_siblings: Just include itself, if the cpu doesn\u0027t support\nHT/multi-thread.\n\n4) core_siblings: Just include itself, if the cpu doesn\u0027t support\nmulti-core and HT/Multi-thread.\n\nSo be careful when declaring the 4 defines in include/asm-XXX/topology.h.\n\nIf an attribute isn\u0027t defined on an architecture, it won\u0027t be exported.\n\nThank Nathan, Greg, Andi, Paul and Venki.\n\nThe patch provides defines for i386/x86_64/ia64.\n\nSigned-off-by: Zhang, Yanmin \u003cyanmin.zhang@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "59ed2f59e4ea6a32f9591e378da7935f713a7000",
      "tree": "a1276a611dbb1bc44685ef8af363e99603e60047",
      "parents": [
        "9ad11ab48b1ad618bf47076e9e579f267f5306c2",
        "b8e4d89357fc434618a59c1047cac72641191805"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 22:06:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 22:06:15 2006 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n"
    },
    {
      "commit": "3a2ca64496cc1c9aeab1076e06d092b3ec74a43d",
      "tree": "e76fdb42c39184405bbe5c9dafdb04e9012c38c0",
      "parents": [
        "577bca9eff94193a06e426f8dbf6b3152247a209"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Feb 01 03:04:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 08:53:09 2006 -0800"
      },
      "message": "[PATCH] prototypes for *at functions \u0026 typo fix\n\nHere\u0027s the follow-up patch which introduces the prototypes for the new\nsyscalls.  There was also a typo in one of the new symbols.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9fdb62af92c741addbea15545f214a6e89460865",
      "tree": "a25ec569b5b49a1b4c1d2a825f7aab2b2a5e2154",
      "parents": [
        "3ee68c4af3fd7228c1be63254b9f884614f9ebb2",
        "876c184b31dc73cc3f38c5b86dee55d091a56769",
        "729b4d4ce1982c52040bbf22d6711cdf8db07ad8",
        "cf82478840188f8c8494c1d7a668a8ae170d0e07",
        "dacd9b80355525be0e3c519687868410e304ad1c",
        "63c94b68ec30847a6e2b36651703f41066f91480",
        "35f652b5ef4ef145ac5514f6302b3f4cebfbbad4",
        "1a38416cea8ac801ae8f261074721f35317613dc",
        "4a90c7e86202f46fa9af011bdbcdf36e355d1721",
        "aea19aa0780d4b006372fedab8434226e1cc7686",
        "757b18661ea0a0d890e8ce7b1a391e5b7d417d78",
        "c4bb6f5ad968540d7f9619565bacd18d7419b85f"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jan 24 17:52:48 2006 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jan 24 17:52:48 2006 -0500"
      },
      "message": "[ACPI] merge 3549 4320 4485 4588 4980 5483 5651 acpica asus fops pnpacpi branches into release\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "da9bb1d27b21cb24cbb6a2efb5d3c464d357a01e",
      "tree": "016b66985a651d071d3873e74b115108ddf0b3f5",
      "parents": [
        "2f768af73fea4c70f9046388a7ff648ad11f028e"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Jan 18 17:44:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:31 2006 -0800"
      },
      "message": "[PATCH] EDAC: core EDAC support code\n\nThis is a subset of the bluesmoke project core code, stripped of the NMI work\nwhich isn\u0027t ready to merge and some of the \"interesting\" proc functionality\nthat needs reworking or just has no place in kernel.  It requires no core\nkernel changes except the added scrub functions already posted.\n\nThe goal is to merge further functionality only after the core code is\naccepted and proven in the base kernel, and only at the point the upstream\nextras are really ready to merge.\n\nFrom: doug thompson \u003cnorsk5@xmission.com\u003e\n\n  This converts EDAC to sysfs and is the final chunk neccessary before EDAC\n  has a stable user space API and can be considered for submission into the\n  base kernel.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: doug thompson \u003cnorsk5@xmission.com\u003e\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "715b49ef2de6fcead0776d9349071670282faf65",
      "tree": "d09b77c804aba3b191dc0ceb294387cf730ede4b",
      "parents": [
        "3213e913b0d6baeb28aa1affbdd4bfa7efedc35f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Jan 18 17:44:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:30 2006 -0800"
      },
      "message": "[PATCH] EDAC: atomic scrub operations\n\nEDAC requires a way to scrub memory if an ECC error is found and the chipset\ndoes not do the work automatically.  That means rewriting memory locations\natomically with respect to all CPUs _and_ bus masters.  That means we can\u0027t\nuse atomic_add(foo, 0) as it gets optimised for non-SMP\n\nThis adds a function to include/asm-foo/atomic.h for the platforms currently\nsupported which implements a scrub of a mapped block.\n\nIt also adjusts a few other files include order where atomic.h is included\nbefore types.h as this now causes an error as atomic_scrub uses u32.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a60fc5190a31d98508ea6a76f74217f4104e74b7",
      "tree": "1c28d9124ad642e36f027f16c7c51837dc51d549",
      "parents": [
        "4f085507231e8003c66ed12e38c73b76e938ee95"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jan 18 17:43:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:29 2006 -0800"
      },
      "message": "[PATCH] vfs: *at functions: x86_64\n\nWire up the x86_64 syscalls.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2ddb55f091a9c74a297d72b50f8310c0c8ed7d1d",
      "tree": "c2389badfdb028dc30bbd0948c16ff25e2a77c27",
      "parents": [
        "c09b42404d29c8a9266f8186632330dc8474bf2e"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Tue Jan 17 07:03:47 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 23:18:35 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix VSMP build\n\nPatch fixes a build problem with CONFIG_X86_VSMP.  The vSMP bits probably\n\ngathered some fuzz on its way to mainline, and safe_halt() which was outside\nthe #endif (CONFIG_X86_VSMP) somehow got inside the !CONFIG_X86_VSMP condition,\nhence being undefined and breaking CONFIG_X86_VSMP builds.  Patch takes\nsafe_halt() and halt() macros out of the #endif\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8817210d4d968e58f7d93db2eecd17b20dd03d40",
      "tree": "4a4084011f348f44c388e1876e55c0d2a03f46b4",
      "parents": [
        "562795fe5770d0c7ee7fe269890e37d9fd475fdf"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Tue Jan 17 07:03:38 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 23:18:35 2006 -0800"
      },
      "message": "[PATCH] x86_64: Flexmap for 32bit and randomized mappings for 64bit\n\nAnother try at this.\n\nFor 32bit follow the 32bit implementation from Ingo -\nmappings are growing down from the end of stack now\nand vary randomly by 1GB.\n\nRandomized mappings for 64bit just vary the normal mmap break\nby 1TB. I didn\u0027t bother implementing full flex mmap for 64bit\nbecause it shouldn\u0027t be needed there.\n\nCc: mingo@elte.hu\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5580eceed2014135231acb3e6906accf97e10f3c",
      "tree": "15a74347aaf6fee711240915ebfc771f6e95596f",
      "parents": [
        "ee408c79420b6a437332d6977fe33ab72c36dc97"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jan 16 01:56:54 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 11:27:59 2006 -0800"
      },
      "message": "[PATCH] x86_64: Increase NR_IRQ_VECTORS to 32 * NR_CPUS\n\nThis prevents running out of GSIs on large Unisys ES7000 machines.\nFollows i386\n\nCc:  \"Protasevich, Natalie\" \u003cNatalie.Protasevich@unisys.com\u003e\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f8efbb96f4b2679dcbd2c115380a47bd2089dcd",
      "tree": "09b8c0684ee8e943d6199e2e4ebc21e5ce0062c9",
      "parents": [
        "aa41eb9915de74fc6935792973bac4bd777ce218"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jan 16 01:56:39 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 11:27:58 2006 -0800"
      },
      "message": "[PATCH] x86_64: Allow nesting of int3 by default for kprobes\n\nThis unbreaks recursive kprobes which didn\u0027t work anymore\ndue to an earlier patch which converted the debug entry point\nto use an IST.\n\nThis also allows nesting of the debug entry point too.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "652050aec936fdd70ed9cbce1cd1ef30a7c9d117",
      "tree": "a2859991fd1c71d918c85c5a8b4bc63bb2c64808",
      "parents": [
        "9ab34fe76114b9538bfcaf3a9d112dee0feb5f17"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 14 13:21:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jan 14 18:27:15 2006 -0800"
      },
      "message": "[PATCH] mark several functions __always_inline\n\n      Arjan van de Ven \u003carjan@infradead.org\u003e\n\nMark a number of functions as \u0027must inline\u0027.  The functions affected by this\npatch need to be inlined because they use knowledge that their arguments are\nconstant so that most of the function optimizes away.  At this point this\npatch does not change behavior, it\u0027s for documentation only (and for future\npatches in the inline series)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5a61d0c13db3522a996075bc1b1884a8af2ed37",
      "tree": "e234cb428cb501206e48b654ca6dc82cb389447e",
      "parents": [
        "75bb07e788abb060cc93b6f4dc48a70a53c1406b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jan 12 01:06:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:59 2006 -0800"
      },
      "message": "[PATCH] death of get_thread_info/put_thread_info\n\n{get,put}_thread_info() were introduced in 2.5.4 and never\nhad been called by anything in the tree.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bb049232fa8fe08c90b182f378eed5017da5235c",
      "tree": "b8a71968d4acedf35081986584c6f24c21c68b65",
      "parents": [
        "e4f17c436f8e4241995c2531372be8dd7ea6ff75"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jan 12 01:05:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:51 2006 -0800"
      },
      "message": "[PATCH] amd64: task_pt_regs()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4f17c436f8e4241995c2531372be8dd7ea6ff75",
      "tree": "ac797b8402c9a44182f16b76ffc13559d6c0edb3",
      "parents": [
        "e52f4ca2a7cfea3495cabae23d48f1538f09ccf2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jan 12 01:05:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:51 2006 -0800"
      },
      "message": "[PATCH] amd64: task_thread_info()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "198e2f181163233b379dc7ce8a6d7516b84042e7",
      "tree": "cc4067ca1c81034ba8d214b7ff4c39f2f5be66ee",
      "parents": [
        "4dc7a0bbeb6882ad665e588e82fabe5bb4645f2f"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Thu Jan 12 01:05:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:50 2006 -0800"
      },
      "message": "[PATCH] scheduler cache-hot-autodetect\n\n\r)\n\nFrom: Ingo Molnar \u003cmingo@elte.hu\u003e\n\nThis is the latest version of the scheduler cache-hot-auto-tune patch.\n\nThe first problem was that detection time scaled with O(N^2), which is\nunacceptable on larger SMP and NUMA systems. To solve this:\n\n- I\u0027ve added a \u0027domain distance\u0027 function, which is used to cache\n  measurement results. Each distance is only measured once. This means\n  that e.g. on NUMA distances of 0, 1 and 2 might be measured, on HT\n  distances 0 and 1, and on SMP distance 0 is measured. The code walks\n  the domain tree to determine the distance, so it automatically follows\n  whatever hierarchy an architecture sets up. This cuts down on the boot\n  time significantly and removes the O(N^2) limit. The only assumption\n  is that migration costs can be expressed as a function of domain\n  distance - this covers the overwhelming majority of existing systems,\n  and is a good guess even for more assymetric systems.\n\n  [ People hacking systems that have assymetries that break this\n    assumption (e.g. different CPU speeds) should experiment a bit with\n    the cpu_distance() function. Adding a -\u003emigration_distance factor to\n    the domain structure would be one possible solution - but lets first\n    see the problem systems, if they exist at all. Lets not overdesign. ]\n\nAnother problem was that only a single cache-size was used for measuring\nthe cost of migration, and most architectures didnt set that variable\nup. Furthermore, a single cache-size does not fit NUMA hierarchies with\nL3 caches and does not fit HT setups, where different CPUs will often\nhave different \u0027effective cache sizes\u0027. To solve this problem:\n\n- Instead of relying on a single cache-size provided by the platform and\n  sticking to it, the code now auto-detects the \u0027effective migration\n  cost\u0027 between two measured CPUs, via iterating through a wide range of\n  cachesizes. The code searches for the maximum migration cost, which\n  occurs when the working set of the test-workload falls just below the\n  \u0027effective cache size\u0027. I.e. real-life optimized search is done for\n  the maximum migration cost, between two real CPUs.\n\n  This, amongst other things, has the positive effect hat if e.g. two\n  CPUs share a L2/L3 cache, a different (and accurate) migration cost\n  will be found than between two CPUs on the same system that dont share\n  any caches.\n\n(The reliable measurement of migration costs is tricky - see the source\nfor details.)\n\nFurthermore i\u0027ve added various boot-time options to override/tune\nmigration behavior.\n\nFirstly, there\u0027s a blanket override for autodetection:\n\n\tmigration_cost\u003d1000,2000,3000\n\nwill override the depth 0/1/2 values with 1msec/2msec/3msec values.\n\nSecondly, there\u0027s a global factor that can be used to increase (or\ndecrease) the autodetected values:\n\n\tmigration_factor\u003d120\n\nwill increase the autodetected values by 20%. This option is useful to\ntune things in a workload-dependent way - e.g. if a workload is\ncache-insensitive then CPU utilization can be maximized by specifying\nmigration_factor\u003d0.\n\nI\u0027ve tested the autodetection code quite extensively on x86, on 3\nP3/Xeon/2MB, and the autodetected values look pretty good:\n\nDual Celeron (128K L2 cache):\n\n ---------------------\n migration cost matrix (max_cache_size: 131072, cpu: 467 MHz):\n ---------------------\n           [00]    [01]\n [00]:     -     1.7(1)\n [01]:   1.7(1)    -\n ---------------------\n cacheflush times [2]: 0.0 (0) 1.7 (1784008)\n ---------------------\n\nHere the slow memory subsystem dominates system performance, and even\nthough caches are small, the migration cost is 1.7 msecs.\n\nDual HT P4 (512K L2 cache):\n\n ---------------------\n migration cost matrix (max_cache_size: 524288, cpu: 2379 MHz):\n ---------------------\n           [00]    [01]    [02]    [03]\n [00]:     -     0.4(1)  0.0(0)  0.4(1)\n [01]:   0.4(1)    -     0.4(1)  0.0(0)\n [02]:   0.0(0)  0.4(1)    -     0.4(1)\n [03]:   0.4(1)  0.0(0)  0.4(1)    -\n ---------------------\n cacheflush times [2]: 0.0 (33900) 0.4 (448514)\n ---------------------\n\nHere it can be seen that there is no migration cost between two HT\nsiblings (CPU#0/2 and CPU#1/3 are separate physical CPUs). A fast memory\nsystem makes inter-physical-CPU migration pretty cheap: 0.4 msecs.\n\n8-way P3/Xeon [2MB L2 cache]:\n\n ---------------------\n migration cost matrix (max_cache_size: 2097152, cpu: 700 MHz):\n ---------------------\n           [00]    [01]    [02]    [03]    [04]    [05]    [06]    [07]\n [00]:     -    19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [01]:  19.2(1)    -    19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [02]:  19.2(1) 19.2(1)    -    19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [03]:  19.2(1) 19.2(1) 19.2(1)    -    19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [04]:  19.2(1) 19.2(1) 19.2(1) 19.2(1)    -    19.2(1) 19.2(1) 19.2(1)\n [05]:  19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)    -    19.2(1) 19.2(1)\n [06]:  19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)    -    19.2(1)\n [07]:  19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)    -\n ---------------------\n cacheflush times [2]: 0.0 (0) 19.2 (19281756)\n ---------------------\n\nThis one has huge caches and a relatively slow memory subsystem - so the\nmigration cost is 19 msecs.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: \u003cwilder@us.ibm.com\u003e\nSigned-off-by: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4dc7a0bbeb6882ad665e588e82fabe5bb4645f2f",
      "tree": "8c034f802157d7f449e76f45086c0e13e0ea4711",
      "parents": [
        "c6b44d10f25e5a93eca5135b686a35775c63546e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 12 01:05:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:49 2006 -0800"
      },
      "message": "[PATCH] sched: add cacheflush() asm\n\nAdd per-arch sched_cacheflush() which is a write-back cacheflush used by\nthe migration-cost calibration code at bootup time.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "11a8e778c46ee76fc46b0a7fa9d455b5a8e3e19f",
      "tree": "2e6d19e5fbb9d686448868bc087673e696b5b4be",
      "parents": [
        "5f1d189f8a87930d62c507800a8ac20b9a185e41"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:51 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:03 2006 -0800"
      },
      "message": "[PATCH] x86_64: Some housekeeping in local APIC code\n\nRemove support for obsolete hardware and cleanup.\n\n- Remove checks for non integrated APICs\n- Replace apic_write_around with apic_write.\n- Remove apic_read_around\n- Remove APIC version reads used by old workarounds\n- Remove old workaround for Simics\n- Fix indentation\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f1d189f8a87930d62c507800a8ac20b9a185e41",
      "tree": "f83f756d8481dafe3b8ddba5b741ec6b5cf33e96",
      "parents": [
        "1b2f6304500930ab534a6aa3198bce0c51586206"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Wed Jan 11 22:46:48 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:03 2006 -0800"
      },
      "message": "[PATCH] x86_64: Display meaningful part of filename during BUG()\n\nWhen building in a separate objtree, file names produced by BUG() \u0026 Co. can\nget fairly long; printing only the first 50 characters may thus result in\n(almost) no useful information. The following change makes it so that rather\nthe last 50 characters of the filename get printed.\n\nSigned-Off-By: Jan Beulich \u003cjbeulich@novell.com\u003e\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd52d642db8ca05267456a07a592922e8b093e1c",
      "tree": "325cbfbe911c806a8aefb04f5b0c3a5d90d06c94",
      "parents": [
        "2e664aa2bad56b0bb52cf9cb9d14c9b575b437bb"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:36 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:02 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove unused AMD K8 C stepping flag\n\nX86_FEATURE_K8_C was a synthetic Linux CPUID flag that was used for some\ncode optimizations in Opteron C stepping or later. But support for pre C\nstepping optimizations has been removed, so this isn\u0027t needed anymore.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "77a75333a3d16b830ccf47cf51d944655b015363",
      "tree": "7c911f2763b640a14bfcefd5c3832ccdd93f69e5",
      "parents": [
        "cf0501328674849f8becf6de16620067a0c2f1b5"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed Jan 11 22:46:30 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:02 2006 -0800"
      },
      "message": "[PATCH] x86_64: sparse warning cleanups\n\nFix some trivial sparse warnings in x86_64 code.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cf0501328674849f8becf6de16620067a0c2f1b5",
      "tree": "6f449d3b82bc178573d8a991e29c1eff8e6b94a5",
      "parents": [
        "cdc4b9c01909d606afbc1e4a4b6c21fa1687a016"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:27 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Move NUMA page_to_pfn/pfn_to_page functions out of line\n\nSaves about ~18K .text in defconfig\n\nThere would be more optimization potential, but that\u0027s for later.\n\nSuggestion originally from Bill Irwin.\nFix from Andy Whitcroft.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cdc4b9c01909d606afbc1e4a4b6c21fa1687a016",
      "tree": "4c4c7191509f6527cc3813af1ee92f07bea0bbed",
      "parents": [
        "af5b98042452cc6f50de8afa9d079bda8556d74d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:24 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove unused segments\n\nThey used to be used by the reboot code, but not anymore.\n\nNoticed by Jan Beulich\n\nCc: JBeulich@novell.com\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "79f12614a6537cc3ac9ca4d1ea26f6e4f4a34aee",
      "tree": "25167c8862ad7733c7e044b0aad67e4291a0681b",
      "parents": [
        "5fd63b308569060ffa40af52ed122d9734111bff"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:46:18 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Inclusion of ScaleMP vSMP architecture patches - vsmp_arch\n\nIntroduce vSMP arch to the kernel.\n\nThis patch:\n1. Adds CONFIG_X86_VSMP\n2. Adds machine specific macros for local_irq_disabled, local_irq_enabled\n   and irqs_disabled\n3. Writes to the vSMP CTL device to indicate kernel compiled with CONFIG_VSMP\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalemp.com\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalemp.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5fd63b308569060ffa40af52ed122d9734111bff",
      "tree": "746c2701ec42374b1ec389a6af0d438c9105a9d7",
      "parents": [
        "99f7b77d3c62045bb47dfc4228a2341ba71bff1d"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:46:15 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Inclusion of ScaleMP vSMP architecture patches - vsmp_align\n\nvSMP specific alignment patch to\n1. Define INTERNODE_CACHE_SHIFT for vSMP\n2. Use this for alignment of critical structures\n3. Use INTERNODE_CACHE_SHIFT for ARCH_MIN_TASKALIGN,\n   and let the slab align task_struct allocations to the internode cacheline size\n4. Introduce and use ARCH_MIN_MMSTRUCT_ALIGN for mm_struct slab allocations.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalemp.com\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalemp.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "99f7b77d3c62045bb47dfc4228a2341ba71bff1d",
      "tree": "339585fe8b056b3b80022de6d9efe7bc8b376371",
      "parents": [
        "e4b5939a7eec7726d410517e433040db4ede5102"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Make sure BITS_PER_ATOMIC is defined in asm-generic/atomic.h\n\nFixes\n\n  CC      fs/nfsctl.o\nIn file included from include2/asm/atomic.h:427,\n                 from /home/lsrc/quilt/linux/include/linux/file.h:8,\n                 from /home/lsrc/quilt/linux/fs/nfsctl.c:8:\n/home/lsrc/quilt/linux/include/asm-generic/atomic.h:20:5: warning: \"BITS_PER_LONG\" is not defined\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4b5939a7eec7726d410517e433040db4ede5102",
      "tree": "256bc1f4ccb7e42d6bd50bc482fe0499337f6eb3",
      "parents": [
        "1008fddcaed7ad3e69f72939c87b24d0d3387ca2"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "bgerst@didntduck.org",
        "time": "Wed Jan 11 22:46:09 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:00 2006 -0800"
      },
      "message": "[PATCH] x86_64: cleanup enter_lazy_tlb()\n\nMove the #ifdef into the function body.\n\nSigned-off-by: Brian Gerst \u003cbgerst@didntduck.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "915f34e20c20ee383832bce0a4bc962d0c86be8d",
      "tree": "2e1914cc129361d15e0ad8d888913a0623aef80b",
      "parents": [
        "e080e9d66fd276ed34bc2834eedc134189b87fc9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:45:54 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:00 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove useless KDB vector\n\nIt was set as an NMI, but the NMI bit always forces an interrupt\nto end up at vector 2. So it was never used. Remove.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e080e9d66fd276ed34bc2834eedc134189b87fc9",
      "tree": "4bd582d2d9137df7bb7fa43c009e931941b25d01",
      "parents": [
        "5b22a3855127bb8221bc96e8e41064b3c5b2bf08"
      ],
      "author": {
        "name": "Jason Uhlenkott",
        "email": "jasonuhl@sgi.com",
        "time": "Wed Jan 11 22:45:51 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:59 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t claim too many vectors for TLB flushing\n\nIt looks like the new scalable TLB flush code for x86_64 is claiming\none more IRQ vector than it actually uses.\n\nSigned-off-by: Jason Uhlenkott \u003cjasonuhl@sgi.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "365ba9179f84244d2ffa98e46ae3cddfeb2ef6ff",
      "tree": "b84be7f9f929d8084fa76af2618877439baee841",
      "parents": [
        "df79efde82952edc653fa6eb1338a82b87aa0585"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:45:42 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:59 2006 -0800"
      },
      "message": "[PATCH] x86_64: Allocate PDAs in the local node\n\nPatch uses a static PDA array early at boot and reallocates processor PDA\nwith node local memory when kmalloc is ready, just before pda_init.\nThe boot_cpu_pda is needed since the cpu_pda is used even before pda_init for\nthat cpu is called (to set the static per-cpu areas offset table etc)\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "df79efde82952edc653fa6eb1338a82b87aa0585",
      "tree": "67abb221cf834c3a7766c406aae1e55aa31b6bcf",
      "parents": [
        "05b3cbd8bb98736387df8a2e1efe311b1fb4d2ad"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:45:39 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:59 2006 -0800"
      },
      "message": "[PATCH] x86_64: Node local pda take 2 -- cpu_pda preparation\n\nHelper patch to change cpu_pda users to use macros to access cpu_pda\ninstead of the cpu_pda[] array.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "05b3cbd8bb98736387df8a2e1efe311b1fb4d2ad",
      "tree": "46ca01cfe38d2df4c6f93ba0325a3f2a1e97ea71",
      "parents": [
        "0b91317e338f42367de6d53f5e14f273aae7d034"
      ],
      "author": {
        "name": "Ravikiran Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:45:36 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:59 2006 -0800"
      },
      "message": "[PATCH] x86_64: Early initialization of cpu_to_node\n\nPatch enables early intialization of cpu_to_node.\napicid_to_node is built by reading the SRAT table, from acpi_numa_init with\nACPI_NUMA and k8_scan_nodes with K8_NUMA.\nx86_cpu_to_apicid is built by parsing the ACPI MADT table, from acpi_boot_init.\nWe combine these two tables and setup cpu_to_node.\n\nEarly intialization helps the static per_cpu_areas in getting pages from\ncorrect node.\n\nChange since last release:\nDo not initialize early init_cpu_to_node for faking node cases.\n\nPatch tested on TYAN dual core 4P board with K8 only, ACPI_NUMA.\nTested on EM64T NUMA. Also tested with numa\u003doff, numa\u003dfake, and  running\na kernel compiled with NUMA on a regular EM64 2 way SMP.\n\nSigned-off-by: Alok N Kataria \u003calokk@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c818a18146997d1356a4840b0c01f1168c16c8a4",
      "tree": "8d7e049742e87666bf3089fe46e04828b6417fd7",
      "parents": [
        "7f6c5b046978d68e69bdc73433ead41612a2a1c9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:45:24 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:58 2006 -0800"
      },
      "message": "[PATCH] x86_64: On Intel CPUs don\u0027t do an additional CPU sync before RDTSC\n\nRDTSC serialization using cpuid is not needed for Intel platforms.\nThis increases gettimeofday performance.\n\nCc: vojtech@suse.cz\nCc: rohit.seth@intel.com\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6e54d95f73bbc79171802a1983e0c3835676db88",
      "tree": "83b5ff3175f0b3fe445912cfaa98318d8b3ee24a",
      "parents": [
        "737c5c3bde5641af9c24e3a60366674af72a43ef"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:45:18 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:57 2006 -0800"
      },
      "message": "[PATCH] x86_64: Support alternative() with a output argument.\n\nNeeded for follow on patches\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "737c5c3bde5641af9c24e3a60366674af72a43ef",
      "tree": "e369c6489279c9fda4a5fb1766fe1966ce9caf87",
      "parents": [
        "3c0217511313a46039137d2dab30fdb1c5a65e64"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:45:15 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:57 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t try to synchronize the TSC over CPUs on Intel CPUs at boot.\n\nThey already do this in hardware and the Linux algorithm\nactually adds errors.\n\nCc: mingo@elte.hu\nCc: rohit.seth@intel.com\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3c0217511313a46039137d2dab30fdb1c5a65e64",
      "tree": "93ffd029cbe81c37daff0bb38e73e98e22026f88",
      "parents": [
        "b9d1e4bd6e44f2a75340226eb5f762e16bb4652f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:45:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:57 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix compile error with !CONFIG_COMPAT\n\ncpumask.h wasn\u0027t included implicitely into proto.h in this case.\nJust move it over to smp.h\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b9d1e4bd6e44f2a75340226eb5f762e16bb4652f",
      "tree": "e886056fb4a412e98e8f52e559c16be95994db55",
      "parents": [
        "aea9fca1dc8a1f9ac5d3b76ef04516a010cbf2e4"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Wed Jan 11 22:45:09 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:57 2006 -0800"
      },
      "message": "[PATCH] x86_64: x86_64 write apic id fix\n\no Apic id is in most significant 8 bits of APIC_ID register. Current code\n  is trying to write apic id to least significant 8 bits. This patch fixes\n  it.\n\no This fix enables booting uni kdump capture kernel on a cpu with non-zero\n  apic id.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2d0db401ee4ee08857b79f1d3be40e8a819f8992",
      "tree": "36e3aa460aa9dac4b6fd7035982dfd792518cfdb",
      "parents": [
        "4cef0c61380888af99b054937ed391fb28757836"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:45:00 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:56 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove unused apic_write_atomic\n\nThis function is never used for x86_64.\n\nSigned-off-by: Brian Gerst \u003cbgerst@didntduck.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "17a941d854a3f7b0bb916fdeee4c9ffdcc19d8d3",
      "tree": "b6b3b55318336adf769bf57141a01a9defbbb202",
      "parents": [
        "8a6fdd3e912e0ce6f723431d66baf704bf8a1d26"
      ],
      "author": {
        "name": "Muli Ben-Yehuda",
        "email": "mulix@mulix.org",
        "time": "Wed Jan 11 22:44:42 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Use function pointers to call DMA mapping functions\n\nAK: I hacked Muli\u0027s original patch a lot and there were a lot\nof changes - all bugs are probably to blame on me now.\nThere were also some changes in the fall back behaviour\nfor swiotlb - in particular it doesn\u0027t try to use GFP_DMA\nnow anymore. Also all DMA mapping operations use the\nsame core dma_alloc_coherent code with proper fallbacks now.\nAnd various other changes and cleanups.\n\nKnown problems: iommu\u003dforce swiotlb\u003dforce together breaks\n                needs more testing.\n\nThis patch cleans up x86_64\u0027s DMA mapping dispatching code. Right now\nwe have three possible IOMMU types: AGP GART, swiotlb and nommu, and\nin the future we will also have Xen\u0027s x86_64 swiotlb and other HW\nIOMMUs for x86_64. In order to support all of them cleanly, this\npatch:\n\n- introduces a struct dma_mapping_ops with function pointers for each\n  of the DMA mapping operations of gart (AMD HW IOMMU), swiotlb\n  (software IOMMU) and nommu (no IOMMU).\n\n- gets rid of:\n\n  if (swiotlb)\n      return swiotlb_xxx();\n\n- PCI_DMA_BUS_IS_PHYS is now checked against the dma_ops being set\nThis makes swiotlb faster by avoiding double copying in some cases.\n\nSigned-Off-By: Muli Ben-Yehuda \u003cmulix@mulix.org\u003e\nSigned-Off-By: Jon D. Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "95833c83f3b812c78e48db4eaa19f6c74958470b",
      "tree": "8ad17da708141d66cf53c2113b4fe1710af929ec",
      "parents": [
        "6b050f8075823b0d9ec4fad38f4f552b74e5c5af"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:44:36 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Add idle notifiers\n\nThis adds a new notifier chain that is called with IDLE_START\nwhen a CPU goes idle and IDLE_END when it goes out of idle.\nThe context can be idle thread or interrupt context.\n\nSince we cannot rely on MONITOR/MWAIT existing the idle\nend check currently has to be done in all interrupt\nhandlers.\n\nThey were originally inspired by the similar s390 implementation.\n\nThey have a variety of applications:\n- They will be needed for CONFIG_NO_IDLE_HZ\n- They can be used for oprofile to fix up the missing time\nin idle when performance counters don\u0027t tick.\n- They can be used for better C state management in ACPI\n- They could be used for microstate accounting.\n\nThis is just infrastructure so far, no users.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d25bf7e5fe73b5b6d2246ab0be08ae35d718456b",
      "tree": "472749fef9b017e9a4d94f9e07a29dc44c3294cb",
      "parents": [
        "6eb0a0fd059598ee0d49c6283ce25cccd743e9fc"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jan 11 22:44:24 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:54 2006 -0800"
      },
      "message": "[PATCH] x86_64: Handle missing local APIC timer interrupts on C3 state\n\nWhenever we see that a CPU is capable of C3 (during ACPI cstate init), we\ndisable local APIC timer and switch to using a broadcast from external timer\ninterrupt (IRQ 0).\n\nPatch below adds the code for x86_64.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4839057cafc9a508ad5906857e9c1d8707c875e3",
      "tree": "e060e445336c1f8e8362e9003aa0d30c6bd9a36f",
      "parents": [
        "66c581569e2cb41231b3fcd91a6c9f853d4d4e25"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Jan 11 22:44:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: \"extern inline\" -\u003e \"static inline\" in pgtable.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bf2fcc6fdfe4f4e92bb74f062c0a1be189f3a561",
      "tree": "0bcc33f681c7e8ce6596c9323d4a1026ede84994",
      "parents": [
        "2966387b481a11a90a7bed6600fc17b4253f6980"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:44:06 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: Implement is_compat_task the right way\n\nBy setting a flag during a 32bit system call only\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c11efdf94d3152443c11334720824bb6c7f6c655",
      "tree": "d4185d8de8b855aca51b6bec730aeab3342e2a0f",
      "parents": [
        "bb33421dde79f9a36d5485c56335ff178ac7d268"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:43:57 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: Align and pad x86_64 GDT on page boundary\n\nThis patch is on the same lines as Zachary Amsden\u0027s i386 GDT page alignemnt\npatch in -mm, but for x86_64.\n\nPatch to align and pad x86_64 GDT on page boundries.\n\n[AK: some minor cleanups and fixed incorrect TLS initialization\nin CPU init.]\n\nSigned-off-by: Nippun Goel \u003cnippung@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7180d4fb83085fef9d24b353f5bd79cf6fd98447",
      "tree": "0b2dde2d788ee264fbf02f7f7cfb30288c73feee",
      "parents": [
        "e99286744599a66195de4cd975d7ef4d643c2789"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Wed Jan 11 22:43:36 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:51 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix 64bit FXSAVE encoding\n\nThe separation of the rex64 prefix (on fxsave/fxrstor) by way of using\na semicolon resulted in the prefix not always taking effect (because\nwhen extended registers are needed for addressing, another rex prefix\nwould have been generated by the compiler), thus (depending on the\nbuild) resulting in eventually getting 32-bit saves and/or restores.\n\nSigned-Off-By: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e99286744599a66195de4cd975d7ef4d643c2789",
      "tree": "d231b075c9bdb0bd7fa48d0eb00551a529e4586a",
      "parents": [
        "b347d25fbc4616f4f37895e9afbe25b2bbc7e11f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:43:33 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:51 2006 -0800"
      },
      "message": "[PATCH] x86_64: Generalize DMI and enable for x86-64\n\nSome people need it now on 64bit so reuse the i386 code for\nx86-64. This will be also useful for future bug workarounds.\n\nIt is a bit simplified there because there is no need\nto do it very early on x86-64. This means it doesn\u0027t need\nearly ioremap et.al. We run it as a core initcall right now.\n\nI hope it\u0027s not needed for early setup.\n\nI added a general CONFIG_DMI symbol in case IA64 or someone\nelse wants to reuse the code later too.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "636dd2b7def5c9c72551b51d4d516a65c269de08",
      "tree": "8a3c1ec030fc0924a96e54c0ec19d94f17ecc44e",
      "parents": [
        "bd9cb64df1d99c07ea9672661ede6ca3ba5c6579"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed Jan 11 22:43:24 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:04:50 2006 -0800"
      },
      "message": "[PATCH] x86_64: fls in asm for x86_64\n\nUse single instruction for find largest set bit on x86_64.\n\n[Updated by Jan Beulich to fix wrong asm constraints in original\npatch -AK]\n\nCc: jbeulich@novell.com\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "60917a3832547886549962ab9ee753253cf5e44c"
}
