)]}'
{
  "log": [
    {
      "commit": "4d672e7ac79b5ec5cdc90e450823441e20464691",
      "tree": "66da3aa0bf7f7ac80376a93f17edbb2246b2df06",
      "parents": [
        "5e05ad7d4e3b11f935998882b5d9c3b257137f1b"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Mon Feb 04 22:27:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "timerfd: new timerfd API\n\nThis is the new timerfd API as it is implemented by the following patch:\n\nint timerfd_create(int clockid, int flags);\nint timerfd_settime(int ufd, int flags,\n\t\t    const struct itimerspec *utmr,\n\t\t    struct itimerspec *otmr);\nint timerfd_gettime(int ufd, struct itimerspec *otmr);\n\nThe timerfd_create() API creates an un-programmed timerfd fd.  The \"clockid\"\nparameter can be either CLOCK_MONOTONIC or CLOCK_REALTIME.\n\nThe timerfd_settime() API give new settings by the timerfd fd, by optionally\nretrieving the previous expiration time (in case the \"otmr\" parameter is not\nNULL).\n\nThe time value specified in \"utmr\" is absolute, if the TFD_TIMER_ABSTIME bit\nis set in the \"flags\" parameter.  Otherwise it\u0027s a relative time.\n\nThe timerfd_gettime() API returns the next expiration time of the timer, or\n{0, 0} if the timerfd has not been set yet.\n\nLike the previous timerfd API implementation, read(2) and poll(2) are\nsupported (with the same interface).  Here\u0027s a simple test program I used to\nexercise the new timerfd APIs:\n\nhttp://www.xmailserver.org/timerfd-test2.c\n\n[akpm@linux-foundation.org: coding-style cleanups]\n[akpm@linux-foundation.org: fix ia64 build]\n[akpm@linux-foundation.org: fix m68k build]\n[akpm@linux-foundation.org: fix mips build]\n[akpm@linux-foundation.org: fix alpha, arm, blackfin, cris, m68k, s390, sparc and sparc64 builds]\n[heiko.carstens@de.ibm.com: fix s390]\n[akpm@linux-foundation.org: fix powerpc build]\n[akpm@linux-foundation.org: fix sparc64 more]\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed5d2cac114202fe2978a9cbcab8f5032796d538",
      "tree": "aa9aaea1aa0945bd9159685d1b04897d105a90c9",
      "parents": [
        "f558b7e408026eb3c6afcd0e8fc1f7fe31195a6a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Feb 04 22:27:24 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "exec: rework the group exit and fix the race with kill\n\nAs Roland pointed out, we have the very old problem with exec.  de_thread()\nsets SIGNAL_GROUP_EXIT, kills other threads, changes -\u003egroup_leader and then\nclears signal-\u003eflags.  All signals (even fatal ones) sent in this window\n(which is not too small) will be lost.\n\nWith this patch exec doesn\u0027t abuse SIGNAL_GROUP_EXIT.  signal_group_exit(),\nthe new helper, should be used to detect exit_group() or exec() in progress.\nIt can have more users, but this patch does only strictly necessary changes.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f558b7e408026eb3c6afcd0e8fc1f7fe31195a6a",
      "tree": "3473617a87d54b4388c2336303075b1a54e30552",
      "parents": [
        "198466b41d11dd062fb26ee0376080458d7bfcaf"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Feb 04 22:27:24 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "remove handle_group_stop() in favor of do_signal_stop()\n\nEvery time we set SIGNAL_GROUP_EXIT or clear SIGNAL_STOP_DEQUEUED we also\nreset -\u003egroup_stop_count.\n\nThis means that the SIGNAL_GROUP_EXIT check in handle_group_stop() is not\nneeded, and do_signal_stop() should check SIGNAL_STOP_DEQUEUED only when\n-\u003egroup_stop_count \u003d\u003d 0. With these changes handle_group_stop() becomes the\nsubset of do_signal_stop(), we can kill it and use do_signal_stop() instead.\n\nAlso, a preparation for the next patch.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "198466b41d11dd062fb26ee0376080458d7bfcaf",
      "tree": "ccf725c9a05e13b983e4480fd218280d5e58b47e",
      "parents": [
        "bdff746a3915f109bd13730b6847e33e17e91ed3"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Feb 04 22:27:23 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "__group_complete_signal(): fix coredump with group stop race\n\nWhen __group_complete_signal() sees sig_kernel_coredump() signal, it starts\nthe group stop, but sets -\u003egroup_exit_task \u003d t in a hope that \"t\" will\nactually dequeue this signal and invoke do_coredump().  However, by the\ntime \"t\" enters get_signal_to_deliver() it is possible that the signal was\nblocked/ignored or we have another pending !SIG_KERNEL_COREDUMP_MASK signal\nwhich will be dequeued first.  This means the task could be stopped but not\nkilled.\n\nRemove this code from __group_complete_signal().  Note also this patch\nremoves the bogus signal_wake_up(t, 1).  This thread can\u0027t be\nSTOPPED/TRACED, note the corresponding check in wants_signal().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bdff746a3915f109bd13730b6847e33e17e91ed3",
      "tree": "bacc8edf83f06c4366cbb43fa21213e0a346a6f2",
      "parents": [
        "59714d65dfbc86d5cb93adc5bac57a921cc2fa84"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Feb 04 22:27:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:07 2008 -0800"
      },
      "message": "clone: prepare to recycle CLONE_STOPPED\n\nUlrich says that we never used this clone flags and that nothing should be\nusing it.\n\nAs we\u0027re down to only a single bit left in clone\u0027s flags argument, let\u0027s add a\nwarning to check that no userspace is actually using it.  Hopefully we will\nbe able to recycle it.\n\nRoland said:\n\n  CLONE_STOPPED was previously used by some NTPL versions when under\n  thread_db (i.e.  only when being actively debugged by gdb), but not for a\n  long time now, and it never worked reliably when it was used.  Removing it\n  seems fine to me.\n\n[akpm@linux-foundation.org: it looks like CLONE_DETACHED is being used]\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5bb3a5e9dcdb8435471562b6cada89525cf4df1",
      "tree": "7b7cf9b90bacd0e2fe07cb3387516e9243f1ab66",
      "parents": [
        "9853832c49dc1685587abeb4e1decd4be690d256",
        "1560a79a2c2ea0c3826150da8029991d685de990"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:58:52 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:58:52 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (79 commits)\n  Jesper Juhl is the new trivial patches maintainer\n  Documentation: mention email-clients.txt in SubmittingPatches\n  fs/binfmt_elf.c: spello fix\n  do_invalidatepage() comment typo fix\n  Documentation/filesystems/porting fixes\n  typo fixes in net/core/net_namespace.c\n  typo fix in net/rfkill/rfkill.c\n  typo fixes in net/sctp/sm_statefuns.c\n  lib/: Spelling fixes\n  kernel/: Spelling fixes\n  include/scsi/: Spelling fixes\n  include/linux/: Spelling fixes\n  include/asm-m68knommu/: Spelling fixes\n  include/asm-frv/: Spelling fixes\n  fs/: Spelling fixes\n  drivers/watchdog/: Spelling fixes\n  drivers/video/: Spelling fixes\n  drivers/ssb/: Spelling fixes\n  drivers/serial/: Spelling fixes\n  drivers/scsi/: Spelling fixes\n  ...\n"
    },
    {
      "commit": "519cb688072008363e091be3f291c1b5779e2ba8",
      "tree": "dc5e251ff0eac8ae2f022858c0d7526299235f1d",
      "parents": [
        "2f98735c9c24ea1f0d40a364d4e63611b689b795",
        "8891fec65ac5b5a74b50c705e31b66c92c3eddeb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:56:17 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:56:17 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:\n  scsi: fix dependency bug in aic7 Makefile\n  kbuild: add svn revision information to setlocalversion\n  kbuild: do not warn about __*init/__*exit symbols being exported\n  Move Kconfig.instrumentation to arch/Kconfig and init/Kconfig\n  Add HAVE_KPROBES\n  Add HAVE_OPROFILE\n  Create arch/Kconfig\n  Fix ARM to play nicely with generic Instrumentation menu\n  kconfig: ignore select of unknown symbol\n  kconfig: mark config as changed when loading an alternate config\n  kbuild: Spelling/grammar fixes for config DEBUG_SECTION_MISMATCH\n  Remove __INIT_REFOK and __INITDATA_REFOK\n  kbuild: print only total number of section mismatces found\n"
    },
    {
      "commit": "2f98735c9c24ea1f0d40a364d4e63611b689b795",
      "tree": "a42b3802449af474d36cda3b6f9fb190a717defb",
      "parents": [
        "fe2528b96b02173395f5a75e37714c07f3e25e73"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sat Feb 02 03:08:53 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:55:38 2008 -0800"
      },
      "message": "vm audit: add VM_DONTEXPAND to mmap for drivers that need it\n\nDrivers that register a -\u003efault handler, but do not range-check the\noffset argument, must set VM_DONTEXPAND in the vm_flags in order to\nprevent an expanding mremap from overflowing the resource.\n\nI\u0027ve audited the tree and attempted to fix these problems (usually by\nadding VM_DONTEXPAND where it is not obvious).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b0a3e7b18b8d9894f3621672ac7bdc5320459c4",
      "tree": "5ee9be87df96c0352d0638306639965fb247c6b0",
      "parents": [
        "1e4478c325caadb135572f9a907761505dcbce39"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Feb 03 17:48:04 2008 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Feb 03 17:48:04 2008 +0200"
      },
      "message": "kernel/: Spelling fixes\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "06c93e875747f3020d997220b3e7c98083acc7c3",
      "tree": "daed1cf5919f4f8acdbcc0c668a3bfee45b14c92",
      "parents": [
        "ef08cce81d9be38063ec7796e36f2b32bdf82ff2"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Sun Feb 03 16:22:12 2008 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Feb 03 16:22:12 2008 +0200"
      },
      "message": "Remove one useless extern declaration\n\nThe file exit.c contains one useless extern declaration of sem_exit().\nMoreover, it refers to nothing.\n\nThis trivial patch removes it.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "125e564582cbce6219397fc64556438420efae4c",
      "tree": "501bb3cdb3f17bfbe3b9a43bd89b48ac801a1e38",
      "parents": [
        "3f550096dede4430f83b16457da83bf429155ac2"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Sat Feb 02 15:10:36 2008 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:08 2008 +0100"
      },
      "message": "Move Kconfig.instrumentation to arch/Kconfig and init/Kconfig\n\nMove the instrumentation Kconfig to\n\narch/Kconfig for architecture dependent options\n  - oprofile\n  - kprobes\n\nand\n\ninit/Kconfig for architecture independent options\n  - profiling\n  - markers\n\nRemove the \"Instrumentation Support\" menu. Everything moves to \"General setup\".\nDelete the kernel/Kconfig.instrumentation file.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "3f550096dede4430f83b16457da83bf429155ac2",
      "tree": "1e352deedbcf23cf97a4ca5a2db7f26dd26a4640",
      "parents": [
        "42d4b839c82fd7dd8e412145eb6d9752468478e2"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Sat Feb 02 15:10:35 2008 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:07 2008 +0100"
      },
      "message": "Add HAVE_KPROBES\n\nLinus:\n\nOn the per-architecture side, I do think it would be better to *not* have\ninternal architecture knowledge in a generic file, and as such a line like\n\n        depends on X86_32 || IA64 || PPC || S390 || SPARC64 || X86_64 || AVR32\n\nreally shouldn\u0027t exist in a file like kernel/Kconfig.instrumentation.\n\nIt would be much better to do\n\n        depends on ARCH_SUPPORTS_KPROBES\n\nin that generic file, and then architectures that do support it would just\nhave a\n\n        bool ARCH_SUPPORTS_KPROBES\n                default y\n\nin *their* architecture files. That would seem to be much more logical,\nand is readable both for arch maintainers *and* for people who have no\nclue - and don\u0027t care - about which architecture is supposed to support\nwhich interface...\n\nChangelog:\n\nActually, I know I gave this as the magic incantation, but now that I see\nit, I realize that I should have told you to just use\n\n        config KPROBES_SUPPORT\n                def_bool y\n\ninstead, which is a bit denser.\n\nWe seem to use both kinds of syntax for these things, but this is really\nwhat \"def_bool\" is there for...\n\n- Use HAVE_KPROBES\n- Use a select\n\n- Yet another update :\nMoving to HAVE_* now.\n\n- Update ARM for kprobes support.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "42d4b839c82fd7dd8e412145eb6d9752468478e2",
      "tree": "4383e36060c9a9cfca0d198c671e0ae0f8192a29",
      "parents": [
        "fb32e03fdc170251a381449a8d9b82cf7e811a6f"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Sat Feb 02 15:10:34 2008 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:07 2008 +0100"
      },
      "message": "Add HAVE_OPROFILE\n\nLinus:\nOn the per-architecture side, I do think it would be better to *not* have\ninternal architecture knowledge in a generic file, and as such a line like\n\n        depends on X86_32 || IA64 || PPC || S390 || SPARC64 || X86_64 || AVR32\n\nreally shouldn\u0027t exist in a file like kernel/Kconfig.instrumentation.\n\nIt would be much better to do\n\n        depends on ARCH_SUPPORTS_KPROBES\n\nin that generic file, and then architectures that do support it would just\nhave a\n\n        bool ARCH_SUPPORTS_KPROBES\n                default y\n\nin *their* architecture files. That would seem to be much more logical,\nand is readable both for arch maintainers *and* for people who have no\nclue - and don\u0027t care - about which architecture is supposed to support\nwhich interface...\n\nChangelog:\n\nActually, I know I gave this as the magic incantation, but now that I see\nit, I realize that I should have told you to just use\n\n        config ARCH_SUPPORTS_KPROBES\n                def_bool y\n\ninstead, which is a bit denser.\n\nWe seem to use both kinds of syntax for these things, but this is really\nwhat \"def_bool\" is there for...\n\nChangelog :\n\n- Moving to HAVE_*.\n- Add AVR32 oprofile.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "c0ffa3a951668734a635cd1e26bf7583795854c5",
      "tree": "5fc4f5de59a09edb24d69f563e8b74d2cdc6d6b4",
      "parents": [
        "603d49885e023d1f68c627c2a2db599fb40eefec"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Sat Feb 02 15:10:32 2008 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:07 2008 +0100"
      },
      "message": "Fix ARM to play nicely with generic Instrumentation menu\n\nThe conflicting commit for\nmove-kconfiginstrumentation-to-arch-kconfig-and-init-kconfig.patch\nis the ARM fix from Linus :\n\ncommit 38ad9aebe70dc72df08851bbd1620d89329129ba\n\nHe just seemed to agree that my approach (just putting the missing ARM\nconfig options in arch/arm/Kconfig) works too. The main advantage it has\nis that it is smaller, does not need a cleanup in the future and does\nnot break the following patches unnecessarily.\n\nIt\u0027s just been discussed here\n\nhttp://lkml.org/lkml/2008/1/15/267\n\nHowever, Linus might prefer to stay with his own patch and I would\ntotally understand it that late in the release cycle. Therefore I submit\nthis for the next release cycle.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCC: Russell King \u003crmk+lkml@arm.linux.org.uk\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "dfacd68e495bb324ad6e92f4dfcf479dd447c8d3",
      "tree": "d2b75bf431e74349f4878e833dd340ac3ac0036f",
      "parents": [
        "ae9458d6a0956aa21cb49e1251e35a8d4dacbe6e"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu Jan 31 18:12:34 2008 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Feb 02 15:14:46 2008 -0800"
      },
      "message": "kobject: Always build in kernel/ksysfs.o.\n\nkernel/ksysfs.c seems to be a random dumping group for misc globals\nthat the rest of the tree depend on. This has caused problems with\nexports in the past when sysfs is disabled, which can already be\nobserved in commit-id 51107301b629640f9ab76fe23bf385e187b9ac29.\n\nThe latest one is the kernel_kobj usage, which presently results in:\n\nfs/built-in.o: In function `debugfs_init\u0027:\ninode.c:(.init.text+0xc34): undefined reference to `kernel_kobj\u0027\nmake: *** [.tmp_vmlinux1] Error 1\n\nkernel/ksysfs.c itself at this point only contains globals and some\nbasic sysfs initialization, the sysfs initialization code is optimized\nout when we build with sysfs disabled. Given that, it\u0027s easier to just\nbuild in unconditionally, rather than trying to find some other random\nplace to dump and initialize the globals.\n\nAdditionally, the current trend seems to be decoupling of kobjects from\nsysfs, in which case it still makes sense to perform the kernel_kobj\ninitialization that happens here even if sysfs is disabled, as\nlib/kobject.o is built-in unconditionally.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "687fcdf741e4a268c2c7bac8b3734de761bb9719",
      "tree": "82603cd0f892b13d4252cc525ecaec99bb86c0cd",
      "parents": [
        "215e871aaa3d94540121a3809d80d0c5e5686e4f",
        "a6eb84bc1e069e1d285167e09035ed6c27978feb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 02 14:29:57 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 02 14:29:57 2008 +1100"
      },
      "message": "Merge branch \u0027suspend\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027suspend\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (38 commits)\n  suspend: cleanup reference to swsusp_pg_dir[]\n  PM: Remove obsolete /sys/devices/.../power/state docs\n  Hibernation: Invoke suspend notifications after console switch\n  Suspend: Invoke suspend notifications after console switch\n  Suspend: Clean up suspend_64.c\n  Suspend: Add config option to disable the freezer if architecture wants that\n  ACPI: Print message before calling _PTS\n  ACPI hibernation: Call _PTS before suspending devices\n  Hibernation: Introduce begin() and end() callbacks\n  ACPI suspend: Call _PTS before suspending devices\n  ACPI: Separate disabling of GPEs from _PTS\n  ACPI: Separate invocations of _GTS and _BFS from _PTS and _WAK\n  Suspend: Introduce begin() and end() callbacks\n  suspend: fix ia64 allmodconfig build\n  ACPI: clear GPE earily in resume to avoid warning\n  Suspend: Clean up Kconfig (V2)\n  Hibernation: Clean up Kconfig (V2)\n  Hibernation: Update messages\n  Suspend: Use common prefix in messages\n  Hibernation: Remove unnecessary variable declaration\n  ...\n"
    },
    {
      "commit": "ed50d6cbc394cd0966469d3e249353c9dd1d38b9",
      "tree": "8df8f5d8b4ce057bf0df7ee2996603fdd18e0e7e",
      "parents": [
        "aa6299926950c8dfe2fea638276cad6def092bc9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat Feb 02 00:23:08 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 02 14:27:45 2008 +1100"
      },
      "message": "debug: softlockup looping fix\n\nRafael J. Wysocki reported weird, multi-seconds delays during\nsuspend/resume and bisected it back to:\n\n  commit 82a1fcb90287052aabfa235e7ffc693ea003fe69\n  Author: Ingo Molnar \u003cmingo@elte.hu\u003e\n  Date:   Fri Jan 25 21:08:02 2008 +0100\n\n      softlockup: automatically detect hung TASK_UNINTERRUPTIBLE tasks\n\nfix it:\n\n - restore the old wakeup mechanism\n - fix break usage in do_each_thread() { } while_each_thread().\n - fix the hotplug switch stmt, a fall-through case was broken.\n\nBisected-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a0a2f304612bd63948177fef05987f4bcaddcaf",
      "tree": "17a72bcefbb7806ed5e3627230d6d04fd5f06600",
      "parents": [
        "af258f516b3e4e214121f5d6d53cab32ce0d8010"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jan 11 01:25:21 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:59 2008 -0500"
      },
      "message": "Hibernation: Invoke suspend notifications after console switch\n\nFollowing the recent change in the suspend code path, switch consoles before\ncalling PM notifiers during hibernation.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "af258f516b3e4e214121f5d6d53cab32ce0d8010",
      "tree": "9ae8987d51217316aecfc0c04806cc6970cd69e6",
      "parents": [
        "17b7a89cfb6ea2ff103785f9b2580e5138b6cfd1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jan 11 01:22:23 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:58 2008 -0500"
      },
      "message": "Suspend: Invoke suspend notifications after console switch\n\nIn order to fix APM emulation it is necessary to enable apm-emulation\nnotifications for suspends triggered in various ways via the suspend\nnotifiers.  However, this will cause the systems using APM emulation\nto lock up between X being needed to switch away from the VT and X\nalready waiting for resume in the APM ioctl.\n\nThis patch moves the console switch (if enabled) before the suspend\nnotification (and after the resume notification) to avoid this issue.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "b28f508112c584cdfbb4d8a9489cc4b79dac68ee",
      "tree": "8269d53055d0368f6eb25fac6b9d29077382cbca",
      "parents": [
        "c9b6c8f68ee48e1e3dbb53e13316757e2c0b584d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jan 15 23:17:00 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:58 2008 -0500"
      },
      "message": "Suspend: Add config option to disable the freezer if architecture wants that\n\nThis patch makes the freezer optional for suspend to allow the\nsystem to work (or not work) like the original PMU suspend.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "caea99ef339af8e07cda8d03fa415e4b8820f400",
      "tree": "46b975f61a3409a30fc6a7c15a6db2c7f6d9876b",
      "parents": [
        "60417f5976df029227450b46d7fa6f0e9b1e654c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jan 08 00:08:44 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:58 2008 -0500"
      },
      "message": "Hibernation: Introduce begin() and end() callbacks\n\nIntroduce global hibernation callback .end() and rename global\nhibernation callback .start() to .begin(), in analogy with the\nrecent modifications of the global suspend callbacks.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c697eecebc6cfc0b393afea3c4ff1a5041526ad1",
      "tree": "36b0cb4e667792212c2b5d05ac212662555d1682",
      "parents": [
        "7671b8ae5381a504d4c4ef8dd9c47128c2c3fd7e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jan 08 00:04:17 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:56 2008 -0500"
      },
      "message": "Suspend: Introduce begin() and end() callbacks\n\nOn ACPI systems the target state set by acpi_pm_set_target() is\nreset by acpi_pm_finish(), but that need not be called if the\nsuspend fails.  All platforms that use the .set_target() global\nsuspend callback are affected by analogous issues.\n\nFor this reason, we need an additional global suspend callback that\nwill reset the target state regardless of whether or not the suspend\nis successful.  Also, it is reasonable to rename the .set_target()\ncallback, since it will be used for a different purpose on ACPI\nsystems (due to ACPI 1.0x code ordering requirements).\n\nIntroduce the global suspend callback .end() to be executed at the\nend of the suspend sequence and rename the .set_target() global\nsuspend callback to .begin().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "7671b8ae5381a504d4c4ef8dd9c47128c2c3fd7e",
      "tree": "f6b8c2ba01ce566549b948eb0cd7f713cf824a41",
      "parents": [
        "a3627f67b1d5ddd8f65eedc2a76da90fbe062530"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 14 01:07:13 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:56 2008 -0500"
      },
      "message": "suspend: fix ia64 allmodconfig build\n\nkernel/power/main.c:488: error: ‘pm_test_attr’ undeclared here (not in a function)\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "f4cb57007662a4ec3c2de3c027900223e0299bdd",
      "tree": "ec0c277f3cae26594714c458ad40b1e0e5aca484",
      "parents": [
        "801e4062fda6496fe9bee3e6915a2aa108f974e5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Dec 08 02:14:00 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Suspend: Clean up Kconfig (V2)\n\nThis cleans up the suspend Kconfig and removes the need to\ndeclare centrally which architectures support suspend. All\narchitectures that currently support suspend are modified\naccordingly.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "801e4062fda6496fe9bee3e6915a2aa108f974e5",
      "tree": "092e988b58a3dae9135aac742c8318a5963f095f",
      "parents": [
        "23976728a48c3b76d34e17ead19addd52b3a280e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Dec 08 02:12:39 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Hibernation: Clean up Kconfig (V2)\n\nThis cleans up the hibernation Kconfig and removes the need to\ndeclare centrally which architectures support hibernation. All\narchitectures that currently support hibernation are modified\naccordingly.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "23976728a48c3b76d34e17ead19addd52b3a280e",
      "tree": "964eb95ae9dccb179165649c7ea631d96b23bc91",
      "parents": [
        "465d2b477f6a0ffe01242561a93e7bf81d67c776"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:09:43 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Hibernation: Update messages\n\nMake hibernation messages start with one common prefix \"PM: \" and use\nthe word \"hibernation\" in the messages as a synonym of \"suspend to\ndisk\".\n\nTurn some KERN_INFO messages into debug ones.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "465d2b477f6a0ffe01242561a93e7bf81d67c776",
      "tree": "c5d9f59e974b68d6d813a79422db3e488581f717",
      "parents": [
        "b6887a29441ed5f0728b31ce90c0f0a0427317a3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:08:38 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Suspend: Use common prefix in messages\n\nMake suspend messages start with one common prefix \"PM: \".\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "b6887a29441ed5f0728b31ce90c0f0a0427317a3",
      "tree": "a5bae281529bcbaa933eed539984ea2bd952fc7a",
      "parents": [
        "9575809c6fc15e7b6bb1932b6104c80a6d4ffdc9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:07:40 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Hibernation: Remove unnecessary variable declaration\n\nRemove the unnecessary extern declaration of resume_file[]\nfrom kernel/power/swap.c .\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "9575809c6fc15e7b6bb1932b6104c80a6d4ffdc9",
      "tree": "75cbdf455233325575d5f892aaa0f561fa1a953c",
      "parents": [
        "9628c0ee6a6d9ef06a77ea25932c00817f9e88a0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:06:57 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Hibernation: Fix comment in disk.c\n\nFix a comment in kernel/power/disk.c so that it doesn\u0027t contain lines\nlonger that 80 characters.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "9628c0ee6a6d9ef06a77ea25932c00817f9e88a0",
      "tree": "d80ee478567a098cb7990d73f14ba4bd325c09de",
      "parents": [
        "72df68ca8e006a0107933c4fb13c741a0a48163f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:06:00 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:55 2008 -0500"
      },
      "message": "Suspend: Fix comment in main.c\n\nFix a comment in kernel/power/main.c so that it doesn\u0027t contain lines\nlonger that 80 characters.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "72df68ca8e006a0107933c4fb13c741a0a48163f",
      "tree": "c6d0d36bffc54989fffcebc8ec1368a47cfa6d65",
      "parents": [
        "2ed43b63285c394cb5e1829c199cc94c7b8233b9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:04:21 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "Hibernation: Move low level resume to disk.c\n\nMove the low level restore code to kernel/power/disk.c , since the\ncorresponding low level hibernation code is already there.\n\nMake restore fail if device_power_down(PMSG_PRETHAW) returns an\nerror.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "2ed43b63285c394cb5e1829c199cc94c7b8233b9",
      "tree": "6131e028d746b2fc77e53c53285a2e0896491266",
      "parents": [
        "825257569350e913bee3bc918508c0aa6e3398cd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 08 02:03:26 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "Suspend: Fix compilation warning for CONFIG_SUSPEND unset\n\nSuspend: Make debug facility depend on CONFIG_SUSPEND\n\nMake the new suspend debug facility code depend on CONFIG_SUSPEND,\nas appropriate, to remove the compiler warning printed when CONFIG_PM is set\nand CONFIG_SUSPEND is not set.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "825257569350e913bee3bc918508c0aa6e3398cd",
      "tree": "2d016a04dfc09938565d5e932f0d2d5e43fb6bdd",
      "parents": [
        "90dda1cb6ace6abd777f84bf051c4f86fa58986a"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Nov 19 23:49:18 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "PM: Convert PM notifiers to out-of-line code\n\nThis patch (as1008b) converts the PM notifier routines from inline\ncalls to out-of-line code.  It also prevents pm_chain_head from\nbeing created when CONFIG_PM_SLEEP isn\u0027t enabled, and EXPORTs the\nnotifier registration and unregistration routines.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "90dda1cb6ace6abd777f84bf051c4f86fa58986a",
      "tree": "b53a566118e5e130a55707bea6d01e112508c8df",
      "parents": [
        "ce2b7147bb83b7d729b17c1638f092a1bcba4981"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Nov 19 23:46:16 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "PM: Make PM_TRACE more architecture independent\n\nWhen trying to debug a suspend failure I started implementing\nPM_TRACE for powerpc. I then noticed that I\u0027m debugging a suspend\nfailure and so PM_TRACE isn\u0027t useful at all, but thought that\nnonetheless this could be useful in the future.\n\nBasically, to support PM_TRACE, you add a Kconfig option that\nselects PM_TRACE and provides the infrastructure as per the\nhelp text of PM_TRACE.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "4cc79776c9ea431790e04fcacbebb30d28eb1570",
      "tree": "42eb5b8c5f2a2d1fcfb1dae8fa77ad70be209cbb",
      "parents": [
        "039a75c6e17ba4ff76998d6ac6ee3d508fff1930"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Nov 19 23:42:31 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "Hibernation: New testing facility (rev. 2)\n\nMake it possible to test the hibernation core code with the help of the\n/sys/power/pm_test attribute introduced for suspend testing in the previous\npatch.\n\nWriting an appropriate string to this file causes the hibernation code to work\nin one of the test modes defined as follows:\n\nfreezer\n- test the freezing of processes\n\ndevices\n- test the freezing of processes and suspending of devices\n\nplatform\n- test the freezing of processes, suspending of devices and platform global\n  control methods(*)\n\nprocessors\n- test the freezing of processes, suspending of devices, platform global\n  control methods(*) and the disabling of nonboot CPUs\n\ncore\n- test the freezing of processes, suspending of devices, platform global\n  control methods(*), the disabling of nonboot CPUs and suspending of\n  platform/system devices\n\n(*) - the platform global control methods are only available on ACPI systems\n      and are only tested if the hibernation mode is set to \"platform\"\n\nThen, if a hibernation is started by normal means, the hibernation core will\nperform its normal operations up to the point indicated by given test level.\nNext, it will wait for 5 seconds and carry out the resume operations needed to\ntransition the system back to the fully functional state.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "039a75c6e17ba4ff76998d6ac6ee3d508fff1930",
      "tree": "050ce0df5ae0a7e823b2ceb4dec40e85fb5c987c",
      "parents": [
        "0e7d56e3d9d7e37c79d0e05ffb3994e34beb3bbc"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jan 29 00:29:06 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "suspend: build fix responding to 2.6.25 kset change\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "0e7d56e3d9d7e37c79d0e05ffb3994e34beb3bbc",
      "tree": "cac3e72f882085bc869df9302248a079c657bb10",
      "parents": [
        "c3e94d899c864e558f938f9845ddb8c2e5d5ccd0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Nov 19 23:41:19 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:54 2008 -0500"
      },
      "message": "Suspend: Testing facility (rev. 2)\n\nIntroduce sysfs attribute /sys/power/pm_test allowing one to test the suspend\ncore code.  Namely, writing one of the strings:\n\nfreezer\ndevices\nplatform\nprocessors\ncore\n\nto this file causes the suspend code to work in one of the test modes defined as\nfollows:\n\nfreezer\n- test the freezing of processes\n\ndevices\n- test the freezing of processes and suspending of devices\n\nplatform\n- test the freezing of processes, suspending of devices and platform global\n  control methods(*)\n\nprocessors\n- test the freezing of processes, suspending of devices, platform global\n  control methods and the disabling of nonboot CPUs\n\ncore\n- test the freezing of processes, suspending of devices, platform global\n  control methods, the disabling of nonboot CPUs and suspending of\n  platform/system devices\n\n(*) These are ACPI global control methods on ACPI systems\n\nThen, if a suspend is started by normal means, the suspend core will perform\nits normal operations up to the point indicated by given test level.  Next, it\nwill wait for 5 seconds and carry out the resume operations needed to transition\nthe system back to the fully functional state.\n\nWriting \"none\" to /sys/power/pm_test turns the testing off.\n\nWhen open for reading, /sys/power/pm_test contains a space-separated list of all\navailable tests (including \"none\" that represents the normal functionality) in\nwhich the current test level is indicated by square brackets.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c3e94d899c864e558f938f9845ddb8c2e5d5ccd0",
      "tree": "cdc2d5007e2d8053ab1903f9e66c46dca9a9de81",
      "parents": [
        "2f8ed1c60b06b797bf79a1dc540f0bed8c9d75a0"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Nov 19 23:38:25 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:53 2008 -0500"
      },
      "message": "Hibernation: Add PM_RESTORE_PREPARE and PM_POST_RESTORE notifiers (rev. 2)\n\nAdd PM_RESTORE_PREPARE and PM_POST_RESTORE notifiers to the PM core, to be used\nin analogy with the existing PM_HIBERNATION_PREPARE and PM_POST_HIBERNATION\nnotifiers.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "2f8ed1c60b06b797bf79a1dc540f0bed8c9d75a0",
      "tree": "bf9157cf84a53b0ee74ba1e2b5bd9417589b9226",
      "parents": [
        "964756a52f4cf0417d515b7f01eec69db8cb0fe2"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Nov 19 23:36:20 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:53 2008 -0500"
      },
      "message": "Hibernation: Move function prototypes to header\n\nThis patch moves the prototypes of count_highmem_pages() and\nrestore_highmem() to kernel/power/power.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "3010f8caa48ed38679cc32b0d8e84b82cb8d9980",
      "tree": "b25311fd5c66e2e1f392194089635c4c2fec557e",
      "parents": [
        "cc5d207c85b9a6fafebe2856ead0a9360978c8cd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 26 01:05:05 2007 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:53 2008 -0500"
      },
      "message": "Hibernation: Introduce exportable suspend ioctls header (rev. 2)\n\nMove the definitions of hibernation ioctls to a separate header file in\ninclude/linux, which can be exported to the user space.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "cc5d207c85b9a6fafebe2856ead0a9360978c8cd",
      "tree": "1a7c45b4ffb44a02a76ccd60ec318c796687d568",
      "parents": [
        "96f737490cfc368fdafe49769f52fc8460f9349f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 26 01:03:33 2007 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:53 2008 -0500"
      },
      "message": "Hibernation: Correct definitions of some ioctls (rev. 2)\n\nThree ioctl numbers belonging to the hibernation userland interface,\nSNAPSHOT_ATOMIC_SNAPSHOT, SNAPSHOT_AVAIL_SWAP, SNAPSHOT_GET_SWAP_PAGE,\nare defined in a wrong way (eg. not portable).  Provide new ioctl numbers for\nthese ioctls and mark the existing ones as deprecated.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "96f737490cfc368fdafe49769f52fc8460f9349f",
      "tree": "5c9df5fcb5e07e479fa988ac5d7d67b38cee87bd",
      "parents": [
        "eb57c1cf059630454b40fb8bb124e3f318d241f8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 26 01:02:15 2007 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:53 2008 -0500"
      },
      "message": "Hibernation: Mark SNAPSHOT_SET_SWAP_FILE ioctl as deprecated (rev. 2)\n\nMark the SNAPSHOT_SET_SWAP_FILE ioctl belonging to the hibernation userland\ninterface as deprecated.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "eb57c1cf059630454b40fb8bb124e3f318d241f8",
      "tree": "df8abba4265647f15b3b30053a4d843099bb6b9e",
      "parents": [
        "af508b34d27e3341287d89e0eae6752fdb1b873f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 26 01:01:10 2007 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:53 2008 -0500"
      },
      "message": "Hibernation: Rework platform support ioctls (rev. 2)\n\nModify the hibernation userland interface by adding two new ioctls to it,\nSNAPSHOT_PLATFORM_SUPPORT and SNAPSHOT_POWER_OFF, that can be used,\nrespectively, to switch the hibernation platform support on/off and to make the\nkernel transition the system to the hibernation state (eg. ACPI S4) using the\nplatform (eg. ACPI) driver.\n\nThese ioctls are intended to replace the misdesigned SNAPSHOT_PMOPS ioctl,\nwhich from now is regarded as obsolete and will be removed in the future.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "af508b34d27e3341287d89e0eae6752fdb1b873f",
      "tree": "b5d2a337d78dc25aadb02d481443d484e0dd368c",
      "parents": [
        "aa6299926950c8dfe2fea638276cad6def092bc9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 26 00:59:31 2007 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Feb 01 18:30:52 2008 -0500"
      },
      "message": "Hibernation: Introduce SNAPSHOT_GET_IMAGE_SIZE ioctl\n\nAdd a new ioctl, SNAPSHOT_GET_IMAGE_SIZE, returning the size of the (just\ncreated) hibernation image, to the hibernation userland interface.\n\nThis ioctl is necessary so that the userland utilities using the interface need\nnot access the hibernation image header, owned by the kernel, in order to obtain\nthe size of the image.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "dd5f5fed6c9458a7aa81eeef3732cc3a9891cfdf",
      "tree": "06b81942dc218763889efe65faf08aeb23e71f03",
      "parents": [
        "3e01dfce1387f8bec41018f0d7b42fd88ad4163f",
        "7759db82774802885f96c250b36c3dfe317e62ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 02 08:37:03 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 02 08:37:03 2008 +1100"
      },
      "message": "Merge branch \u0027audit.b46\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b46\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:\n  [AUDIT] Add uid, gid fields to ANOM_PROMISCUOUS message\n  [AUDIT] ratelimit printk messages audit\n  [patch 2/2] audit: complement va_copy with va_end()\n  [patch 1/2] kernel/audit.c: warning fix\n  [AUDIT] create context if auditing was ever enabled\n  [AUDIT] clean up audit_receive_msg()\n  [AUDIT] make audit\u003d0 really stop audit messages\n  [AUDIT] break large execve argument logging into smaller messages\n  [AUDIT] include audit type in audit message when using printk\n  [AUDIT] do not panic on exclude messages in audit_log_pid_context()\n  [AUDIT] Add End of Event record\n  [AUDIT] add session id to audit messages\n  [AUDIT] collect uid, loginuid, and comm in OBJ_PID records\n  [AUDIT] return EINTR not ERESTART*\n  [PATCH] get rid of loginuid races\n  [PATCH] switch audit_get_loginuid() to task_struct *\n"
    },
    {
      "commit": "320f1b1ed28c601cc152053a2f428a126cb608bc",
      "tree": "5865f2acf0d84b61fc81108f1bbb33896d11df84",
      "parents": [
        "148b38dc9309044c8656aa36d5fd86069e2ea7cc"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Wed Jan 23 22:55:05 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:25:04 2008 -0500"
      },
      "message": "[AUDIT] ratelimit printk messages audit\n\nsome printk messages from the audit system can become excessive.  This\npatch ratelimits those messages.  It was found that messages, such as\nthe audit backlog lost printk message could flood the logs to the point\nthat a machine could take an nmi watchdog hit or otherwise become\nunresponsive.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "148b38dc9309044c8656aa36d5fd86069e2ea7cc",
      "tree": "905eaa71e29c5d4f65ef8a74e225db68d31cd934",
      "parents": [
        "ef00be0554f1af9f2b685e0e3bb9e2ec0181937e"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Thu Jan 10 11:02:40 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:24:57 2008 -0500"
      },
      "message": "[patch 2/2] audit: complement va_copy with va_end()\n\nComplement va_copy() with va_end().\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ef00be0554f1af9f2b685e0e3bb9e2ec0181937e",
      "tree": "54827faae4e5bcd81fa6b4a17c80ed9990b69cf2",
      "parents": [
        "b593d384efcff7bdf6beb1bc1bc69927977aee26"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Jan 10 11:02:39 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:24:51 2008 -0500"
      },
      "message": "[patch 1/2] kernel/audit.c: warning fix\n\nkernel/audit.c: In function \u0027audit_log_start\u0027:\nkernel/audit.c:1133: warning: \u0027serial\u0027 may be used uninitialized in this function\n\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b593d384efcff7bdf6beb1bc1bc69927977aee26",
      "tree": "9055ef0decc84dcbf0da67135535f0746e602e8e",
      "parents": [
        "50397bd1e471391d27f64efad9271459c913de87"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 08 17:38:31 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:24:45 2008 -0500"
      },
      "message": "[AUDIT] create context if auditing was ever enabled\n\nDisabling audit at runtime by auditctl doesn\u0027t mean that we can\nstop allocating contexts for new processes; we don\u0027t want to miss them\nwhen that sucker is reenabled.\n\n(based on work from Al Viro in the RHEL kernel series)\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "50397bd1e471391d27f64efad9271459c913de87",
      "tree": "2b23b983ebcb9085cbf38c1688ba0c0f28ccfd2f",
      "parents": [
        "1a6b9f2317f18db768010252c957d99daf40678f"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 18:14:19 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:24:39 2008 -0500"
      },
      "message": "[AUDIT] clean up audit_receive_msg()\n\ngenerally clean up audit_receive_msg() don\u0027t free random memory if\nselinux_sid_to_string fails for some reason.  Move generic auditing\nto a helper function\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "1a6b9f2317f18db768010252c957d99daf40678f",
      "tree": "e63199fab4ec31e05b22f3af10505bdcfcb57be8",
      "parents": [
        "de6bbd1d30e5912620d25dd15e3f180ac7f9fcef"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 17:09:31 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:24:33 2008 -0500"
      },
      "message": "[AUDIT] make audit\u003d0 really stop audit messages\n\nSome audit messages (namely configuration changes) are still emitted even if\nthe audit subsystem has been explicitly disabled.  This patch turns those\nmessages off as well.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "de6bbd1d30e5912620d25dd15e3f180ac7f9fcef",
      "tree": "3807b13f8e2e490c258c5bb37915c95fc1bcfe20",
      "parents": [
        "e445deb593d67c8ed13bd357c780a93d78bc84cf"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 14:31:58 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:23:55 2008 -0500"
      },
      "message": "[AUDIT] break large execve argument logging into smaller messages\n\nexecve arguments can be quite large.  There is no limit on the number of\narguments and a 4G limit on the size of an argument.\n\nthis patch prints those aruguments in bite sized pieces.  a userspace size\nlimitation of 8k was discovered so this keeps messages around 7.5k\n\nsingle arguments larger than 7.5k in length are split into multiple records\nand can be identified as aX[Y]\u003d\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "e445deb593d67c8ed13bd357c780a93d78bc84cf",
      "tree": "b6c14711659e16f817a4cb9eaa1fd8dba0c7b162",
      "parents": [
        "6246ccab99093a562044596dd868213caa0b2b4c"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 14:19:15 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:08:14 2008 -0500"
      },
      "message": "[AUDIT] include audit type in audit message when using printk\n\nCurrently audit drops the audit type when an audit message goes through\nprintk instead of the audit deamon.  This is a minor annoyance in\nthat the audit type is no longer part of the message and the information\nthe audit type conveys needs to be carried in, or derived from the\nmessage data.\n\nThe attached patch includes the type number as part of the printk.\nAdmittedly it isn\u0027t the type name that the audit deamon provides but I\nthink this is better than dropping the type completely.\n\nSigned-pff-by: John Johansen \u003cjjohansen@suse.de\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "6246ccab99093a562044596dd868213caa0b2b4c",
      "tree": "b373e388bd35549a540ce8693cceeea3660d02e1",
      "parents": [
        "c0641f28dcbecb6dc34a4fd003a9947fcd080696"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 14:01:18 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:07:46 2008 -0500"
      },
      "message": "[AUDIT] do not panic on exclude messages in audit_log_pid_context()\n\nIf we fail to get an ab in audit_log_pid_context this may be due to an exclude\nrule rather than a memory allocation failure.  If it was due to a memory\nallocation failue we would have already paniced and no need to do it again.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "c0641f28dcbecb6dc34a4fd003a9947fcd080696",
      "tree": "75cc2700afe2e83834895e7f45c7f663faf2e034",
      "parents": [
        "4746ec5b01ed07205a91e4f7ed9de9d70f371407"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 13:49:15 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:07:19 2008 -0500"
      },
      "message": "[AUDIT] Add End of Event record\n\nThis patch adds an end of event record type. It will be sent by the kernel as\nthe last record when a multi-record event is triggered. This will aid realtime\nanalysis programs since they will now reliably know they have the last record\nto complete an event. The audit daemon filters this and will not write it to\ndisk.\n\nSigned-off-by: Steve Grubb \u003csgrubb redhat com\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "4746ec5b01ed07205a91e4f7ed9de9d70f371407",
      "tree": "7a3a836b6178ccab24801e90b69c1159b2c23099",
      "parents": [
        "c2a7780efe37d01bdb3facc85a94663e6d67d4a8"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 08 10:06:53 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:06:51 2008 -0500"
      },
      "message": "[AUDIT] add session id to audit messages\n\nIn order to correlate audit records to an individual login add a session\nid.  This is incremented every time a user logs in and is included in\nalmost all messages which currently output the auid.  The field is\nlabeled ses\u003d  or oses\u003d\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "c2a7780efe37d01bdb3facc85a94663e6d67d4a8",
      "tree": "a7e30dcb7bfb386c84de9918dcfa92381675d59f",
      "parents": [
        "f701b75ed5ffb6820efe530d1a3abcc6fc4678ad"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 13:40:17 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:06:23 2008 -0500"
      },
      "message": "[AUDIT] collect uid, loginuid, and comm in OBJ_PID records\n\nAdd uid, loginuid, and comm collection to OBJ_PID records.  This just\ngives users a little more information about the task that received a\nsignal.  pid is rather meaningless after the fact, and even though comm\nisn\u0027t great we can\u0027t collect exe reasonably on this code path for\nperformance reasons.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "f701b75ed5ffb6820efe530d1a3abcc6fc4678ad",
      "tree": "46036f5e1b2703f6f9073a4a1469e3c5a611083e",
      "parents": [
        "bfef93a5d1fb5654fe2025276c55e202d10b5255"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 07 13:34:51 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:05:55 2008 -0500"
      },
      "message": "[AUDIT] return EINTR not ERESTART*\n\nThe syscall exit code will change ERESTART* kernel internal return codes\nto EINTR if it does not restart the syscall.  Since we collect the audit\ninfo before that point we should fix those in the audit log as well.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "bfef93a5d1fb5654fe2025276c55e202d10b5255",
      "tree": "573d8153c5d5216b0c4007b652286eeddd3c0987",
      "parents": [
        "0c11b9428f619ab377c92eff2f160a834a6585dd"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jan 10 04:53:18 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:05:28 2008 -0500"
      },
      "message": "[PATCH] get rid of loginuid races\n\nKeeping loginuid in audit_context is racy and results in messier\ncode.  Taken to task_struct, out of the way of -\u003eaudit_context\nchanges.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0c11b9428f619ab377c92eff2f160a834a6585dd",
      "tree": "35b573715ad5730a77d067486838345132771a7a",
      "parents": [
        "24e1c13c93cbdd05e4b7ea921c0050b036555adc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jan 10 04:20:52 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 01 14:04:59 2008 -0500"
      },
      "message": "[PATCH] switch audit_get_loginuid() to task_struct *\n\nall callers pass something-\u003eaudit_context\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "cd689985cf49f6ff5c8eddc48d98b9d581d9475d",
      "tree": "a1a119402f5208c45c21b855e8d2fbbaf18cfd72",
      "parents": [
        "83e96c604e781098a2f61b8a294919bcf3abfab4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "message": "futex: Add bitset conditional wait/wakeup functionality\n\nTo allow the implementation of optimized rw-locks in user space, glibc\nneeds a possibility to select waiters for wakeup depending on a bitset\nmask.\n\nThis requires two new futex OPs: FUTEX_WAIT_BITS and FUTEX_WAKE_BITS\nThese OPs are basically the same as FUTEX_WAIT and FUTEX_WAKE plus an\nadditional argument - a bitset. Further the FUTEX_WAIT_BITS OP is\nexpecting an absolute timeout value instead of the relative one, which\nis used for the FUTEX_WAIT OP.\n\nFUTEX_WAIT_BITS calls into the kernel with a bitset. The bitset is\nstored in the futex_q structure, which is used to enqueue the waiter\ninto the hashed futex waitqueue.\n\nFUTEX_WAKE_BITS also calls into the kernel with a bitset. The wakeup\nfunction logically ANDs the bitset with the bitset stored in each\nwaiters futex_q structure. If the result is zero (i.e. none of the set\nbits in the bitsets is matching), then the waiter is not woken up. If\nthe result is not zero (i.e. one of the set bits in the bitsets is\nmatching), then the waiter is woken.\n\nThe bitset provided by the caller must be non zero. In case the\nprovided bitset is zero the kernel returns EINVAL.\n\nInternaly the new OPs are only extensions to the existing FUTEX_WAIT\nand FUTEX_WAKE functions. The existing OPs hand a bitset with all bits\nset into the futex_wait() and futex_wake() functions.\n\nSigned-off-by: Thomas Gleixner \u003ctgxl@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "83e96c604e781098a2f61b8a294919bcf3abfab4",
      "tree": "67c5a97b30784cdc8297dc888b1135c4f127e964",
      "parents": [
        "9d55b9923a1b7ea8193b8875c57ec940dc2ff027"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "message": "futex: Remove warn on in return fixup path\n\nThe WARN_ON() in the fixup return path of futex_lock_pi() can\ntrigger with false positives.\n\nThe following scenario happens:\nt1 holds the futex and t2 and t3 are blocked on the kernel side rt_mutex.\nt1 releases the futex (and the rt_mutex) and assigned t2 to be the next\nowner of the futex.\n\nt2 is interrupted and returns w/o acquiring the rt_mutex, before t1 can\nrelease the rtmutex.\n\nt1 releases the rtmutex and t3 becomes the pending owner of the rtmutex.\n\nt2 notices that it is the designated owner (user space variable) and\nfails to acquire the rt_mutex via trylock, because it is not allowed to\nsteal the rt_mutex from t3. Now it looks at the rt_mutex pending owner (t3)\nand assigns the futex and the pi_state to it.\n\nDuring the fixup t4 steals the rtmutex from t3.\n\nt2 returns from the fixup and the owner of the rt_mutex has changed from\nt3 to t4.\n\nThere is no need to do another round of fixups from t2. The important\npart (t2 is not returning as the user space visible owner) is\ndone. The further fixups are done, before either t3 or t4 return to\nuser space.\n\nFor the user space it is not relevant which task (t3 or t4) is the real\nowner, as long as those are both in the kernel, which is guaranteed by\nthe serialization of the hash bucket lock. Both tasks (which ever returns\nfirst to userspace - t4 because it locked the rt_mutex or t3 due to a signal)\nare going through the lock_futex_pi() return path where the ownership is\nfixed before the return to user space.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5df7fa1c62146a0933767d040d400013310dbcc7",
      "tree": "bfd108f0d33a91d4f2476df7f5a7f562b640eb97",
      "parents": [
        "1001d0a9ee74a468077dfd4da0565174e88de26b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "message": "tick-sched: add more debug information\n\nTo allow better diagnosis of tick-sched related, especially NOHZ\nrelated problems, we need to know when the last wakeup via an irq\nhappened and when the CPU left the idle state.\n\nAdd two fields (idle_waketime, idle_exittime) to the tick_sched\nstructure and add them to the timer_list output.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1001d0a9ee74a468077dfd4da0565174e88de26b",
      "tree": "8775592b23e8049700ff98a7bdbcf9c802a0f127",
      "parents": [
        "3588a085cd52ef080bf72df772378e1ba6bb292f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 01 17:45:13 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 01 17:45:13 2008 +0100"
      },
      "message": "timekeeping: update xtime_cache when time(zone) changes\n\nxtime_cache needs to be updated whenever xtime and or wall_to_monotic\nare changed. Otherwise users of xtime_cache might see a stale (and in\nthe case of timezone changes utterly wrong) value until the next\nupdate happens.\n\nFixup the obvious places, which miss this update.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nTested-by: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3588a085cd52ef080bf72df772378e1ba6bb292f",
      "tree": "9c013c37431eb3a0d0da3ab14cbc4985600e82a2",
      "parents": [
        "24e1c13c93cbdd05e4b7ea921c0050b036555adc"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Feb 01 17:45:13 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 01 17:45:13 2008 +0100"
      },
      "message": "hrtimer: fix hrtimer_init_sleeper() users\n\nthis patch:\n\n commit 37bb6cb4097e29ffee970065b74499cbf10603a3\n Author: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n Date:   Fri Jan 25 21:08:32 2008 +0100\n\n     hrtimer: unlock hrtimer_wakeup\n\nBroke hrtimer_init_sleeper() users. It forgot to fix up the futex\ncaller of this function to detect the failed queueing and messed up\nthe do_nanosleep() caller in that it could leak a TASK_INTERRUPTIBLE\nstate.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "406a1d868001423c85a3165288e566e65f424fe6",
      "tree": "2663aa7139f884ba5ef0425911fc9a579fcb1c6f",
      "parents": [
        "29ffe1a5c52dae13b6efead97aab9b058f38fce4"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jan 28 20:47:09 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 31 19:27:08 2008 -0800"
      },
      "message": "[AUDIT]: Increase skb-\u003etruesize in audit_expand\n\nThe recent UDP patch exposed this bug in the audit code.  It\nwas calling pskb_expand_head without increasing skb-\u003etruesize.\nThe caller of pskb_expand_head needs to do so because that function\nis designed to be called in places where truesize is already fixed\nand therefore it doesn\u0027t update its value.\n\nBecause the audit system is using it in a place where the truesize\nhas not yet been fixed, it needs to update its value manually.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13f09b95a82c46ed608d057b22e0dd18ebfff22a",
      "tree": "99d8b9ed6f725bbd4ad58a1193929f1064c4b1d0",
      "parents": [
        "75659ca0c10992dcb39258518368a0f6f56e935d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 31 20:40:29 2008 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 12:58:14 2008 +1100"
      },
      "message": "Ensure that we export __fatal_signal_pending()\n\nIt may be used by the modules nfs.ko and sunrpc.ko\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n[ Made it a regular export rather than GPL-only  - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "75659ca0c10992dcb39258518368a0f6f56e935d",
      "tree": "5d014ceb2f10158061a23d0d976f9a613d85e659",
      "parents": [
        "fbdde7bd274d74729954190f99afcb1e3d9bbfba",
        "2dfe485a2c8afa54cb069fcf48476f6c90ea3fdf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 11:45:47 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 11:45:47 2008 +1100"
      },
      "message": "Merge branch \u0027task_killable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc\n\n* \u0027task_killable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc: (22 commits)\n  Remove commented-out code copied from NFS\n  NFS: Switch from intr mount option to TASK_KILLABLE\n  Add wait_for_completion_killable\n  Add wait_event_killable\n  Add schedule_timeout_killable\n  Use mutex_lock_killable in vfs_readdir\n  Add mutex_lock_killable\n  Use lock_page_killable\n  Add lock_page_killable\n  Add fatal_signal_pending\n  Add TASK_WAKEKILL\n  exit: Use task_is_*\n  signal: Use task_is_*\n  sched: Use task_contributes_to_load, TASK_ALL and TASK_NORMAL\n  ptrace: Use task_is_*\n  power: Use task_is_*\n  wait: Use TASK_NORMAL\n  proc/base.c: Use task_is_*\n  proc/array.c: Use TASK_REPORT\n  perfmon: Use task_is_*\n  ...\n\nFixed up conflicts in NFS/sunrpc manually..\n"
    },
    {
      "commit": "c4772d99300a9fc13c86aaa370e630c5973664f6",
      "tree": "afdc34662ecdb0522cab05690d55edb0a9eea85b",
      "parents": [
        "5aff0531ee2403b319e89bd04055fc41173e95fd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 31 22:45:23 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 31 22:45:23 2008 +0100"
      },
      "message": "debug: turn ignore_loglevel into an early param\n\ni was debugging early crashes and wondered where all the printks\nwent. The reason: ignore_loglevel_setup() was not called yet ...\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5aff0531ee2403b319e89bd04055fc41173e95fd",
      "tree": "522e811c815d296497cac1e12127fdbfaa4a8da6",
      "parents": [
        "ef9884e6f29bbe1075204f962a00f7533bf7e8f3"
      ],
      "author": {
        "name": "Gerald Stralko",
        "email": "gerb.stralko@gmail.com",
        "time": "Thu Jan 31 22:45:23 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 31 22:45:23 2008 +0100"
      },
      "message": "sched: remove unused params\n\nThis removes the extra struct task_struct *p parameter in inc_nr_running\nand dec_nr_running functions.\n\nSigned-off by: Jerry Stralko \u003cgerb.stralko@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ef9884e6f29bbe1075204f962a00f7533bf7e8f3",
      "tree": "6d67c6a7073ec99237336c32a8d6985d5b8a2f4e",
      "parents": [
        "296825cbe14d4c95ee9c41ca5824f7487bfb4d9d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jan 31 22:45:22 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 31 22:45:22 2008 +0100"
      },
      "message": "sched: let +nice tasks have smaller impact\n\nMichel Dänzr has bisected an interactivity problem with\nplus-reniced tasks back to this commit:\n\n 810e95ccd58d91369191aa4ecc9e6d4a10d8d0c8 is first bad commit\n commit 810e95ccd58d91369191aa4ecc9e6d4a10d8d0c8\n Author: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n Date:   Mon Oct 15 17:00:14 2007 +0200\n\n sched: another wakeup_granularity fix\n\n      unit mis-match: wakeup_gran was used against a vruntime\n\nfix this by assymetrically scaling the vtime of positive reniced\ntasks.\n\nBisected-by: Michel Dänzer \u003cmichel@tungstengraphics.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "296825cbe14d4c95ee9c41ca5824f7487bfb4d9d",
      "tree": "c1d608ee1dd774f1d726c12873feff8a29422fff",
      "parents": [
        "095031052b4c03a7c8ffa51cbab031e442c4f8b7"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@linux.vnet.ibm.com",
        "time": "Thu Jan 31 22:45:22 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 31 22:45:22 2008 +0100"
      },
      "message": "sched: fix high wake up latencies with FAIR_USER_SCHED\n\nThe reason why we are getting better wakeup latencies for\n!FAIR_USER_SCHED is because of this snippet of code in place_entity():\n\n\tif (!initial) {\n\t\t/* sleeps upto a single latency don\u0027t count. */\n\t\tif (sched_feat(NEW_FAIR_SLEEPERS) \u0026\u0026 entity_is_task(se))\n\t\t\t\t\t\t     ^^^^^^^^^^^^^^^^^^\n\t\t\tvruntime -\u003d sysctl_sched_latency;\n\n\t\t/* ensure we never gain time by being placed backwards. */\n\t\tvruntime \u003d max_vruntime(se-\u003evruntime, vruntime);\n\t}\n\nNEW_FAIR_SLEEPERS feature gives credit for sleeping only to tasks and\nnot group-level entities. With the patch attached, I could see that\nwakeup latencies with FAIR_USER_SCHED are restored to the same level as\n!FAIR_USER_SCHED.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bd45ac0c5daae35e7c71138172e63df5cf644cf6",
      "tree": "5eb5a599bf6a9d7a8a34e802db932aa9e9555de4",
      "parents": [
        "4eece4ccf997c0e6d8fdad3d842e37b16b8d705f",
        "5bdeae46be6dfe9efa44a548bd622af325f4bdb4"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jan 31 11:25:51 2008 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Jan 31 11:25:51 2008 +1100"
      },
      "message": "Merge branch \u0027linux-2.6\u0027\n"
    },
    {
      "commit": "6d4e4c4fca5be806b888d606894d914847e82d78",
      "tree": "dc383e27d812f617d791f48ba1527d70c86b65ba",
      "parents": [
        "76c35c6e99cb46b936b88cc795c9c886e7fe7bd4"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Wed Nov 21 16:41:05 2007 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Wed Jan 30 17:53:13 2008 +0200"
      },
      "message": "KVM: Disallow fork() and similar games when using a VM\n\nWe don\u0027t want the meaning of guest userspace changing under our feet.\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "dd5af90a7f3d79e04b7eace9a98644dbf2038f4d",
      "tree": "22327ba385c830b7be391c76821dc5ec26863f2e",
      "parents": [
        "3212bff370c2f22e4987c6679ba485654cefb178"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Jan 30 13:33:32 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:32 2008 +0100"
      },
      "message": "x86/non-x86: percpu, node ids, apic ids x86.git fixup\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "70edcd77a0d6d0f8731c826764f5eb6732f521e9",
      "tree": "1ea618a73c784c11b52168046d5a27197398520a",
      "parents": [
        "17abecfe651c862cd31b1f9e8ef6cfc29083f00d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:24 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:24 2008 +0100"
      },
      "message": "genirq: stackdump after the \"Trying to free already-free IRQ\" message\n\nthese bugs are harder to find than they seem, a stackdump helps.\n\nmake it dependent on CONFIG_DEBUG_SHIRQ so that people can turn it off\nif it annoys them.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6dab27784b2a97823b522e1cb88e40be40a93d45",
      "tree": "75ee27b4841aad5800531e591aed141164071727",
      "parents": [
        "80b51f310b6f55006a265d087b8f48744e65663d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Wed Jan 30 13:33:08 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:08 2008 +0100"
      },
      "message": "x86: add a simple backtrace test module\n\nDuring the work on the x86 32 and 64 bit backtrace code I found it useful\nto have a simple test module to test a process and irq context backtrace.\nSince the existing backtrace code was buggy, I figure it might be useful\nto have such a test module in the kernel so that maybe we can even\ndetect such bugs earlier..\n\n[ mingo@elte.hu: build fix ]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "076f9776f5d8d131b36955db8641aba3893c2c1b",
      "tree": "b85e705ecfe34400c6e1188fb470572956a232ab",
      "parents": [
        "8866cd9dc9d0bbadcf361a14e0cdfecb66473087"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:06 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:06 2008 +0100"
      },
      "message": "x86: make early printk selectable on 64-bit as well\n\nEnable CONFIG_EMBEDDED to select CONFIG_EARLY_PRINTK on 64-bit as well.\n\nsaves ~2K:\n\n   text    data     bss     dec     hex filename\n   7290283 3672091 1907848 12870222         c4624e vmlinux.before\n   7288373 3671795 1907848 12868016         c459b0 vmlinux.after\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8c1c9356429741a82ff176d0f3400fb9e06b2a30",
      "tree": "4daa7864163b77943e3d303c32a08672f443685e",
      "parents": [
        "3334052a321aca0ffecb54244d666311f98f5487"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "message": "x86: kprobes: add kprobes smoke tests that run on boot\n\nHere is a quick and naive smoke test for kprobes. This is intended to\njust verify if some unrelated change broke the *probes subsystem. It is\nself contained, architecture agnostic and isn\u0027t of any great use by itself.\n\nThis needs to be built in the kernel and runs a basic set of tests to\nverify if kprobes, jprobes and kretprobes run fine on the kernel. In case\nof an error, it\u0027ll print out a message with a \"BUG\" prefix.\n\nThis is a start; we intend to add more tests to this bucket over time.\n\nThanks to Jim Keniston and Masami Hiramatsu for comments and suggestions.\n\nTested on x86 (32/64) and powerpc.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "71c339116a216b181fc5e203ef51a033fe5e38cf",
      "tree": "d69ddfa6c980247a06fd9f096c116e94cf572e81",
      "parents": [
        "79b4cc5ee7a8086ac2c9c0afa52e6d687ce1ffef"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Wed Jan 30 13:32:50 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:50 2008 +0100"
      },
      "message": "debug: add the end-of-trace marker and the module list to\n\nUnlike oopses, WARN_ON() currently does\u0027t print the loaded modules list.\nThis makes it harder to take action on certain bug reports. For example,\nrecently there were a set of WARN_ON()s reported in the mac80211 stack,\nwhich were just signalling a driver bug. It takes then anther round trip\nto the bug reporter (if he responds at all) to find out which driver\nis at fault.\n\nAnother issue is that, unlike oopses, WARN_ON() doesn\u0027t currently printk\nthe helpful \"cut here\" line, nor the \"end of trace\" marker.\nNow that WARN_ON() is out of line, the size increase due to this is\nminimal and it\u0027s worth adding.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "79b4cc5ee7a8086ac2c9c0afa52e6d687ce1ffef",
      "tree": "8f22bbdb0d1532ec6f70400db17bbe2f7c8fbb99",
      "parents": [
        "3a6a62f96f168d192fb0cc9c0b5ee2584740b32d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Wed Jan 30 13:32:50 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:50 2008 +0100"
      },
      "message": "debug: move WARN_ON() out of line\n\nA quick grep shows that there are currently 1145 instances of WARN_ON\nin the kernel. Currently, WARN_ON is pretty much entirely inlined,\nwhich makes it hard to enhance it without growing the size of the kernel\n(and getting Andrew unhappy).\n\nThis patch build on top of Olof\u0027s patch that introduces __WARN,\nand places the slowpath out of line. It also uses Ingo\u0027s suggestion\nto not use __FUNCTION__ but to use kallsyms to do the lookup;\nthis saves a ton of extra space since gcc doesn\u0027t need to store the function\nstring twice now:\n\n3936367  833603  624736 5394706  525112 vmlinux.before\n3917508  833603  624736 5375847  520767 vmlinux-slowpath\n\n15Kb savings...\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCC: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCC: Olof Johansson \u003colof@lixom.net\u003e\nAcked-by: Matt Meckall \u003cmpm@selenic.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "96d97cf03b3d68e6c857623da93acd522b2b7e1a",
      "tree": "f31885e66849ca2e20d9dffd72ecd556204dbb45",
      "parents": [
        "9e094c17ee2b85130ab7b2ea37456f6867eb687a"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 30 13:32:48 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:48 2008 +0100"
      },
      "message": "x86: add /proc/irq/*/spurious to dump the spurious irq debugging state\n\nThis is useful to debug problems with interrupt handlers that return\nsometimes IRQ_NONE.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "9e094c17ee2b85130ab7b2ea37456f6867eb687a",
      "tree": "ca4723bbf4e62b623869be0f73c2f74807f3384c",
      "parents": [
        "b899c5ed2ef3af3429abd8046197255f179ea496"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 30 13:32:48 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:48 2008 +0100"
      },
      "message": "genirq: turn irq debugging options into module params\n\nThis allows to change them at runtime using sysfs. No need to\nreboot to set them.\n\nI only added aliases (kernel.noirqdebug etc.) so the old options\nstill work.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c269f19617f508cc5c29c0b064c1a437d7011a46",
      "tree": "da49abc09dcf573df0580b305dba647a70306ac8",
      "parents": [
        "032d82d9065dec0e26718eca376c2029e4bd0595"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:31:48 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:48 2008 +0100"
      },
      "message": "x86: compat_sys_ptrace\n\nThis adds a generic definition of compat_sys_ptrace that calls\ncompat_arch_ptrace, parallel to sys_ptrace/arch_ptrace.  Some\nmachines needing this already define a function by that name.\nThe new generic function is defined only on machines that\nput #define __ARCH_WANT_COMPAT_SYS_PTRACE into asm/ptrace.h.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "032d82d9065dec0e26718eca376c2029e4bd0595",
      "tree": "44cdb3296f25a9b2d5044fe1c12fbb03b085ac37",
      "parents": [
        "16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "message": "x86: compat_ptrace_request\n\nThis adds a compat_ptrace_request that is the analogue of ptrace_request\nfor the things that 32-on-64 ptrace implementations can share in common.\nSo far there are just a couple of requests handled generically.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf",
      "tree": "e87239acac664b4f940118b9920e457cb8a1461c",
      "parents": [
        "5bde4d181793be84351bc21c256d8c71cfcd313a"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:47 2008 +0100"
      },
      "message": "x86: ptrace_request peekdata/pokedata\n\nThis makes ptrace_request handle {PEEK,POKE}{TEXT,DATA} directly.\nEvery arch_ptrace that could call generic_ptrace_peekdata already\nhas a default case calling ptrace_request, so this keeps things\nsimpler for the arch code.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "95c354fe9f7d6decc08a92aa26eb233ecc2155bf",
      "tree": "ec9267032ea875e84216cfb20acb2cfc7c62149f",
      "parents": [
        "a95d67f87e1a5f1b4429be3ba3bf7b4051657908"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Jan 30 13:31:20 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:20 2008 +0100"
      },
      "message": "spinlock: lockbreak cleanup\n\nThe break_lock data structure and code for spinlocks is quite nasty.\nNot only does it double the size of a spinlock but it changes locking to\na potentially less optimal trylock.\n\nPut all of that under CONFIG_GENERIC_LOCKBREAK, and introduce a\n__raw_spin_is_contended that uses the lock data itself to determine whether\nthere are waiters on the lock, to be used if CONFIG_GENERIC_LOCKBREAK is\nnot set.\n\nRename need_lockbreak to spin_needbreak, make it use spin_is_contended to\ndecouple it from the spinlock implementation, and make it typesafe (rwlocks\ndo not have any need_lockbreak sites -- why do they even get bloated up\nwith that break_lock then?).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "65ea5b0349903585bfed9720fa06f5edb4f1cd25",
      "tree": "6c252228c34416b7e2077f23475de34500c2ab8a",
      "parents": [
        "53756d3722172815f52272b28c6d5d5e9639adde"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Jan 30 13:30:56 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:56 2008 +0100"
      },
      "message": "x86: rename the struct pt_regs members for 32/64-bit consistency\n\nWe have a lot of code which differs only by the naming of specific\nmembers of structures that contain registers.  In order to enable\nadditional unifications, this patch drops the e- or r- size prefix\nfrom the register names in struct pt_regs, and drops the x- prefixes\nfor segment registers on the 32-bit side.\n\nThis patch also performs the equivalent renames in some additional\nplaces that might be candidates for unification in the future.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5b88abbf770a0e1975c668743100f42934f385e8",
      "tree": "ae6af4df76e71682efb4d90620182bfaf541e9c8",
      "parents": [
        "dc802c2d2e66e2d1544e023bfd4be6cdee48d57b"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:30:53 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:53 2008 +0100"
      },
      "message": "ptrace: generic PTRACE_SINGLEBLOCK\n\nThis makes ptrace_request handle PTRACE_SINGLEBLOCK along with\nPTRACE_CONT et al.  The new generic code makes use of the\narch_has_block_step macro and generic entry points on machines\nthat define them.\n\n[ mingo@elte.hu: bugfix ]\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "36df29d7994180cf7f0ccc5d46495855d56d2721",
      "tree": "3291b504ef268714ea40de90b297dba62f11206b",
      "parents": [
        "e1f287735c1e58c653b516931b5d3dd899edcb77"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Jan 30 13:30:51 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:51 2008 +0100"
      },
      "message": "ptrace: generic resume\n\nThis makes ptrace_request handle all the ptrace requests that wake\nup the traced task.  These do low-level ptrace implementation magic\nthat is not arch-specific and should be kept out of arch code.  The\nimplementations on each arch usually do the same thing.  The new\ngeneric code makes use of the arch_has_single_step macro and generic\nentry points to handle PTRACE_SINGLESTEP.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6e7c402590b75b6b45138792445ee0f0315a8473",
      "tree": "94db814d496502932ab55acc560a728925f87540",
      "parents": [
        "b02aae9cf52956dfe1bec73f77f81a3d05d3902b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:05 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:05 2008 +0100"
      },
      "message": "x86: various changes and cleanups to in_p/out_p delay details\n\nvarious changes to the in_p/out_p delay details:\n\n- add the io_delay\u003dnone method\n- make each method selectable from the kernel config\n- simplify the delay code a bit by getting rid of an indirect function call\n- add the /proc/sys/kernel/io_delay_type sysctl\n- change \u0027io_delay\u003dstandard|alternate\u0027 to io_delay\u003d0x80 and io_delay\u003d0xed\n- make the io delay config not depend on CONFIG_DEBUG_KERNEL\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: \"David P. Reed\" \u003cdpreed@reed.com\u003e\n"
    },
    {
      "commit": "6378ddb592158db4b42197f1bc8666228800e379",
      "tree": "f9b1e671dfd12fb221f6140dd231ccb14cd9f27e",
      "parents": [
        "bbe4d18ac2e058c56adb0cd71f49d9ed3216a405"
      ],
      "author": {
        "name": "Venki Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jan 30 13:30:04 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:04 2008 +0100"
      },
      "message": "time: track accurate idle time with tick_sched.idle_sleeptime\n\nCurrent idle time in kstat is based on jiffies and is coarse grained.\ntick_sched.idle_sleeptime is making some attempt to keep track of idle time\nin a fine grained manner.  But, it is not handling the time spent in\ninterrupts fully.\n\nMake tick_sched.idle_sleeptime accurate with respect to time spent on\nhandling interrupts and also add tick_sched.idle_lastupdate, which keeps\ntrack of last time when idle_sleeptime was updated.\n\nThis statistics will be crucial for cpufreq-ondemand governor, which can\nshed some conservative gaurd band that is uses today while setting the\nfrequency.  The ondemand changes that uses the exact idle time is coming\nsoon.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bbe4d18ac2e058c56adb0cd71f49d9ed3216a405",
      "tree": "bc81b3a04cc01fed11ac47673475bf4019cc013f",
      "parents": [
        "37a47db8d7f0f38dac5acf5a13abbc8f401707fa"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Wed Jan 30 13:30:03 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:03 2008 +0100"
      },
      "message": "NTP: correct inconsistent ntp interval/tick_length usage\n\nI recently noticed on one of my boxes that when synched with an NTP\nserver, the drift value reported for the system was ~283ppm. While in\nsome cases, clock hardware can be that bad, it struck me as unusual as\nthe system was using the acpi_pm clocksource, which is one of the more\ntrustworthy and accurate clocksources on x86 hardware.\n\nI brought up another system and let it sync to the same NTP server, and\nI noticed a similar 280some ppm drift.\n\nIn looking at the code, I found that the acpi_pm\u0027s constant frequency\nwas being computed correctly at boot-up, however once the system was up,\neven without the ntp daemon running, the clocksource\u0027s frequency was\nbeing modified by the clocksource_adjust() function.\n\nDigging deeper, I realized that in the code that keeps track of how much\nthe clocksource is skewing from the ntp desired time, we were using\ndifferent lengths to establish how long an time interval was.\n\nThe clocksource was being setup with the following interval:\n\tNTP_INTERVAL_LENGTH \u003d NSEC_PER_SEC/NTP_INTERVAL_FREQ\n\nWhile the ntp code was using the tick_length_base value:\n\ttick_length_base ~\u003d (tick_usec * NSEC_PER_USEC * USER_HZ)\n\t\t\t\t\t/NTP_INTERVAL_FREQ\n\nThe subtle difference is:\n\t(tick_usec * NSEC_PER_USEC * USER_HZ) !\u003d NSEC_PER_SEC\n\nThis difference in calculation was causing the clocksource correction\ncode to apply a correction factor to the clocksource so the two\nintervals were the same, however this results in the actual frequency of\nthe clocksource to be made incorrect. I believe this difference would\naffect all clocksources, although to differing degrees depending on the\nclocksource resolution.\n\nThe issue was introduced when my HZ free ntp patch landed in 2.6.21-rc1,\nso my apologies for the mistake, and for not noticing it until now.\n\nThe following patch, corrects the clocksource\u0027s initialization code so\nit uses the same interval length as the code in ntp.c. After applying\nthis patch, the drift value for the same system went from ~283ppm to\nonly 2.635ppm.\n\nI believe this patch to be good, however it does affect all arches and\nI\u0027ve only tested on x86, so some caution is advised. I do think it would\nbe a likely candidate for a stable 2.6.24.x release.\n\nAny thoughts or feedback would be appreciated.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "45fe4fe19120a22f7339f5bb110447170c25fca9",
      "tree": "06639135ca5bc60e952670dd7df40e195edb2ad9",
      "parents": [
        "1a0c009ac53de4a7664a1239936f0bc258133156"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:03 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:03 2008 +0100"
      },
      "message": "x86: make clockevents more robust\n\ndetect zero event-device multiplicators - they then cause\ndivision-by-zero crashes if a clockevent has been initialized\nincorrectly.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4713e22ce81eb8b3353e16435362eb3d0ec95640",
      "tree": "6f96151bd9b182d6b9d706d3ad3b4fe8c99e7f7e",
      "parents": [
        "316da3b3fc8efa9a5d2c99e0d449f01ff38c6aba"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jan 30 13:30:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:02 2008 +0100"
      },
      "message": "clocksource: add unregister function to disable unusable clocksources\n\nOn x86 the PIT might become an unusable clocksource. Add an unregister\nfunction to provide a possibilty to remove the PIT from the list of\navailable clock sources.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1ada5cba6a0318f90e45b38557e7b5206a9cba38",
      "tree": "262886af88fe55e2de6fb1e878f68bd6b452a3aa",
      "parents": [
        "1077f5a917b7c630231037826b344b2f7f5b903f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 30 13:30:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:02 2008 +0100"
      },
      "message": "clocksource: make clocksource watchdog cycle through online CPUs\n\nThis way it checks if the clocks are synchronized between CPUs too.\nThis might be able to detect slowly drifting TSCs which only\ngo wrong over longer time.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1077f5a917b7c630231037826b344b2f7f5b903f",
      "tree": "e0083b73450d513b16d0f5c0704ad49961dce401",
      "parents": [
        "efd9ac8630e89b9ee7ce64008bd7783952374f37"
      ],
      "author": {
        "name": "Parag Warudkar",
        "email": "parag.warudkar@gmail.com",
        "time": "Wed Jan 30 13:30:01 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:01 2008 +0100"
      },
      "message": "clocksource.c: use init_timer_deferrable for clocksource_watchdog\n\nclocksource_watchdog can use a deferrable timer - reduces wakeups from\nidle per second.\n\nSigned-off-by: Parag Warudkar \u003cparag.warudkar@gmail.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "efd9ac8630e89b9ee7ce64008bd7783952374f37",
      "tree": "2b06184b9241770aff309a9940f6e400371003a4",
      "parents": [
        "1d76c2622813fbc692b0d323028cfef9ee36051a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Wed Jan 30 13:30:01 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:01 2008 +0100"
      },
      "message": "time: fold __get_realtime_clock_ts() into getnstimeofday()\n\n  - getnstimeofday() was just a wrapper around __get_realtime_clock_ts()\n  - Replace calls to __get_realtime_clock_ts() by calls to getnstimeofday()\n  - Fix bogus reference to get_realtime_clock_ts(), which never existed\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "186e3cb8a465bac010ee3b020768d2fa2b505aef",
      "tree": "c45dd774f91cf9095915c7e4bbec9084fcd06026",
      "parents": [
        "b10db7f0d2b589a7f88dc3026e150756cb437a28"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jan 30 13:30:01 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:01 2008 +0100"
      },
      "message": "timer: clean up tick-broadcast.c\n\nclean up tick-broadcast.c\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b10db7f0d2b589a7f88dc3026e150756cb437a28",
      "tree": "92942041770257c78f7271b79d9860eec10bd77c",
      "parents": [
        "4c9dc6412247abf4972080c51cd16a58c4009c19"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Wed Jan 30 13:30:00 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:00 2008 +0100"
      },
      "message": "time: more timer related cleanups\n\nI was confused by FSEC \u003d 10^15 NSEC statement, plus small whitespace\nfixes. When there\u0027s copyright, there should be GPL.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    }
  ],
  "next": "4c9dc6412247abf4972080c51cd16a58c4009c19"
}
