)]}'
{
  "log": [
    {
      "commit": "bdb1a9b62fc182d4da3143e346f7a0925d243352",
      "tree": "fc3233442c7fed2a1dbd5033955fd7635bc742ea",
      "parents": [
        "0b06e734bff7554c31eac4aad2fc9be4adb7c1c1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 05:29:25 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:19 2009 +0100"
      },
      "message": "x86, apic: rename genapic::apic_destination_logical to genapic::dest_logical\n\nThis field name was unreasonably long - shorten it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0b06e734bff7554c31eac4aad2fc9be4adb7c1c1",
      "tree": "52b3f9ccf6d85e503cf949c888ded6722c66e3a3",
      "parents": [
        "08125d3edab90644724652eedec3e219e3e0f2e7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 05:13:04 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:18 2009 +0100"
      },
      "message": "x86: clean up the APIC_DEST_LOGICAL logic\n\nImpact: cleanup\n\nThe bigsmp and es7000 subarchitectures un-defined APIC_DEST_LOGICAL in\na rather nasty way by re-defining it to zero. That is infinitely\nfragile and makes it very hard to see what to code really does in\na given context. The very same constant has different meanings and\nvalues - depending on which subarch is enabled.\n\nUntangle this mess by never undefining the constant, but instead\npropagating the right values into the genapic driver templates.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "08125d3edab90644724652eedec3e219e3e0f2e7",
      "tree": "682c5b86d8390925f60037af924236c274b02e63",
      "parents": [
        "f6f52baf2613dd319e9ba3f3319bf1f1c442e4b3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 05:08:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:18 2009 +0100"
      },
      "message": "x86: rename -\u003eESR_DISABLE to -\u003edisable_esr\n\nthe -\u003eESR_DISABLE shouting variant was used to enable the esr_disable\nmacro wrappers. Those ugly macros are removed now so we can rename\n-\u003eESR_DISABLE to -\u003edisable_esr\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6f52baf2613dd319e9ba3f3319bf1f1c442e4b3",
      "tree": "1eb8f814939501c10f3f18af86f9c5a5d25c7310",
      "parents": [
        "fe402e1f2b67a63f1e53ab2a316fc20f7ca4ec91"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 05:01:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:17 2009 +0100"
      },
      "message": "x86: clean up esr_disable() methods\n\nImpact: cleanup\n\nMost subarchitectures want to disable the APIC ESR (Error Status Register),\nbecause they generally have hardware hacks that wrap standard CPUs into\na bigger system and hence the APIC bus is quite non-standard and weirdnesses\n(lockups) have been seen with ESR reporting.\n\nRemove the esr_disable macros and put the desired flag into each\nsubarchitecture\u0027s genapic template directly.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe402e1f2b67a63f1e53ab2a316fc20f7ca4ec91",
      "tree": "2a903e99aee78879b538f38676d30a4a4d9fde0e",
      "parents": [
        "0a9cc20b9c18372ba5a9fea990f5812f3ee01e32"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 04:32:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:17 2009 +0100"
      },
      "message": "x86, apic: clean up / remove TARGET_CPUS\n\nImpact: cleanup\n\nuse apic-\u003etarget_cpus() directly instead of the TARGET_CPUS wrapper.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9b5bc8dc12421a4b17047061f473d85c1797d543",
      "tree": "69799378fb9e55dd8c23ceb39c646d7bf47523f8",
      "parents": [
        "f8987a1093cc7a896137e264c24e04d4048e9f95"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 04:09:58 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:13 2009 +0100"
      },
      "message": "x86, apic: remove IRQ_DEST_MODE / IRQ_DELIVERY_MODE\n\nRemove the wrapper macros IRQ_DEST_MODE and IRQ_DELIVERY_MODE.\n\nThe typical 32-bit and the 64-bit build all dereference via the genapic,\nso it\u0027s pointless to hide that indirection via these ugly macros.\n\nFurthermore, it also obscures subarchitecture details.\n\nSo replace it with apic-\u003eirq_dest_mode / etc. accesses.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f8987a1093cc7a896137e264c24e04d4048e9f95",
      "tree": "fbe21050e8b5547b64505544296890d9882bca78",
      "parents": [
        "7ed248daa56156f2fd7175f90b62fc6397b0c7b7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 04:02:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:13 2009 +0100"
      },
      "message": "x86, genapic: rename int_delivery_mode, et. al.\n\nint_delivery_mode is supposed to mean \u0027interrupt delivery mode\u0027, but\nit\u0027s quite a misnomer as \u0027int\u0027 we usually think of as an integer type ...\n\nThe standard naming for such attributes is \u0027irq\u0027 - so rename the following\nfields and macros:\n\n int_delivery_mode \u003d\u003e irq_delivery_mode\n INT_DELIVERY_MODE \u003d\u003e IRQ_DELIVERY_MODE\n int_dest_mode     \u003d\u003e irq_dest_mode\n INT_DEST_MODE     \u003d\u003e IRQ_DEST_MODE\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ed248daa56156f2fd7175f90b62fc6397b0c7b7",
      "tree": "7b03f5fa08ee6cec1c7af4e8b0327a4ac8f882cd",
      "parents": [
        "306db03b0d71bf9c94155c0c4771a79fc70b4b27"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 03:43:47 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:12 2009 +0100"
      },
      "message": "x86: clean up apic-\u003eapic_id_registered() methods\n\nImpact: cleanup\n\nx86 subarchitectures each defined a \"apic_id_registered()\" method,\nwhich could be an inline function depending on which subarch we build\nfor, and which was also the name of a genapic field.\n\nUntangle this namespace spaghetti by giving each of the instances\na separate name.\n\nAlso remove wrapper macro obfuscation.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "306db03b0d71bf9c94155c0c4771a79fc70b4b27",
      "tree": "060e085368664f142013b65cbc0271a704b7dbc3",
      "parents": [
        "9a6801da55e4a4492e8f666ac272efe8186682c8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 03:43:47 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:12 2009 +0100"
      },
      "message": "x86: clean up apic-\u003eacpi_madt_oem_check methods\n\nImpact: refactor code\n\nx86 subarchitectures each defined a \"acpi_madt_oem_check()\" method,\nwhich could be an inline function, or an extern, or a static function,\nand which was also the name of a genapic field.\n\nUntangle this namespace spaghetti by setting -\u003eacpi_madt_oem_check()\nto NULL on those subarchitectures that have no detection quirks,\nand rename the other ones (summit, es7000) that do.\n\nAlso change default_acpi_madt_oem_check() to handle NULL entries,\nand clean its control flow up as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "504a3c3ad45d200a6ac8be5aa019c8fa05e26dc8",
      "tree": "631632ac83f644f959b07240cc12b6a86855b609",
      "parents": [
        "05c155c235c757329ec89ad591516538ed8352c0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 02:37:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:09 2009 +0100"
      },
      "message": "x86: clean up apic_x2apic_cluster\n\n- reorder fields so that they appear in struct genapic field ordering\n\n- add zero-initialized fields too so that it\u0027s apparent which functionality\n  is default / missing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "05c155c235c757329ec89ad591516538ed8352c0",
      "tree": "60a85bc352445e87dc9e5b5688e3867735c09fe2",
      "parents": [
        "c7967329911013a05920ef12832935c541bb8c9a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 02:37:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:08 2009 +0100"
      },
      "message": "x86: clean up apic_x2apic_phys\n\n- reorder fields so that they appear in struct genapic field ordering\n\n- add zero-initialized fields too so that it\u0027s apparent which functionality\n  is default / missing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c7967329911013a05920ef12832935c541bb8c9a",
      "tree": "ecdb4ceeea9331318f3bf1e6262981f55019b1cb",
      "parents": [
        "4c3e51e05a7eefead4033b187394458ff8626497"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 02:37:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:08 2009 +0100"
      },
      "message": "x86: clean up apic_x2apic_uv_x\n\n- reorder fields so that they appear in struct genapic field ordering\n\n- add zero-initialized fields too so that it\u0027s apparent which functionality\n  is default / missing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4c3e51e05a7eefead4033b187394458ff8626497",
      "tree": "eaa9f0e0608974f35d00076f38ad66c46f32cf95",
      "parents": [
        "f2f05ee8b8d346d4edee766384a5fedafdd4f9f8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 02:37:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:07 2009 +0100"
      },
      "message": "x86: clean up genapic_phys_flat\n\n- reorder fields so that they appear in struct genapic field ordering\n\n- add zero-initialized fields too so that it\u0027s apparent which functionality\n  is default / missing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f2f05ee8b8d346d4edee766384a5fedafdd4f9f8",
      "tree": "cf0df8d91b18fea077af4d44a1c7d7d8443bcf81",
      "parents": [
        "c8d46cf06dc2e3a8f57a350eb9f9b19fd7f2ffe5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 02:37:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:07 2009 +0100"
      },
      "message": "x86: clean up genapic_flat\n\n- reorder fields so that they appear in struct genapic field ordering\n\n- add zero-initialized fields too so that it\u0027s apparent which functionality\n  is default / missing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c8d46cf06dc2e3a8f57a350eb9f9b19fd7f2ffe5",
      "tree": "fe5ceac244165e5726f310027588cf6e1b6e60e6",
      "parents": [
        "6781d948cc05b02df915650f2eb49550a1631df9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 00:14:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:20:06 2009 +0100"
      },
      "message": "x86: rename \u0027genapic\u0027 to \u0027apic\u0027\n\nRename genapic-\u003e to apic-\u003e references because in a future chagne we\u0027ll\nopen-code all the indirect calls (instead of obscuring them via macros),\nso we want this reference to be as short as possible.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "74b6eb6b937df07d0757e8642b7538b07da4290f",
      "tree": "9104afabf5dd41e012a911d37bd60d04a57183db",
      "parents": [
        "6a385db5ce7f1fd2c68ec511e44587b67dab8fca",
        "2d4d57db692ea790e185656516e6ebe8791f1788",
        "8f6d86dc4178957d9814b1784848012a927a3898",
        "b38b0665905538e76e26f2a4c686179abb1f69f6",
        "d5e397cb49b53381e4c99a064ca733c665646de8",
        "e56d0cfe7790fd3218ae4f6aae1335547fea8763",
        "dbca1df48e89d8aa59254fdc10ef16c16e73d94e",
        "fb746d0e1365b7472ccc4c3d5b0672b34a092d0b",
        "6522869c34664dd5f05a0a327e93915b1281c90d",
        "d639bab8da86d330493487e8c0fea8ca31f53427",
        "042cbaf88ab48e11afb725541e3c2cbf5b483680",
        "5662a2f8e7313f78d6b17ab383f3e4f04971c335",
        "3b4b75700a245d0d48fc52a4d2f67d3155812aba",
        "30a0fb947a68ad3ab8a7184e3b3d79dce10e3688"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:13:53 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:13:53 2009 +0100"
      },
      "message": "Merge branches \u0027x86/asm\u0027, \u0027x86/cleanups\u0027, \u0027x86/cpudetect\u0027, \u0027x86/debug\u0027, \u0027x86/doc\u0027, \u0027x86/header-fixes\u0027, \u0027x86/mm\u0027, \u0027x86/paravirt\u0027, \u0027x86/pat\u0027, \u0027x86/setup-v2\u0027, \u0027x86/subarch\u0027, \u0027x86/uaccess\u0027 and \u0027x86/urgent\u0027 into x86/core\n"
    },
    {
      "commit": "8f6d86dc4178957d9814b1784848012a927a3898",
      "tree": "66ffa5b780f988f05b82a0dbd73cbec7dd44ea9b",
      "parents": [
        "cc86c9e0dc1a41451240b948bb39d46bb2536ae8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Jan 27 21:41:34 2009 +0100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 27 14:54:44 2009 -0800"
      },
      "message": "x86: cpu_init(): remove ugly #ifdef construct around debug register clear\n\nImpact: Cleanup\n\nWhile I was looking through the new and improved bootstrap code - great\nwork that, thanks! I found the below a slight improvement.\n\nRemove unnecessary ugly #ifdef construct around debug register clear.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "4369f1fb7cd4cf777312f43e1cb9aa5504fc4125",
      "tree": "a5525d63fe682e6744c109fb72f7e1b33855cb00",
      "parents": [
        "3ddeb51d9c83931c1ca6abf76a38934c5a1ed918",
        "cf3997f507624757f149fcc42b76fb03c151fb65"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 12:03:24 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 12:03:24 2009 +0100"
      },
      "message": "Merge branch \u0027tj-percpu\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into core/percpu\n\nConflicts:\n\tarch/x86/kernel/setup_percpu.c\n\nSemantic conflict:\n\n\tarch/x86/kernel/cpu/common.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ddeb51d9c83931c1ca6abf76a38934c5a1ed918",
      "tree": "fc2efb59d627135ea2199a8a68415b162646b121",
      "parents": [
        "5a611268b69f05262936dd177205acbce4471358",
        "5ee810072175042775e39bdd3eaaa68884c27805"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 12:01:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 12:01:51 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into core/percpu\n\nConflicts:\n\tarch/x86/kernel/setup_percpu.c\n"
    },
    {
      "commit": "cf3997f507624757f149fcc42b76fb03c151fb65",
      "tree": "6f47439ca5245a607add4bdace28467ac1121864",
      "parents": [
        "22f25138c345ec46a13744c93c093ff822cd98d1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 14:25:05 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 14:25:05 2009 +0900"
      },
      "message": "x86: clean up indentation in setup_per_cpu_areas()\n\nImpact: cosmetic cleanup\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "22f25138c345ec46a13744c93c093ff822cd98d1",
      "tree": "a922020043da1a59d4bfcc7da32a40ad0662fdb4",
      "parents": [
        "2697fbd5faf19c84c17441b1752bdcbdcfd1248c"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Jan 27 14:21:37 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 14:21:37 2009 +0900"
      },
      "message": "x86: fix build breakage on voyage\n\nImpact: build fix\n\nx86_cpu_to_apicid and x86_bios_cpu_apicid aren\u0027t defined for voyage.\nEarlier patch forgot to conditionalize early percpu clearing.  Fix it.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "2697fbd5faf19c84c17441b1752bdcbdcfd1248c",
      "tree": "70bdf58fba94bf9ff94b2b6372662da89add9723",
      "parents": [
        "1825b8edc2034c012ae48f797d74efd1bd9d4f72"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "message": "x86: load new GDT after setting up boot cpu per-cpu area\n\nImpact: sync 32 and 64-bit code\n\nMerge load_gs_base() into switch_to_new_gdt().  Load the GDT and\nper-cpu state for the boot cpu when its new area is set up.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "b2d2f4312b117a6cc647c8521e2643a88771f757",
      "tree": "cf512c6ed0cfc5081f095cfa1da974b1566bb043",
      "parents": [
        "89c9c4c58ee86e6e8802597271f23679e0c46647"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "message": "x86: initialize per-cpu GDT segment in per-cpu setup\n\nImpact: cleanup\n\nRename init_gdt() to setup_percpu_segment(), and move it to\nsetup_percpu.c.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "89c9c4c58ee86e6e8802597271f23679e0c46647",
      "tree": "eb22bb5577e84f2f1fdcc90d0f293f66673c8910",
      "parents": [
        "34019be1cd2941128b5de6d7c0fbdb51f967d268"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "message": "x86: make Voyager use x86 per-cpu setup.\n\nImpact: standardize all x86 platforms on same setup code\n\nWith the preceding changes, Voyager can use the same per-cpu setup\ncode as all the other x86 platforms.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "34019be1cd2941128b5de6d7c0fbdb51f967d268",
      "tree": "ff7dab4188cb42306bef7640fe9a947765896de1",
      "parents": [
        "1688401a0fddba8991aa5c0943b8ae9583998d60"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "message": "x86: don\u0027t assume boot cpu is #0\n\nImpact: minor cleanup\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "1688401a0fddba8991aa5c0943b8ae9583998d60",
      "tree": "226ea8e760d37fc9812cc0f12855d43ba1b11427",
      "parents": [
        "996db817e3d1529d711e55b938d72ae4060b39fd"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:48 2009 +0900"
      },
      "message": "x86: move this_cpu_offset\n\nImpact: Small cleanup\n\nDefine BOOT_PERCPU_OFFSET and use it for this_cpu_offset and\n__per_cpu_offset initializers.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "996db817e3d1529d711e55b938d72ae4060b39fd",
      "tree": "3a676e1db30c261c66bb5a9c87cac5170f810a38",
      "parents": [
        "ec70de8b04bf37213982a5e8f303bc38679f3f8e"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "message": "x86: only compile setup_percpu.o on SMP\n\nImpact: Minor build optimization\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "ec70de8b04bf37213982a5e8f303bc38679f3f8e",
      "tree": "6d7728d89686503d06c8bfc789810c9e111f5dd8",
      "parents": [
        "74631a248dc2c2129a96f6b8b706ed54bb5c3d3c"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "message": "x86: move apic variables to apic.c\n\nImpact: Code movement\n\nMove the variable definitions to apic.c.  Ifdef the copying of\nthe two early per-cpu variables, since Voyager doesn\u0027t use them.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "74631a248dc2c2129a96f6b8b706ed54bb5c3d3c",
      "tree": "53e1fa4c8a6605c11fea863542c6b4e26dd6c385",
      "parents": [
        "2f2f52bad72f5e1ca5d1b9ad00a7b57a8cbd9159"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "message": "x86: always page-align per-cpu area start and size\n\nImpact: cleanup\n\nThe way the code is written, align is always PAGE_SIZE.  Simplify\nthe code by removing the align variable.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "2f2f52bad72f5e1ca5d1b9ad00a7b57a8cbd9159",
      "tree": "a371346bf27fcceb156676cab2b6311c14b388ed",
      "parents": [
        "6470aff619fbb9dff8dfe8afa5033084cd55ca20"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "message": "x86: move setup_cpu_local_masks()\n\nImpact: Code movement, no functional change.\n\nMove setup_cpu_local_masks() to kernel/cpu/common.c, where the\nmasks are defined.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6470aff619fbb9dff8dfe8afa5033084cd55ca20",
      "tree": "c5734a7afc33ef665b1cacc3a715ab7e0c85787a",
      "parents": [
        "0d77e7f04d5da160307f4f5c030a171e004f602b"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "message": "x86: move 64-bit NUMA code\n\nImpact: Code movement, no functional change.\n\nMove the 64-bit NUMA code from setup_percpu.c to numa_64.c\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "0d77e7f04d5da160307f4f5c030a171e004f602b",
      "tree": "7c76b29b6947a1ca88d2d45df960a97f4c7dc9ab",
      "parents": [
        "5a611268b69f05262936dd177205acbce4471358"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 27 12:56:47 2009 +0900"
      },
      "message": "x86: merge setup_per_cpu_maps() into setup_per_cpu_areas()\n\nImpact: minor optimization\n\nEliminates the need for two loops over possible cpus.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "3386c05bdbd3e60ca7158253442f0a00133db28e",
      "tree": "19e48f0352e65eb83a0e922fb75528ed39f44ebd",
      "parents": [
        "1e70c7f7a9d4a3d2cc78b40e1d7768d99cd79899",
        "6552ebae25ffd57574c6e72d17fce67fea08b918"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 09:47:56 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 09:47:56 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  debugobjects: add and use INIT_WORK_ON_STACK\n  rcu: remove duplicate CONFIG_RCU_CPU_STALL_DETECTOR\n  relay: fix lock imbalance in relay_late_setup_files\n  oprofile: fix uninitialized use of struct op_entry\n  rcu: move Kconfig menu\n  softlock: fix false panic which can occur if softlockup_thresh is reduced\n  rcu: add __cpuinit to rcu_init_percpu_data()\n"
    },
    {
      "commit": "1e70c7f7a9d4a3d2cc78b40e1d7768d99cd79899",
      "tree": "1218c32008412e57314f8f9db8d3b4912e2ecb25",
      "parents": [
        "810ee58de26c9c1255d716b1db7344c4a1093fec",
        "1d4a7f1c4faf53eb9e822743ec8a70b3019a26d2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 09:47:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 09:47:43 2009 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  hrtimers: fix inconsistent lock state on resume in hres_timers_resume\n  time-sched.c: tick_nohz_update_jiffies should be static\n  locking, hpet: annotate false positive warning\n  kernel/fork.c: unused variable \u0027ret\u0027\n  itimers: remove the per-cpu-ish-ness\n"
    },
    {
      "commit": "810ee58de26c9c1255d716b1db7344c4a1093fec",
      "tree": "176531e4e4989ec7a8996a356b1a79ae7b647568",
      "parents": [
        "2927fceafc91afe744e0d1d33f8bbf98c42668fc",
        "e88a0faae5baaaa3bdc6f23a55ad6bc7a7b4aa77"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 09:47:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 26 09:47:28 2009 -0800"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (29 commits)\n  xen: unitialised return value in xenbus_write_transaction\n  x86: fix section mismatch warning\n  x86: unmask CPUID levels on Intel CPUs, fix\n  x86: work around PAGE_KERNEL_WC not getting WC in iomap_atomic_prot_pfn.\n  x86: use standard PIT frequency\n  xen: handle highmem pages correctly when shrinking a domain\n  x86, mm: fix pte_free()\n  xen: actually release memory when shrinking domain\n  x86: unmask CPUID levels on Intel CPUs\n  x86: add MSR_IA32_MISC_ENABLE bits to \u003casm/msr-index.h\u003e\n  x86: fix PTE corruption issue while mapping RAM using /dev/mem\n  x86: mtrr fix debug boot parameter\n  x86: fix page attribute corruption with cpa()\n  Revert \"x86: signal: change type of paramter for sys_rt_sigreturn()\"\n  x86: use early clobbers in usercopy*.c\n  x86: remove kernel_physical_mapping_init() from init section\n  fix: crash: IP: __bitmap_intersects+0x48/0x73\n  cpufreq: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write\n  work_on_cpu: Use our own workqueue.\n  work_on_cpu: don\u0027t try to get_online_cpus() in work_on_cpu.\n  ...\n"
    },
    {
      "commit": "30a0fb947a68ad3ab8a7184e3b3d79dce10e3688",
      "tree": "1c2d4059264b71b36d00dcc96c333a47e28ae18a",
      "parents": [
        "e88a0faae5baaaa3bdc6f23a55ad6bc7a7b4aa77"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Jan 26 09:40:58 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Jan 26 09:40:58 2009 -0800"
      },
      "message": "x86: correct the CPUID pattern for MSR_IA32_MISC_ENABLE availability\n\nImpact: re-enable CPUID unmasking on affected processors\n\nAs far as I am capable of discerning from the documentation,\nMSR_IA32_MISC_ENABLE should be available for all family 0xf CPUs, as\nwell as family 6 for model \u003e\u003d 0xd (newer Pentium M).\n\nThe documentation on this isn\u0027t ideal, so we need to be on the lookout\nfor errors, still.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "659d2618b38f8a4d91bdb19cfc5c7fb330a4c55a",
      "tree": "7321644eb5c9cccdf691a579a10346a3f909c93f",
      "parents": [
        "99fb4d349db7e7dacb2099c5cc320a9e2d31c1ef"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Sat Jan 24 01:46:03 2009 +0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:27:18 2009 +0100"
      },
      "message": "x86: fix section mismatch warning\n\nHere function vmi_activate calls a init function activate_vmi , which\ncauses the following section mismatch warnings:\n\n  LD      arch/x86/kernel/built-in.o\nWARNING: arch/x86/kernel/built-in.o(.text+0x13ba9): Section mismatch\nin reference from the function vmi_activate() to the function\n.init.text:vmi_time_init()\nThe function vmi_activate() references\nthe function __init vmi_time_init().\nThis is often because vmi_activate lacks a __init\nannotation or the annotation of vmi_time_init is wrong.\n\nWARNING: arch/x86/kernel/built-in.o(.text+0x13bd1): Section mismatch\nin reference from the function vmi_activate() to the function\n.devinit.text:vmi_time_bsp_init()\nThe function vmi_activate() references\nthe function __devinit vmi_time_bsp_init().\nThis is often because vmi_activate lacks a __devinit\nannotation or the annotation of vmi_time_bsp_init is wrong.\n\nWARNING: arch/x86/kernel/built-in.o(.text+0x13bdb): Section mismatch\nin reference from the function vmi_activate() to the function\n.devinit.text:vmi_time_ap_init()\nThe function vmi_activate() references\nthe function __devinit vmi_time_ap_init().\nThis is often because vmi_activate lacks a __devinit\nannotation or the annotation of vmi_time_ap_init is wrong.\n\nFix it by marking vmi_activate() as __init too.\n\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d5e397cb49b53381e4c99a064ca733c665646de8",
      "tree": "c8d0013c2c561573c2b011f7373c09e18b4c7255",
      "parents": [
        "34707bcd0452aba644396767bc9fb61585bdab4f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 06:09:00 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:22:00 2009 +0100"
      },
      "message": "x86: improve early fault/irq printout\n\nImpact: add a stack dump to early IRQs/faults\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "34707bcd0452aba644396767bc9fb61585bdab4f",
      "tree": "3cc778a32eee813451d55e305ba2b74ff35b0dcd",
      "parents": [
        "f3b8436ad9a8ad36b3c9fa1fe030c7f38e5d3d0b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:18:05 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:18:43 2009 +0100"
      },
      "message": "x86, debug: remove early_printk() #ifdefs from head_32.S\n\nImpact: cleanup\n\nRemove such constructs:\n\n #ifdef CONFIG_EARLY_PRINTK\n        call early_printk\n #else\n        call printk\n #endif\n\nNot only are they ugly, they are also pointless: a call to printk()\nmaps to early_printk during early bootup anyway, if CONFIG_EARLY_PRINTK\nis enabled.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "99fb4d349db7e7dacb2099c5cc320a9e2d31c1ef",
      "tree": "62d62cb8f17962e9318177240c6154a4ca708077",
      "parents": [
        "ef5fa0ab24b87646c7bc98645acbb4b51fc2acd4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 04:30:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 12:36:24 2009 +0100"
      },
      "message": "x86: unmask CPUID levels on Intel CPUs, fix\n\nImpact: fix boot hang on pre-model-15 Intel CPUs\n\nrdmsrl_safe() does not work in very early bootup code yet, because we\ndont have the pagefault handler installed yet so exception section\ndoes not get parsed. rdmsr_safe() will just crash and hang the bootup.\n\nSo limit the MSR_IA32_MISC_ENABLE MSR read to those CPU types that\nsupport it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b38b0665905538e76e26f2a4c686179abb1f69f6",
      "tree": "849514b44863461c542872173221c3f365a0e6a7",
      "parents": [
        "75a048119e76540d73132cfc8e0fa0c0a8bb6c83"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Jan 23 17:20:50 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Jan 23 18:08:05 2009 -0800"
      },
      "message": "x86: filter CPU features dependent on unavailable CPUID levels\n\nImpact: Fixes potential crashes on misconfigured systems.\n\nSome CPU features require specific CPUID levels to be available in\norder to function, as they contain information about the operation of\na specific feature.  However, some BIOSes and virtualization software\nprovide the ability to mask CPUID levels in order to support legacy\noperating systems.  We try to enable such CPUID levels when we know\nhow to do it, but for the remaining cases, filter out such CPU\nfeatures when there is no way for us to support them.\n\nDo this in one place, in the CPUID code, with a table-driven approach.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "75a048119e76540d73132cfc8e0fa0c0a8bb6c83",
      "tree": "2a4d88809efae435e6fe8e33e630f92d76742c9d",
      "parents": [
        "b1882e68d17a93b523dce09c3a181319aace2f0e"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Jan 22 16:17:05 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Jan 23 18:07:45 2009 -0800"
      },
      "message": "x86: handle PAT more like other CPU features\n\nImpact: Cleanup\n\nWhen PAT was originally introduced, it was handled specially for a few\nreasons:\n\n- PAT bugs are hard to track down, so we wanted to maintain a\n  whitelist of CPUs.\n- The i386 and x86-64 CPUID code was not yet unified.\n\nBoth of these are now obsolete, so handle PAT like any other features,\nincluding ordinary feature blacklisting due to known bugs.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "98e3d45edad207b4358948d6e2cac4e482c3bb5d",
      "tree": "fdf8f1608d8b12cb072d2231e3626ab7ec38bf4b",
      "parents": [
        "fe40c0af3cff3ea461cf25bddb979abc7279d4df"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Fri Jan 23 15:50:10 2009 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Jan 23 17:17:38 2009 -0800"
      },
      "message": "x86: signal: use {get|put}_user_try and catch\n\nImpact: use new framework\n\nUse {get|put}_user_try, catch, and _ex in arch/x86/kernel/signal.c.\n\nNote: this patch contains \"WARNING: line over 80 characters\", because when\nintroducing new block I insert an indent to avoid mistakes by edit.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "3819cd489ec5d18a4cbd2f05acdc516473caa105",
      "tree": "b3f01152e5594971108e38f79dd97158077be10c",
      "parents": [
        "03d2989df9c1c7df5b33c7a87e0790465461836a"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Fri Jan 23 11:03:29 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 23 11:03:29 2009 +0900"
      },
      "message": "x86: remove include of apic.h from hardirq_64.h\n\nImpact: cleanup\n\nAPIC definitions aren\u0027t needed here.  Remove the include and fix\nup the fallout.\n\ntj: added include to mce_intel_64.c.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "03d2989df9c1c7df5b33c7a87e0790465461836a",
      "tree": "be89b963e466eae8e43759805682ac10c65d1458",
      "parents": [
        "03b486322e994dde49e67aedb391867b7cf28822"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Fri Jan 23 11:03:28 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 23 11:03:28 2009 +0900"
      },
      "message": "x86: remove idle_timestamp from 32bit irq_cpustat_t\n\nImpact: bogus irq_cpustat field removed\n\nidle_timestamp is left over from the removed irqbalance code.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "ab897d2013128f470240a541b31cf5e636984e71",
      "tree": "844ade53ec6d74f84631cac2fe8975738022929f",
      "parents": [
        "f3b8436ad9a8ad36b3c9fa1fe030c7f38e5d3d0b"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Thu Jan 22 14:24:16 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 22 23:35:20 2009 +0100"
      },
      "message": "x86/pvops: remove pte_flags pvop\n\npte_flags() was introduced as a new pvop in order to extract just the\nflags portion of a pte, which is a potentially cheaper operation than\nextracting the page number as well.  It turns out this operation is\nnot needed, because simply using a mask to extract the flags from a\npte is sufficient for all current users.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "336f6c322d87806ef93afad6308ac65083a865e5",
      "tree": "25726735e2a355556850dca27ce0b1413bf0e4f1",
      "parents": [
        "f3b8436ad9a8ad36b3c9fa1fe030c7f38e5d3d0b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 22 09:50:44 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 22 10:02:07 2009 +0100"
      },
      "message": "debugobjects: add and use INIT_WORK_ON_STACK\n\nImpact: Fix debugobjects warning\n\ndebugobject enabled kernels spit out a warning in hpet code due to a\nworkqueue which is initialized on stack.\n\nAdd INIT_WORK_ON_STACK() which calls init_timer_on_stack() and use it\nin hpet.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "066941bd4eeb159307a5d7d795100d0887c00442",
      "tree": "2bd4dfc033f72cbe0b3532140f54df1869dd6180",
      "parents": [
        "bdf21a49bab28f0d9613e8d8724ef9c9168b61b9"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Jan 21 15:04:32 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 22 09:24:02 2009 +0100"
      },
      "message": "x86: unmask CPUID levels on Intel CPUs\n\nImpact: Fixes crashes with misconfigured BIOSes on XSAVE hardware\n\nAvuton Olrich reported early boot crashes with v2.6.28 and\nbisected it down to dc1e35c6e95e8923cf1d3510438b63c600fee1e2\n(\"x86, xsave: enable xsave/xrstor on cpus with xsave support\").\n\nIf the CPUID limit bit in MSR_IA32_MISC_ENABLE is set, clear it to\nmake all CPUID information available.  This is required for some\nfeatures to work, in particular XSAVE.\n\nReported-and-bisected-by: Avuton Olrich \u003cavuton@gmail.com\u003e\nTested-by: Avuton Olrich \u003cavuton@gmail.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "03b486322e994dde49e67aedb391867b7cf28822",
      "tree": "f1b3418cfaa57376f3637e85464bb6b88d72ba26",
      "parents": [
        "5b221278d61e3907a5e4104a844b63bc8bb3d43a"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Jan 20 04:36:04 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 13:00:42 2009 +0100"
      },
      "message": "x86: make UV support configurable\n\nMake X86 SGI Ultraviolet support configurable. Saves about 13K of text size\non my modest config.\n\n   text    data     bss     dec     hex filename\n6770537 1158680  694356 8623573  8395d5 vmlinux\n6757492 1157664  694228 8609384  835e68 vmlinux.nouv\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "731f1872f4e8a0f1eabd49c3548207e79a421202",
      "tree": "d60ab8ff57f1bc254330155b4cf444b0ef888531",
      "parents": [
        "a1e46212a410793d575718818e81ddc442a65283"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Tue Jan 20 10:37:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 12:26:42 2009 +0100"
      },
      "message": "x86: mtrr fix debug boot parameter\n\nwhile looking at:\n\n  http://bugzilla.kernel.org/show_bug.cgi?id\u003d11541\n\nI realized that the mtrr.show param cannot work, because\nthe code is processed much too early.\n\nThis patch:\n - Declares mtrr.show as early_param\n - Stays consistent with the previous param (which I doubt\n   that it ever worked), so mtrr.show\u003d1 would still work\n - Declares mtrr_show as initdata\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nAcked-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "198030782cedf25391e67e7c88b04f87a5eb6563",
      "tree": "5b7368c6bf052bcb4bb273497a57900720d36f51",
      "parents": [
        "4ec71fa2d2c3f1040348f2604f4b8ccc833d1c2e",
        "92181f190b649f7ef2b79cbf5c00f26ccc66da2a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:39:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:39:51 2009 +0100"
      },
      "message": "Merge branch \u0027x86/mm\u0027 into core/percpu\n\nConflicts:\n\tarch/x86/mm/fault.c\n"
    },
    {
      "commit": "55f4949f5765e7a29863b6d17a774601810732f5",
      "tree": "47f7328e33e551958efff9054f23859a5491399d",
      "parents": [
        "3eb3963fd1974c63e9bb3cfe774abc3e1995e479"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:08:53 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:16:19 2009 +0100"
      },
      "message": "x86, mm: move tlb.c to arch/x86/mm/\n\nImpact: cleanup\n\nNow that it\u0027s unified, move the (SMP) TLB flushing code from arch/x86/kernel/\nto arch/x86/mm/, where it belongs logically.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3eb3963fd1974c63e9bb3cfe774abc3e1995e479",
      "tree": "c00d6c2e8484793ab6bd0644db59bbdf5e9429c5",
      "parents": [
        "ae2b56b92bd33b416528986528e0732c98c7a285",
        "5766b842b23c6b40935a5f3bd435b2bcdaff2143"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:14:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 10:14:17 2009 +0100"
      },
      "message": "Merge branch \u0027cpus4096\u0027 into core/percpu\n\nConflicts:\n\tarch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c\n\tarch/x86/kernel/tlb_32.c\n\nMerge it here because both the cpumask changes and the ongoing percpu\nwork is touching the TLB code. The percpu changes take precedence, as\nthey eliminate tlb_32.c altogether.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "552b8aa4d1edcc1c764ff6f61a7686347a2d1827",
      "tree": "cdebda18ea3360461358127091859610be2acf01",
      "parents": [
        "e0a96129db574d6365e3439d16d88517c437ab33"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 09:31:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 21 09:43:18 2009 +0100"
      },
      "message": "Revert \"x86: signal: change type of paramter for sys_rt_sigreturn()\"\n\nThis reverts commit 4217458dafaa57d8e26a46f5d05ab8c53cf64191.\n\nJustin Madru bisected this commit, it was causing weird Firefox\ncrashes.\n\nThe reason is that GCC mis-optimizes (re-uses) the on-stack parameters of\nthe calling frame, which corrupts the syscall return pt_regs state and\nthus corrupts user-space register state.\n\nSo we go back to the slightly less clean but more optimization-safe\nmethod of getting to pt_regs. Also add a comment to explain this.\n\nResolves: http://bugzilla.kernel.org/show_bug.cgi?id\u003d12505\n\nReported-and-bisected-by: Justin Madru \u003cjdm64@gawab.com\u003e\nTested-by: Justin Madru \u003cjdm64@gawab.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16c2d3f895a3bc8d8e4c76c2646a6b750c181299",
      "tree": "736d0ace296c9682eb99d841ba41c6a082f3124d",
      "parents": [
        "02cf94c370e0dc9bf408fe45eb86fe9ad58eaf7f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "message": "x86: rename tlb_64.c to tlb.c\n\nImpact: file rename\n\ntlb_64.c is now the tlb code for both 32 and 64.  Rename it to tlb.c.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "02cf94c370e0dc9bf408fe45eb86fe9ad58eaf7f",
      "tree": "e12620b5fead5ec6d90b54046a5025c2b28234a0",
      "parents": [
        "6dd01bedee6c3191643db303a1dc530bad56ec55"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "message": "x86: make x86_32 use tlb_64.c\n\nImpact: less contention when issuing invalidate IPI, cleanup\n\nMake x86_32 use the same tlb code as 64bit.  The 64bit code uses\nmultiple IPI vectors for tlb shootdown to reduce contention.  This\npatch makes x86_32 allocate the same 8 IPIs as x86_64 and share the\ncode paths.\n\nNote that the usage of asmlinkage is inconsistent for x86_32 and 64\nand calls for further cleanup.  This has been noted with a FIXME\ncomment in tlb_64.c.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6dd01bedee6c3191643db303a1dc530bad56ec55",
      "tree": "55d86313c7973e7fe626ceffa7d38925f9997dfb",
      "parents": [
        "bdbcdd48883940bbd8d17eb01172d58a261a413a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "message": "x86: prepare for tlb merge\n\nImpact: clean up, ipi vector number reordering for x86_32\n\nMake the following changes to prepare for tlb merge.\n\n* reorder x86_32 ip vectors\n\n* adjust tlb_32.c and tlb_64.c such that their logics coincide exactly\n\t- on spurious invalidate ipi, tlb_32 acks the irq\n\t- tlb_64 now has proper memory barriers around clearing\n          flush_cpumask (no change in generated code)\n\n* unexport flush_tlb_page from tlb_32.c, there\u0027s no user\n\n* use unsigned int for cpu id\n\n* drop unnecessary includes from tlb_64.c\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "bdbcdd48883940bbd8d17eb01172d58a261a413a",
      "tree": "59ae56454b3ccd8fbc14c57af97ed4bbade58e51",
      "parents": [
        "d650a5148593b65a3c3f9a344f46b91b7dfe7713"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "message": "x86: uv cleanup\n\nImpact: cleanup\n\nMake the following uv related cleanups.\n\n* collect visible uv related definitions and interfaces into uv/uv.h\n  and use it.  this cleans up the messy situation where on 64bit, uv\n  is defined properly, on 32bit generic it\u0027s dummy and on the rest\n  undefined.  after this clean up, uv is defined on 64 and dummy on\n  32.\n\n* update uv_flush_tlb_others() such that it takes cpumask of\n  to-be-flushed cpus as argument, instead of that minus self, and\n  returns yet-to-be-flushed cpumask, instead of modifying the passed\n  in parameter.  this interface change will ease dummy implementation\n  of uv_flush_tlb_others() and makes uv tlb flush related stuff\n  defined in tlb_uv proper.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "d650a5148593b65a3c3f9a344f46b91b7dfe7713",
      "tree": "82f95863cf34977065a78dd2521d78208fa83336",
      "parents": [
        "6826c8ff07b5f95df0473a748a9831707079b940"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:06 2009 +0900"
      },
      "message": "x86: merge irq_regs.h\n\nImpact: cleanup, better irq_regs code generation for x86_64\n\nMake 64-bit use the same optimizations as 32-bit.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "0dd76d736eeb3e0ef86c5b103b47ae0e15edebad",
      "tree": "1ab75fceefae986c80dbe1e86a7975df3fb5d9fd",
      "parents": [
        "299e26992a737804e13e74fdb97cdab470ed19ac"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Wed Jan 21 17:26:05 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:05 2009 +0900"
      },
      "message": "x86: set %fs to __KERNEL_PERCPU unconditionally for x86_32\n\nImpact: cleanup\n\n%fs is currently set to __KERNEL_DS at boot, and conditionally\nswitched to __KERNEL_PERCPU for secondary cpus.  Instead, initialize\nGDT_ENTRY_PERCPU to the same attributes as GDT_ENTRY_KERNEL_DS and\nset %fs to __KERNEL_PERCPU unconditionally.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "06deef892c7327992434917fb6592c233430803d",
      "tree": "9f9c1b9615eaaac3cd0cc49feacf17d92b727e4e",
      "parents": [
        "67e68bde02fe783efc2ce2ca31bdb992f5235f8d"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Wed Jan 21 17:26:05 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 21 17:26:05 2009 +0900"
      },
      "message": "x86: clean up gdt_page definition\n\nImpact: cleanup \u0026\u0026 more compact percpu area layout with future changes\n\nMove 64-bit GDT to page-aligned section and clean up comment\nformatting.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "afb33f8c0d7dea8c48ae1c2e3af5b437aa8dd7bb",
      "tree": "7288c6668091059dd51064b6b4cbe39871846285",
      "parents": [
        "422e79a8b39d9ac73e410dc3cd099aecea82afd2"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Jan 12 12:53:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 17:14:28 2009 +0100"
      },
      "message": "x86: remove byte locks\n\nImpact: cleanup\n\nRemove byte locks implementation, which was introduced by Jeremy in\n8efcbab6 (\"paravirt: introduce a \"lock-byte\" spinlock implementation\"),\nbut turned out to be dead code that is not used by any in-kernel\nvirtualization guest (Xen uses its own variant of spinlocks implementation\nand KVM is not planning to move to byte locks).\n\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0ce1c383681370964e7f77dd44506aeb3a6ba657",
      "tree": "75aa590c636feed7d110c03eddb56cc518fc034c",
      "parents": [
        "0a2a18b721abc960fbcada406746877d22340a60",
        "1de9e8e70f5acc441550ca75433563d91b269bbe"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 09:23:28 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 09:23:28 2009 +0100"
      },
      "message": "Merge commit \u0027v2.6.29-rc2\u0027 into x86/mm\n"
    },
    {
      "commit": "5766b842b23c6b40935a5f3bd435b2bcdaff2143",
      "tree": "89052022e04f347561cd4b45ba462d8b652615b6",
      "parents": [
        "28e7d82d6325734c7ecd1f223b892701f7a8c171"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 09:13:15 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 09:13:15 2009 +0100"
      },
      "message": "x86, cpumask: fix tlb flush race\n\nImpact: fix bootup crash\n\nThe cpumask is now passed in as a reference to mm-\u003ecpu_vm_mask, not on\nthe stack - hence it is not constant anymore during the TLB flush.\n\nThat way it could race and some static sanity checks would trigger:\n\n[  238.154287] ------------[ cut here ]------------\n[  238.156039] kernel BUG at arch/x86/kernel/tlb_32.c:130!\n[  238.156039] invalid opcode: 0000 [#1] SMP\n[  238.156039] last sysfs file: /sys/class/net/eth2/address\n[  238.156039] Modules linked in:\n[  238.156039]\n[  238.156039] Pid: 6493, comm: ifup-eth Not tainted (2.6.29-rc2-tip #1) P4DC6\n[  238.156039] EIP: 0060:[\u003cc0118f87\u003e] EFLAGS: 00010202 CPU: 2\n[  238.156039] EIP is at native_flush_tlb_others+0x35/0x158\n[  238.156039] EAX: c0ef972c EBX: f6143301 ECX: 00000000 EDX: 00000000\n[  238.156039] ESI: f61433a8 EDI: f6143200 EBP: f34f3e00 ESP: f34f3df0\n[  238.156039]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068\n[  238.156039] Process ifup-eth (pid: 6493, ti\u003df34f2000 task\u003df399ab00 task.ti\u003df34f2000)\n[  238.156039] Stack:\n[  238.156039]  ffffffff f61433a8 ffffffff f6143200 f34f3e18 c0118e9c 00000000 f6143200\n[  238.156039]  f61433a8 f5bec738 f34f3e28 c0119435 c2b5b830 f6143200 f34f3e34 c01c2dc3\n[  238.156039]  bffd9000 f34f3e60 c01c3051 00000000 ffffffff f34f3e4c 00000000 00000071\n[  238.156039] Call Trace:\n[  238.156039]  [\u003cc0118e9c\u003e] ? flush_tlb_others+0x52/0x5b\n[  238.156039]  [\u003cc0119435\u003e] ? flush_tlb_mm+0x7f/0x8b\n[  238.156039]  [\u003cc01c2dc3\u003e] ? tlb_finish_mmu+0x2d/0x55\n[  238.156039]  [\u003cc01c3051\u003e] ? exit_mmap+0x124/0x170\n[  238.156039]  [\u003cc013e965\u003e] ? mmput+0x40/0xf5\n[  238.156039]  [\u003cc01e4788\u003e] ? flush_old_exec+0x640/0x94b\n[  238.156039]  [\u003cc01ddb4e\u003e] ? fsnotify_access+0x37/0x39\n[  238.156039]  [\u003cc01e3435\u003e] ? kernel_read+0x39/0x4b\n[  238.156039]  [\u003cc021bc8a\u003e] ? load_elf_binary+0x4a1/0x11bb\n[  238.156039]  [\u003cc01c0af9\u003e] ? might_fault+0x51/0x9c\n[  238.156039]  [\u003cc010a2cc\u003e] ? paravirt_read_tsc+0x20/0x4f\n[  238.156039]  [\u003cc010a406\u003e] ? native_sched_clock+0x5d/0x60\n[  238.156039]  [\u003cc01e2fda\u003e] ? search_binary_handler+0xab/0x2c4\n[  238.156039]  [\u003cc021b7e9\u003e] ? load_elf_binary+0x0/0x11bb\n[  238.156039]  [\u003cc04ae9a5\u003e] ? _raw_read_unlock+0x21/0x46\n[  238.156039]  [\u003cc021b7e9\u003e] ? load_elf_binary+0x0/0x11bb\n[  238.156039]  [\u003cc01e2fe1\u003e] ? search_binary_handler+0xb2/0x2c4\n[  238.156039]  [\u003cc01e4076\u003e] ? do_execve+0x21c/0x2ee\n[  238.156039]  [\u003cc01029b7\u003e] ? sys_execve+0x51/0x8c\n[  238.156039]  [\u003cc0103eaf\u003e] ? sysenter_do_call+0x12/0x43\n\nFix it by not assuming that the cpumask is constant.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8f5d36ed5bb6e33024619eaee15b7ce2e3d115b3",
      "tree": "1a73934430a84fa926c7a12e1901d7e2639da4ff",
      "parents": [
        "5cdc5e9e69d4dc3a3630ae1fa666401b2a8dcde6",
        "6b7c38d55587f43bcd2cbce3a98b1c0826982090"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 08:23:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 08:23:45 2009 +0100"
      },
      "message": "Merge branch \u0027tj-percpu\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into core/percpu\n"
    },
    {
      "commit": "0d974d4592708f85044751817da4b7016e1b0602",
      "tree": "befe4e98f3e36b7ffe8637693e202a283262ad5d",
      "parents": [
        "947e76cdc34c782fc947313d4331380686eebbad"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Sun Jan 18 19:52:25 2009 -0500"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:20 2009 +0900"
      },
      "message": "x86: remove pda.h\n\nImpact: cleanup\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\n"
    },
    {
      "commit": "947e76cdc34c782fc947313d4331380686eebbad",
      "tree": "de5d424c4760269fd7800bc745e48b060c725300",
      "parents": [
        "8c7e58e690ae60ab4215b025f433ed4af261e103"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 12:21:28 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:20 2009 +0900"
      },
      "message": "x86: move stack_canary into irq_stack\n\nImpact: x86_64 percpu area layout change, irq_stack now at the beginning\n\nNow that the PDA is empty except for the stack canary, it can be removed.\nThe irqstack is moved to the start of the per-cpu section.  If the stack\nprotector is enabled, the canary overlaps the bottom 48 bytes of the irqstack.\n\ntj: * updated subject\n    * dropped asm relocation of irq_stack_ptr\n    * updated comments a bit\n    * rebased on top of stack canary changes\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "8c7e58e690ae60ab4215b025f433ed4af261e103",
      "tree": "2fd7fa19b8c34908e25ba223b8518d44504962e4",
      "parents": [
        "0bd74fa8e29dcad98f7e8ffe01ec05fb3326abaf"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 12:21:28 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:20 2009 +0900"
      },
      "message": "x86: rework __per_cpu_load adjustments\n\nImpact: cleanup\n\nUse cpu_number to determine if the adjustment is necessary.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "8ce031972b40da58c268caba8c5ea3c0856d7131",
      "tree": "2f41175bdf1001ebe7249fdfddfe8fe578d860a9",
      "parents": [
        "b4a8f7a262e79ecb0b39beb1449af524a78887f8"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 12:21:27 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:19 2009 +0900"
      },
      "message": "x86: remove pda_init()\n\nImpact: cleanup\n\nCopy the code to cpu_init() to satisfy the requirement that the cpu\nbe reinitialized.  Remove all other calls, since the segments are\nalready initialized in head_64.S.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "c6e50f93db5bd0895ec7c7d1b6f3886c6e1f11b6",
      "tree": "3d6b2d04118bb61fb50cf7624aaf7f7e4f5916ce",
      "parents": [
        "7890ba8c87604ca4c2c73f7de846bf5305d743e4"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:19 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:19 2009 +0900"
      },
      "message": "x86: cleanup stack protector\n\nImpact: cleanup\n\nMake the following cleanups.\n\n* remove duplicate comment from boot_init_stack_canary() which fits\n  better in the other place - cpu_idle().\n\n* move stack_canary offset check from __switch_to() to\n  boot_init_stack_canary().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "bfa318ad52a23f1e303d176b44366cdd2bb71ad2",
      "tree": "bf58fe12825bfebdc02f1acce0cd79f246491e7b",
      "parents": [
        "72859081851af2bda04117ca3d64206ffa199e5e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 15 15:46:08 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 20 00:17:01 2009 +0100"
      },
      "message": "fix: crash: IP: __bitmap_intersects+0x48/0x73\n\n-tip testing found this crash:\n\n\u003e [   35.258515] calling  acpi_cpufreq_init+0x0/0x127 @ 1\n\u003e [   35.264127] BUG: unable to handle kernel NULL pointer dereference at (null)\n\u003e [   35.267554] IP: [\u003cffffffff80478092\u003e] __bitmap_intersects+0x48/0x73\n\u003e [   35.267554] PGD 0\n\u003e [   35.267554] Oops: 0000 [#1] SMP DEBUG_PAGEALLOC\n\narch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c is still broken: there\u0027s no\nallocation of the variable mask, so we pass in an uninitialized cmd.mask\nfield to drv_read(), which then passes it to the scheduler which then\ncrashes ...\n\nSwitch it over to the much simpler constant-cpumask-pointers approach.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "72859081851af2bda04117ca3d64206ffa199e5e",
      "tree": "5e532d7dfb1e96e5eb371253785892e1218d9e30",
      "parents": [
        "8ccad40df8d314f786fdb06bdbedd4f43f3257cd"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Jan 16 15:31:15 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 19 22:36:13 2009 +0100"
      },
      "message": "cpufreq: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write\n\nImpact: use new work_on_cpu function to reduce stack usage\n\nReplace the saving of current-\u003ecpus_allowed and set_cpus_allowed_ptr() with\na work_on_cpu function for drv_read() and drv_write().\n\nBasically converts do_drv_{read,write} into \"work_on_cpu\" functions that\nare now called by drv_read and drv_write.\n\nNote: This patch basically reverts 50c668d6 which reverted 7503bfba, now\nthat the work_on_cpu() function is more stable.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Dieter Ries \u003cclip2@gmx.de\u003e\nTested-by: Maciej Rutecki \u003cmaciej.rutecki@gmail.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: \u003ccpufreq@vger.kernel.org\u003e\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5cdc5e9e69d4dc3a3630ae1fa666401b2a8dcde6",
      "tree": "62032100bc8fb814f4c7b76c327144d5254ebfa3",
      "parents": [
        "7890ba8c87604ca4c2c73f7de846bf5305d743e4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 19 20:49:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 19 20:49:37 2009 +0100"
      },
      "message": "x86: fully honor \"nolapic\", fix\n\nImpact: build fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "422e79a8b39d9ac73e410dc3cd099aecea82afd2",
      "tree": "122389ce246029ae3b132d48fe6e32fe324a9173",
      "parents": [
        "b665967979d0e990f196e7c4ba88e17c9ed9b781"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Mon Jan 19 17:06:42 2009 +1100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Jan 18 22:16:46 2009 -0800"
      },
      "message": "x86: Remove never-called arch_setup_msi_irq()\n\nSince commit 75c46fa, \"x64, x2apic/intr-remap: MSI and MSI-X\nsupport for interrupt remapping infrastructure\", x86 has had an\nimplementation of arch_setup_msi_irqs().\n\nThat implementation does not call arch_setup_msi_irq(), instead it calls\nsetup_irq(). No other x86 code calls arch_setup_msi_irq().\n\nThat leaves only arch_setup_msi_irqs() in drivers/pci/msi.c, but that\nroutine is overridden by the x86 version of arch_setup_msi_irqs().\n\nSo arch_setup_msi_irq() is dead code, remove it.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "c7f8562a51c2e5dcc1a00a2bdd232b9965ff960d",
      "tree": "b4ee0f020fab190f81741089ff4a2c271ac089ae",
      "parents": [
        "b2b815d80a5c4e5b50be0a98aba8c445ce8f3e1f"
      ],
      "author": {
        "name": "Leonardo Potenza",
        "email": "lpotenza@inwind.it",
        "time": "Sun Jan 18 23:03:56 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 18 23:59:22 2009 +0100"
      },
      "message": "x86: fix section mismatch warnings in kernel/setup_percpu.c\n\nThe function setup_cpu_local_masks() has been marked __init, in\norder to remove the following section mismatch messages:\n\nWARNING: vmlinux.o(.text+0x3c2c7): Section mismatch in reference from the function setup_cpu_local_masks() to the function .init.text:alloc_bootmem_cpumask_var()\nThe function setup_cpu_local_masks() references\nthe function __init alloc_bootmem_cpumask_var().\nThis is often because setup_cpu_local_masks lacks a __init\nannotation or the annotation of alloc_bootmem_cpumask_var is wrong.\n\nWARNING: vmlinux.o(.text+0x3c2d3): Section mismatch in reference from the function setup_cpu_local_masks() to the function .init.text:alloc_bootmem_cpumask_var()\nThe function setup_cpu_local_masks() references\nthe function __init alloc_bootmem_cpumask_var().\nThis is often because setup_cpu_local_masks lacks a __init\nannotation or the annotation of alloc_bootmem_cpumask_var is wrong.\n\nWARNING: vmlinux.o(.text+0x3c2df): Section mismatch in reference from the function setup_cpu_local_masks() to the function .init.text:alloc_bootmem_cpumask_var()\nThe function setup_cpu_local_masks() references\nthe function __init alloc_bootmem_cpumask_var().\nThis is often because setup_cpu_local_masks lacks a __init\nannotation or the annotation of alloc_bootmem_cpumask_var is wrong.\n\nWARNING: vmlinux.o(.text+0x3c2eb): Section mismatch in reference from the function setup_cpu_local_masks() to the function .init.text:alloc_bootmem_cpumask_var()\nThe function setup_cpu_local_masks() references\nthe function __init alloc_bootmem_cpumask_var().\nThis is often because setup_cpu_local_masks lacks a __init\nannotation or the annotation of alloc_bootmem_cpumask_var is wrong.\n\nSigned-off-by: Leonardo Potenza \u003clpotenza@inwind.it\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b2b815d80a5c4e5b50be0a98aba8c445ce8f3e1f",
      "tree": "3d1acce71d3917d1aadb4a59603d99330530abc8",
      "parents": [
        "64dec40ddee9d36d7b83f8a0513fdeaffe260a0e"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Jan 16 15:22:16 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 18 21:15:27 2009 +0100"
      },
      "message": "x86: put trigger in to detect mismatched apic versions\n\nImpact: add debug warning\n\nFire off one message if two apic\u0027s discovered with different\napic versions. (this code is only called during CPU init)\n\nThe goal of this is to pave the way of the removal of the apic_version[]\narray. We dont expect any apic version incompatibilities in the x86\nlandscape of systems [if so we dont handle them very well and probably\nnever will handle deep apic version assymetries well], but it\u0027s prudent\nto have a debug check for one kernel cycle nevertheless.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b2b062b8163391c42b3219d466ca1ac9742b9c7b",
      "tree": "f3f920c09b8de694b1bc1d4b878cfd2b0b98c913",
      "parents": [
        "a9de18eb761f7c1c860964b2e5addc1a35c7e861",
        "99937d6455cea95405ac681c86a857d0fcd530bd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 18 18:37:14 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 18 18:37:14 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into stackprotector\n\nConflicts:\n\tarch/x86/include/asm/pda.h\n\tarch/x86/include/asm/system.h\n\nAlso, moved include/asm-x86/stackprotector.h to arch/x86/include/asm.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2558e0eba66b49993e619da66c95a50a97830a3",
      "tree": "06c24e7ec0ab114da24e41e0b2107bb0cfe2d04e",
      "parents": [
        "e7a22c1ebcc1caa8178df1819d05128bb5b45ab9"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:59 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:59 2009 +0900"
      },
      "message": "x86-64: Move isidle from PDA to per-cpu.\n\ntj: s/isidle/is_idle/\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "e7a22c1ebcc1caa8178df1819d05128bb5b45ab9",
      "tree": "7769b1263850c97fa244a48ad9187ce0d74e1965",
      "parents": [
        "5689553076c4a67b83426b076082c63085b7567a"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:59 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:59 2009 +0900"
      },
      "message": "x86-64: Move nodenumber from PDA to per-cpu.\n\ntj: * s/nodenumber/node_number/\n    * removed now unused pda variable from pda_init()\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "5689553076c4a67b83426b076082c63085b7567a",
      "tree": "982dac3bceff2dbdb7b962c24b068b5f6e72ccd1",
      "parents": [
        "3d1e42a7cf945e289d6ba26159aa0e2b0645401b"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "message": "x86-64: Move irqcount from PDA to per-cpu.\n\ntj: s/irqcount/irq_count/\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "3d1e42a7cf945e289d6ba26159aa0e2b0645401b",
      "tree": "0b020226f5fce3abecf74e6680224ecb96fd18a8",
      "parents": [
        "9af45651f1f7c89942e016a1a00a7ebddfa727f8"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "message": "x86-64: Move oldrsp from PDA to per-cpu.\n\ntj: * in asm-offsets_64.c, pda.h inclusion shouldn\u0027t be removed as pda\n      is still referenced in the file\n    * s/oldrsp/old_rsp/\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "9af45651f1f7c89942e016a1a00a7ebddfa727f8",
      "tree": "a22617474a2a62bc816b97c9156c5a2fc9a566b3",
      "parents": [
        "c6f5e0acd5d12ee23f701f15889872e67b47caa6"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "message": "x86-64: Move kernelstack from PDA to per-cpu.\n\nAlso clean up PER_CPU_VAR usage in xen-asm_64.S\n\ntj: * remove now unused stack_thread_info()\n    * s/kernelstack/kernel_stack/\n    * added FIXME comment in xen-asm_64.S\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "c6f5e0acd5d12ee23f701f15889872e67b47caa6",
      "tree": "a4613618f06d7519f954745b893b4f572ecd39d9",
      "parents": [
        "ea9279066de44053d0c20ea855bc9f4706652d84"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "message": "x86-64: Move current task from PDA to per-cpu and consolidate with 32-bit.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "ea9279066de44053d0c20ea855bc9f4706652d84",
      "tree": "73c19b9112375ee0df8373b004105f05e1a196f4",
      "parents": [
        "92d65b2371d86d40807e1dbfdccadc4d501edcde"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "message": "x86-64: Move cpu number from PDA to per-cpu and consolidate with 32-bit.\n\ntj: moved cpu_number definition out of CONFIG_HAVE_SETUP_PER_CPU_AREA\n    for voyager.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "92d65b2371d86d40807e1dbfdccadc4d501edcde",
      "tree": "9e99e891fc3ecd6f24073a221cd3b7683e0fb022",
      "parents": [
        "26f80bd6a9ab17bc8a60b6092e7c0d05c5927ce5"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "message": "x86-64: Convert exception stacks to per-cpu\n\nMove the exception stacks to per-cpu, removing specific allocation code.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "26f80bd6a9ab17bc8a60b6092e7c0d05c5927ce5",
      "tree": "7456ba479397c986337b2bb9574a74710fddbdee",
      "parents": [
        "9eb912d1aa6b8106e06a73ea6702ec3dab0d6a1a"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:58 2009 +0900"
      },
      "message": "x86-64: Convert irqstacks to per-cpu\n\nMove the irqstackptr variable from the PDA to per-cpu.  Make the\nstacks themselves per-cpu, removing some specific allocation code.\nAdd a seperate flag (is_boot_cpu) to simplify the per-cpu boot\nadjustments.\n\ntj: * sprinkle some underbars around.\n\n    * irq_stack_ptr is not used till traps_init(), no reason to\n      initialize it early.  On SMP, just leaving it NULL till proper\n      initialization in setup_per_cpu_areas() works.  Dropped\n      is_boot_cpu and early irq_stack_ptr initialization.\n\n    * do DECLARE/DEFINE_PER_CPU(char[IRQ_STACK_SIZE], irq_stack)\n      instead of (char, irq_stack[IRQ_STACK_SIZE]).\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "9eb912d1aa6b8106e06a73ea6702ec3dab0d6a1a",
      "tree": "ed563ea82e5190894806c62d87a769400b08375a",
      "parents": [
        "1b437c8c73a36daa471dd54a63c426d72af5723d"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:57 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:57 2009 +0900"
      },
      "message": "x86-64: Move TLB state from PDA to per-cpu and consolidate with 32-bit.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "1b437c8c73a36daa471dd54a63c426d72af5723d",
      "tree": "2b713669c050fe52610959a7d68b53a2da75181d",
      "parents": [
        "74e7904559a10cbb9fbf9139c5c42fc87c0f62a4"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 00:38:57 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 00:38:57 2009 +0900"
      },
      "message": "x86-64: Move irq stats from PDA to per-cpu and consolidate with 32-bit.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "cef30b3a84e1c7cbd49987d83c5863c001445842",
      "tree": "340a0e17c1ddb40a3733b02b721772968f8499ea",
      "parents": [
        "6eb714c63ed5bd663627f7dda8c4d5258f3b64ef"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Jan 16 15:58:13 2009 -0800"
      },
      "committer": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Jan 16 15:58:13 2009 -0800"
      },
      "message": "x86: put trigger in to detect mismatched apic versions.\n\nFire off one message if two apic\u0027s discovered with different\napic versions.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "6eb714c63ed5bd663627f7dda8c4d5258f3b64ef",
      "tree": "26e10c2e9a81cb32db23d9ebcaac9ca609e4e646",
      "parents": [
        "e1d9ec6246a2668a5d037f529877efb7cf176af8"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Jan 16 15:31:15 2009 -0800"
      },
      "committer": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Jan 16 15:31:15 2009 -0800"
      },
      "message": "cpufreq: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write\n\nImpact: use new work_on_cpu function to reduce stack usage\n\nReplace the saving of current-\u003ecpus_allowed and set_cpus_allowed_ptr() with\na work_on_cpu function for drv_read() and drv_write().\n\nBasically converts do_drv_{read,write} into \"work_on_cpu\" functions that\nare now called by drv_read and drv_write.\n\nNote: This patch basically reverts 50c668d6 which reverted 7503bfba, now\nthat the work_on_cpu() function is more stable.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Dieter Ries \u003cclip2@gmx.de\u003e\nTested-by: Maciej Rutecki \u003cmaciej.rutecki@gmail.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: \u003ccpufreq@vger.kernel.org\u003e\n"
    },
    {
      "commit": "88d998c264722cd6e8fafa42aee191f7d9194960",
      "tree": "72cfd34df16be3e6778ab585c8324e8f5677fe21",
      "parents": [
        "79491ca416347f9e3c51993db556ba78bef44afa",
        "d08ca2ca743f324eceba59e93188f9439e966bce"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 16 14:45:34 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 16 14:45:34 2009 -0500"
      },
      "message": "Merge branch \u0027misc\u0027 into release\n"
    },
    {
      "commit": "5a4ccaf37ffece09ef33f1cfec67efa8ee56f967",
      "tree": "9a246d76a019318f658c3db7567664cffb5f2824",
      "parents": [
        "33f1d7ecc6cffff3c618a02295de969ebbacd95d"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Jan 06 21:15:32 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 16 14:32:17 2009 -0500"
      },
      "message": "kprobes: check CONFIG_FREEZER instead of CONFIG_PM\n\nCheck CONFIG_FREEZER instead of CONFIG_PM because kprobe booster\ndepends on freeze_processes() and thaw_processes() when CONFIG_PREEMPT\u003dy.\n\nThis fixes a linkage error which occurs when CONFIG_PREEMPT\u003dy, CONFIG_PM\u003dy\nand CONFIG_FREEZER\u003dn.\n\nReported-by: Cheng Renquan \u003ccrquan@gmail.com\u003e\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "cd3adf52309867955d6e2175246b526442235805",
      "tree": "7b64648450dc39d9662d09923fab7fd1e9c47da8",
      "parents": [
        "a338af2c648f5e07c582154745a6c60cd2d8bf12"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 16 12:11:43 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:20:58 2009 +0100"
      },
      "message": "x86_64: initialize this_cpu_off to __per_cpu_load\n\nOn x86_64, if get_per_cpu_var() is used before per cpu area is setup\n(if lockdep is turned on, it happens), it needs this_cpu_off to point\nto __per_cpu_load.  Initialize accordingly.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "a338af2c648f5e07c582154745a6c60cd2d8bf12",
      "tree": "fbfa35fe7672945f11c14f919663ba8b5a3f322e",
      "parents": [
        "6dbde3530850d4d8bfc1b6bd4006d92786a2787f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 16 11:19:03 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:20:43 2009 +0100"
      },
      "message": "x86: fix build bug introduced during merge\n\nEXPORT_PER_CPU_SYMBOL() got misplaced during merge leading to build\nfailure.  Fix it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6dbde3530850d4d8bfc1b6bd4006d92786a2787f",
      "tree": "08c6dd55e860827311b889e2ecfe3de9f51421a0",
      "parents": [
        "004aa322f855a765741d9437a98dd8fe2e4f32a6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 15 22:15:53 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:20:31 2009 +0100"
      },
      "message": "percpu: add optimized generic percpu accessors\n\nIt is an optimization and a cleanup, and adds the following new\ngeneric percpu methods:\n\n  percpu_read()\n  percpu_write()\n  percpu_add()\n  percpu_sub()\n  percpu_and()\n  percpu_or()\n  percpu_xor()\n\nand implements support for them on x86. (other architectures will fall\nback to a default implementation)\n\nThe advantage is that for example to read a local percpu variable,\ninstead of this sequence:\n\n return __get_cpu_var(var);\n\n ffffffff8102ca2b:\t48 8b 14 fd 80 09 74 \tmov    -0x7e8bf680(,%rdi,8),%rdx\n ffffffff8102ca32:\t81\n ffffffff8102ca33:\t48 c7 c0 d8 59 00 00 \tmov    $0x59d8,%rax\n ffffffff8102ca3a:\t48 8b 04 10          \tmov    (%rax,%rdx,1),%rax\n\nWe can get a single instruction by using the optimized variants:\n\n return percpu_read(var);\n\n ffffffff8102ca3f:\t65 48 8b 05 91 8f fd \tmov    %gs:0x7efd8f91(%rip),%rax\n\nI also cleaned up the x86-specific APIs and made the x86 code use\nthese new generic percpu primitives.\n\ntj: * fixed generic percpu_sub() definition as Roel Kluin pointed out\n    * added percpu_and() for completeness\u0027s sake\n    * made generic percpu ops atomic against preemption\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "004aa322f855a765741d9437a98dd8fe2e4f32a6",
      "tree": "a1240d533edfb2bc451dab230c25fb1468a091dc",
      "parents": [
        "49357d19e4fb31e28796eaff83499e7584c26878"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 13 20:41:35 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:20:26 2009 +0100"
      },
      "message": "x86: misc clean up after the percpu update\n\nDo the following cleanups:\n\n* kill x86_64_init_pda() which now is equivalent to pda_init()\n\n* use per_cpu_offset() instead of cpu_pda() when initializing\n  initial_gs\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "49357d19e4fb31e28796eaff83499e7584c26878",
      "tree": "c0b425a5f3a187ae25ebc662816aa7c95c9cc59f",
      "parents": [
        "b12d8db8fbfaed1e8222a15333a3645599636854"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 13 20:41:35 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:20:22 2009 +0100"
      },
      "message": "x86: convert pda ops to wrappers around x86 percpu accessors\n\npda is now a percpu variable and there\u0027s no reason it can\u0027t use plain\nx86 percpu accessors.  Add x86_test_and_clear_bit_percpu() and replace\npda op implementations with wrappers around x86 percpu accessors.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b12d8db8fbfaed1e8222a15333a3645599636854",
      "tree": "4ae6ce55232885d0707eb464c5b43a54bdfe3ce4",
      "parents": [
        "9939ddaff52787b2a7c1adf1b2afc95421aa0884"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 13 20:41:35 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:20:03 2009 +0100"
      },
      "message": "x86: make pda a percpu variable\n\n[ Based on original patch from Christoph Lameter and Mike Travis. ]\n\nAs pda is now allocated in percpu area, it can easily be made a proper\npercpu variable.  Make it so by defining per cpu symbol from linker\nscript and declaring it in C code for SMP and simply defining it for\nUP.  This change cleans up code and brings SMP and UP closer a bit.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9939ddaff52787b2a7c1adf1b2afc95421aa0884",
      "tree": "6e7266d065914e19c3c3f4b4e475f09b9669fa51",
      "parents": [
        "1a51e3a0aed18767cf2762e95456ecfeb0bca5e6"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 13 20:41:35 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:19:58 2009 +0100"
      },
      "message": "x86: merge 64 and 32 SMP percpu handling\n\nNow that pda is allocated as part of percpu, percpu doesn\u0027t need to be\naccessed through pda.  Unify x86_64 SMP percpu access with x86_32 SMP\none.  Other than the segment register, operand size and the base of\npercpu symbols, they behave identical now.\n\nThis patch replaces now unnecessary pda-\u003edata_offset with a dummy\nfield which is necessary to keep stack_canary at its place.  This\npatch also moves per_cpu_offset initialization out of init_gdt() into\nsetup_per_cpu_areas().  Note that this change also necessitates\nexplicit per_cpu_offset initializations in voyager_smp.c.\n\nWith this change, x86_OP_percpu()\u0027s are as efficient on x86_64 as on\nx86_32 and also x86_64 can use assembly PER_CPU macros.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1a51e3a0aed18767cf2762e95456ecfeb0bca5e6",
      "tree": "2d930218ef1072a59f7dac0f97bb03aa02796c8c",
      "parents": [
        "c8f3329a0ddd751241e96b4100df7eda14b2cbc6"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 13 20:41:35 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:19:46 2009 +0100"
      },
      "message": "x86: fold pda into percpu area on SMP\n\n[ Based on original patch from Christoph Lameter and Mike Travis. ]\n\nCurrently pdas and percpu areas are allocated separately.  %gs points\nto local pda and percpu area can be reached using pda-\u003edata_offset.\nThis patch folds pda into percpu area.\n\nDue to strange gcc requirement, pda needs to be at the beginning of\nthe percpu area so that pda-\u003estack_canary is at %gs:40.  To achieve\nthis, a new percpu output section macro - PERCPU_VADDR_PREALLOC() - is\nadded and used to reserve pda sized chunk at the start of the percpu\narea.\n\nAfter this change, for boot cpu, %gs first points to pda in the\ndata.init area and later during setup_per_cpu_areas() gets updated to\npoint to the actual pda.  This means that setup_per_cpu_areas() need\nto reload %gs for CPU0 while clearing pda area for other cpus as cpu0\nalready has modified it when control reaches setup_per_cpu_areas().\n\nThis patch also removes now unnecessary get_local_pda() and its call\nsites.\n\nA lot of this patch is taken from Mike Travis\u0027 \"x86_64: Fold pda into\nper cpu area\" patch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "c8f3329a0ddd751241e96b4100df7eda14b2cbc6"
}
