)]}'
{
  "log": [
    {
      "commit": "eb2b4e682a6d5b4779a7f1a6a8419982919795f6",
      "tree": "0319972d5c5ccea9cb63ae0c2db49c39ec12bf18",
      "parents": [
        "9096bd7a66efbe406910365c5206a32eed3875af"
      ],
      "author": {
        "name": "Simon Holm Thøgersen",
        "email": "odie@cs.aau.dk",
        "time": "Mon May 05 15:45:28 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat May 10 19:31:45 2008 +0200"
      },
      "message": "x86: revert commit 709f744 (\"x86: bitops asm constraint fixes\")\n\n709f744 causes my computer to freeze during the start up of X and my\nlogin manger (GDM). It gets to the point where it has shown the default\nX mouse cursor logo (a big X / cross) and does not respond to anything\nfrom that point on.\n\nThis worked fine before 709f744, and it works fine with ﻿709f744\nreverted on top of Linus\u0027 current tree (f74d505). The revert had\nconflicts, as far as I can tell due to white space changes. The diff I\nended up with is below.\n\nIt is 100% reproducible.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f19dcf4a61ea4a3d155acb239348d09cb264f6a0",
      "tree": "52e06002f6f3402148247b361ea91257f5853888",
      "parents": [
        "d66462f5314b0e70ddad8032eb76099475ca5571"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Mar 23 01:03:07 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:17 2008 +0200"
      },
      "message": "x86: include/asm-x86/pgalloc.h/bitops.h: checkpatch cleanups - formatting only\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d66462f5314b0e70ddad8032eb76099475ca5571",
      "tree": "473d34bf2662fb008495764dda774e00d563f01a",
      "parents": [
        "5245698f665c4b7a533dcc47a5afdf33095d436a"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Fri Apr 04 20:49:30 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:17 2008 +0200"
      },
      "message": "x86: finalize bitops unification\n\ninclude/asm-x86/bitops_32.h and include/asm-x86/bitops_64.h are now\nalmost identical. The 64-bit version sets ARCH_HAS_FAST_MULTIPLIER\nand has an extra inline function set_bit_string. The define currently\nhas no influence on the generated code, but it can be argued that\nsetting it on i386 is the right thing to do anyhow. The addition\nof the extra inline function on i386 does not hurt either.\n\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "12d9c8420b9daa1da3d9e090640fb24bcd0deba2",
      "tree": "60affb5bdc5b857dfb3969234659caedbf2ff02a",
      "parents": [
        "64970b68d2b3ed32b964b0b30b1b98518fde388e"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Sat Mar 15 13:04:42 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "x86: merge the simple bitops and move them to bitops.h\n\nSome of those can be written in such a way that the same\ninline assembly can be used to generate both 32 bit and\n64 bit code.\n\nFor ffs and fls, x86_64 unconditionally used the cmov\ninstruction and i386 unconditionally used a conditional\nbranch over a mov instruction. In the current patch I\nchose to select the version based on the availability\nof the cmov instruction instead. A small detail here is\nthat x86_64 did not previously set CONFIG_X86_CMOV\u003dy.\n\nImproved comments for ffs, ffz, fls and variations.\n\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "64970b68d2b3ed32b964b0b30b1b98518fde388e",
      "tree": "7d8eb5ea3ab1a841afa0f7ae1c65e7be4a9ca690",
      "parents": [
        "60b6783a044a55273b637983f52965c2808a6b86"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Tue Mar 11 16:17:19 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "x86, generic: optimize find_next_(zero_)bit for small constant-size bitmaps\n\nThis moves an optimization for searching constant-sized small\nbitmaps form x86_64-specific to generic code.\n\nOn an i386 defconfig (the x86#testing one), the size of vmlinux hardly\nchanges with this applied. I have observed only four places where this\noptimization avoids a call into find_next_bit:\n\nIn the functions return_unused_surplus_pages, alloc_fresh_huge_page,\nand adjust_pool_surplus, this patch avoids a call for a 1-bit bitmap.\nIn __next_cpu a call is avoided for a 32-bit bitmap. That\u0027s it.\n\nOn x86_64, 52 locations are optimized with a minimal increase in\ncode size:\n\nCurrent #testing defconfig:\n\t146 x bsf, 27 x find_next_*bit\n   text    data     bss     dec     hex filename\n   5392637  846592  724424 6963653  6a41c5 vmlinux\n\nAfter removing the x86_64 specific optimization for find_next_*bit:\n\t94 x bsf, 79 x find_next_*bit\n   text    data     bss     dec     hex filename\n   5392358  846592  724424 6963374  6a40ae vmlinux\n\nAfter this patch (making the optimization generic):\n\t146 x bsf, 27 x find_next_*bit\n   text    data     bss     dec     hex filename\n   5392396  846592  724424 6963412  6a40d4 vmlinux\n\n[ tglx@linutronix.de: build fixes ]\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6fd92b63d0626a8fe7eb8e2e50d19ecaa18cb412",
      "tree": "840f6cf998c251cdfcae37a03f34b34ac5bea3a5",
      "parents": [
        "18e413f7193ed2f6991d959863f46330813aa242"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Sun Mar 09 21:01:04 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "x86: change x86 to use generic find_next_bit\n\nThe versions with inline assembly are in fact slower on the machines I\ntested them on (in userspace) (Athlon XP 2800+, p4-like Xeon 2.8GHz, AMD\nOpteron 270). The i386-version needed a fix similar to 06024f21 to avoid\ncrashing the benchmark.\n\nBenchmark using: gcc -fomit-frame-pointer -Os. For each bitmap size\n1...512, for each possible bitmap with one bit set, for each possible\noffset: find the position of the first bit starting at offset. If you\nfollow ;). Times include setup of the bitmap and checking of the\nresults.\n\n\t\tAthlon\t\tXeon\t\tOpteron 32/64bit\nx86-specific:\t0m3.692s\t0m2.820s\t0m3.196s / 0m2.480s\ngeneric:\t0m2.622s\t0m1.662s\t0m2.100s / 0m1.572s\n\nIf the bitmap size is not a multiple of BITS_PER_LONG, and no set\n(cleared) bit is found, find_next_bit (find_next_zero_bit) returns a\nvalue outside of the range [0, size]. The generic version always returns\nexactly size. The generic version also uses unsigned long everywhere,\nwhile the x86 versions use a mishmash of int, unsigned (int), long and\nunsigned long.\n\nUsing the generic version does give a slightly bigger kernel, though.\n\ndefconfig:\t   text    data     bss     dec     hex filename\nx86-specific:\t4738555  481232  626688 5846475  5935cb vmlinux (32 bit)\ngeneric:\t4738621  481232  626688 5846541  59360d vmlinux (32 bit)\nx86-specific:\t5392395  846568  724424 6963387  6a40bb vmlinux (64 bit)\ngeneric:\t5392458  846568  724424 6963450  6a40fa vmlinux (64 bit)\n\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "286275c90f148562b973b1e1f39f9689e6676dc4",
      "tree": "5d9800fba92a22095dfaebbb794346546e39ebaa",
      "parents": [
        "49f74946f008add0b22723244976a32b365de06f"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Mar 23 01:01:45 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 17:41:22 2008 +0200"
      },
      "message": "include/asm-x86/bitops.h: checkpatch cleanups - formatting only\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "709f744f18ebc3a810d29c8d5502bf20c3cecc70",
      "tree": "1a2da7360736cb00ec6cbdde68c15bfab505f869",
      "parents": [
        "6e908947b4995bc0e551a8257c586d5c3e428201"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Thu Mar 13 09:08:51 2008 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 17:41:21 2008 +0200"
      },
      "message": "x86: bitops asm constraint fixes\n\nThis (simplified) piece of code didn\u0027t behave as expected due to\nincorrect constraints in some of the bitops functions, when\nX86_FEATURE_xxx is referring to other than the first long:\n\nint test(struct cpuinfo_x86 *c) {\n\tif (cpu_has(c, X86_FEATURE_xxx))\n\t\tclear_cpu_cap(c, X86_FEATURE_xxx);\n\treturn cpu_has(c, X86_FEATURE_xxx);\n}\n\nI\u0027d really like understand, though, what the policy of (not) having a\n\"memory\" clobber in these operations is - currently, this appears to\nbe totally inconsistent. Also, many comments of the non-atomic\nfunctions say those may also be re-ordered - this contradicts the use\nof \"asm volatile\" in there, which again I\u0027d like to understand.\n\nAs much as all of these, using \u0027int\u0027 for the \u0027nr\u0027 parameter and\n\u0027void *\u0027 for the \u0027addr\u0027 one is in conflict with\nDocumentation/atomic_ops.txt, especially because bt{,c,r,s} indeed\ntake the bit index as signed (which hence would really need special\nprecaution) and access the full 32 bits (if \u0027unsigned long\u0027 was used\nproperly here, 64 bits for x86-64) pointed at, so invalid uses like\nreferencing a \u0027char\u0027 array cannot currently be caught.\n\nFinally, the code with and without this patch relies heavily on the\n-fno-strict-aliasing compiler switch and I\u0027m not certain this really\nis a good idea.\n\nIn the light of all of this I\u0027m sending this as RFC, as fixing the\nabove might warrant a much bigger patch...\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "26996dd22b3cbc9dbe18cf908d2f844a116b6ec1",
      "tree": "5c85873869cd4e6f907b5f56da013742741bc434",
      "parents": [
        "dbcb4660246c240a159b4037067fdedb563a63cb"
      ],
      "author": {
        "name": "Glauber de Oliveira Costa",
        "email": "gcosta@redhat.com",
        "time": "Wed Jan 30 13:31:31 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:31 2008 +0100"
      },
      "message": "x86: change bitwise operations to get a void parameter.\n\nThis patch changes the bitwise operations in bitops.h to get\na void pointers as a parameter. Before this patch, a lot of warnings\ncan be seen. They\u0027re gone after it.\n\nSigned-off-by: Glauber de Oliveira Costa \u003cgcosta@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1c54d77078056cde0f195b1a982cb681850efc08",
      "tree": "2acf18bdf1cd7ff38f79ea09dd75025aa6f60a65",
      "parents": [
        "7bf0c23ed24b0d95a2a717f86dce1f210e16f8a5"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jan 30 13:30:55 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:55 2008 +0100"
      },
      "message": "x86: partial unification of asm-x86/bitops.h\n\nThis unifies the set/clear/test bit functions of asm/bitops.h.\n\nI have not attempted to merge the bit-finding functions, since they\nrely on the machine word size and can\u0027t be easily restructured to work\ngenerically without a lot of #ifdefs.  In particular, the 64-bit code\ncan assume the presence of conditional move instructions, whereas\n32-bit needs to be more careful.\n\nThe inline assembly for the bit operations has been changed to remove\nexplicit sizing hints on the instructions, so the assembler will pick\nthe appropriate instruction forms depending on the architecture and\nthe context.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "96a388de5dc53a8b234b3fd41f3ae2cedc9ffd42",
      "tree": "d947a467aa2da3140279617bc4b9b101640d7bf4",
      "parents": [
        "27bd0c955648646abf2a353a8371d28c37bcd982"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Oct 11 11:20:03 2007 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Oct 11 11:20:03 2007 +0200"
      },
      "message": "i386/x86_64: move headers to include/asm-x86\n\nMove the headers to include/asm-x86 and fixup the\nheader install make rules\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ]
}
