)]}'
{
  "log": [
    {
      "commit": "80c00ba942ee39c9a95c06959223560400bbb86e",
      "tree": "c0ff9363d1e3ab372ae8ed1137b1d012c88e683a",
      "parents": [
        "6588169d516560f68672e2928680b71c647b7806"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Jul 28 19:11:27 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Aug 03 14:09:45 2010 +0200"
      },
      "message": "kbuild: allow assignment to {A,C}FLAGS_KERNEL on the command line\n\nIt is now possible to assign options to AS and CC\non the command line - which is only used for built-in code.\n\n{A,C}FLAGS_KERNEL was used both in the top-level Makefile\nin the arch makefiles, thus users had no way to specify\nadditional options to AS, CC without overriding\nthe original value.\n\nIntroduce a new set of variables KBUILD_{A,C}FLAGS_KERNEL\nthat is used by arch specific files and free up\n{A,C}FLAGS_KERNEL so they can be assigned on\nthe command line.\n\nAll arch Makefiles that used the old variables has been updated.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "6588169d516560f68672e2928680b71c647b7806",
      "tree": "91b20bf9197c718ff4b5830bb1aea0b1bc0de272",
      "parents": [
        "d6f4ceb796ebf1a8c8a9ad4a8ea0d181aaec7de6"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Jul 28 17:33:09 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Aug 03 14:09:45 2010 +0200"
      },
      "message": "kbuild: allow assignment to {A,C,LD}FLAGS_MODULE on the command line\n\nIt is now possible to assign options to AS, CC and LD\non the command line - which is only used when building modules.\n\n{A,C,LD}FLAGS_MODULE was all used both in the top-level Makefile\nin the arch makefiles, thus users had no way to specify\nadditional options to AS, CC, LD when building modules\nwithout overriding the original value.\n\nIntroduce a new set of variables KBUILD_{A,C,LD}FLAGS_MODULE\nthat is used by arch specific files and free up\n{A,C,LD}FLAGS_MODULE so they can be assigned on\nthe command line.\n\nAll arch Makefiles that used the old variables has been updated.\n\nNote: Previously we had a MODFLAGS variable for both\nAS and CC. But in favour of consistency this was dropped.\nSo in some cases arch Makefile has one assignmnet replaced by\ntwo assignmnets.\n\nNote2: MODFLAGS was not documented and is dropped\nwithout any notice. I do not expect much/any breakage\nfrom this.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e [blackfin]\nAcked-by: Haavard Skinnemoen \u003chaavard.skinnemoen@atmel.com\u003e [avr32]\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "e26d6b834cc4a68adeb82abbdce7205df7599118",
      "tree": "a3f8ac014062c0eb394fa47f16226a4a8bf9e326",
      "parents": [
        "64ffc9ff424c65adcffe7d590018cc75e2d5d42a"
      ],
      "author": {
        "name": "Don Zickus",
        "email": "dzickus@redhat.com",
        "time": "Mon May 24 17:07:24 2010 -0400"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Fri Jun 04 12:46:48 2010 +0200"
      },
      "message": "Makefile.build: make KBUILD_SYMTYPES work again\n\ncommit 37a8d9f67f18de1e2cbc7387311ce22d4dbff518 tried to combine some\nduplicate code and accidentally broke how KBUILD_SYMTYPES worked\n\nThis fixes the code to match the original intention by the author who\noriginally added the code I believe.\n\nThe fixes include:\n- removing extra whitespaces in the if-statements\n- moving the if-statement from around the -r to the -T\n- adding a second arg to cmd_gensymtypes to simplify the options passed\n  to genksyms.\n\nTested by instrumenting genksyms and seeing what options were passed in\nduring a make, KBUILD_SYMTYPES make, and when a foo.symref was created.\n\nEverything compiled and looked ok.\n\nSigned-off-by: Don Zickus \u003cdzickus@redhat.com\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "4b024242e8a4e9679fa327ea03958b89f89096c9",
      "tree": "ee82a61d2669f5828fee34269b1b71d49a803169",
      "parents": [
        "abe94c756c08d50566c09a65b9c7fe72f83071c5"
      ],
      "author": {
        "name": "Jiafu He",
        "email": "jay@goldhive.com",
        "time": "Thu Dec 17 18:22:13 2009 -0700"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Feb 02 14:33:54 2010 +0100"
      },
      "message": "kbuild: Fix linking error built-in.o no such file or directory\n\nThis patch fixes the link error \"built-in.o: no such file or directory\".\nThe problem happens if \"dirx/Makefile\" contains only \"obj-m +\u003d diry/\ndirz/\" and the empty \"dirx/built-in.o\" is missing. Adding $(subdir-m)\ninto check for builtin-target fixes this error.\n\nSigned-off-by: Jiafu He \u003cjay@goldhive.com\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "e6299d2677e600f6a0bf93bbb89f20d3de5252de",
      "tree": "57aeaeb48e801c8b1da6c9df9c2ee8382a2ad9ea",
      "parents": [
        "69a7d1b3ec64786cfc8a16ef3e8585d1f93d3944"
      ],
      "author": {
        "name": "Wu Zhangjin",
        "email": "wuzhangjin@gmail.com",
        "time": "Fri Nov 20 20:34:31 2009 +0800"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Dec 17 01:57:22 2009 +0000"
      },
      "message": "MIPS: Tracing: Add an endian argument to scripts/recordmcount.pl\n\nMIPS and some other architectures need this argument to handle\nbig/little endian respectively.\n\nSigned-off-by: Wu Zhangjin \u003cwuzj@lemote.com\u003e\nCc: Nicholas Mc Guire \u003cder.herr@hofr.at\u003e\nCc: zhangfx@lemote.com\nCc: Wu Zhangjin \u003cwuzhangjin@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: linux-kernel@vger.kernel.org\nCc: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/674/\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "42f29a25207dc7b3051d299cc028d4b395d1328d",
      "tree": "34c0d4bc868752b9cb559c8db4c124783d70ff05",
      "parents": [
        "51b563fc93c8cb5bff1d67a0a71c374e4a4ea049"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@ksplice.com",
        "time": "Sun Sep 20 18:14:12 2009 -0400"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Sep 21 06:27:08 2009 +0200"
      },
      "message": "kbuild: Don\u0027t define ALIGN and ENTRY when preprocessing linker scripts.\n\nAdding a reference to \u003clinux/linkage.h\u003e to x86\u0027s \u003casm/cache.h\u003e causes\nthe x86 linker script to have syntax errors, because the ALIGN and\nENTRY keywords get redefined to the assembly implementations of those.\nOne could fix this by adjusting the include structure, but I think any\nsolution based on that approach would be fragile.\n\nCurrently, it is impossible when writing a header to do something\ndifferent for assembly files and linker scripts, even though there are\nclearly cases where one wants them to define macros differently for\nthe two (ENTRY being an excellent example).\nSo I think the right solution here is to introduce a new preprocessor\ndefinition, called LINKER_SCRIPT that is set along with __ASSEMBLY__\nfor linker scripts, and to use that to not define ALIGN and ENTRY in\nlinker scripts.\nI suspect we\u0027ll find other uses for this mechanism in\nthe future.\n\nSigned-off-by: Tim Abbott \u003ctabbott@ksplice.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "51b563fc93c8cb5bff1d67a0a71c374e4a4ea049",
      "tree": "38c6a6d185183b30b8dbe59d5b8fa78815a1fdd4",
      "parents": [
        "4356f4890792a678936c93c9196e8f7742e04535"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Sep 20 12:28:22 2009 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Sep 20 12:28:22 2009 +0200"
      },
      "message": "arm, cris, mips, sparc, powerpc, um, xtensa: fix build with bash 4.0\n\nAlbin Tonnerre \u003calbin.tonnerre@free-electrons.com\u003e reported:\n\n    Bash 4 filters out variables which contain a dot in them.\n    This happends to be the case of CPPFLAGS_vmlinux.lds.\n    This is rather unfortunate, as it now causes\n    build failures when using SHELL\u003d/bin/bash to compile,\n    or when bash happens to be used by make (eg when it\u0027s /bin/sh)\n\nRemove the common definition of CPPFLAGS_vmlinux.lds by\npushing relevant stuff to either Makefile.build or the\narch specific kernel/Makefile where we build the linker script.\n\nThis is also nice cleanup as we move the information out where\nit is used.\n\nNotes for the different architectures touched:\n\narm - we use an already exported symbol\ncris - we use a config symbol aleady available\n       [Not build tested]\nmips - the jiffies complexity has moved to vmlinux.lds.S where we need it.\n       Added a few variables to CPPFLAGS - they are only used by\n       the linker script.\n       [Not build tested]\npowerpc - removed assignment that is not needed\n          [not build tested]\nsparc - simplified it using $(BITS)\num - introduced a few new exported variables to deal with this\nxtensa - added options to CPP invocation\n         [not build tested]\n\nCc: Albin Tonnerre \u003calbin.tonnerre@free-electrons.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "66a570623be0d96130470a41cd38bce889b7e885",
      "tree": "600b5979b13da1294035565bab809af8d9af8279",
      "parents": [
        "8f7f5c9fc2966704579ff93f459ffa458bca6fc2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Sep 18 12:49:37 2009 -0700"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Sep 20 12:27:44 2009 +0200"
      },
      "message": "kbuild: fail build if recordmcount.pl fails\n\nWhen this script fails the build should fail too. Otherwise there\nare mysterious build failures later.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "c3c63b6bec3135e814fa07d30d57a253f41d53de",
      "tree": "cb4f8248374421ea1dd194e3a19c4f580113d135",
      "parents": [
        "78222caaeec01a84876f7e955d03e0c22d321287"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Sep 18 12:49:36 2009 -0700"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Sep 20 12:27:44 2009 +0200"
      },
      "message": "kbuild: echo the record_mcount command\n\nI had some problems with record_mcount in the Makefile and it was hard\nto track down. Echo it by default to make it easier to diagnose.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "720097d895956c0bf15b8440f7845159a04b74da",
      "tree": "25e5546b16c86a23bd69b5b65b8b33f1d70540b6",
      "parents": [
        "f14875a3e0cc35d7dbe15ee39763a6ae922e7034"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Apr 19 11:04:26 2009 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Apr 19 11:12:12 2009 +0200"
      },
      "message": "kbuild: introduce subdir-ccflags-y\n\nFollowing patch introduce support for setting options\nto gcc that has effect for current directory and all\nsubdirectories.\n\nThe typical use case are an architecture or a subsystem that\ndecide to cover all files with -Werror.\nToday alpha, mips and sparc uses -Werror in almost all their\nMakefile- with subdir-ccflag-y it is now simpler to do so\nas only the top-level directories needs to be covered.\n\nLikewise if we decide to cover a full subsystem such\nas net/ with -Werror this is done by adding a single\nline to net/Makefile.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "dc573f9b20c8710105ac35c08ed0fe1da5160ecd",
      "tree": "24db0a0f6364b78f9c74e62541d26155e785b8f9",
      "parents": [
        "b3a8c34886d0e3dd3a24a5b614ee025181da2f41",
        "ecf441b593ac41cb8cd8cd3695110167c42e098c",
        "b1792e367053968f2ddb48bc911d314143ce6242"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 06:25:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 06:25:38 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/kmemtrace\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "2ea038917bbdd51a7ae4a898c6a04641324dd033",
      "tree": "6a6f8b1db4d097d260449f88c267e39ab9d2bb3f",
      "parents": [
        "a6525042bfdfcab128bd91fad264de10fd24a55e"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Jan 14 21:38:20 2009 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Jan 14 21:38:20 2009 +0100"
      },
      "message": "Revert \"kbuild: strip generated symbols from *.ko\"\n\nThis reverts commit ad7a953c522ceb496611d127e51e278bfe0ff483.\n\nAnd commit: (\"allow stripping of generated symbols under CONFIG_KALLSYMS_ALL\")\n            9bb482476c6c9d1ae033306440c51ceac93ea80c\n\nThese stripping patches has caused a set of issues:\n\n1) People have reported compatibility issues with binutils due to\n   lack of support for `--strip-unneeded-symbols\u0027 with objcopy 2.15.92.0.2\n   Reported by: Wenji\n2) ccache and distcc no longer works as expeced\n   Reported by: Ted, Roland, + others\n3) The installed modules increased a lot in size\n   Reported by: Ted, Davej + others\n\nReported-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nReported-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nReported-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "18c167fd6d8feec5d337bd8fbc3a17da4cc37652",
      "tree": "708af98f3ba3622384fc8a27bbbc5b0f3c038b97",
      "parents": [
        "173ed24ee2d64f5de28654eb456ec1ee18a142e5"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Mon Jan 12 10:00:51 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 14 12:11:08 2009 +0100"
      },
      "message": "ftrace, ia64: make recordmcount distinct module compile\n\nIn IA64, module build and kernel build use different option.\nMake recordmcount.pl differentiate the two cases.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "96faec945f39cab38403f60f515bff43660b4dab",
      "tree": "e6681330a42303bb34be80d347cd01ff79f5b80a",
      "parents": [
        "2926328554fa740518e2a6585b2cefb01e5f65f3",
        "9bb482476c6c9d1ae033306440c51ceac93ea80c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 15:13:48 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 15:13:48 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (25 commits)\n  allow stripping of generated symbols under CONFIG_KALLSYMS_ALL\n  kbuild: strip generated symbols from *.ko\n  kbuild: simplify use of genksyms\n  kernel-doc: check for extra kernel-doc notations\n  kbuild: add headerdep used to detect inclusion cycles in header files\n  kbuild: fix string equality testing in tags.sh\n  kbuild: fix make tags/cscope\n  kbuild: fix make incompatibility\n  kbuild: remove TAR_IGNORE\n  setlocalversion: add git-svn support\n  setlocalversion: print correct subversion revision\n  scripts: improve the decodecode script\n  scripts/package: allow custom options to rpm\n  genksyms: allow to ignore symbol checksum changes\n  genksyms: track symbol checksum changes\n  tags and cscope support really belongs in a shell script\n  kconfig: fix options to check-lxdialog.sh\n  kbuild: gen_init_cpio expands shell variables in file names\n  remove bashisms from scripts/extract-ikconfig\n  kbuild: teach mkmakfile to be silent\n  ...\n"
    },
    {
      "commit": "ad7a953c522ceb496611d127e51e278bfe0ff483",
      "tree": "f51a18ab282bb77244fc02ad33359a92b6b36eb9",
      "parents": [
        "37a8d9f67f18de1e2cbc7387311ce22d4dbff518"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Tue Dec 16 11:28:14 2008 +0000"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Dec 19 22:41:15 2008 +0100"
      },
      "message": "kbuild: strip generated symbols from *.ko\n\nThis patch changes the way __crc_ symbols are being resolved from\nusing ld to do so to using the assembler, thus allowing these symbols\nto be marked local (the linker creates then as global ones) and hence\nallow stripping (for modules) or ignoring (for vmlinux) them. While at\nthis, also strip other generated symbols during module installation.\n\nOne potentially debatable point is the handling of the flags passeed\nto gcc when translating the intermediate assembly file into an object:\npassing $(c_flags) unchanged doesn\u0027t work as gcc passes --gdwarf2 to\ngas whenever is sees any -g* option, even for -g0, and despite the\nfact that the compiler would have already produced all necessary debug\ninfo in the C-\u003eassembly translation phase. I took the approach of just\nfiltering out all -g* options, but an alternative to such negative\nfiltering might be to have a positive filter which might, in the ideal\ncase allow just all the -Wa,* options to pass through.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "37a8d9f67f18de1e2cbc7387311ce22d4dbff518",
      "tree": "e28527c8380584fadb6d9eab32fb031445530e03",
      "parents": [
        "a1d94aa5560dc6b06baf30ae477115b51dc25461"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Dec 19 21:38:09 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Dec 19 22:00:58 2008 +0100"
      },
      "message": "kbuild: simplify use of genksyms\n\nAvoid duplicating long list of options in two places\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "64e6c1e12372840e7caf8e25325a9e9c5fd370e6",
      "tree": "aa47aa4e170dd4bb39c99cc7356231e2c61d64d2",
      "parents": [
        "a680eedc6c621c75695c68198533fc3c98f4053b"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@suse.de",
        "time": "Mon Dec 01 14:21:01 2008 -0800"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Dec 03 22:33:11 2008 +0100"
      },
      "message": "genksyms: track symbol checksum changes\n\nSometimes it is preferable to avoid changes of exported symbol checksums\n(to avoid breaking externally provided modules).  When a checksum change\noccurs, it can be hard to figure out what caused this change: underlying\ntypes may have changed, or additional type information may simply have\nbecome available at the point where a symbol is exported.\n\nAdd a new --reference option to genksyms which allows it to report why\nchecksums change, based on the type information dumps it creates with the\n--dump-types flag.  Genksyms will read in such a dump from a previous run,\nand report which symbols have changed (and why).\n\nThe behavior can be controlled for an entire build as follows: If\nKBUILD_SYMTYPES is set, genksyms uses --dump-types to produce *.symtypes\ndump files.  If any *.symref files exist, those will be used as the\nreference to check against.  If KBUILD_PRESERVE is set, checksum changes\nwill fail the build.\n\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "b3acf29afda06c76774dc6df6246c37ae707836b",
      "tree": "e9f9d541bc9383ae47b865f6b43e7c1159db7804",
      "parents": [
        "e1e302d8a9ab06ba8d7d5ec503d8996e6cf0eca4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Oct 29 15:30:26 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 31 00:38:34 2008 +0100"
      },
      "message": "ftrace, kbuild: condense recordmcount.pl parameter code\n\nImpact: cleanup\n\nSam Ravnborg pointed out that I could condense the code for the parameters of\nrecordmcount.pl by using an $(if ...) condition.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dce9d18adde74b8e36b9e4a8a49ddf066bad0b3b",
      "tree": "0d1a5fc1690808ed8184fd64798a65cc5c656585",
      "parents": [
        "6ae2a0765ab764da11cc305058ee5333810228f4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 23 09:32:57 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 23 15:58:19 2008 +0200"
      },
      "message": "ftrace: handle generic arch calls\n\nThe recordmcount script requires that the actual arch is passed in.\nThis works well when ARCH\u003di386 or ARCH\u003dx86_64 but does not handle the\ncase of ARCH\u003dx86.\n\nThis patch adds a parameter to the function to pass in the number of\nbits of the architecture. So that it can determine if x86 should be\nrun for x86_64 or i386 archs.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b3a320417484a6d6b9d28098944df58341353992",
      "tree": "c2b408434feb6ddf7547b19d85ad5f5c2649d6de",
      "parents": [
        "f2f8458e751f9ae41dfec3c00a46d3e62dc38f60"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Aug 27 09:08:30 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:36:16 2008 +0200"
      },
      "message": "kbuild: ftrace: don\u0027t assume that scripts/recordmcount.pl is executable\n\nCHK     include/linux/version.h\n  CHK     include/linux/utsrelease.h\n  CC      scripts/mod/empty.o\n/bin/sh: /usr/src/25/scripts/recordmcount.pl: Permission denied\n\nWe shouldn\u0027t assume that files have their `x\u0027 bits set.  There are various\nways in which file permissions get lost, including use of patch(1).\n\nIt might not be correct to assume that perl lives in $PATH?\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6a4917e3ae5194a10e0723f96edc854c381e3063",
      "tree": "8aaefd805a3e4cc6df2050838d1ae44c5a8f9ca5",
      "parents": [
        "3700273586ee6a58b95dd07d9f8a02db4a9b476f"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Mon Aug 18 15:58:12 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:35:53 2008 +0200"
      },
      "message": "ftrace: fix build problem with CONFIG_FTRACE\n\nI\u0027m seeing when I use separate src/build dirs:\n\nmake[3]: *** [arch/x86/kernel/time_32.o] Error 1\n/bin/sh: scripts/recordmcount.pl: No such file or directory\nmake[3]: *** [arch/x86/kernel/irq_32.o] Error 1\n/bin/sh: scripts/recordmcount.pl: No such file or directory\nmake[3]: *** [arch/x86/kernel/ldt.o] Error 1\n/bin/sh: scripts/recordmcount.pl: No such file or directory\nmake[3]: *** [arch/x86/kernel/i8259.o] Error 1\n/bin/sh: scripts/recordmcount.pl: No such file or directory\n\nThis fixes it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8da3821ba5634497da63d58a69e24a97697c4a2b",
      "tree": "47d4d097b1cd2aafae2e3596a9ae0d1293228782",
      "parents": [
        "8b1fa1d7b22f386747c7b78b918d4c680c16066f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Aug 14 15:45:07 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:34:40 2008 +0200"
      },
      "message": "ftrace: create __mcount_loc section\n\nThis patch creates a section in the kernel called \"__mcount_loc\".\nThis will hold a list of pointers to the mcount relocation for\neach call site of mcount.\n\nFor example:\n\nobjdump -dr init/main.o\n[...]\nDisassembly of section .text:\n\n0000000000000000 \u003cdo_one_initcall\u003e:\n   0:   55                      push   %rbp\n[...]\n000000000000017b \u003cinit_post\u003e:\n 17b:   55                      push   %rbp\n 17c:   48 89 e5                mov    %rsp,%rbp\n 17f:   53                      push   %rbx\n 180:   48 83 ec 08             sub    $0x8,%rsp\n 184:   e8 00 00 00 00          callq  189 \u003cinit_post+0xe\u003e\n                        185: R_X86_64_PC32      mcount+0xfffffffffffffffc\n[...]\n\nWe will add a section to point to each function call.\n\n   .section __mcount_loc,\"a\",@progbits\n[...]\n   .quad .text + 0x185\n[...]\n\nThe offset to of the mcount call site in init_post is an offset from\nthe start of the section, and not the start of the function init_post.\nThe mcount relocation is at the call site 0x185 from the start of the\n.text section.\n\n  .text + 0x185  \u003d\u003d init_post + 0xa\n\nWe need a way to add this __mcount_loc section in a way that we do not\nlose the relocations after final link.  The .text section here will\nbe attached to all other .text sections after final link and the\noffsets will be meaningless.  We need to keep track of where these\n.text sections are.\n\nTo do this, we use the start of the first function in the section.\ndo_one_initcall.  We can make a tmp.s file with this function as a reference\nto the start of the .text section.\n\n   .section __mcount_loc,\"a\",@progbits\n[...]\n   .quad do_one_initcall + 0x185\n[...]\n\nThen we can compile the tmp.s into a tmp.o\n\n  gcc -c tmp.s -o tmp.o\n\nAnd link it into back into main.o.\n\n  ld -r main.o tmp.o -o tmp_main.o\n  mv tmp_main.o main.o\n\nBut we have a problem.  What happens if the first function in a section\nis not exported, and is a static function. The linker will not let\nthe tmp.o use it.  This case exists in main.o as well.\n\nDisassembly of section .init.text:\n\n0000000000000000 \u003cset_reset_devices\u003e:\n   0:   55                      push   %rbp\n   1:   48 89 e5                mov    %rsp,%rbp\n   4:   e8 00 00 00 00          callq  9 \u003cset_reset_devices+0x9\u003e\n                        5: R_X86_64_PC32        mcount+0xfffffffffffffffc\n\nThe first function in .init.text is a static function.\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 t set_reset_devices\n\nThe lowercase \u0027t\u0027 means that set_reset_devices is local and is not exported.\nIf we simply try to link the tmp.o with the set_reset_devices we end\nup with two symbols: one local and one global.\n\n .section __mcount_loc,\"a\",@progbits\n .quad set_reset_devices + 0x10\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 t set_reset_devices\n                 U set_reset_devices\n\nWe still have an undefined reference to set_reset_devices, and if we try\nto compile the kernel, we will end up with an undefined reference to\nset_reset_devices, or even worst, it could be exported someplace else,\nand then we will have a reference to the wrong location.\n\nTo handle this case, we make an intermediate step using objcopy.\nWe convert set_reset_devices into a global exported symbol before linking\nit with tmp.o and set it back afterwards.\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 T set_reset_devices\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 T set_reset_devices\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 t set_reset_devices\n\nNow we have a section in main.o called __mcount_loc that we can place\nsomewhere in the kernel using vmlinux.ld.S and access it to convert\nall these locations that call mcount into nops before starting SMP\nand thus, eliminating the need to do this with kstop_machine.\n\nNote, A well documented perl script (scripts/recordmcount.pl) is used\nto do all this in one location.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3156fd0529b5216f4f444f4a7752b82dc1bd99c0",
      "tree": "88170f6bd4cfc9acf018a288f9d669da4a582a5b",
      "parents": [
        "eed7d2798ce7b78547106d0c3557a88251b413d0"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Mon Feb 18 04:48:20 2008 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@uranus.ravnborg.org",
        "time": "Fri Apr 25 20:18:48 2008 +0200"
      },
      "message": "kbuild: fix some minor typoes\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "91341d4b2c196c689acf90e9e96f28f8d5c6665f",
      "tree": "b4676097b6a3fe4f5e9d420ba9d9956bb883e506",
      "parents": [
        "eb8f689046b857874e964463619f09df06d59fad"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 21 21:31:44 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:21:18 2008 +0100"
      },
      "message": "kbuild: introduce new option to enhance section mismatch analysis\n\nSetting the option DEBUG_SECTION_MISMATCH will\nreport additional section mismatch\u0027es but this\nshould in the end makes it possible to get rid of\nall of them.\n\nSee help text in lib/Kconfig.debug for details.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "551559e13af1ccd19d0525cb2b0f308905170647",
      "tree": "df0cf86a47d0014747ab1c4f23bac71f384d3f4e",
      "parents": [
        "9e233625fbee1f977929a5406533b96011f1a06b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Dec 07 21:04:30 2007 +0900"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:14:35 2008 +0100"
      },
      "message": "kbuild: implement modules.order\n\nWhen multiple built-in modules (especially drivers) provide the same\ncapability, they\u0027re prioritized by link order specified by the order\nlisted in Makefile.  This implicit ordering is lost for loadable\nmodules.\n\nWhen driver modules are loaded by udev, what comes first in\nmodules.alias file is selected.  However, the order in this file is\nindeterministic (depends on filesystem listing order of installed\nmodules).  This causes confusion.\n\nThe solution is two-parted.  This patch updates kbuild such that it\ngenerates and installs modules.order which contains the name of\nmodules ordered according to Makefile.  The second part is update to\ndepmod such that it generates output files according to this file.\n\nNote that both obj-y and obj-m subdirs can contain modules and\nordering information between those two are lost from beginning.\nCurrently obj-y subdirs are put before obj-m subdirs.\n\nSam Ravnborg cleaned up Makefile modifications and suggested using awk\nto remove duplicate lines from modules.order instead of using separate\nC program.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Bill Nottingham \u003cnotting@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Jon Masters \u003cjonathan@jonmasters.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "f77bf01425b11947eeb3b5b54685212c302741b8",
      "tree": "1d2b8dc9eec4538b5e44139d77c018d9c3ee1f30",
      "parents": [
        "06c5040cdb13d27adad118f2fbfae905a1911b37"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Mon Oct 15 22:25:06 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Mon Oct 15 22:25:06 2007 +0200"
      },
      "message": "kbuild: introduce ccflags-y, asflags-y and ldflags-y\n\nIntroduce ccflags-y, asflags-y and ldflags-y so we soon can\ndeprecate use of EXTRA_CFLAGS, EXTRA_AFLAGS and EXTRA_LDFLAGS.\nThis patch does not touch any in-tree users - thats next round.\nLets get this committed first and then fix the users of the\nsoon to be deprecated variants next.\n\nThe rationale behind this change is to introduce support for\nmakefile fragments like:\n\nccflags-$(CONFIG_WHATEVER_DEBUG) :\u003d -DDEBUG\n\nAs a replacement for the uglier:\nifeq ($(CONFIG_WHATEVER_DEBUG),y)\n        EXTRA_CFLAGS :\u003d -DDEBUG\nendif\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "0c53c8e6eb456cde30f2305421c605713856abc8",
      "tree": "6050c25f7aa7625d0b6b65df701e3e601d69a24d",
      "parents": [
        "a0f97e06a43cf524e616f09e6af3398e1e9c1c5b"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Sun Oct 14 22:26:53 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Sun Oct 14 22:26:53 2007 +0200"
      },
      "message": "kbuild: check for wrong use of CFLAGS\n\nExternal modules have in a few cases modifed gcc option\nby modifying CFLAGS. This has never been documented and\nwas a bad practice.\nWith the check to use KBUILD_CFLAGS it will no longer work\nso we better error out and tell what was wrong as a service\nto the external module users.\n\nThis check can be overruled if\nKBUILD_NOPEDANTIC is set to something.\nAddid this possibility may allow older external\nmodule to build without any code modifications but potentially\nonly loosing some un-important gcc options.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "836caba77c290a62743fa9c5a69ed9605ec9cb28",
      "tree": "09ac98064c9effcb9ea3f4bfdcd89b4d918ff242",
      "parents": [
        "5e54d5e5fbc1f7237930af8466caf3cefd13b9bd"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Sun Sep 30 20:34:36 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Fri Oct 12 21:20:32 2007 +0200"
      },
      "message": "kbuild: kill backward compatibility checks\n\nThese checks has been present for several kernel releases (\u003e 5).\nSo lets just get rid of them.\nWith this we no longer check for use of:\nEXTRA_TARGETS, O_TARGET, L_TARGET, list-multi, export-objs\n\nThere were three remaining in-tree users of O_TARGET in some\nunmaintained sh64 code - mail sent to the maintainer + list.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "5e54d5e5fbc1f7237930af8466caf3cefd13b9bd",
      "tree": "2a290f82e06c4f56ae46fcdbe8499d0846468bf7",
      "parents": [
        "a9af33052cee365ee17c03c167b61780a08f4acd"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Sun Sep 30 20:14:58 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.(none)",
        "time": "Fri Oct 12 21:20:32 2007 +0200"
      },
      "message": "kbuild: kill EXTRA_ARFLAGS\n\nEXTRA_ARFLAGS have never been used so no need to carry\naround on this.\nA google search did not reveal any external module\nusing this either.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "114f51577724b782a30f4f5ceaee9880de93d776",
      "tree": "045e6b4218b6e59bc31fed7b67406647adb9fb18",
      "parents": [
        "1edf1c00acf8d9b60d436d6a0a55e395353a446c"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Mon Jul 23 01:12:08 2007 -0700"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Jul 25 21:18:19 2007 +0200"
      },
      "message": "kbuild: use LDFLAGS_MODULE only for .ko links\n\nSam Ravnborg pointed out that Documentation/kbuild/makefiles.txt already\nsays this is what it\u0027s for.  This patch makes the reality live up to the\ndocumentation.  This fixes the problem of LDFLAGS_BUILD_ID getting into too\nmany places.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "d72e5edbf4d13adfe489e9e6114a4922891ddcb2",
      "tree": "38c5f4659298349cb7b8bafb92559c5a767ef24e",
      "parents": [
        "7015030faf4af623804d63b5345c45fa0cad8b74"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon May 28 22:47:48 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jul 16 21:15:49 2007 +0200"
      },
      "message": "kbuild: avoid environment to set variables used by kbuild\n\nA few of the variables used by kbuild has fixed naming.\nMake sure we do not pick up random values from the environment.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "767e581d759fe6adfef5e676cd1cd8e11f603d1a",
      "tree": "f208026e00ace8ba32cc4f9c1fc6168af329c167",
      "parents": [
        "5447d34b080a1e3e312b05a91e87eff4710a1152"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun May 06 09:23:45 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun May 06 09:23:45 2007 +0200"
      },
      "message": "kbuild: enable use of code from a different dir\n\nTo introduce support for source in one directory but output files\nin another directory during a non O\u003d build prefix all paths\nwith $(src) repsectively $(obj).\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "48f1f0589dd09df6ea07d41c737db3218ad2cb79",
      "tree": "2dd9563f30467f252e08477e7e63c4adeb4c0caa",
      "parents": [
        "d3660a8cbdfad620af88b85b7bbfff29160f14c2"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sun Jul 23 19:37:44 2006 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@neptun.ravnborg.org",
        "time": "Mon Sep 25 09:00:00 2006 +0200"
      },
      "message": "kbuild: consistently decide when to rebuild a target\n\nConsistently decide when to rebuild a target across all of\nif_changed, if_changed_dep, if_changed_rule.\nPHONY targets are now treated alike (ignored) for all targets\n\nWhile add it make Kbuild.include almost readable by factoring out a few\nbits to some common variables and reuse this in Makefile.build.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "5e8d780d745c1619aba81fe7166c5a4b5cad2b84",
      "tree": "a1631c493bc44294e346ec09b89ed524572d85cb",
      "parents": [
        "598736c55622f7ea65b98f93c825ff95c433877c"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sat Jul 01 09:58:02 2006 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sat Jul 01 09:58:02 2006 +0200"
      },
      "message": "kbuild: fix ia64 breakage after introducing make -rR\n\nkbuild used $¤(*F to get filename of target without extension.\nThis was used in several places all over kbuild, but introducing\nmake -rR broke his for all cases where we specified full path to\ntarget/prerequsite. It is assumed that make -rR disables old style\nsuffix-rules which is why is suddenly failed.\n\nia64 was impacted by this change because several div* routines in\narch/ia64/lib are build using explicit paths and then kbuild failed.\n\nThanks to David Mosberger-Tang \u003cDavid.Mosberger@acm.org\u003e for an explanation\nwhat was the root-cause and for testing on ia64.\n\nThis patch also fixes two uses of $(*F) in arch/um\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "d38b69689c349f35502b92e20dafb30c62d49d63",
      "tree": "3f996dd032b6ad9a6010cea76bf0908e5814e240",
      "parents": [
        "eb99adde31b7d85c67a5e1c2fa5e098e1056dd79"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 16:59:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 16:59:26 2006 -0700"
      },
      "message": "Revert \"kbuild: fix make -rR breakage\"\n\nThis reverts commit e5c44fd88c146755da6941d047de4d97651404a9.\n\nThanks to Daniel Ritz and Michal Piotrowski for noticing the problem.\n\nDaniel says:\n\n  \"[The] reason is a recent change that made modules always shows as\n   module.mod.  it breaks modprobe and probably many scripts..besides\n   lsmod looking horrible\n\n   stuff like this in modprobe.conf:\n        install pcmcia_core /sbin/modprobe --ignore-install pcmcia_core; /sbin/modprobe pcmcia\n   makes modprobe fork/exec endlessly calling itself...until oom\n   interrupts it\"\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "15fde6751886fd972a64ed65ba49db309919c504",
      "tree": "513c1eec2135f65ba0d980627346f7c07ad2b897",
      "parents": [
        "3041e47e8b08d51188b2cbdbd9c1e6f43314c8f1"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@suse.de",
        "time": "Tue May 09 20:37:30 2006 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sat Jun 24 23:42:46 2006 +0200"
      },
      "message": "kbuild: support for %.symtypes files\n\nHere is a patch that adds a new -T option to genksyms for generating dumps of\nthe type definition that makes up the symbol version hashes. This allows to\ntrace modversion changes back to what caused them. The dump format is the\nname of the type defined, followed by its definition (which is almost C):\n\n  s#list_head struct list_head { s#list_head * next , * prev ; }\n\nThe s#, u#, e#, and t# prefixes stand for struct, union, enum, and typedef.\nThe exported symbols do not define types, and thus do not have an x# prefix:\n\n  nfs4_acl_get_whotype int nfs4_acl_get_whotype ( char * , t#u32 )\n\nThe symbol type defintion of a single file can be generated with:\n\n  make fs/jbd/journal.symtypes\n\nIf KBUILD_SYMTYPES is defined, all the *.symtypes of all object files that\nexport symbols are generated.\n\nThe single *.symtypes files can be combined into a single file after a kernel\nbuild with a script like the following:\n\nfor f in $(find -name \u0027*.symtypes\u0027 | sort); do\n    f\u003d${f#./}\n    echo \"/* ${f%.symtypes}.o */\"\n    cat $f\n    echo\ndone \\\n| sed -e \u0027\\:UNKNOWN:d\u0027 \\\n      -e \u0027s:[,;] }:}:g\u0027 \\\n      -e \u0027s:\\([[({]\\) :\\1:g\u0027 \\\n      -e \u0027s: \\([])},;]\\):\\1:g\u0027 \\\n      -e \u0027s: $::\u0027 \\\n      $f \\\n| awk \u0027\n/^.#/   { if (defined[$1] \u003d\u003d $0) {\n            print $1\n            next\n          }\n          defined[$1] \u003d $0\n        }\n        { print }\n\u0027\n\nWhen the kernel ABI changes, diffing individual *.symtype files, or the\ncombined files, against each other will show which symbol changes caused the\nABI changes. This can save a tremendous amount of time.\n\nDump the types that make up modversions\n\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "e5c44fd88c146755da6941d047de4d97651404a9",
      "tree": "e97c72787b08f9576eb14242483b09ce8850934e",
      "parents": [
        "216b2f1f718d653795024a085636d063693dd9a9"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sat Jun 24 22:50:18 2006 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sat Jun 24 23:13:59 2006 +0200"
      },
      "message": "kbuild: fix make -rR breakage\n\nmake failed to supply the filename when using make -rR and using $(*F)\nto get target filename without extension.\nThis bug was not reproduceable in small scale but using:\n$(basename $(notdir $@)) fixes it with same functionality.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "c955ccafc38e77312b4c65e5a70960080fb8a3f2",
      "tree": "f630610edef42b8ed60c455cfdb74d897190f1d3",
      "parents": [
        "ddc97cacb310ad68483952e67764c4153c138ed2"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Thu Jun 08 22:12:39 2006 -0700"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Fri Jun 09 07:31:30 2006 +0200"
      },
      "message": "kconfig: fix .config dependencies\n\nThis fixes one of the worst kbuild warts left - the broken dependencies used\nto check and regenerate the .config file.  This was done via an indirect\ndependency and the .config itself had an empty command, which can cause make\nnot to reread the changed .config file.\n\nInstead of this we generate now a new file include/config/auto.conf from\n.config, which is used for kbuild and has the proper dependencies.  It\u0027s also\nthe main make target now for all files generated during this step (and thus\nreplaces include/linux/autoconf.h).\n\nThis also means we can now relax the syntax requirements for the .config file\nand we don\u0027t have to rewrite it all the time, i.e.  silentoldconfig only\nwrites .config now when it\u0027s necessary to keep it in sync with the Kconfig\nfiles and even this can be suppressed by setting the environment variable\nKCONFIG_NOSILENTUPDATE, so the update can (and must) be done manually.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "7d1859835cd6c0afd1773d249300da82b1b868a5",
      "tree": "88028900d69f1c619ce70cdabbea0defa6f87000",
      "parents": [
        "ce560686947fd50b30eaf42045554797f53949dd"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Tue Mar 07 23:58:33 2006 -0800"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sun Mar 12 23:35:16 2006 +0100"
      },
      "message": "kbuild: add -fverbose-asm to i386 Makefile\n\nAdd -fverbose-asm to i386 Makefile rule for building .s files.  This makes\nthe assembler output much more readable for humans.\n\nSuggested by Der Herr Hofrat \u003cder.herr@hofr.at\u003e\n\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "c79c7b0923ff353d12194e83628bcca5a8606564",
      "tree": "edea52fad10d6961004d26a9c17e73bd44560a71",
      "parents": [
        "172c3ae3e686f548a0eba950405e5cc321460005"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sun Mar 12 22:54:34 2006 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sun Mar 12 22:54:34 2006 +0100"
      },
      "message": "kbuild: fix genksyms build error\n\ngenksyms needs to know when a symbol must have a \"_\" prefex as is\ntrue for a few architectures.\nPass $(ARCH) as commandline argument and hardcode what architectures that\nneeds this info.\nPrevious attemt to take it from elfconfig.h was br0ken since elfconfig.h\nis a generated file.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "4f1933620f57145212cdbb1ac6ce099eeeb21c5a",
      "tree": "c083cce1f0acedd92be2ac6eb5e6c49ebd84ac46",
      "parents": [
        "7b75b13cda8bd21e8636ea985f76e1ce5bd1a470"
      ],
      "author": {
        "name": "Paul Smith",
        "email": "psmith@gnu.org",
        "time": "Sun Mar 05 17:14:10 2006 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Mon Mar 06 00:09:51 2006 +0100"
      },
      "message": "kbuild: change kbuild to not rely on incorrect GNU make behavior\n\nThe kbuild system takes advantage of an incorrect behavior in GNU make.\nOnce this behavior is fixed, all files in the kernel rebuild every time,\neven if nothing has changed.  This patch ensures kbuild works with both\nthe incorrect and correct behaviors of GNU make.\n\nFor more details on the incorrect behavior, see:\n\nhttp://lists.gnu.org/archive/html/bug-make/2006-03/msg00003.html\n\nChanges in this patch:\n  - Keep all targets that are to be marked .PHONY in a variable, PHONY.\n  - Add .PHONY: $(PHONY) to mark them properly.\n  - Remove any $(PHONY) files from the $? list when determining whether\n    targets are up-to-date or not.\n\nSigned-off-by: Paul Smith \u003cpsmith@gnu.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "6176aa9ae4b83e1957d3031774f8a8e59ff97420",
      "tree": "7b44789ab8d87f721c5d9fcd10a9a5cb0e5d65d1",
      "parents": [
        "20a468b51325b3636785a8ca0047ae514b39cbd5"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jan 30 10:04:27 2006 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sun Feb 19 09:51:21 2006 +0100"
      },
      "message": "kbuild: consolidate command line escaping\n\nWhile the recent change to also escape # symbols when storing C-file\ncompilation command lines was helpful, it should be in effect for all\ncommand lines, as much as the dollar escaping should be in effect for\nC-source compilation commands. Additionally, for better readability and\nmaintenance, consolidating all the escaping (single quotes, dollars,\nand now sharps) was also desirable.\n\nSigned-Off-By: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "20a468b51325b3636785a8ca0047ae514b39cbd5",
      "tree": "22e8d00b947cd110c9d600d24c4119ff30ff22c1",
      "parents": [
        "b39927cf4cc5a9123d2b157ffd396884cb8156eb"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sun Jan 22 13:34:15 2006 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Sun Feb 19 09:51:20 2006 +0100"
      },
      "message": "kbuild: make cc-version available in kbuild files\n\nMove $(CC) support functions to Kbuild.include so they are available\nin the kbuild files.\nIn addition the following was done:\n\to as-option documented in Documentation/kbuild/makefiles.txt\n\to Moved documentation to new section to match\n\t  new scope of functions\n\to added cc-ifversion used to conditionally select a text string\n\t  dependent on actual $(CC) version\n\to documented cc-ifversion\n\to change so Kbuild.include is read before the kbuild file\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "d51bfb7852d0e524074ad1cf04e4c3026d75d652",
      "tree": "af3947d9504938d0a8c657ba58732c8b54df6772",
      "parents": [
        "37193147991a53b2e9f573d0ec47f63a2d4de8dc"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Fri Jan 06 22:35:59 2006 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Fri Jan 06 22:35:59 2006 +0100"
      },
      "message": "kbuild: introduce escsq to escapre single quotes\n\nThis makes things a little bit more reader friendly and gvim is less\nconfused.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "db8c1a7b2ca25f37b1429c00e82d6568f86caec1",
      "tree": "346bee7ee9cc5929c897825c9a86cb303f945745",
      "parents": [
        "72ba47c1b293ae78f7d798b458bb9d3db65c7551"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Wed Jul 27 22:11:01 2005 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Wed Jul 27 22:11:01 2005 +0200"
      },
      "message": "kbuild: fix building external modules\n\nkbuild failed to locate Makefile for external modules.\nThis brought to my attention how the variables for directories\nhave different values in different usage scenarios.\n\nDifferent kbuild usage scenarios:\nmake       - plain make in same directory where kernel source lives\nmake O\u003d    - kbuild is told to store output files in another directory\nmake M\u003d    - building an external module\nmake O\u003d M\u003d - building an external module with kernel output seperate from src\n\nValue assigned to the different variables:\n\n           |$(src)          |$(obj) |$(srctree)        |$(objtree)\nmake       |reldir to k src |as src |abs path to k src |abs path to k src\nmake O\u003d    |reldir to k src |as src |abs path to k src |abs path to output dir\nmake M\u003d    |abs path to src |as src |abs path to k src |abs path to k src\nmake O\u003d M\u003d |abs path to src |as src |abs path to k src |abs path to k output\n\npath to kbuild file:\n\nmake       | $(srctree)/$(src), $(src)\nmake O\u003d    | $(srctree)/$(src)\nmake M\u003d    | $(src)\nmake O\u003d M\u003d | $(src)\n\nFrom the table above it can be seen that the only good way to find the\nhome directory of the kbuild file is to locate the one of the two variants\nthat is an absolute path. If $(src) is an absolute path (starts with /)\nthen use it, otherwise prefix $(src) with $(srctree).\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "2a691470345a0024dd7ffaf47ad3d0f5f4f41924",
      "tree": "593421beaa683526ed187fd540c156c9a1536f74",
      "parents": [
        "8ec4b4ff1c89bb280e662b84eba503ca44abe836"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Mon Jul 25 20:26:04 2005 +0000"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Mon Jul 25 20:26:04 2005 +0000"
      },
      "message": "kbuild: fix make O\u003d...\n\nkbuild failed to locate Kbuild.include.\nTeach kbuild how to find Kbuild files when using make O\u003d...\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n---\n"
    },
    {
      "commit": "8ec4b4ff1c89bb280e662b84eba503ca44abe836",
      "tree": "d520638dd0288aba3cff6875928dfa7b7b20d2f1",
      "parents": [
        "7c6b155fb49fbc63e0b30a1d49552693c0b45be7"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Mon Jul 25 20:10:36 2005 +0000"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Mon Jul 25 20:10:36 2005 +0000"
      },
      "message": "kbuild: introduce Kbuild.include\n\nKbuild.include is a placeholder for definitions originally present in\nboth the top-level Makefile and scripts/Makefile.build.\nThere were a slight difference in the filechk definition, so the most videly\nused version was kept and usr/Makefile was adopted for this syntax.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n---\n"
    },
    {
      "commit": "cfca82f2179dd1aee84a5bf3b14710e4d7487aed",
      "tree": "d1ddaecfd623320c8a18ce6a0bc965f41e9a1e4b",
      "parents": [
        "2283a117f65650352f2a9fd6b9af4cdbf5478d14"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Thu Jul 14 20:12:40 2005 +0000"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Thu Jul 14 20:12:40 2005 +0000"
      },
      "message": "kbuild: Fix build as root then user\n\nFrom: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nI inadvertently built a tree as root and then rebuilt it as a user.  I\ngot a lot of prompts ...\n\nmv: overwrite `drivers/char/drm/drm_auth.o\u0027, overriding mode 0644?\n\nUsing mv -f fixes that.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "8476994af7bd9352ecdf61ba760f7397f54e30a1",
      "tree": "cff822a944162070b4e64c0b9990640383e4cad6",
      "parents": [
        "11c80c8367db0a9d342529ed74464670cd86a1f6"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Thu Jun 23 00:10:00 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 23 09:45:28 2005 -0700"
      },
      "message": "[PATCH] apply quotation handling to Makefile.build\n\nAdding quotation handling to rule_cc_o_c in scripts/Makefile.build as used\nelsewhere.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
