)]}'
{
  "log": [
    {
      "commit": "e11fea92e13fb91c50bacca799a6131c81929986",
      "tree": "3b9204f4eccc6b488b843d6d00e65dc982c50160",
      "parents": [
        "7ff9554bb578ba02166071d2d487b7fc7d860d62"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay@vrfy.org",
        "time": "Thu May 03 02:29:41 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon May 07 17:03:27 2012 -0700"
      },
      "message": "kmsg: export printk records to the /dev/kmsg interface\n\nSupport for multiple concurrent readers of /dev/kmsg, with read(),\nseek(), poll() support. Output of message sequence numbers, to allow\nuserspace log consumers to reliably reconnect and reconstruct their\nstate at any given time. After open(\"/dev/kmsg\"), read() always\nreturns *all* buffered records. If only future messages should be\nread, SEEK_END can be used. In case records get overwritten while\n/dev/kmsg is held open, or records get faster overwritten than they\nare read, the next read() will return -EPIPE and the current reading\nposition gets updated to the next available record. The passed\nsequence numbers allow the log consumer to calculate the amount of\nlost messages.\n\n  [root@mop ~]# cat /dev/kmsg\n  5,0,0;Linux version 3.4.0-rc1+ (kay@mop) (gcc version 4.7.0 20120315 ...\n  6,159,423091;ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])\n  7,160,424069;pci_root PNP0A03:00: host bridge window [io  0x0000-0x0cf7] (ignored)\n   SUBSYSTEM\u003dacpi\n   DEVICE\u003d+acpi:PNP0A03:00\n  6,339,5140900;NET: Registered protocol family 10\n  30,340,5690716;udevd[80]: starting version 181\n  6,341,6081421;FDC 0 is a S82078B\n  6,345,6154686;microcode: CPU0 sig\u003d0x623, pf\u003d0x0, revision\u003d0x0\n  7,346,6156968;sr 1:0:0:0: Attached scsi CD-ROM sr0\n   SUBSYSTEM\u003dscsi\n   DEVICE\u003d+scsi:1:0:0:0\n  6,347,6289375;microcode: CPU1 sig\u003d0x623, pf\u003d0x0, revision\u003d0x0\n\nCc: Karel Zak \u003ckzak@redhat.com\u003e\nTested-by: William Douglas \u003cwilliam.douglas@intel.com\u003e\nSigned-off-by: Kay Sievers \u003ckay@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "7ff9554bb578ba02166071d2d487b7fc7d860d62",
      "tree": "fcd01f3dadfb451af453300663c60054d3e702cf",
      "parents": [
        "89528127fa5f4aca0483203c87c945555d057770"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay@vrfy.org",
        "time": "Thu May 03 02:29:13 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon May 07 16:53:02 2012 -0700"
      },
      "message": "printk: convert byte-buffer to variable-length record buffer\n\n- Record-based stream instead of the traditional byte stream\n  buffer. All records carry a 64 bit timestamp, the syslog facility\n  and priority in the record header.\n\n- Records consume almost the same amount, sometimes less memory than\n  the traditional byte stream buffer (if printk_time is enabled). The record\n  header is 16 bytes long, plus some padding bytes at the end if needed.\n  The byte-stream buffer needed 3 chars for the syslog prefix, 15 char for\n  the timestamp and a newline.\n\n- Buffer management is based on message sequence numbers. When records\n  need to be discarded, the reading heads move on to the next full\n  record. Unlike the byte-stream buffer, no old logged lines get\n  truncated or partly overwritten by new ones. Sequence numbers also\n  allow consumers of the log stream to get notified if any message in\n  the stream they are about to read gets discarded during the time\n  of reading.\n\n- Better buffered IO support for KERN_CONT continuation lines, when printk()\n  is called multiple times for a single line. The use of KERN_CONT is now\n  mandatory to use continuation; a few places in the kernel need trivial fixes\n  here. The buffering could possibly be extended to per-cpu variables to allow\n  better thread-safety for multiple printk() invocations for a single line.\n\n- Full-featured syslog facility value support. Different facilities\n  can tag their messages. All userspace-injected messages enforce a\n  facility value \u003e 0 now, to be able to reliably distinguish them from\n  the kernel-generated messages. Independent subsystems like a\n  baseband processor running its own firmware, or a kernel-related\n  userspace process can use their own unique facility values. Multiple\n  independent log streams can co-exist that way in the same\n  buffer. All share the same global sequence number counter to ensure\n  proper ordering (and interleaving) and to allow the consumers of the\n  log to reliably correlate the events from different facilities.\n\nTested-by: William Douglas \u003cwilliam.douglas@intel.com\u003e\nSigned-off-by: Kay Sievers \u003ckay@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "4a52246302f01596f0edf7b4a3e6425e23479192",
      "tree": "f384d86722d3ccfc875e3e5e8d8726e993a922ee",
      "parents": [
        "9f9d2760da8c7f94fae119fac3e13d5a1702f8f0",
        "adc80ae60eae24a43a357bf5b30fb496f34aa605"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 11:16:20 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 11:16:20 2012 -0700"
      },
      "message": "Merge tag \u0027driver-core-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core patches for 3.4-rc1 from Greg KH:\n \"Here\u0027s the big driver core merge for 3.4-rc1.\n\n  Lots of various things here, sysfs fixes/tweaks (with the nlink\n  breakage reverted), dynamic debugging updates, w1 drivers, hyperv\n  driver updates, and a variety of other bits and pieces, full\n  information in the shortlog.\"\n\n* tag \u0027driver-core-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (78 commits)\n  Tools: hv: Support enumeration from all the pools\n  Tools: hv: Fully support the new KVP verbs in the user level daemon\n  Drivers: hv: Support the newly introduced KVP messages in the driver\n  Drivers: hv: Add new message types to enhance KVP\n  regulator: Support driver probe deferral\n  Revert \"sysfs: Kill nlink counting.\"\n  uevent: send events in correct order according to seqnum (v3)\n  driver core: minor comment formatting cleanups\n  driver core: move the deferred probe pointer into the private area\n  drivercore: Add driver probe deferral mechanism\n  DS2781 Maxim Stand-Alone Fuel Gauge battery and w1 slave drivers\n  w1_bq27000: Only one thread can access the bq27000 at a time.\n  w1_bq27000 - remove w1_bq27000_write\n  w1_bq27000: remove unnecessary NULL test.\n  sysfs: Fix memory leak in sysfs_sd_setsecdata().\n  intel_idle: Revert change of auto_demotion_disable_flags for Nehalem\n  w1: Fix w1_bq27000\n  driver-core: documentation: fix up Greg\u0027s email address\n  powernow-k6: Really enable auto-loading\n  powernow-k7: Fix CPU family number\n  ...\n"
    },
    {
      "commit": "3ccf3e8306156a28213adc720aba807e9a901ad5",
      "tree": "5b9db344b702299ea7eb53fbff3d0d74707d40ec",
      "parents": [
        "554cecaf733623b327eef9652b65965eb1081b81"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 27 10:47:00 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:16 2012 +0100"
      },
      "message": "printk/sched: Introduce special printk_sched() for those awkward moments\n\nThere\u0027s a few awkward printk()s inside of scheduler guts that people\nprefer to keep but really are rather deadlock prone. Fudge around it\nby storing the text in a per-cpu buffer and poll it using the existing\nprintk_tick() handler.\n\nThis will drop output when its more frequent than once a tick, however\nonly the affinity thing could possible go that fast and for that just\none should suffice to notify the admin he\u0027s done something silly..\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-wua3lmkt3dg8nfts66o6brne@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b558c96ffa53f4b3dd52b774e4fb7a52982ab52b",
      "tree": "c178b95b2f1bb9e146d4f33f287ab37c2dab119a",
      "parents": [
        "87e6f968339bcdda56b39572c7e63331192296a0"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Mon Dec 19 17:11:18 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 24 12:46:44 2012 -0800"
      },
      "message": "dynamic_debug: make dynamic-debug supersede DEBUG ccflag\n\nIf CONFIG_DYNAMIC_DEBUG is defined, honor it over DEBUG, so that\npr_debug()s are controllable, instead of always-on.  When DEBUG is\nalso defined, change _DPRINTK_FLAGS_DEFAULT to enable printing by\ndefault.\n\nAlso adding _DPRINTK_FLAGS_INCL_MODNAME would be nice, but there are\nnumerous cases of pr_debug(NAME \": ...), which would result in double\nprinting of module-name.  So defer this until things settle.\n\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b9075fa968a0a4347aef35e235e2995c0e57dddd",
      "tree": "cf9f9716784e790d8a43339653256d9cf9178ff3",
      "parents": [
        "ae29bc92da01a2e9d278a9a58c3b307d41cc0254"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Oct 31 17:11:33 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 31 17:30:54 2011 -0700"
      },
      "message": "treewide: use __printf not __attribute__((format(printf,...)))\n\nStandardize the style for compiler based printf format verification.\nStandardized the location of __printf too.\n\nDone via script and a little typing.\n\n$ grep -rPl --include\u003d*.[ch] -w \"__attribute__\" * | \\\n  grep -vP \"^(tools|scripts|include/linux/compiler-gcc.h)\" | \\\n  xargs perl -n -i -e \u0027local $/; while (\u003c\u003e) { s/\\b__attribute__\\s*\\(\\s*\\(\\s*format\\s*\\(\\s*printf\\s*,\\s*(.+)\\s*,\\s*(.+)\\s*\\)\\s*\\)\\s*\\)/__printf($1, $2)/g ; print; }\u0027\n\n[akpm@linux-foundation.org: revert arch bits]\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"Kirill A. Shutemov\" \u003ckirill@shutemov.name\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "162a7e7500f9664636e649ba59defe541b7c2c60",
      "tree": "f44d4e480975d7f2c4bd4fd8625dbdb81eb04ade",
      "parents": [
        "95dde501907b06e7203c74f8435acfdab9eb2659"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Tue May 24 17:13:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:48 2011 -0700"
      },
      "message": "printk: allocate kernel log buffer earlier\n\nOn larger systems, because of the numerous ACPI, Bootmem and EFI messages,\nthe static log buffer overflows before the larger one specified by the\nlog_buf_len param is allocated.  Minimize the overflow by allocating the\nnew log buffer as soon as possible.\n\nOn kernels without memblock, a later call to setup_log_buf from\nkernel/init.c is the fallback.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix CONFIG_PRINTK\u003dn build]\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a3f938bf6f5746d39e013d03ba13118a393fee96",
      "tree": "37084efbd18680d616fbd3c9624061dd22a1bc96",
      "parents": [
        "6ec42a56e258462cda510421aecc2680d3642e21"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Jan 12 16:59:48 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:10 2011 -0800"
      },
      "message": "include/linux/printk.h: use tab not spaces for indent\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ec42a56e258462cda510421aecc2680d3642e21",
      "tree": "da167589365065ce7ec323a0d557f65737645771",
      "parents": [
        "ac83ed687837a44c6e46fb16411fb0d299fffd80"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Jan 12 16:59:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:10 2011 -0800"
      },
      "message": "include/linux/printk.h: organize printk_ratelimited macros\n\n- Use no_printk for !CONFIG_PRINTK printk_ratelimited.\n\n- Whitespace cleanup.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac83ed687837a44c6e46fb16411fb0d299fffd80",
      "tree": "04abc4db3153056b2c478209bfb8a4c7701d6a5b",
      "parents": [
        "16cb839f13324978bd58082e69de81a711802b11"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Jan 12 16:59:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:10 2011 -0800"
      },
      "message": "include/linux/printk.h lib/hexdump.c: neatening and add CONFIG_PRINTK guard\n\n- Move prototypes and align arguments.\n\n- Add CONFIG_PRINTK guard for print_hex functions\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16cb839f13324978bd58082e69de81a711802b11",
      "tree": "eb59fdf9deea125a432c50d7cb8f7f733bd58681",
      "parents": [
        "5264f2f75d8678f3e9683042a4639baa5884bda9"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Jan 12 16:59:46 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:09 2011 -0800"
      },
      "message": "include/linux/printk.h: add pr_\u003clevel\u003e_once macros\n\n- Move printk_once definitions and add an #ifdef CONFIG_PRINTK\n\n- Add pr_\u003clevel\u003e_once so printks can use pr_fmt\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5264f2f75d8678f3e9683042a4639baa5884bda9",
      "tree": "1c50abbe3179ece00cbb14623d7724602fa17f8c",
      "parents": [
        "7d1e91aeb317c3c747369d8594fc1b742c265a07"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Jan 12 16:59:45 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:09 2011 -0800"
      },
      "message": "include/linux/printk.h: use and neaten no_printk\n\n- Move no_printk above first CONFIG_PRINTK block so it can be used by\n  printk_once.\n\n- Convert statement expression if (0) printk macros to no_printk.\n\n- Convert printk_once(x...) to more normally used (fmt, ...) fmt,\n  ##__VA_ARGS__.\n\n- Standardize __attribute__ use.\n\n- Expand single line inline functions.\n\n- Remove space before pointer.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d1e91aeb317c3c747369d8594fc1b742c265a07",
      "tree": "0a51a1b9effa50417091ee4d16c3b1a9589654c1",
      "parents": [
        "a9747cc3addf81e56ea9b8a4374fbdb9d1737eae"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Jan 12 16:59:45 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:09 2011 -0800"
      },
      "message": "include/linux/printk.h: use space after #define\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9747cc3addf81e56ea9b8a4374fbdb9d1737eae",
      "tree": "fe163341b5c80ea2f597095c609eec959ee3e728",
      "parents": [
        "fb842b00c5eab66ec361b31550aa8a922745ce9e"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Jan 12 16:59:43 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:09 2011 -0800"
      },
      "message": "include/linux/printk.h: move console functions and variables together\n\nThere are many uses of printk_once(KERN_\u003clevel\u003e, so add pr_\u003clevel\u003e_once\nmacros to avoid printk_once(KERN_\u003clevel\u003e pr_fmt(fmt).\n\nAdd an #ifdef CONFIG_PRINTK for print_hex_dump and static inline void\nfunctions for the #else cases to reduce embedded code size.  Neaten and\norganize the rest of the code.\n\nThis patch:\n\nMove console functions and variables together.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "455cd5ab305c90ffc422dd2e0fb634730942b257",
      "tree": "c20e6c3f8e58967991ce9002abe03d31897b171c",
      "parents": [
        "351f8f8e6499ae4fff40f5e3a8fe16d9e1903646"
      ],
      "author": {
        "name": "Dan Rosenberg",
        "email": "drosenberg@vsecurity.com",
        "time": "Wed Jan 12 16:59:41 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:08 2011 -0800"
      },
      "message": "kptr_restrict for hiding kernel pointers from unprivileged users\n\nAdd the %pK printk format specifier and the /proc/sys/kernel/kptr_restrict\nsysctl.\n\nThe %pK format specifier is designed to hide exposed kernel pointers,\nspecifically via /proc interfaces.  Exposing these pointers provides an\neasy target for kernel write vulnerabilities, since they reveal the\nlocations of writable structures containing easily triggerable function\npointers.  The behavior of %pK depends on the kptr_restrict sysctl.\n\nIf kptr_restrict is set to 0, no deviation from the standard %p behavior\noccurs.  If kptr_restrict is set to 1, the default, if the current user\n(intended to be a reader via seq_printf(), etc.) does not have CAP_SYSLOG\n(currently in the LSM tree), kernel pointers using %pK are printed as 0\u0027s.\n If kptr_restrict is set to 2, kernel pointers using %pK are printed as\n0\u0027s regardless of privileges.  Replacing with 0\u0027s was chosen over the\ndefault \"(null)\", which cannot be parsed by userland %p, which expects\n\"(nil)\".\n\n[akpm@linux-foundation.org: check for IRQ context when !kptr_restrict, save an indent level, s/WARN/WARN_ONCE/]\n[akpm@linux-foundation.org: coding-style fixup]\n[randy.dunlap@oracle.com: fix kernel/sysctl.c warning]\nSigned-off-by: Dan Rosenberg \u003cdrosenberg@vsecurity.com\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Thomas Graf \u003ctgraf@infradead.org\u003e\nCc: Eugene Teo \u003ceugeneteo@kernel.org\u003e\nCc: Kees Cook \u003ckees.cook@canonical.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Eric Paris \u003ceparis@parisplace.org\u003e\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "968ab1838a5d48f02f5b471aa1d0e59e2cc2ccbc",
      "tree": "0f4258c00afbb2a8ad137acf34805cfeb0ed1077",
      "parents": [
        "22d3243de86bc92d874abb7c5b185d5c47aba323"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 15 13:37:37 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 15 13:37:37 2010 -0800"
      },
      "message": "include/linux/kernel.h: Move logging bits to include/linux/printk.h\n\nMove the logging bits from kernel.h into printk.h so that\nthere is a bit more logical separation of the generic from\nthe printk logging specific parts.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ]
}
