)]}'
{
  "log": [
    {
      "commit": "edab95103d3a1eb5e3faf977eae4ad0b5bf5669c",
      "tree": "812c111f94b0ae31bf88b49e7c37a7f5ba353eef",
      "parents": [
        "e5fca243abae1445afbfceebda5f08462ef869d3",
        "b36824c75c7855585d6476eef2b234f6e0e68872"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Nov 22 18:32:25 2013 -0500"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Nov 22 18:32:25 2013 -0500"
      },
      "message": "cgroup: Merge branch \u0027memcg_event\u0027 into for-3.14\n\nMerge v3.12 based patch series to move cgroup_event implementation to\nmemcg into for-3.14.  The following two commits cause a conflict in\nkernel/cgroup.c\n\n  2ff2a7d03bbe4 (\"cgroup: kill css_id\")\n  79bd9814e5ec9 (\"cgroup, memcg: move cgroup_event implementation to memcg\")\n\nEach patch removes a struct definition from kernel/cgroup.c.  As the\ntwo are adjacent, they cause a context conflict.  Easily resolved by\nremoving both structs.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "79bd9814e5ec9a288d6599f53aeac0b548fdfe52",
      "tree": "3eea32952c52e0d32de841156c4b68e7b8278053",
      "parents": [
        "5e01dc7b26d9f24f39abace5da98ccbd6a5ceb52"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Nov 22 18:20:42 2013 -0500"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Nov 22 18:20:42 2013 -0500"
      },
      "message": "cgroup, memcg: move cgroup_event implementation to memcg\n\ncgroup_event is way over-designed and tries to build a generic\nflexible event mechanism into cgroup - fully customizable event\nspecification for each user of the interface.  This is utterly\nunnecessary and overboard especially in the light of the planned\nunified hierarchy as there\u0027s gonna be single agent.  Simply generating\nevents at fixed points, or if that\u0027s too restrictive, configureable\ncadence or single set of configureable points should be enough.\n\nThankfully, memcg is the only user and gets to keep it.  Replacing it\nwith something simpler on sane_behavior is strongly recommended.\n\nThis patch moves cgroup_event and \"cgroup.event_control\"\nimplementation to mm/memcontrol.c.  Clearing of events on cgroup\ndestruction is moved from cgroup_destroy_locked() to\nmem_cgroup_css_offline(), which shouldn\u0027t make any noticeable\ndifference.\n\ncgroup_css() and __file_cft() are exported to enable the move;\nhowever, this will soon be reverted once the event code is updated to\nbe memcg specific.\n\nNote that \"cgroup.event_control\" will now exist only on the hierarchy\nwith memcg attached to it.  While this change is visible to userland,\nit is unlikely to be noticeable as the file has never been meaningful\noutside memcg.\n\nAside from the above change, this is pure code relocation.\n\nv2: Per Li Zefan\u0027s comments, init/Kconfig updated accordingly and\n    poll.h inclusion moved from cgroup.c to memcontrol.c.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Li Zefan \u003clizefan@huawei.com\u003e\nAcked-by: Kirill A. Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Balbir Singh \u003cbsingharora@gmail.com\u003e\n"
    },
    {
      "commit": "78dc53c422172a317adb0776dfb687057ffa28b7",
      "tree": "7c5d15da75d769d01f6a992c24c3490b3867d5b2",
      "parents": [
        "3eaded86ac3e7f00fb3eeb8162d89e9a34e42fb0",
        "62fe318256befbd1b4a6765e71d9c997f768fe79"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 21 19:46:00 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 21 19:46:00 2013 -0800"
      },
      "message": "Merge branch \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates from James Morris:\n \"In this patchset, we finally get an SELinux update, with Paul Moore\n  taking over as maintainer of that code.\n\n  Also a significant update for the Keys subsystem, as well as\n  maintenance updates to Smack, IMA, TPM, and Apparmor\"\n\nand since I wanted to know more about the updates to key handling,\nhere\u0027s the explanation from David Howells on that:\n\n \"Okay.  There are a number of separate bits.  I\u0027ll go over the big bits\n  and the odd important other bit, most of the smaller bits are just\n  fixes and cleanups.  If you want the small bits accounting for, I can\n  do that too.\n\n   (1) Keyring capacity expansion.\n\n        KEYS: Consolidate the concept of an \u0027index key\u0027 for key access\n        KEYS: Introduce a search context structure\n        KEYS: Search for auth-key by name rather than target key ID\n        Add a generic associative array implementation.\n        KEYS: Expand the capacity of a keyring\n\n     Several of the patches are providing an expansion of the capacity of a\n     keyring.  Currently, the maximum size of a keyring payload is one page.\n     Subtract a small header and then divide up into pointers, that only gives\n     you ~500 pointers on an x86_64 box.  However, since the NFS idmapper uses\n     a keyring to store ID mapping data, that has proven to be insufficient to\n     the cause.\n\n     Whatever data structure I use to handle the keyring payload, it can only\n     store pointers to keys, not the keys themselves because several keyrings\n     may point to a single key.  This precludes inserting, say, and rb_node\n     struct into the key struct for this purpose.\n\n     I could make an rbtree of records such that each record has an rb_node\n     and a key pointer, but that would use four words of space per key stored\n     in the keyring.  It would, however, be able to use much existing code.\n\n     I selected instead a non-rebalancing radix-tree type approach as that\n     could have a better space-used/key-pointer ratio.  I could have used the\n     radix tree implementation that we already have and insert keys into it by\n     their serial numbers, but that means any sort of search must iterate over\n     the whole radix tree.  Further, its nodes are a bit on the capacious side\n     for what I want - especially given that key serial numbers are randomly\n     allocated, thus leaving a lot of empty space in the tree.\n\n     So what I have is an associative array that internally is a radix-tree\n     with 16 pointers per node where the index key is constructed from the key\n     type pointer and the key description.  This means that an exact lookup by\n     type+description is very fast as this tells us how to navigate directly to\n     the target key.\n\n     I made the data structure general in lib/assoc_array.c as far as it is\n     concerned, its index key is just a sequence of bits that leads to a\n     pointer.  It\u0027s possible that someone else will be able to make use of it\n     also.  FS-Cache might, for example.\n\n   (2) Mark keys as \u0027trusted\u0027 and keyrings as \u0027trusted only\u0027.\n\n        KEYS: verify a certificate is signed by a \u0027trusted\u0027 key\n        KEYS: Make the system \u0027trusted\u0027 keyring viewable by userspace\n        KEYS: Add a \u0027trusted\u0027 flag and a \u0027trusted only\u0027 flag\n        KEYS: Separate the kernel signature checking keyring from module signing\n\n     These patches allow keys carrying asymmetric public keys to be marked as\n     being \u0027trusted\u0027 and allow keyrings to be marked as only permitting the\n     addition or linkage of trusted keys.\n\n     Keys loaded from hardware during kernel boot or compiled into the kernel\n     during build are marked as being trusted automatically.  New keys can be\n     loaded at runtime with add_key().  They are checked against the system\n     keyring contents and if their signatures can be validated with keys that\n     are already marked trusted, then they are marked trusted also and can\n     thus be added into the master keyring.\n\n     Patches from Mimi Zohar make this usable with the IMA keyrings also.\n\n   (3) Remove the date checks on the key used to validate a module signature.\n\n        X.509: Remove certificate date checks\n\n     It\u0027s not reasonable to reject a signature just because the key that it was\n     generated with is no longer valid datewise - especially if the kernel\n     hasn\u0027t yet managed to set the system clock when the first module is\n     loaded - so just remove those checks.\n\n   (4) Make it simpler to deal with additional X.509 being loaded into the kernel.\n\n        KEYS: Load *.x509 files into kernel keyring\n        KEYS: Have make canonicalise the paths of the X.509 certs better to deduplicate\n\n     The builder of the kernel now just places files with the extension \".x509\"\n     into the kernel source or build trees and they\u0027re concatenated by the\n     kernel build and stuffed into the appropriate section.\n\n   (5) Add support for userspace kerberos to use keyrings.\n\n        KEYS: Add per-user_namespace registers for persistent per-UID kerberos caches\n        KEYS: Implement a big key type that can save to tmpfs\n\n     Fedora went to, by default, storing kerberos tickets and tokens in tmpfs.\n     We looked at storing it in keyrings instead as that confers certain\n     advantages such as tickets being automatically deleted after a certain\n     amount of time and the ability for the kernel to get at these tokens more\n     easily.\n\n     To make this work, two things were needed:\n\n     (a) A way for the tickets to persist beyond the lifetime of all a user\u0027s\n         sessions so that cron-driven processes can still use them.\n\n         The problem is that a user\u0027s session keyrings are deleted when the\n         session that spawned them logs out and the user\u0027s user keyring is\n         deleted when the UID is deleted (typically when the last log out\n         happens), so neither of these places is suitable.\n\n         I\u0027ve added a system keyring into which a \u0027persistent\u0027 keyring is\n         created for each UID on request.  Each time a user requests their\n         persistent keyring, the expiry time on it is set anew.  If the user\n         doesn\u0027t ask for it for, say, three days, the keyring is automatically\n         expired and garbage collected using the existing gc.  All the kerberos\n         tokens it held are then also gc\u0027d.\n\n     (b) A key type that can hold really big tickets (up to 1MB in size).\n\n         The problem is that Active Directory can return huge tickets with lots\n         of auxiliary data attached.  We don\u0027t, however, want to eat up huge\n         tracts of unswappable kernel space for this, so if the ticket is\n         greater than a certain size, we create a swappable shmem file and dump\n         the contents in there and just live with the fact we then have an\n         inode and a dentry overhead.  If the ticket is smaller than that, we\n         slap it in a kmalloc()\u0027d buffer\"\n\n* \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (121 commits)\n  KEYS: Fix keyring content gc scanner\n  KEYS: Fix error handling in big_key instantiation\n  KEYS: Fix UID check in keyctl_get_persistent()\n  KEYS: The RSA public key algorithm needs to select MPILIB\n  ima: define \u0027_ima\u0027 as a builtin \u0027trusted\u0027 keyring\n  ima: extend the measurement list to include the file signature\n  kernel/system_certificate.S: use real contents instead of macro GLOBAL()\n  KEYS: fix error return code in big_key_instantiate()\n  KEYS: Fix keyring quota misaccounting on key replacement and unlink\n  KEYS: Fix a race between negating a key and reading the error set\n  KEYS: Make BIG_KEYS boolean\n  apparmor: remove the \"task\" arg from may_change_ptraced_domain()\n  apparmor: remove parent task info from audit logging\n  apparmor: remove tsk field from the apparmor_audit_struct\n  apparmor: fix capability to not use the current task, during reporting\n  Smack: Ptrace access check mode\n  ima: provide hash algo info in the xattr\n  ima: enable support for larger default filedata hash algorithms\n  ima: define kernel parameter \u0027ima_template\u003d\u0027 to change configured default\n  ima: add Kconfig default measurement list template\n  ...\n"
    },
    {
      "commit": "3eaded86ac3e7f00fb3eeb8162d89e9a34e42fb0",
      "tree": "4c48b9f1739dcb034186956bf39908803b524154",
      "parents": [
        "527d1511310a89650000081869260394e20c7013",
        "9175c9d2aed528800175ef81c90569d00d23f9be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 21 19:18:14 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 21 19:18:14 2013 -0800"
      },
      "message": "Merge git://git.infradead.org/users/eparis/audit\n\nPull audit updates from Eric Paris:\n \"Nothing amazing.  Formatting, small bug fixes, couple of fixes where\n  we didn\u0027t get records due to some old VFS changes, and a change to how\n  we collect execve info...\"\n\nFixed conflict in fs/exec.c as per Eric and linux-next.\n\n* git://git.infradead.org/users/eparis/audit: (28 commits)\n  audit: fix type of sessionid in audit_set_loginuid()\n  audit: call audit_bprm() only once to add AUDIT_EXECVE information\n  audit: move audit_aux_data_execve contents into audit_context union\n  audit: remove unused envc member of audit_aux_data_execve\n  audit: Kill the unused struct audit_aux_data_capset\n  audit: do not reject all AUDIT_INODE filter types\n  audit: suppress stock memalloc failure warnings since already managed\n  audit: log the audit_names record type\n  audit: add child record before the create to handle case where create fails\n  audit: use given values in tty_audit enable api\n  audit: use nlmsg_len() to get message payload length\n  audit: use memset instead of trying to initialize field by field\n  audit: fix info leak in AUDIT_GET requests\n  audit: update AUDIT_INODE filter rule to comparator function\n  audit: audit feature to set loginuid immutable\n  audit: audit feature to only allow unsetting the loginuid\n  audit: allow unsetting the loginuid (with priv)\n  audit: remove CONFIG_AUDIT_LOGINUID_IMMUTABLE\n  audit: loginuid functions coding style\n  selinux: apply selinux checks on new audit message types\n  ...\n"
    },
    {
      "commit": "8b2e9b712f6139df9c754af0d67fecc4bbc88545",
      "tree": "4260126ffc11a2e60d92f3f9304bc2ea02516332",
      "parents": [
        "b5898cd057001336888b6aff601385b5f5e79b01"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 20 14:41:47 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 20 14:41:47 2013 -0800"
      },
      "message": "Revert \"mm: create a separate slab for page-\u003eptl allocation\"\n\nThis reverts commit ea1e7ed33708c7a760419ff9ded0a6cb90586a50.\n\nAl points out that while the commit *does* actually create a separate\nslab for the page-\u003eptl allocation, that slab is never actually used, and\nthe code continues to use kmalloc/kfree.\n\nDamien Wyart points out that the original patch did have the conversion\nto use kmem_cache_alloc/free, so it got lost somewhere on its way to me.\n\nRevert the half-arsed attempt that didn\u0027t do anything.  If we really do\nwant the special slab (remember: this is all relevant just for debug\nbuilds, so it\u0027s not necessarily all that critical) we might as well redo\nthe patch fully.\n\nReported-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Kirill A Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d3c627502f2a9b0a7de06a5a2df2365542a72c9",
      "tree": "57e1ccba1b743d8163f09573d1166cf51d1f8d2f",
      "parents": [
        "1213959d4ad2f523290d0d7c94f712edef63852c"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Nov 14 21:43:47 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 17 11:17:36 2013 -0800"
      },
      "message": "Revert \"init/Kconfig: add option to disable kernel compression\"\n\nThis reverts commit 69f0554ec261fd686ac7fa1c598cc9eb27b83a80.\n\nThis patch breaks randconfig on at least the x86-64 architecture, and\nmost likely on others.  There is work underway to support uncompressed\nkernels in a generic way, but it looks like it will amount to\nrewriting the support from scratch; see the LKML thread in the Link:\nfor info.\n\nTherefore, revert this change and wait for the fix.\n\nReported-by: Pavel Roskin \u003cproski@gnu.org\u003e\nCc: Christian Ruppert \u003cchristian.ruppert@abilis.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20131113113418.167b8ffd@IRBT4585\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9073e1a804c3096eda84ee7cbf11d1f174236c75",
      "tree": "2f1b488b606bc03f8c5ce133f9158196fef07cd2",
      "parents": [
        "4937e2a6f939a41bf811378e80d71f68aa0950c6",
        "2bb9936beac2eed0c1ed907f83694bc752e159d9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 15 16:47:22 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 15 16:47:22 2013 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\nPull trivial tree updates from Jiri Kosina:\n \"Usual earth-shaking, news-breaking, rocket science pile from\n  trivial.git\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (23 commits)\n  doc: usb: Fix typo in Documentation/usb/gadget_configs.txt\n  doc: add missing files to timers/00-INDEX\n  timekeeping: Fix some trivial typos in comments\n  mm: Fix some trivial typos in comments\n  irq: Fix some trivial typos in comments\n  NUMA: fix typos in Kconfig help text\n  mm: update 00-INDEX\n  doc: Documentation/DMA-attributes.txt fix typo\n  DRM: comment: `halve\u0027 -\u003e `half\u0027\n  Docs: Kconfig: `devlopers\u0027 -\u003e `developers\u0027\n  doc: typo on word accounting in kprobes.c in mutliple architectures\n  treewide: fix \"usefull\" typo\n  treewide: fix \"distingush\" typo\n  mm/Kconfig: Grammar s/an/a/\n  kexec: Typo s/the/then/\n  Documentation/kvm: Update cpuid documentation for steal time and pv eoi\n  treewide: Fix common typo in \"identify\"\n  __page_to_pfn: Fix typo in comment\n  Correct some typos for word frequency\n  clk: fixed-factor: Fix a trivial typo\n  ...\n"
    },
    {
      "commit": "ce6513f758b1852a2f24f76f07d0fae304d24ad3",
      "tree": "2186f8d1f4389734f5f6a4b20e448651edf57815",
      "parents": [
        "d8fe4acc88da8fbbe360b6592c9d0abbb85117dc",
        "b6568b1a19ad995221d1816c4fcdd116d9c33e42"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 15 13:27:50 2013 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 15 13:27:50 2013 +0900"
      },
      "message": "Merge tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module updates from Rusty Russell:\n \"Mainly boring here, too.  rmmod --wait finally removed, though\"\n\n* tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  modpost: fix bogus \u0027exported twice\u0027 warnings.\n  init: fix in-place parameter modification regression\n  asmlinkage, module: Make ksymtab and kcrctab symbols and __this_module __visible\n  kernel: add support for init_array constructors\n  modpost: Optionally ignore secondary errors seen if a single module build fails\n  module: remove rmmod --wait option.\n"
    },
    {
      "commit": "ea1e7ed33708c7a760419ff9ded0a6cb90586a50",
      "tree": "553c0c4024639bf2b1706d144fd6bb8ada63861e",
      "parents": [
        "539edb5846c740d78a8b6c2e43a99ca4323df68f"
      ],
      "author": {
        "name": "Kirill A. Shutemov",
        "email": "kirill.shutemov@linux.intel.com",
        "time": "Thu Nov 14 14:31:53 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 15 09:32:20 2013 +0900"
      },
      "message": "mm: create a separate slab for page-\u003eptl allocation\n\nIf DEBUG_SPINLOCK and DEBUG_LOCK_ALLOC are enabled spinlock_t on x86_64\nis 72 bytes.  For page-\u003eptl they will be allocated from kmalloc-96 slab,\nso we loose 24 on each.  An average system can easily allocate few tens\nthousands of page-\u003eptl and overhead is significant.\n\nLet\u0027s create a separate slab for page-\u003eptl allocation to solve this.\n\nSigned-off-by: Kirill A. Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\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": "42a2d923cc349583ebf6fdd52a7d35e1c2f7e6bd",
      "tree": "2b2b0c03b5389c1301800119333967efafd994ca",
      "parents": [
        "5cbb3d216e2041700231bcfc383ee5f8b7fc8b74",
        "75ecab1df14d90e86cebef9ec5c76befde46e65f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 17:40:34 2013 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 17:40:34 2013 +0900"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking updates from David Miller:\n\n 1) The addition of nftables.  No longer will we need protocol aware\n    firewall filtering modules, it can all live in userspace.\n\n    At the core of nftables is a, for lack of a better term, virtual\n    machine that executes byte codes to inspect packet or metadata\n    (arriving interface index, etc.) and make verdict decisions.\n\n    Besides support for loading packet contents and comparing them, the\n    interpreter supports lookups in various datastructures as\n    fundamental operations.  For example sets are supports, and\n    therefore one could create a set of whitelist IP address entries\n    which have ACCEPT verdicts attached to them, and use the appropriate\n    byte codes to do such lookups.\n\n    Since the interpreted code is composed in userspace, userspace can\n    do things like optimize things before giving it to the kernel.\n\n    Another major improvement is the capability of atomically updating\n    portions of the ruleset.  In the existing netfilter implementation,\n    one has to update the entire rule set in order to make a change and\n    this is very expensive.\n\n    Userspace tools exist to create nftables rules using existing\n    netfilter rule sets, but both kernel implementations will need to\n    co-exist for quite some time as we transition from the old to the\n    new stuff.\n\n    Kudos to Patrick McHardy, Pablo Neira Ayuso, and others who have\n    worked so hard on this.\n\n 2) Daniel Borkmann and Hannes Frederic Sowa made several improvements\n    to our pseudo-random number generator, mostly used for things like\n    UDP port randomization and netfitler, amongst other things.\n\n    In particular the taus88 generater is updated to taus113, and test\n    cases are added.\n\n 3) Support 64-bit rates in HTB and TBF schedulers, from Eric Dumazet\n    and Yang Yingliang.\n\n 4) Add support for new 577xx tigon3 chips to tg3 driver, from Nithin\n    Sujir.\n\n 5) Fix two fatal flaws in TCP dynamic right sizing, from Eric Dumazet,\n    Neal Cardwell, and Yuchung Cheng.\n\n 6) Allow IP_TOS and IP_TTL to be specified in sendmsg() ancillary\n    control message data, much like other socket option attributes.\n    From Francesco Fusco.\n\n 7) Allow applications to specify a cap on the rate computed\n    automatically by the kernel for pacing flows, via a new\n    SO_MAX_PACING_RATE socket option.  From Eric Dumazet.\n\n 8) Make the initial autotuned send buffer sizing in TCP more closely\n    reflect actual needs, from Eric Dumazet.\n\n 9) Currently early socket demux only happens for TCP sockets, but we\n    can do it for connected UDP sockets too.  Implementation from Shawn\n    Bohrer.\n\n10) Refactor inet socket demux with the goal of improving hash demux\n    performance for listening sockets.  With the main goals being able\n    to use RCU lookups on even request sockets, and eliminating the\n    listening lock contention.  From Eric Dumazet.\n\n11) The bonding layer has many demuxes in it\u0027s fast path, and an RCU\n    conversion was started back in 3.11, several changes here extend the\n    RCU usage to even more locations.  From Ding Tianhong and Wang\n    Yufen, based upon suggestions by Nikolay Aleksandrov and Veaceslav\n    Falico.\n\n12) Allow stackability of segmentation offloads to, in particular, allow\n    segmentation offloading over tunnels.  From Eric Dumazet.\n\n13) Significantly improve the handling of secret keys we input into the\n    various hash functions in the inet hashtables, TCP fast open, as\n    well as syncookies.  From Hannes Frederic Sowa.  The key fundamental\n    operation is \"net_get_random_once()\" which uses static keys.\n\n    Hannes even extended this to ipv4/ipv6 fragmentation handling and\n    our generic flow dissector.\n\n14) The generic driver layer takes care now to set the driver data to\n    NULL on device removal, so it\u0027s no longer necessary for drivers to\n    explicitly set it to NULL any more.  Many drivers have been cleaned\n    up in this way, from Jingoo Han.\n\n15) Add a BPF based packet scheduler classifier, from Daniel Borkmann.\n\n16) Improve CRC32 interfaces and generic SKB checksum iterators so that\n    SCTP\u0027s checksumming can more cleanly be handled.  Also from Daniel\n    Borkmann.\n\n17) Add a new PMTU discovery mode, IP_PMTUDISC_INTERFACE, which forces\n    using the interface MTU value.  This helps avoid PMTU attacks,\n    particularly on DNS servers.  From Hannes Frederic Sowa.\n\n18) Use generic XPS for transmit queue steering rather than internal\n    (re-)implementation in virtio-net.  From Jason Wang.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1622 commits)\n  random32: add test cases for taus113 implementation\n  random32: upgrade taus88 generator to taus113 from errata paper\n  random32: move rnd_state to linux/random.h\n  random32: add prandom_reseed_late() and call when nonblocking pool becomes initialized\n  random32: add periodic reseeding\n  random32: fix off-by-one in seeding requirement\n  PHY: Add RTL8201CP phy_driver to realtek\n  xtsonic: add missing platform_set_drvdata() in xtsonic_probe()\n  macmace: add missing platform_set_drvdata() in mace_probe()\n  ethernet/arc/arc_emac: add missing platform_set_drvdata() in arc_emac_probe()\n  ipv6: protect for_each_sk_fl_rcu in mem_check with rcu_read_lock_bh\n  vlan: Implement vlan_dev_get_egress_qos_mask as an inline.\n  ixgbe: add warning when max_vfs is out of range.\n  igb: Update link modes display in ethtool\n  netfilter: push reasm skb through instead of original frag skbs\n  ip6_output: fragment outgoing reassembled skb properly\n  MAINTAINERS: mv643xx_eth: take over maintainership from Lennart\n  net_sched: tbf: support of 64bit rates\n  ixgbe: deleting dfwd stations out of order can cause null ptr deref\n  ixgbe: fix build err, num_rx_queues is only available with CONFIG_RPS\n  ...\n"
    },
    {
      "commit": "1bf49dd4be0b000030c6f04c4a16a17d9affdbd3",
      "tree": "a4defe0519060101b6c27a6e1f3dad7b5590cb85",
      "parents": [
        "69f0554ec261fd686ac7fa1c598cc9eb27b83a80"
      ],
      "author": {
        "name": "P J P",
        "email": "ppandit@redhat.com",
        "time": "Tue Nov 12 15:11:44 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 12:09:36 2013 +0900"
      },
      "message": "./Makefile: export initial ramdisk compression config option\n\nMake menuconfig allows one to choose compression format of an initial\nramdisk image.  But this choice does not result in duly compressed ramdisk\nimage.  Because - $ make install - does not pass on the selected\ncompression choice to the dracut(8) tool, which creates the initramfs\nfile.  dracut(8) generates the image with the default compression, ie.\ngzip(1).\n\nThis patch exports the selected compression option to a sub-shell\nenvironment, so that it could be used by dracut(8) tool to generate\nappropriately compressed initramfs images.\n\nThere isn\u0027t a straightforward way to pass on options to dracut(8) via\npositional parameters.  Because it is indirectly invoked at the end of a $\nmake install sequence.\n\n # make install\n   -\u003e arch/$arch/boot/Makefile\n    -\u003e arch/$arch/boot/install.sh\n     -\u003e /sbing/installkernel ...\n      -\u003e /sbin/new-kernel-pkg ...\n       -\u003e /sbin/dracut ...\n\nSigned-off-by: P J P \u003cppandit@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": "69f0554ec261fd686ac7fa1c598cc9eb27b83a80",
      "tree": "4d3bec9af1f69197f152c08beb6ead75348914cf",
      "parents": [
        "bb67093796a41e0f2601f5c0022fd8873ed59fee"
      ],
      "author": {
        "name": "Christian Ruppert",
        "email": "christian.ruppert@abilis.com",
        "time": "Tue Nov 12 15:11:43 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 12:09:35 2013 +0900"
      },
      "message": "init/Kconfig: add option to disable kernel compression\n\nSome ARC users say they can boot faster with without kernel compression.\nThis probably depends on things like the FLASH chip they use etc.\n\nUntil now, kernel compression can only be disabled by removing \"select\nHAVE_\u003ccompression\u003e\" lines from the architecture Kconfig.  So add the\nKconfig logic to permit disabling of kernel compression.\n\nSigned-off-by: Christian Ruppert \u003cchristian.ruppert@abilis.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba24762bd53faaf39cc8b991175636954b7ef4be",
      "tree": "2f738251e10357223e70f2894cd8eb867e630b6e",
      "parents": [
        "df3ef3af503e131f7848652af8be21747fd57419"
      ],
      "author": {
        "name": "Michael Opdenacker",
        "email": "michael.opdenacker@free-electrons.com",
        "time": "Tue Nov 12 15:10:21 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 12:09:26 2013 +0900"
      },
      "message": "init: make init failures more explicit\n\nThis patch proposes to make init failures more explicit.\n\nBefore this, the \"No init found\" message didn\u0027t help much.  It could\nsometimes be misleading and actually mean \"No *working* init found\".\n\nThis message could hide many different issues:\n - no init program candidates found at all\n - some init program candidates exist but can\u0027t be executed (missing\n   execute permissions, failed to load shared libraries, executable\n   compiled for an unknown architecture...)\n\nThis patch notifies the kernel user when a candidate init program is found\nbut can\u0027t be executed.  In each failure situation, the error code is\ndisplayed, to quickly find the root cause.  \"No init found\" is also\nreplaced by \"No working init found\", which is more correct.\n\nThis will help embedded Linux developers (especially the newcomers),\nregularly making and debugging new root filesystems.\n\nCredits to Geert Uytterhoeven and Janne Karhunen for their improvement\nsuggestions.\n\nSigned-off-by: Michael Opdenacker \u003cmichael.opdenacker@free-electrons.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nTested-by: Janne Karhunen \u003cJanne.Karhunen@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "df3ef3af503e131f7848652af8be21747fd57419",
      "tree": "10c1b49f46fe082814593a00b08151d58177e4c0",
      "parents": [
        "65321547c8be5b00427ac8de23fd15801b68de1f"
      ],
      "author": {
        "name": "P J P",
        "email": "prasad@redhat.com",
        "time": "Tue Nov 12 15:10:20 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 12:09:26 2013 +0900"
      },
      "message": "init/do_mounts_rd.c: fix NULL pointer dereference while loading initramfs\n\nMake menuconfig allows one to choose compression format of an initial\nramdisk image.  But this choice does not result in duly compressed initial\nramdisk image.  Because - $ make install - does not pass on the selected\ncompression choice to the dracut(8) tool, which creates the initramfs\nfile.  dracut(8) generates the image with the default compression, ie.\ngzip(1).\n\nIf a user chose any other compression instead of gzip(1), it leads to a\ncrash due to NULL pointer dereference in crd_load(), caused by a NULL\nfunction pointer returned by the \u0027decompress_method()\u0027 routine.  Because\nthe initramfs image is gzip(1) compressed, whereas the kernel knows only\nto decompress the chosen format and not gzip(1).\n\nThis patch replaces the crash by an explicit panic() call with an\nappropriate error message. This shall prevent the kernel from\neventually panicking in: init/do_mounts.c: mount_block_root() with\n  -\u003e panic(\"VFS: Unable to mount root fs on %s\", b);\n\n[akpm@linux-foundation.org: mention that the problem is with the ramdisk, don\u0027t print known-to-be-NULL value]\nSigned-off-by: P J P \u003cprasad@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": "8f6b2ae49a84841c4bcf00cff35752b223c3f8d6",
      "tree": "fb205e71dd7cdb6912566f64336a1f89e35e50b1",
      "parents": [
        "27f69e68a5e534412faebc53a4e04acc9ce7fd7e"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Tue Nov 12 15:08:48 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 12:09:13 2013 +0900"
      },
      "message": "init/main.c: remove prototype for softirq_init()\n\nIt\u0027s already available in \u003clinux/interrupt.h\u003e\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c251611ce68d80e0067aab80a0a3b6bc652d5f5",
      "tree": "e415d542a1a38fc55c993a804acb114c768f5d92",
      "parents": [
        "b5064654c538ad9a2eb1195d80e7593b2e1c1452"
      ],
      "author": {
        "name": "Sebastian Capella",
        "email": "sebastian.capella@linaro.org",
        "time": "Tue Nov 12 15:08:39 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 13 12:09:12 2013 +0900"
      },
      "message": "init/do_mounts.c: add maj:min syntax comment\n\nThe name_to_dev_t function has a comment block which lists the supported\nsyntaxes for the device name.  Add a bullet for the \u003cmajor\u003e:\u003cminor\u003e\nsyntax, which is already supported in the code\n\nSigned-off-by: Sebastian Capella \u003csebastian.capella@linaro.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "87093826aa0172d9135ca1f301c4298a258ceee6",
      "tree": "c73f1db366d6f616a81c9c6a8a9611208a6c05ac",
      "parents": [
        "39cf275a1a18ba3c7eb9b986c5c9b35b57332798",
        "ee5872befc9324fa4c2583c24d7ee7120314a2b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 12 10:36:00 2013 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 12 10:36:00 2013 +0900"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer changes from Ingo Molnar:\n \"Main changes in this cycle were:\n\n   - Updated full dynticks support.\n\n   - Event stream support for architected (ARM) timers.\n\n   - ARM clocksource driver updates.\n\n   - Move arm64 to using the generic sched_clock framework \u0026 resulting\n     cleanup in the generic sched_clock code.\n\n   - Misc fixes and cleanups\"\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (50 commits)\n  x86/time: Honor ACPI FADT flag indicating absence of a CMOS RTC\n  clocksource: sun4i: remove IRQF_DISABLED\n  clocksource: sun4i: Report the minimum tick that we can program\n  clocksource: sun4i: Select CLKSRC_MMIO\n  clocksource: Provide timekeeping for efm32 SoCs\n  clocksource: em_sti: convert to clk_prepare/unprepare\n  time: Fix signedness bug in sysfs_get_uname() and its callers\n  timekeeping: Fix some trivial typos in comments\n  alarmtimer: return EINVAL instead of ENOTSUPP if rtcdev doesn\u0027t exist\n  clocksource: arch_timer: Do not register arch_sys_counter twice\n  timer stats: Add a \u0027Collection: active/inactive\u0027 line to timer usage statistics\n  sched_clock: Remove sched_clock_func() hook\n  arch_timer: Move to generic sched_clock framework\n  clocksource: tcb_clksrc: Remove IRQF_DISABLED\n  clocksource: tcb_clksrc: Improve driver robustness\n  clocksource: tcb_clksrc: Replace clk_enable/disable with clk_prepare_enable/disable_unprepare\n  clocksource: arm_arch_timer: Use clocksource for suspend timekeeping\n  clocksource: dw_apb_timer_of: Mark a few more functions as __init\n  clocksource: Put nodes passed to CLOCKSOURCE_OF_DECLARE callbacks centrally\n  arm: zynq: Enable arm_global_timer\n  ...\n"
    },
    {
      "commit": "39cf275a1a18ba3c7eb9b986c5c9b35b57332798",
      "tree": "40b119ca9d2fbaf8128d3fa25f4c64669002b0c0",
      "parents": [
        "ad5d69899e52792671c1aa6c7360464c7edfe09c",
        "e5137b50a0640009fd63a3e65c14bc6e1be8796a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 12 10:20:12 2013 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 12 10:20:12 2013 +0900"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler changes from Ingo Molnar:\n \"The main changes in this cycle are:\n\n   - (much) improved CONFIG_NUMA_BALANCING support from Mel Gorman, Rik\n     van Riel, Peter Zijlstra et al.  Yay!\n\n   - optimize preemption counter handling: merge the NEED_RESCHED flag\n     into the preempt_count variable, by Peter Zijlstra.\n\n   - wait.h fixes and code reorganization from Peter Zijlstra\n\n   - cfs_bandwidth fixes from Ben Segall\n\n   - SMP load-balancer cleanups from Peter Zijstra\n\n   - idle balancer improvements from Jason Low\n\n   - other fixes and cleanups\"\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (129 commits)\n  ftrace, sched: Add TRACE_FLAG_PREEMPT_RESCHED\n  stop_machine: Fix race between stop_two_cpus() and stop_cpus()\n  sched: Remove unnecessary iteration over sched domains to update nr_busy_cpus\n  sched: Fix asymmetric scheduling for POWER7\n  sched: Move completion code from core.c to completion.c\n  sched: Move wait code from core.c to wait.c\n  sched: Move wait.c into kernel/sched/\n  sched/wait: Fix __wait_event_interruptible_lock_irq_timeout()\n  sched: Avoid throttle_cfs_rq() racing with period_timer stopping\n  sched: Guarantee new group-entities always have weight\n  sched: Fix hrtimer_cancel()/rq-\u003elock deadlock\n  sched: Fix cfs_bandwidth misuse of hrtimer_expires_remaining\n  sched: Fix race on toggling cfs_bandwidth_used\n  sched: Remove extra put_online_cpus() inside sched_setaffinity()\n  sched/rt: Fix task_tick_rt() comment\n  sched/wait: Fix build breakage\n  sched/wait: Introduce prepare_to_wait_event()\n  sched/wait: Add ___wait_cond_timeout() to wait_event*_timeout() too\n  sched: Remove get_online_cpus() usage\n  sched: Fix race in migrate_swap_stop()\n  ...\n"
    },
    {
      "commit": "527973c84077eb9273d0b2408655620de2e30136",
      "tree": "d70e6bb6f4c4f1eed2dd9fcdadded6d000ad19c5",
      "parents": [
        "61dbbaeb86c2181c79efae2d186193e0f8008af1"
      ],
      "author": {
        "name": "Helge Deller",
        "email": "deller@gmx.de",
        "time": "Tue Oct 15 19:25:46 2013 +0200"
      },
      "committer": {
        "name": "Helge Deller",
        "email": "deller@gmx.de",
        "time": "Thu Nov 07 22:27:20 2013 +0100"
      },
      "message": "parisc: add kernel audit feature\n\nImplement missing functions for parisc to provide kernel audit feature.\n\nSigned-off-by: Helge Deller \u003cdeller@gmx.de\u003e\n"
    },
    {
      "commit": "83fa6bbe4c4541ae748b550b4ec391f8a0acfe94",
      "tree": "da0b4c3432448ac961c5372a94ad38512660314f",
      "parents": [
        "da0a610497ce193782c8df4a33fee7fce030cb99"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri May 24 09:39:29 2013 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Nov 05 11:08:01 2013 -0500"
      },
      "message": "audit: remove CONFIG_AUDIT_LOGINUID_IMMUTABLE\n\nAfter trying to use this feature in Fedora we found the hard coding\npolicy like this into the kernel was a bad idea.  Surprise surprise.\nWe ran into these problems because it was impossible to launch a\ncontainer as a logged in user and run a login daemon inside that container.\nThis reverts back to the old behavior before this option was added.  The\noption will be re-added in a userspace selectable manor such that\nuserspace can choose when it is and when it is not appropriate.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Richard Guy Briggs \u003crgb@redhat.com\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "08746a65c2961b5765a66350823ff75ace63bfd1",
      "tree": "2f21949617bb303be3333f7163ee151d0d95c28d",
      "parents": [
        "e0f244c63fc9d192dfd399cc2677bbdca61994b1"
      ],
      "author": {
        "name": "Krzysztof Mazur",
        "email": "krzysiek@podlesie.net",
        "time": "Thu Oct 31 13:45:39 2013 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Oct 31 13:49:13 2013 +1030"
      },
      "message": "init: fix in-place parameter modification regression\n\nBefore commit 026cee0086fe1df4cf74691cf273062cc769617d\n(\"params: \u003clevel\u003e_initcall-like kernel parameters\") the __setup\nparameter parsing code could modify parameter in the\nstatic_command_line buffer and such modifications were kept. After\nthat commit such modifications are destroyed during per-initcall level\nparameter parsing because the same static_command_line buffer is used\nand only parameters for appropriate initcall level are parsed.\n\nThat change broke at least parsing \"ubd\" parameter in the ubd driver\nwhen the COW file is used.\n\nNow the separate buffer is used for per-initcall parameter parsing.\n\nSigned-off-by: Krzysztof Mazur \u003ckrzysiek@podlesie.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "c3fa32b9764dc45dcf8a2231b1c110abc4a63e0b",
      "tree": "6cf2896a77b65bec64284681e1c3851eb3263e09",
      "parents": [
        "34d92d5315b64a3e5292b7e9511c1bb617227fb6",
        "320437af954cbe66478f1f5e8b34cb5a8d072191"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 23 16:28:39 2013 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 23 16:49:34 2013 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/usb/qmi_wwan.c\n\tinclude/net/dst.h\n\nTrivial merge conflicts, both were overlapping changes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4b2c0c5f647aa1093e8f9097a30c17ce0f94d4d",
      "tree": "37d56a25f147e626b68532543c8569a739f7fee3",
      "parents": [
        "b50026b5ac8fe2932e6af0c54b21da0913c4c1c7"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Sat Oct 19 21:48:53 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 19 19:45:35 2013 -0400"
      },
      "message": "static_key: WARN on usage before jump_label_init was called\n\nUsage of the static key primitives to toggle a branch must not be used\nbefore jump_label_init() is called from init/main.c. jump_label_init\nreorganizes and wires up the jump_entries so usage before that could\nhave unforeseen consequences.\n\nFollowing primitives are now checked for correct use:\n* static_key_slow_inc\n* static_key_slow_dec\n* static_key_slow_dec_deferred\n* jump_label_rate_limit\n\nThe x86 architecture already checks this by testing if the default_nop\nwas already replaced with an optimal nop or with a branch instruction. It\nwill panic then. Other architectures don\u0027t check for this.\n\nBecause we need to relax this check for the x86 arch to allow code to\ntransition from default_nop to the enabled state and other architectures\ndid not check for this at all this patch introduces checking on the\nstatic_key primitives in a non-arch dependent manner.\n\nAll checked functions are considered slow-path so the additional check\ndoes no harm to performance.\n\nThe warnings are best observed with earlyprintk.\n\nBased on a patch from Andi Kleen.\n\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d56a410aecb0221ce7027ff7d738451b4ab18b7",
      "tree": "f843d74975b212b802128db6cee96988c36ce2f8",
      "parents": [
        "6c7842e0a1fb9c513a39a63bf7c093833ea9f428"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Aug 13 11:06:50 2013 -0400"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Oct 14 15:58:56 2013 +0200"
      },
      "message": "NUMA: fix typos in Kconfig help text\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "ec0ad3d01f99d5e5b56a99a58f7003b99250dc65",
      "tree": "85066cbea1cf8da6d099019adefaca90aae39234",
      "parents": [
        "3354781a2184380046c8dd19144628d3c33991e6",
        "3f0116c3238a96bc18ad4b4acefe4e7be32fa861"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Oct 11 07:39:37 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Oct 11 07:39:37 2013 +0200"
      },
      "message": "Merge branch \u0027core/urgent\u0027 into sched/core\n\nMerge in asm goto fix, to be able to apply the asm/rmwcc.h fix.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f715729ee4cb666f51749f6cd86d06fff1e6e17b",
      "tree": "cf8f2c6c2d90441d6a978915b5d7eb0b19981f44",
      "parents": [
        "8273548c5455e3ae27e905a77bad277535837329",
        "61875f30daf60305712e25b209ef41ced2635bad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 10 12:31:43 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 10 12:31:43 2013 -0700"
      },
      "message": "Merge tag \u0027random_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random\n\nPull /dev/random changes from Ted Ts\u0027o:\n \"These patches are designed to enable improvements to /dev/random for\n  non-x86 platforms, in particular MIPS and ARM\"\n\n* tag \u0027random_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:\n  random: allow architectures to optionally define random_get_entropy()\n  random: run random_int_secret_init() run after all late_initcalls\n"
    },
    {
      "commit": "ff3fb2541246a83ce56c61d14df30b7a22e4302b",
      "tree": "16fe78c9b833ceae52807860d9a8eb931b58fac5",
      "parents": [
        "554b0004d0ec4fbd11e08668dfc400f211e8d5c5"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@linaro.org",
        "time": "Mon Sep 16 15:28:19 2013 -0700"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Sep 30 15:37:01 2013 +0200"
      },
      "message": "nohz: Drop generic vtime obsolete dependency on CONFIG_64BIT\n\nThe CONFIG_64BIT requirement on vtime can finally be removed\nsince we now depend on HAVE_VIRT_CPU_ACCOUNTING_GEN which\nalready takes care of the arch ability to handle nsecs based\ncputime_t safely.\n\nSigned-off-by: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Arm Linux \u003clinux-arm-kernel@lists.infradead.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "554b0004d0ec4fbd11e08668dfc400f211e8d5c5",
      "tree": "962305270252e407cd887ba9ed949bde346b8f81",
      "parents": [
        "15c03dd4859ab16f9212238f29dd315654aa94f6"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@linaro.org",
        "time": "Mon Sep 16 15:28:21 2013 -0700"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Sep 30 15:35:53 2013 +0200"
      },
      "message": "vtime: Add HAVE_VIRT_CPU_ACCOUNTING_GEN Kconfig\n\nWith VIRT_CPU_ACCOUNTING_GEN, cputime_t becomes 64-bit. In order\nto use that feature, arch code should be audited to ensure there are no\nraces in concurrent read/write of cputime_t. For example,\nreading/writing 64-bit cputime_t on some 32-bit arches may require\nmultiple accesses for low and high value parts, so proper locking\nis needed to protect against concurrent accesses.\n\nTherefore, add CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN which arches can\nenable after they\u0027ve been audited for potential races.\n\nThis option is automatically enabled on 64-bit platforms.\n\nFeature requested by Frederic Weisbecker.\n\nSigned-off-by: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Arm Linux \u003clinux-arm-kernel@lists.infradead.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b56e5a17b6b9acd16997960504b9940d0d7984e7",
      "tree": "3041aadaf0eb3e79c0a5d1e7f9715489340f868a",
      "parents": [
        "0fbd39cf7ffe3b6a787b66b672d21b84e4675352"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Aug 30 16:07:30 2013 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 25 17:17:01 2013 +0100"
      },
      "message": "KEYS: Separate the kernel signature checking keyring from module signing\n\nSeparate the kernel signature checking keyring from module signing so that it\ncan be used by code other than the module-signing code.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "4a2b4b222743bb07fedf985b884550f2ca067ea9",
      "tree": "587e80512c6cdf727b27d0f806758833547a65ed",
      "parents": [
        "ea8117478918a4734586d35ff530721b682425be"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Aug 14 14:55:24 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Sep 25 14:07:32 2013 +0200"
      },
      "message": "sched: Introduce preempt_count accessor functions\n\nReplace the single preempt_count() \u0027function\u0027 that\u0027s an lvalue with\ntwo proper functions:\n\n preempt_count() - returns the preempt_count value as rvalue\n preempt_count_set() - Allows setting the preempt-count value\n\nAlso provide preempt_count_ptr() as a convenience wrapper to implement\nall modifying operations.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/n/tip-orxrbycjozopqfhb4dxdkdvb@git.kernel.org\n[ Fixed build failure. ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "47d06e532e95b71c0db3839ebdef3fe8812fca2c",
      "tree": "f8d5c68cf8b0e4a8dcf107a41aa46f5aa82f7722",
      "parents": [
        "6e4664525b1db28f8c4e1130957f70a94c19213e"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 10 10:52:35 2013 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 23 06:35:06 2013 -0400"
      },
      "message": "random: run random_int_secret_init() run after all late_initcalls\n\nThe some platforms (e.g., ARM) initializes their clocks as\nlate_initcalls for some unknown reason.  So make sure\nrandom_int_secret_init() is run after all of the late_initcalls are\nrun.\n\nCc: stable@vger.kernel.org\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "bff157b3ad4b9f6be0af6987fcd62deaf0f2b799",
      "tree": "02ae68620a40fefd9ffc2de739a8bb362baa3f08",
      "parents": [
        "8bf5e36d0429e9b8fc2c84966577f10386bd7195",
        "23774a2f6fee0848503bfb8004eeeb5adef94f5c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 15 07:15:06 2013 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 15 07:15:06 2013 -0400"
      },
      "message": "Merge branch \u0027slab/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux\n\nPull SLAB update from Pekka Enberg:\n \"Nothing terribly exciting here apart from Christoph\u0027s kmalloc\n  unification patches that brings sl[aou]b implementations closer to\n  each other\"\n\n* \u0027slab/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux:\n  slab: Use correct GFP_DMA constant\n  slub: remove verify_mem_not_deleted()\n  mm/sl[aou]b: Move kmallocXXX functions to common code\n  mm, slab_common: add \u0027unlikely\u0027 to size check of kmalloc_slab()\n  mm/slub.c: beautify code for removing redundancy \u0027break\u0027 statement.\n  slub: Remove unnecessary page NULL check\n  slub: don\u0027t use cpu partial pages on UP\n  mm/slub: beautify code for 80 column limitation and tab alignment\n  mm/slub: remove \u0027per_cpu\u0027 which is useless variable\n"
    },
    {
      "commit": "6e19eded3684dc184181093af3bff2ff440f5b53",
      "tree": "f88bf08f0897703bb0d07020e4f921494bd7a434",
      "parents": [
        "16203a7a9422315bc929461503e3a046459ea5ff"
      ],
      "author": {
        "name": "Rob Landley",
        "email": "rob@landley.net",
        "time": "Wed Sep 11 14:26:13 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 11 15:59:38 2013 -0700"
      },
      "message": "initmpfs: use initramfs if rootfstype\u003d or root\u003d specified\n\nCommand line option rootfstype\u003dramfs to obtain old initramfs behavior, and\nuse ramfs instead of tmpfs for stub when root\u003d defined (for cosmetic\nreasons).\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Rob Landley \u003crob@landley.net\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Stephen Warren \u003cswarren@nvidia.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16203a7a9422315bc929461503e3a046459ea5ff",
      "tree": "f32de38261ac95e4ac3467595a3f7be445b02797",
      "parents": [
        "57f150a58c40cda598c31af8bceb8598f43c3e5f"
      ],
      "author": {
        "name": "Rob Landley",
        "email": "rob@landley.net",
        "time": "Wed Sep 11 14:26:12 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 11 15:59:37 2013 -0700"
      },
      "message": "initmpfs: make rootfs use tmpfs when CONFIG_TMPFS enabled\n\nConditionally call the appropriate fs_init function and fill_super\nfunctions.  Add a use once guard to shmem_init() to simply succeed on a\nsecond call.\n\n(Note that IS_ENABLED() is a compile time constant so dead code\nelimination removes unused function calls when CONFIG_TMPFS is disabled.)\n\nSigned-off-by: Rob Landley \u003crob@landley.net\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Stephen Warren \u003cswarren@nvidia.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "57f150a58c40cda598c31af8bceb8598f43c3e5f",
      "tree": "fde3e7fc48c97f0db5b3975fd74e12773f423fe2",
      "parents": [
        "4bbee76bc986af326be0a84ad661000cf89b29f6"
      ],
      "author": {
        "name": "Rob Landley",
        "email": "rob@landley.net",
        "time": "Wed Sep 11 14:26:10 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 11 15:59:37 2013 -0700"
      },
      "message": "initmpfs: move rootfs code from fs/ramfs/ to init/\n\nWhen the rootfs code was a wrapper around ramfs, having them in the same\nfile made sense.  Now that it can wrap another filesystem type, move it in\nwith the init code instead.\n\nThis also allows a subsequent patch to access rootfstype\u003d command line\narg.\n\nSigned-off-by: Rob Landley \u003crob@landley.net\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Stephen Warren \u003cswarren@nvidia.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5b4197845ad1a33bc57da7ee5ea41de58c2f86bf",
      "tree": "87139e25612c78431584f953053ae81ead30b27b",
      "parents": [
        "a22a0fdba4191473581f86c9dd5361cf581521d3",
        "e062781397e5bebc6c1b8dd4bf466136e13ae4c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 11 08:34:25 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 11 08:34:25 2013 -0700"
      },
      "message": "Merge branch \u0027kconfig\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild\n\nPull kconfig updates from Michal Marek:\n \"This is the kconfig part of kbuild for v3.12-rc1:\n   - post-3.11 search code fixes and micro-optimizations\n   - CONFIG_MODULES is no longer a special case; this is needed to\n     eventually fix the bug that using KCONFIG_ALLCONFIG breaks\n     allmodconfig\n   - long long is used to store hex and int values\n   - make silentoldconfig no longer warns when a symbol changes from\n     tristate to bool (it\u0027s a job for make oldconfig)\n   - scripts/diffconfig updated to work with newer Pythons\n   - scripts/config does not rely on GNU sed extensions\"\n\n* \u0027kconfig\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:\n  kconfig: do not allow more than one symbol to have \u0027option modules\u0027\n  kconfig: regenerate bison parser\n  kconfig: do not special-case \u0027MODULES\u0027 symbol\n  diffconfig: Update script to support python versions 2.5 through 3.3\n  diffconfig: Gracefully exit if the default config files are not present\n  modules: do not depend on kconfig to set \u0027modules\u0027 option to symbol MODULES\n  kconfig: silence warning when parsing auto.conf when a symbol has changed type\n  scripts/config: use sed\u0027s POSIX interface\n  kconfig: switch to \"long long\" for sanity\n  kconfig: simplify symbol-search code\n  kconfig: don\u0027t allocate n+1 elements in temporary array\n  kconfig: minor style fixes in symbol-search code\n  kconfig/[mn]conf: shorten title in search-box\n  kconfig: avoid multiple calls to strlen\n  Documentation/kconfig: more concise and straightforward search explanation\n"
    },
    {
      "commit": "300893b08f3bc7057a7a5f84074090ba66c8b5ca",
      "tree": "5fc5aef0b9dbab8e47e161303d57e631786c7d17",
      "parents": [
        "45150c43b1b0c16e665fd0a5cdcca128b8192db1",
        "1d03c6fa88af35e55047a1f2ab116f0fdf2f55aa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 09 11:19:09 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 09 11:19:09 2013 -0700"
      },
      "message": "Merge tag \u0027xfs-for-linus-v3.12-rc1\u0027 of git://oss.sgi.com/xfs/xfs\n\nPull xfs updates from Ben Myers:\n \"For 3.12-rc1 there are a number of bugfixes in addition to work to\n  ease usage of shared code between libxfs and the kernel, the rest of\n  the work to enable project and group quotas to be used simultaneously,\n  performance optimisations in the log and the CIL, directory entry file\n  type support, fixes for log space reservations, some spelling/grammar\n  cleanups, and the addition of user namespace support.\n\n   - introduce readahead to log recovery\n   - add directory entry file type support\n   - fix a number of spelling errors in comments\n   - introduce new Q_XGETQSTATV quotactl for project quotas\n   - add USER_NS support\n   - log space reservation rework\n   - CIL optimisations\n  - kernel/userspace libxfs rework\"\n\n* tag \u0027xfs-for-linus-v3.12-rc1\u0027 of git://oss.sgi.com/xfs/xfs: (112 commits)\n  xfs: XFS_MOUNT_QUOTA_ALL needed by userspace\n  xfs: dtype changed xfs_dir2_sfe_put_ino to xfs_dir3_sfe_put_ino\n  Fix wrong flag ASSERT in xfs_attr_shortform_getvalue\n  xfs: finish removing IOP_* macros.\n  xfs: inode log reservations are too small\n  xfs: check correct status variable for xfs_inobt_get_rec() call\n  xfs: inode buffers may not be valid during recovery readahead\n  xfs: check LSN ordering for v5 superblocks during recovery\n  xfs: btree block LSN escaping to disk uninitialised\n  XFS: Assertion failed: first \u003c\u003d last \u0026\u0026 last \u003c BBTOB(bp-\u003eb_length), file: fs/xfs/xfs_trans_buf.c, line: 568\n  xfs: fix bad dquot buffer size in log recovery readahead\n  xfs: don\u0027t account buffer cancellation during log recovery readahead\n  xfs: check for underflow in xfs_iformat_fork()\n  xfs: xfs_dir3_sfe_put_ino can be static\n  xfs: introduce object readahead to log recovery\n  xfs: Simplify xfs_ail_min() with list_first_entry_or_null()\n  xfs: Register hotcpu notifier after initialization\n  xfs: add xfs sb v4 support for dirent filetype field\n  xfs: Add write support for dirent filetype field\n  xfs: Add read-only support for dirent filetype field\n  ...\n"
    },
    {
      "commit": "6832d9652f395f7d13003e3884942c40f52ac1fa",
      "tree": "40555ad5eda9700cb973dac4db136ad97f5e8b19",
      "parents": [
        "228abe73ad67665d71eacd6a8a347dd76b0115ae",
        "c2e7fcf53c3cb02b4ada1c66a9bc8a4d97d58aba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 04 09:36:54 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 04 09:36:54 2013 -0700"
      },
      "message": "Merge branch \u0027timers-nohz-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timers/nohz changes from Ingo Molnar:\n \"It mostly contains fixes and full dynticks off-case optimizations, by\n  Frederic Weisbecker\"\n\n* \u0027timers-nohz-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)\n  nohz: Include local CPU in full dynticks global kick\n  nohz: Optimize full dynticks\u0027s sched hooks with static keys\n  nohz: Optimize full dynticks state checks with static keys\n  nohz: Rename a few state variables\n  vtime: Always debug check snapshot source _before_ updating it\n  vtime: Always scale generic vtime accounting results\n  vtime: Optimize full dynticks accounting off case with static keys\n  vtime: Describe overriden functions in dedicated arch headers\n  m68k: hardirq_count() only need preempt_mask.h\n  hardirq: Split preempt count mask definitions\n  context_tracking: Split low level state headers\n  vtime: Fix racy cputime delta update\n  vtime: Remove a few unneeded generic vtime state checks\n  context_tracking: User/kernel broundary cross trace events\n  context_tracking: Optimize context switch off case with static keys\n  context_tracking: Optimize guest APIs off case with static key\n  context_tracking: Optimize main APIs off case with static key\n  context_tracking: Ground setup for static key use\n  context_tracking: Remove full dynticks\u0027 hacky dependency on wide context tracking\n  nohz: Only enable context tracking on full dynticks CPUs\n  ...\n"
    },
    {
      "commit": "7d992feb7694a21ee81f22894b455dadd5d1c110",
      "tree": "d0f0961186b1c31c536a26a7f986ad7ca677453b",
      "parents": [
        "6e4664525b1db28f8c4e1130957f70a94c19213e",
        "25f27ce4a6a4995c8bdd69b4b2180465ed5ad2b8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 03 07:41:11 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 03 07:41:11 2013 +0200"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu\n\nPull RCU updates from Paul E. McKenney:\n\n\"\n * Update RCU documentation.  These were posted to LKML at\n   https://lkml.org/lkml/2013/8/19/611.\n\n * Miscellaneous fixes.  These were posted to LKML at\n   https://lkml.org/lkml/2013/8/19/619.\n\n * Full-system idle detection.  This is for use by Frederic\n   Weisbecker\u0027s adaptive-ticks mechanism.  Its purpose is\n   to allow the timekeeping CPU to shut off its tick when\n   all other CPUs are idle.  These were posted to LKML at\n   https://lkml.org/lkml/2013/8/19/648.\n\n * Improve rcutorture test coverage.  These were posted to LKML at\n   https://lkml.org/lkml/2013/8/19/675.\n\"\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "07555ac144bbf45b1751340c6ee75da1f4e5756d",
      "tree": "a2e1ef0f4ab35a078c1dfb604cccba30ddf7dfc0",
      "parents": [
        "4bf93b50fd04118ac7f33a3c2b8a0a1f9fa80bc9"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Thu Aug 22 16:35:46 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 23 09:51:22 2013 -0700"
      },
      "message": "memcg: get rid of swapaccount leftovers\n\nThe swapaccount kernel parameter without any values has been removed by\ncommit a2c8990aed5a (\"memsw: remove noswapaccount kernel parameter\") but\nit seems that we didn\u0027t get rid of all the left overs.\n\nMake sure that menuconfig help text and kernel-parameters.txt are clear\nabout value for the paramter and remove the stalled comment which is not\nvery much useful on its own.\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nReported-by: Gergely Risko \u003cgergely@risko.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5361471437a97cf493c2aa7d881bbedc9c248415",
      "tree": "ec88e756a30c31c37cf74eebcc3bc129a08a114c",
      "parents": [
        "c34ac00caefbe49d40058ae7200bd58725cebb45"
      ],
      "author": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Thu Jul 25 15:34:25 2013 +0100"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Aug 18 17:40:25 2013 -0700"
      },
      "message": "rcu: Select IRQ_WORK from TREE_PREEMPT_RCU\n\nTREE_RCU and TREE_PREEMPT_RCU both cause kernel/rcutree.c to be built,\nbut only TREE_RCU selects IRQ_WORK, which can result in an undefined\nreference to irq_work_queue for some (random) configs:\n\nkernel/built-in.o In function `rcu_start_gp_advanced\u0027:\nkernel/rcutree.c:1564: undefined reference to `irq_work_queue\u0027\n\nSelect IRQ_WORK from TREE_PREEMPT_RCU too to fix this.\n\nSigned-off-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "11097a0367e48954ecf616f9b0df48d86835dd0d",
      "tree": "a795726b62f68894fad0cc251e43d404f82d4aff",
      "parents": [
        "04b19b773a60d201bc1b187ba7a7c86dc237a27b"
      ],
      "author": {
        "name": "Yann E. MORIN",
        "email": "yann.morin.1998@free.fr",
        "time": "Sun Aug 11 16:07:50 2013 +0200"
      },
      "committer": {
        "name": "Yann E. MORIN",
        "email": "yann.morin.1998@free.fr",
        "time": "Thu Aug 15 22:56:08 2013 +0200"
      },
      "message": "modules: do not depend on kconfig to set \u0027modules\u0027 option to symbol MODULES\n\nCurrently, the MODULES symbol is special-cased in different places in the\nkconfig language. For example, if no symbol is defined to enable tristates,\nthen kconfig looks up for a symbol named \u0027MODULES\u0027, and forces the \u0027modules\u0027\noption onto that symbol.\n\nThis causes problems as such:\n  - since MODULES is special-cased, reading the configuration with\n    KCONFIG_ALLCONFIG set will forcibly set MODULES to be \u0027valid\u0027 (ie.\n    it has a valid value), when no such value was previously set. So\n    MODULES defaults to \u0027n\u0027 unless it is present in KCONFIG_ALLCONFIG\n  - other third-party projects may decide that \u0027MODULES\u0027 plays a different\n    role for them\n\nThis has been exposed by cset #cfa98f2e:\n    kconfig: do not override symbols already set\nand reported by Stephen in:\n    http://marc.info/?l\u003dlinux-next\u0026m\u003d137592137915234\u0026w\u003d2\n\nAs suggested by Sam, we explicitly define the MODULES symbol to be the\ntristate-enabler. This will allow us to drop special-casing of MODULES\nin the kconfig language, later.\n\n(Note: this patch is not a fix to Stephen\u0027s issue, just a first step).\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: yann.morin.1998@free.fr\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: sedat.dilek@gmail.com\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "d6970d4b726cea6d7a9bc4120814f95c09571fc3",
      "tree": "7b51ffc34e86c0905158a4a45dd00e5cbb503111",
      "parents": [
        "8c567a7fab6e086a0284eee2db82348521e7120c"
      ],
      "author": {
        "name": "Dwight Engen",
        "email": "dwight.engen@oracle.com",
        "time": "Thu Aug 15 14:08:04 2013 -0400"
      },
      "committer": {
        "name": "Ben Myers",
        "email": "bpm@sgi.com",
        "time": "Thu Aug 15 14:27:22 2013 -0500"
      },
      "message": "enable building user namespace with xfs\n\nReviewed-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Gao feng \u003cgaofeng@cn.fujitsu.com\u003e\nSigned-off-by: Dwight Engen \u003cdwight.engen@oracle.com\u003e\nSigned-off-by: Ben Myers \u003cbpm@sgi.com\u003e\n\n"
    },
    {
      "commit": "65f382fd0c8fa483713c0971de9f1dfb4cf1ad9c",
      "tree": "dec89c43fcfb4934611bae4855293428382856b9",
      "parents": [
        "d84d27a491880b9902b45c09be8d9e9464fb9b74"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 11 19:12:32 2013 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 14 17:12:46 2013 +0200"
      },
      "message": "context_tracking: Ground setup for static key use\n\nPrepare for using a static key in the context tracking subsystem.\nThis will help optimizing the off case on its many users:\n\n* user_enter, user_exit, exception_enter, exception_exit, guest_enter,\n  guest_exit, vtime_*()\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\n"
    },
    {
      "commit": "b39ffbf8b14de2e7c1679462313cf32abb7ef463",
      "tree": "abca8b28c1dc3bb7c14e17a437686d40286e99e5",
      "parents": [
        "d0e0ac9772f8ec520c96ebdd60f00eedf54a46ae"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Wed Jul 17 16:54:59 2013 +0200"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Tue Aug 13 09:21:45 2013 +0300"
      },
      "message": "slub: don\u0027t use cpu partial pages on UP\n\ncpu partial pages are used to avoid contention which does not exist in\nthe UP case. So let SLUB_CPU_PARTIAL depend on SMP.\n\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\n"
    },
    {
      "commit": "d84d27a491880b9902b45c09be8d9e9464fb9b74",
      "tree": "42d5c777dba71b3cfb119d918ff5ae90f4d8a20c",
      "parents": [
        "2e70933866ace52091a3c11a5c104c063ab0c445"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jul 24 21:59:29 2013 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 13 00:54:34 2013 +0200"
      },
      "message": "context_tracking: Remove full dynticks\u0027 hacky dependency on wide context tracking\n\nNow that the full dynticks subsystem only enables the context tracking\non full dynticks CPUs, lets remove the dependency on CONTEXT_TRACKING_FORCE\n\nThis dependency was a hack to enable the context tracking widely for the\nfull dynticks susbsystem until the latter becomes able to enable it in a\nmore CPU-finegrained fashion.\n\nNow CONTEXT_TRACKING_FORCE only stands for testing on archs that\nwork on support for the context tracking while full dynticks can\u0027t be\nused yet due to unmet dependencies. It simulates a system where all CPUs\nare full dynticks so that RCU user extended quiescent states and dynticks\ncputime accounting can be tested on the given arch.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\n"
    },
    {
      "commit": "0db0628d90125193280eabb501c94feaf48fa9ab",
      "tree": "0e0ef0c4eac101d25a3bd125c4a9200ac4d294c0",
      "parents": [
        "49fb4c6290c70c418a5c25eee996d6b55ea132d6"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Wed Jun 19 14:53:51 2013 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Jul 14 19:36:59 2013 -0400"
      },
      "message": "kernel: delete __cpuinit usage from all core kernel files\n\nThe __cpuinit type of throwaway sections might have made sense\nsome time ago when RAM was more constrained, but now the savings\ndo not offset the cost and complications.  For example, the fix in\ncommit 5e427ec2d0 (\"x86: Fix bit corruption at CPU resume time\")\nis a good example of the nasty type of bugs that can be created\nwith improper use of the various __init prefixes.\n\nAfter a discussion on LKML[1] it was decided that cpuinit should go\nthe way of devinit and be phased out.  Once all the users are gone,\nwe can then finally remove the macros themselves from linux/init.h.\n\nThis removes all the uses of the __cpuinit macros from C files in\nthe core kernel directories (kernel, init, lib, mm, and include)\nthat don\u0027t really have a specific maintainer.\n\n[1] https://lkml.org/lkml/2013/5/20/589\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "54be8200198ddfc6cb396720460c19881fac2d5a",
      "tree": "58ccab6e0cfb35b30e7e16804f15fe9c94628f12",
      "parents": [
        "41d9884c44237cd66e2bdbc412028b29196b344c",
        "c25f195e828f847735c7626b5693ddc3b853d245"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 14 15:14:29 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 14 15:14:29 2013 -0700"
      },
      "message": "Merge branch \u0027slab/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux\n\nPull slab update from Pekka Enberg:\n \"Highlights:\n\n  - Fix for boot-time problems on some architectures due to\n    init_lock_keys() not respecting kmalloc_caches boundaries\n    (Christoph Lameter)\n\n  - CONFIG_SLUB_CPU_PARTIAL requested by RT folks (Joonsoo Kim)\n\n  - Fix for excessive slab freelist draining (Wanpeng Li)\n\n  - SLUB and SLOB cleanups and fixes (various people)\"\n\nI ended up editing the branch, and this avoids two commits at the end\nthat were immediately reverted, and I instead just applied the oneliner\nfix in between myself.\n\n* \u0027slab/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux\n  slub: Check for page NULL before doing the node_match check\n  mm/slab: Give s_next and s_stop slab-specific names\n  slob: Check for NULL pointer before calling ctor()\n  slub: Make cpu partial slab support configurable\n  slab: add kmalloc() to kernel API documentation\n  slab: fix init_lock_keys\n  slob: use DIV_ROUND_UP where possible\n  slub: do not put a slab to cpu partial list when cpu_partial is 0\n  mm/slub: Use node_nr_slabs and node_nr_objs in get_slabinfo\n  mm/slub: Drop unnecessary nr_partials\n  mm/slab: Fix /proc/slabinfo unwriteable for slab\n  mm/slab: Sharing s_next and s_stop between slab and slub\n  mm/slab: Fix drain freelist excessively\n  slob: Rework #ifdeffery in slab.h\n  mm, slab: moved kmem_cache_alloc_node comment to correct place\n"
    },
    {
      "commit": "e76e1fdfa8f8dc1ea6699923cf5d92b5bee9c936",
      "tree": "d216233bcf256a8a3d8912cebbbf82032bb7b715",
      "parents": [
        "cffb78b0e0b3a30b059b27a1d97500cf6464efa9"
      ],
      "author": {
        "name": "Kyungsik Lee",
        "email": "kyungsik.lee@lge.com",
        "time": "Mon Jul 08 16:01:46 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:30 2013 -0700"
      },
      "message": "lib: add support for LZ4-compressed kernel\n\nAdd support for extracting LZ4-compressed kernel images, as well as\nLZ4-compressed ramdisk images in the kernel boot process.\n\nSigned-off-by: Kyungsik Lee \u003ckyungsik.lee@lge.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Florian Fainelli \u003cflorian@openwrt.org\u003e\nCc: Yann Collet \u003cyann.collet.73@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "345c905d13a4ec9f774b6b4bc038fe4aef26cced",
      "tree": "9b6177f5b4712ff78c3808b240e66079e8c8338f",
      "parents": [
        "e7efa615ccf78394338144ff0187be331240748a"
      ],
      "author": {
        "name": "Joonsoo Kim",
        "email": "iamjoonsoo.kim@lge.com",
        "time": "Wed Jun 19 14:05:52 2013 +0900"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Sun Jul 07 19:09:56 2013 +0300"
      },
      "message": "slub: Make cpu partial slab support configurable\n\nCPU partial support can introduce level of indeterminism that is not\nwanted in certain context (like a realtime kernel). Make it\nconfigurable.\n\nThis patch is based on Christoph Lameter\u0027s \"slub: Make cpu partial slab\nsupport configurable V2\".\n\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Joonsoo Kim \u003ciamjoonsoo.kim@lge.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\n"
    },
    {
      "commit": "21884a83b2192a00885d7244a1dda32debd2fbc7",
      "tree": "e00267bbcac32f0114b3d21a20c61107d2314c40",
      "parents": [
        "8b70a90cabafb6a6e1a0d3f838b38355fe48337e",
        "73b0cd674ccc64c921e25bd7154f26d342116539"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 06 14:09:38 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 06 14:09:38 2013 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer core updates from Thomas Gleixner:\n \"The timer changes contain:\n\n   - posix timer code consolidation and fixes for odd corner cases\n\n   - sched_clock implementation moved from ARM to core code to avoid\n     duplication by other architectures\n\n   - alarm timer updates\n\n   - clocksource and clockevents unregistration facilities\n\n   - clocksource/events support for new hardware\n\n   - precise nanoseconds RTC readout (Xen feature)\n\n   - generic support for Xen suspend/resume oddities\n\n   - the usual lot of fixes and cleanups all over the place\n\n  The parts which touch other areas (ARM/XEN) have been coordinated with\n  the relevant maintainers.  Though this results in an handful of\n  trivial to solve merge conflicts, which we preferred over nasty cross\n  tree merge dependencies.\n\n  The patches which have been committed in the last few days are bug\n  fixes plus the posix timer lot.  The latter was in akpms queue and\n  next for quite some time; they just got forgotten and Frederic\n  collected them last minute.\"\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (59 commits)\n  hrtimer: Remove unused variable\n  hrtimers: Move SMP function call to thread context\n  clocksource: Reselect clocksource when watchdog validated high-res capability\n  posix-cpu-timers: don\u0027t account cpu timer after stopped thread runtime accounting\n  posix_timers: fix racy timer delta caching on task exit\n  posix-timers: correctly get dying task time sample in posix_cpu_timer_schedule()\n  selftests: add basic posix timers selftests\n  posix_cpu_timers: consolidate expired timers check\n  posix_cpu_timers: consolidate timer list cleanups\n  posix_cpu_timer: consolidate expiry time type\n  tick: Sanitize broadcast control logic\n  tick: Prevent uncontrolled switch to oneshot mode\n  tick: Make oneshot broadcast robust vs. CPU offlining\n  x86: xen: Sync the CMOS RTC as well as the Xen wallclock\n  x86: xen: Sync the wallclock when the system time is set\n  timekeeping: Indicate that clock was set in the pvclock gtod notifier\n  timekeeping: Pass flags instead of multiple bools to timekeeping_update()\n  xen: Remove clock_was_set() call in the resume path\n  hrtimers: Support resuming with two or more CPUs online (but stopped)\n  timer: Fix jiffies wrap behavior of round_jiffies_common()\n  ...\n"
    },
    {
      "commit": "2b0f89317e99735bbf32eaede81f707f98ab1b5e",
      "tree": "16daa236e21876b11f1c0b9256cd4046aadba020",
      "parents": [
        "07bd1172902e782f288e4d44b1fde7dec0f08b6f",
        "fa18f7bde3ad4568d1d343b60d963bfbd8dc3991"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jul 04 23:11:22 2013 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jul 04 23:11:22 2013 +0200"
      },
      "message": "Merge branch \u0027timers/posix-cpu-timers-for-tglx\u0027 of\ngit://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks into timers/core\n\nFrederic sayed: \"Most of these patches have been hanging around for\nseveral month now, in -mmotm for a significant chunk. They already\nmissed a few releases.\"\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ca75b4d8799d46842350596fdc5fce7711610326",
      "tree": "b76561805594fd99bf70085a0dfbd8259cd95575",
      "parents": [
        "ff1c8fac88ab8e7dac65236b277908c7c5c7ab09"
      ],
      "author": {
        "name": "Toralf Förster",
        "email": "toralf.foerster@gmx.de",
        "time": "Wed Jul 03 15:05:38 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 16:07:45 2013 -0700"
      },
      "message": "insert missing space in printk line of root_delay\n\nTrivial, but it really looks better.\n\nSigned-off-by: Toralf Förster \u003ctoralf.foerster@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ff1c8fac88ab8e7dac65236b277908c7c5c7ab09",
      "tree": "83d3dc572683e7151e4f2ec9ecea5ff8ad5e007f",
      "parents": [
        "351b2a1fe2d06f44b4c06d377744b2ac408b7407"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jul 03 15:05:37 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 16:07:45 2013 -0700"
      },
      "message": "init: remove permanent string buffer from do_one_initcall()\n\ndo_one_initcall() uses a 64 byte string buffer to save a message. This\nbuffer is declared static and is only used at boot up and when a module\nis loaded. As 64 bytes is very small, and this function has very limited\nscope, there\u0027s no reason to waste permanent memory with this string and\nnot just simply put it on the stack.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f60e2a968e2bebe34986f49251017f72b725d8c0",
      "tree": "86f41f640c23f02c6c0448007876e4710ab0106d",
      "parents": [
        "cdd91a77043ba81585236ef61f65c18222b212e6"
      ],
      "author": {
        "name": "Sergey Dyasly",
        "email": "dserrg@gmail.com",
        "time": "Wed Jul 03 15:03:30 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 16:07:34 2013 -0700"
      },
      "message": "memcg: Kconfig info update\n\nNow there are only 2 members in struct page_cgroup.  Update config MEMCG\ndescription accordingly.\n\nSigned-off-by: Sergey Dyasly \u003cdserrg@gmail.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f0bb4c0ab064a8aeeffbda1cee380151a594eaab",
      "tree": "14d55a89c5db455aa10ff9a96ca14c474a9c4d55",
      "parents": [
        "a4883ef6af5e513a1e8c2ab9aab721604aa3a4f5",
        "983433b5812c5cf33a9008fa38c6f9b407fedb76"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 16:15:23 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 16:15:23 2013 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf updates from Ingo Molnar:\n \"Kernel improvements:\n\n   - watchdog driver improvements by Li Zefan\n   - Power7 CPI stack events related improvements by Sukadev Bhattiprolu\n   - event multiplexing via hrtimers and other improvements by Stephane\n     Eranian\n   - kernel stack use optimization by Andrew Hunter\n   - AMD IOMMU uncore PMU support by Suravee Suthikulpanit\n   - NMI handling rate-limits by Dave Hansen\n   - various hw_breakpoint fixes by Oleg Nesterov\n   - hw_breakpoint overflow period sampling and related signal handling\n     fixes by Jiri Olsa\n   - Intel Haswell PMU support by Andi Kleen\n\n  Tooling improvements:\n\n   - Reset SIGTERM handler in workload child process, fix from David\n     Ahern.\n   - Makefile reorganization, prep work for Kconfig patches, from Jiri\n     Olsa.\n   - Add automated make test suite, from Jiri Olsa.\n   - Add --percent-limit option to \u0027top\u0027 and \u0027report\u0027, from Namhyung\n     Kim.\n   - Sorting improvements, from Namhyung Kim.\n   - Expand definition of sysfs format attribute, from Michael Ellerman.\n\n  Tooling fixes:\n\n   - \u0027perf tests\u0027 fixes from Jiri Olsa.\n   - Make Power7 CPI stack events available in sysfs, from Sukadev\n     Bhattiprolu.\n   - Handle death by SIGTERM in \u0027perf record\u0027, fix from David Ahern.\n   - Fix printing of perf_event_paranoid message, from David Ahern.\n   - Handle realloc failures in \u0027perf kvm\u0027, from David Ahern.\n   - Fix divide by 0 in variance, from David Ahern.\n   - Save parent pid in thread struct, from David Ahern.\n   - Handle JITed code in shared memory, from Andi Kleen.\n   - Fixes for \u0027perf diff\u0027, from Jiri Olsa.\n   - Remove some unused struct members, from Jiri Olsa.\n   - Add missing liblk.a dependency for python/perf.so, fix from Jiri\n     Olsa.\n   - Respect CROSS_COMPILE in liblk.a, from Rabin Vincent.\n   - No need to do locking when adding hists in perf report, only \u0027top\u0027\n     needs that, from Namhyung Kim.\n   - Fix alignment of symbol column in in the hists browser (top,\n     report) when -v is given, from NAmhyung Kim.\n   - Fix \u0027perf top\u0027 -E option behavior, from Namhyung Kim.\n   - Fix bug in isupper() and islower(), from Sukadev Bhattiprolu.\n   - Fix compile errors in bp_signal \u0027perf test\u0027, from Sukadev\n     Bhattiprolu.\n\n  ... and more things\"\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (102 commits)\n  perf/x86: Disable PEBS-LL in intel_pmu_pebs_disable()\n  perf/x86: Fix shared register mutual exclusion enforcement\n  perf/x86/intel: Support full width counting\n  x86: Add NMI duration tracepoints\n  perf: Drop sample rate when sampling is too slow\n  x86: Warn when NMI handlers take large amounts of time\n  hw_breakpoint: Introduce \"struct bp_cpuinfo\"\n  hw_breakpoint: Simplify *register_wide_hw_breakpoint()\n  hw_breakpoint: Introduce cpumask_of_bp()\n  hw_breakpoint: Simplify the \"weight\" usage in toggle_bp_slot() paths\n  hw_breakpoint: Simplify list/idx mess in toggle_bp_slot() paths\n  perf/x86/intel: Add mem-loads/stores support for Haswell\n  perf/x86/intel: Support Haswell/v4 LBR format\n  perf/x86/intel: Move NMI clearing to end of PMI handler\n  perf/x86/intel: Add Haswell PEBS support\n  perf/x86/intel: Add simple Haswell PMU support\n  perf/x86/intel: Add Haswell PEBS record support\n  perf/x86/intel: Fix sparse warning\n  perf/x86/amd: AMD IOMMU Performance Counter PERF uncore PMU implementation\n  perf/x86/amd: Add IOMMU Performance Counter resource management\n  ...\n"
    },
    {
      "commit": "ab3d681e9d41816f90836ea8fe235168d973207f",
      "tree": "c5210911fcb6023f4956a302ee1d4ce3a405aa0f",
      "parents": [
        "0c46d68d1930c8a58d0f291328b9759da754e599",
        "b1fe9987b78755719e8627d58409174ba00c24de"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 16:13:29 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 16:13:29 2013 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU updates from Ingo Molnar:\n \"The major changes:\n\n  - Simplify RCU\u0027s grace-period and callback processing based on the new\n    numbering for callbacks.\n\n  - Removal of TINY_PREEMPT_RCU in favor of TREE_PREEMPT_RCU for\n    single-CPU low-latency systems.\n\n  - SRCU-related changes and fixes.\n\n  - Miscellaneous fixes, including converting a few remaining printk()\n    calls to pr_*().\n\n  - Documentation updates\"\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (32 commits)\n  rcu: Shrink TINY_RCU by reworking CPU-stall ifdefs\n  rcu: Shrink TINY_RCU by moving exit_rcu()\n  rcu: Remove TINY_PREEMPT_RCU tracing documentation\n  rcu: Consolidate rcutiny_plugin.h ifdefs\n  rcu: Remove rcu_preempt_note_context_switch()\n  rcu: Remove the CONFIG_TINY_RCU ifdefs in rcutiny.h\n  rcu: Remove check_cpu_stall_preempt()\n  rcu: Simplify RCU_TINY RCU callback invocation\n  rcu: Remove rcu_preempt_process_callbacks()\n  rcu: Remove rcu_preempt_remove_callbacks()\n  rcu: Remove rcu_preempt_check_callbacks()\n  rcu: Remove show_tiny_preempt_stats()\n  rcu: Remove TINY_PREEMPT_RCU\n  powerpc,kvm: fix imbalance srcu_read_[un]lock()\n  rcu: Remove srcu_read_lock_raw() and srcu_read_unlock_raw().\n  rcu: Apply Dave Jones\u0027s NOCB Kconfig help feedback\n  rcu: Merge adjacent identical ifdefs\n  rcu: Drive quiescent-state-forcing delay from HZ\n  rcu: Remove \"Experimental\" flags\n  kthread: Add kworker kthreads to OS-jitter documentation\n  ...\n"
    },
    {
      "commit": "4bb1667255a86360721291fe59991d033bbc2f2a",
      "tree": "cc6e697ab35538995625e6ba9a5b809c5dd35719",
      "parents": [
        "b5aef682e00c424bb2f55639168083b61803a012"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Wed May 22 10:56:24 2013 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 24 16:41:32 2013 -0700"
      },
      "message": "build some drivers only when compile-testing\n\nSome drivers can be built on more platforms than they run on. This is\na burden for users and distributors who package a kernel. They have to\nmanually deselect some (for them useless) drivers when updating their\nconfigs via oldconfig. And yet, sometimes it is even impossible to\ndisable the drivers without patching the kernel.\n\nIntroduce a new config option COMPILE_TEST and make all those drivers\nto depend on the platform they run on, or on the COMPILE_TEST option.\nNow, when users/distributors choose COMPILE_TEST\u003dn they will not have\nthe drivers in their allmodconfig setups, but developers still can\ncompile-test them with COMPILE_TEST\u003dy.\n\nNow the drivers where we use this new option:\n* PTP_1588_CLOCK_PCH: The PCH EG20T is only compatible with Intel Atom\n  processors so it should depend on x86.\n* FB_GEODE: Geode is 32-bit only so only enable it for X86_32.\n* USB_CHIPIDEA_IMX: The OF_DEVICE dependency will be met on powerpc\n  systems -- which do not actually support the hardware via that\n  method.\n* INTEL_MID_PTI: It is specific to the Penwell type of Intel Atom\n  device.\n\n[v2]\n* remove EXPERT dependency\n\n[gregkh - remove chipidea portion, as it\u0027s incorrect, and also doesn\u0027t\n apply to my driver-core tree]\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Alexander Shishkin \u003calexander.shishkin@linux.intel.com\u003e\nCc: linux-usb@vger.kernel.org\nCc: Florian Tobias Schandinat \u003cFlorianSchandinat@gmx.de\u003e\nCc: linux-geode@lists.infradead.org\nCc: linux-fbdev@vger.kernel.org\nCc: Richard Cochran \u003crichardcochran@gmail.com\u003e\nCc: netdev@vger.kernel.org\nCc: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: \"Keller, Jacob E\" \u003cjacob.e.keller@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "bb07b00be77fb33274cb44a03bdbf2471e556189",
      "tree": "620390077de843dd7626998f0d8441d14a6c66d9",
      "parents": [
        "b7165ebbf0898bad9aaeddfa22b918e94ed90e07",
        "7d132055814ef17a6c7b69f342244c410a5e000f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 17 16:57:20 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 17 16:57:20 2013 -0700"
      },
      "message": "Merge 3.10-rc6 into driver-core-next\n\nWe want these fixes here too.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "38ff87f77af0b5a93fc8581cff1d6e5692ab8970",
      "tree": "7a157528657400d0486cd4e74da98bad40992c3c",
      "parents": [
        "ffbfb5e316f0db486798ccf1db36a577ffe79637"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Sat Jun 01 23:39:40 2013 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Jun 12 14:02:13 2013 -0700"
      },
      "message": "sched_clock: Make ARM\u0027s sched_clock generic for all architectures\n\nNothing about the sched_clock implementation in the ARM port is\nspecific to the architecture. Generalize the code so that other\narchitectures can use it by selecting GENERIC_SCHED_CLOCK.\n\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n[jstultz: Merge minor collisions with other patches in my tree]\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "be77f87c001b770f13fe742becb08b847d9542f1",
      "tree": "0dc068c57aee1f87a70eae31f3ad8ecc7e4eb702",
      "parents": [
        "05eb552bf5ed9e7277bdc9c273ed2f4e9b7dc3e5",
        "f7bac9b85a333ebdfa5f500cf6acf753edffc05f",
        "676c3dc2033aa43f2e605611dec9be55a921dafd",
        "505d6421bd520c42dd6141aaeff91605e148583f",
        "14961444696effb2e660fe876e5c1880f8bc3932"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 10 13:46:44 2013 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 10 13:46:44 2013 -0700"
      },
      "message": "Merge branches \u0027cbnum.2013.06.10a\u0027, \u0027doc.2013.06.10a\u0027, \u0027fixes.2013.06.10a\u0027, \u0027srcu.2013.06.10a\u0027 and \u0027tiny.2013.06.10a\u0027 into HEAD\n\ncbnum.2013.06.10a: Apply simplifications stemming from the new callback\n\tnumbering.\n\ndoc.2013.06.10a: Documentation updates.\n\nfixes.2013.06.10a: Miscellaneous fixes.\n\nsrcu.2013.06.10a: Updates to SRCU.\n\ntiny.2013.06.10a: Eliminate TINY_PREEMPT_RCU.\n"
    },
    {
      "commit": "127781d1ba1ee5bbe1780afa35dd0e71583b143d",
      "tree": "3c9b5961bc02e7f380a7bd7932181329ecbec397",
      "parents": [
        "efc151c33b971148894789dc7c5589dec46d4348"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Mar 27 08:44:00 2013 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 10 13:45:49 2013 -0700"
      },
      "message": "rcu: Remove TINY_PREEMPT_RCU\n\nTINY_PREEMPT_RCU adds significant code and complexity, but does not\noffer commensurate benefits.  People currently using TINY_PREEMPT_RCU\ncan get much better memory footprint with TINY_RCU, or, if they really\nneed preemptible RCU, they can use TREE_PREEMPT_RCU with a relatively\nminor degradation in memory footprint.  Please note that this move\nhas been widely publicized on LKML (https://lkml.org/lkml/2012/11/12/545)\nand on LWN (http://lwn.net/Articles/541037/).\n\nThis commit therefore removes TINY_PREEMPT_RCU.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n[ paulmck: Updated to eliminate #else in rcutiny.h as suggested by Josh ]\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "676c3dc2033aa43f2e605611dec9be55a921dafd",
      "tree": "2021f6c6d9b79d8af4b0c9e85d4d6726af01fb49",
      "parents": [
        "4982969d965ec87b1887c86d2e0b3d81065e1d38"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 30 14:49:42 2013 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 10 13:44:57 2013 -0700"
      },
      "message": "rcu: Apply Dave Jones\u0027s NOCB Kconfig help feedback\n\nThe Kconfig help text for the RCU_NOCB_CPU_NONE, RCU_NOCB_CPU_ZERO,\nand RCU_NOCB_CPU_ALL Kconfig options was unclear, so this commit\nadds a bit more detail.\n\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "9a5739d73f9369ba1cdba3889ee4e2f87be25a46",
      "tree": "c1b03bf542ee77e4cff0b0d422a14e7772ba8baf",
      "parents": [
        "efc151c33b971148894789dc7c5589dec46d4348"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Mar 28 20:48:36 2013 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 10 13:44:56 2013 -0700"
      },
      "message": "rcu: Remove \"Experimental\" flags\n\nAfter a release or two, features are no longer experimental.  Therefore,\nthis commit removes the \"Experimental\" tag from them.\n\nReported-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "016a8d5be6ddcc72ef0432d82d9f6fa34f61b907",
      "tree": "3f89d85633928acfde3a6a390ef62dcda0d3a3f4",
      "parents": [
        "d62840995a99c9766803d54e9d7923f247a1c1db"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue May 28 17:32:53 2013 -0400"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 10 13:37:11 2013 -0700"
      },
      "message": "rcu: Don\u0027t call wakeup() with rcu_node structure -\u003elock held\n\nThis commit fixes a lockdep-detected deadlock by moving a wake_up()\ncall out from a rnp-\u003elock critical section.  Please see below for\nthe long version of this story.\n\nOn Tue, 2013-05-28 at 16:13 -0400, Dave Jones wrote:\n\n\u003e [12572.705832] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003e [12572.750317] [ INFO: possible circular locking dependency detected ]\n\u003e [12572.796978] 3.10.0-rc3+ #39 Not tainted\n\u003e [12572.833381] -------------------------------------------------------\n\u003e [12572.862233] trinity-child17/31341 is trying to acquire lock:\n\u003e [12572.870390]  (rcu_node_0){..-.-.}, at: [\u003cffffffff811054ff\u003e] rcu_read_unlock_special+0x9f/0x4c0\n\u003e [12572.878859]\n\u003e but task is already holding lock:\n\u003e [12572.894894]  (\u0026ctx-\u003elock){-.-...}, at: [\u003cffffffff811390ed\u003e] perf_lock_task_context+0x7d/0x2d0\n\u003e [12572.903381]\n\u003e which lock already depends on the new lock.\n\u003e\n\u003e [12572.927541]\n\u003e the existing dependency chain (in reverse order) is:\n\u003e [12572.943736]\n\u003e -\u003e #4 (\u0026ctx-\u003elock){-.-...}:\n\u003e [12572.960032]        [\u003cffffffff810b9851\u003e] lock_acquire+0x91/0x1f0\n\u003e [12572.968337]        [\u003cffffffff816ebc90\u003e] _raw_spin_lock+0x40/0x80\n\u003e [12572.976633]        [\u003cffffffff8113c987\u003e] __perf_event_task_sched_out+0x2e7/0x5e0\n\u003e [12572.984969]        [\u003cffffffff81088953\u003e] perf_event_task_sched_out+0x93/0xa0\n\u003e [12572.993326]        [\u003cffffffff816ea0bf\u003e] __schedule+0x2cf/0x9c0\n\u003e [12573.001652]        [\u003cffffffff816eacfe\u003e] schedule_user+0x2e/0x70\n\u003e [12573.009998]        [\u003cffffffff816ecd64\u003e] retint_careful+0x12/0x2e\n\u003e [12573.018321]\n\u003e -\u003e #3 (\u0026rq-\u003elock){-.-.-.}:\n\u003e [12573.034628]        [\u003cffffffff810b9851\u003e] lock_acquire+0x91/0x1f0\n\u003e [12573.042930]        [\u003cffffffff816ebc90\u003e] _raw_spin_lock+0x40/0x80\n\u003e [12573.051248]        [\u003cffffffff8108e6a7\u003e] wake_up_new_task+0xb7/0x260\n\u003e [12573.059579]        [\u003cffffffff810492f5\u003e] do_fork+0x105/0x470\n\u003e [12573.067880]        [\u003cffffffff81049686\u003e] kernel_thread+0x26/0x30\n\u003e [12573.076202]        [\u003cffffffff816cee63\u003e] rest_init+0x23/0x140\n\u003e [12573.084508]        [\u003cffffffff81ed8e1f\u003e] start_kernel+0x3f1/0x3fe\n\u003e [12573.092852]        [\u003cffffffff81ed856f\u003e] x86_64_start_reservations+0x2a/0x2c\n\u003e [12573.101233]        [\u003cffffffff81ed863d\u003e] x86_64_start_kernel+0xcc/0xcf\n\u003e [12573.109528]\n\u003e -\u003e #2 (\u0026p-\u003epi_lock){-.-.-.}:\n\u003e [12573.125675]        [\u003cffffffff810b9851\u003e] lock_acquire+0x91/0x1f0\n\u003e [12573.133829]        [\u003cffffffff816ebe9b\u003e] _raw_spin_lock_irqsave+0x4b/0x90\n\u003e [12573.141964]        [\u003cffffffff8108e881\u003e] try_to_wake_up+0x31/0x320\n\u003e [12573.150065]        [\u003cffffffff8108ebe2\u003e] default_wake_function+0x12/0x20\n\u003e [12573.158151]        [\u003cffffffff8107bbf8\u003e] autoremove_wake_function+0x18/0x40\n\u003e [12573.166195]        [\u003cffffffff81085398\u003e] __wake_up_common+0x58/0x90\n\u003e [12573.174215]        [\u003cffffffff81086909\u003e] __wake_up+0x39/0x50\n\u003e [12573.182146]        [\u003cffffffff810fc3da\u003e] rcu_start_gp_advanced.isra.11+0x4a/0x50\n\u003e [12573.190119]        [\u003cffffffff810fdb09\u003e] rcu_start_future_gp+0x1c9/0x1f0\n\u003e [12573.198023]        [\u003cffffffff810fe2c4\u003e] rcu_nocb_kthread+0x114/0x930\n\u003e [12573.205860]        [\u003cffffffff8107a91d\u003e] kthread+0xed/0x100\n\u003e [12573.213656]        [\u003cffffffff816f4b1c\u003e] ret_from_fork+0x7c/0xb0\n\u003e [12573.221379]\n\u003e -\u003e #1 (\u0026rsp-\u003egp_wq){..-.-.}:\n\u003e [12573.236329]        [\u003cffffffff810b9851\u003e] lock_acquire+0x91/0x1f0\n\u003e [12573.243783]        [\u003cffffffff816ebe9b\u003e] _raw_spin_lock_irqsave+0x4b/0x90\n\u003e [12573.251178]        [\u003cffffffff810868f3\u003e] __wake_up+0x23/0x50\n\u003e [12573.258505]        [\u003cffffffff810fc3da\u003e] rcu_start_gp_advanced.isra.11+0x4a/0x50\n\u003e [12573.265891]        [\u003cffffffff810fdb09\u003e] rcu_start_future_gp+0x1c9/0x1f0\n\u003e [12573.273248]        [\u003cffffffff810fe2c4\u003e] rcu_nocb_kthread+0x114/0x930\n\u003e [12573.280564]        [\u003cffffffff8107a91d\u003e] kthread+0xed/0x100\n\u003e [12573.287807]        [\u003cffffffff816f4b1c\u003e] ret_from_fork+0x7c/0xb0\n\nNotice the above call chain.\n\nrcu_start_future_gp() is called with the rnp-\u003elock held. Then it calls\nrcu_start_gp_advance, which does a wakeup.\n\nYou can\u0027t do wakeups while holding the rnp-\u003elock, as that would mean\nthat you could not do a rcu_read_unlock() while holding the rq lock, or\nany lock that was taken while holding the rq lock. This is because...\n(See below).\n\n\u003e [12573.295067]\n\u003e -\u003e #0 (rcu_node_0){..-.-.}:\n\u003e [12573.309293]        [\u003cffffffff810b8d36\u003e] __lock_acquire+0x1786/0x1af0\n\u003e [12573.316568]        [\u003cffffffff810b9851\u003e] lock_acquire+0x91/0x1f0\n\u003e [12573.323825]        [\u003cffffffff816ebc90\u003e] _raw_spin_lock+0x40/0x80\n\u003e [12573.331081]        [\u003cffffffff811054ff\u003e] rcu_read_unlock_special+0x9f/0x4c0\n\u003e [12573.338377]        [\u003cffffffff810760a6\u003e] __rcu_read_unlock+0x96/0xa0\n\u003e [12573.345648]        [\u003cffffffff811391b3\u003e] perf_lock_task_context+0x143/0x2d0\n\u003e [12573.352942]        [\u003cffffffff8113938e\u003e] find_get_context+0x4e/0x1f0\n\u003e [12573.360211]        [\u003cffffffff811403f4\u003e] SYSC_perf_event_open+0x514/0xbd0\n\u003e [12573.367514]        [\u003cffffffff81140e49\u003e] SyS_perf_event_open+0x9/0x10\n\u003e [12573.374816]        [\u003cffffffff816f4dd4\u003e] tracesys+0xdd/0xe2\n\nNotice the above trace.\n\nperf took its own ctx-\u003elock, which can be taken while holding the rq\nlock. While holding this lock, it did a rcu_read_unlock(). The\nperf_lock_task_context() basically looks like:\n\nrcu_read_lock();\nraw_spin_lock(ctx-\u003elock);\nrcu_read_unlock();\n\nNow, what looks to have happened, is that we scheduled after taking that\nfirst rcu_read_lock() but before taking the spin lock. When we scheduled\nback in and took the ctx-\u003elock, the following rcu_read_unlock()\ntriggered the \"special\" code.\n\nThe rcu_read_unlock_special() takes the rnp-\u003elock, which gives us a\npossible deadlock scenario.\n\n\tCPU0\t\tCPU1\t\tCPU2\n\t----\t\t----\t\t----\n\n\t\t\t\t     rcu_nocb_kthread()\n    lock(rq-\u003elock);\n\t\t    lock(ctx-\u003elock);\n\t\t\t\t     lock(rnp-\u003elock);\n\n\t\t\t\t     wake_up();\n\n\t\t\t\t     lock(rq-\u003elock);\n\n\t\t    rcu_read_unlock();\n\n\t\t    rcu_read_unlock_special();\n\n\t\t    lock(rnp-\u003elock);\n    lock(ctx-\u003elock);\n\n**** DEADLOCK ****\n\n\u003e [12573.382068]\n\u003e other info that might help us debug this:\n\u003e\n\u003e [12573.403229] Chain exists of:\n\u003e   rcu_node_0 --\u003e \u0026rq-\u003elock --\u003e \u0026ctx-\u003elock\n\u003e\n\u003e [12573.424471]  Possible unsafe locking scenario:\n\u003e\n\u003e [12573.438499]        CPU0                    CPU1\n\u003e [12573.445599]        ----                    ----\n\u003e [12573.452691]   lock(\u0026ctx-\u003elock);\n\u003e [12573.459799]                                lock(\u0026rq-\u003elock);\n\u003e [12573.467010]                                lock(\u0026ctx-\u003elock);\n\u003e [12573.474192]   lock(rcu_node_0);\n\u003e [12573.481262]\n\u003e  *** DEADLOCK ***\n\u003e\n\u003e [12573.501931] 1 lock held by trinity-child17/31341:\n\u003e [12573.508990]  #0:  (\u0026ctx-\u003elock){-.-...}, at: [\u003cffffffff811390ed\u003e] perf_lock_task_context+0x7d/0x2d0\n\u003e [12573.516475]\n\u003e stack backtrace:\n\u003e [12573.530395] CPU: 1 PID: 31341 Comm: trinity-child17 Not tainted 3.10.0-rc3+ #39\n\u003e [12573.545357]  ffffffff825b4f90 ffff880219f1dbc0 ffffffff816e375b ffff880219f1dc00\n\u003e [12573.552868]  ffffffff816dfa5d ffff880219f1dc50 ffff88023ce4d1f8 ffff88023ce4ca40\n\u003e [12573.560353]  0000000000000001 0000000000000001 ffff88023ce4d1f8 ffff880219f1dcc0\n\u003e [12573.567856] Call Trace:\n\u003e [12573.575011]  [\u003cffffffff816e375b\u003e] dump_stack+0x19/0x1b\n\u003e [12573.582284]  [\u003cffffffff816dfa5d\u003e] print_circular_bug+0x200/0x20f\n\u003e [12573.589637]  [\u003cffffffff810b8d36\u003e] __lock_acquire+0x1786/0x1af0\n\u003e [12573.596982]  [\u003cffffffff810918f5\u003e] ? sched_clock_cpu+0xb5/0x100\n\u003e [12573.604344]  [\u003cffffffff810b9851\u003e] lock_acquire+0x91/0x1f0\n\u003e [12573.611652]  [\u003cffffffff811054ff\u003e] ? rcu_read_unlock_special+0x9f/0x4c0\n\u003e [12573.619030]  [\u003cffffffff816ebc90\u003e] _raw_spin_lock+0x40/0x80\n\u003e [12573.626331]  [\u003cffffffff811054ff\u003e] ? rcu_read_unlock_special+0x9f/0x4c0\n\u003e [12573.633671]  [\u003cffffffff811054ff\u003e] rcu_read_unlock_special+0x9f/0x4c0\n\u003e [12573.640992]  [\u003cffffffff811390ed\u003e] ? perf_lock_task_context+0x7d/0x2d0\n\u003e [12573.648330]  [\u003cffffffff810b429e\u003e] ? put_lock_stats.isra.29+0xe/0x40\n\u003e [12573.655662]  [\u003cffffffff813095a0\u003e] ? delay_tsc+0x90/0xe0\n\u003e [12573.662964]  [\u003cffffffff810760a6\u003e] __rcu_read_unlock+0x96/0xa0\n\u003e [12573.670276]  [\u003cffffffff811391b3\u003e] perf_lock_task_context+0x143/0x2d0\n\u003e [12573.677622]  [\u003cffffffff81139070\u003e] ? __perf_event_enable+0x370/0x370\n\u003e [12573.684981]  [\u003cffffffff8113938e\u003e] find_get_context+0x4e/0x1f0\n\u003e [12573.692358]  [\u003cffffffff811403f4\u003e] SYSC_perf_event_open+0x514/0xbd0\n\u003e [12573.699753]  [\u003cffffffff8108cd9d\u003e] ? get_parent_ip+0xd/0x50\n\u003e [12573.707135]  [\u003cffffffff810b71fd\u003e] ? trace_hardirqs_on_caller+0xfd/0x1c0\n\u003e [12573.714599]  [\u003cffffffff81140e49\u003e] SyS_perf_event_open+0x9/0x10\n\u003e [12573.721996]  [\u003cffffffff816f4dd4\u003e] tracesys+0xdd/0xe2\n\nThis commit delays the wakeup via irq_work(), which is what\nperf and ftrace use to perform wakeups in critical sections.\n\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "40b313608ad4ea655addd2ec6cdd106477ae8e15",
      "tree": "371f6ad524c7d85901bc9002ff2960ea10cb5154",
      "parents": [
        "af5bc11e9aa19f72a2d5ccd44611cb6268a60a34"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue May 21 13:49:35 2013 +1000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 03 14:20:18 2013 -0700"
      },
      "message": "Finally eradicate CONFIG_HOTPLUG\n\nEver since commit 45f035ab9b8f (\"CONFIG_HOTPLUG should be always on\"),\nit has been basically impossible to build a kernel with CONFIG_HOTPLUG\nturned off.  Remove all the remaining references to it.\n\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Doug Thompson \u003cdougthompson@xmission.com\u003e\nCc: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Hans Verkuil \u003chans.verkuil@cisco.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "9e6302056f8029f438e853432a856b9f13de26a6",
      "tree": "2c777b710fb4624fda55be17306d6f107b72428c",
      "parents": [
        "ab573844e3058eef2788803d373019f8bebead57"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Wed Apr 03 14:21:33 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue May 28 09:07:10 2013 +0200"
      },
      "message": "perf: Use hrtimers for event multiplexing\n\nThe current scheme of using the timer tick was fine for per-thread\nevents. However, it was causing bias issues in system-wide mode\n(including for uncore PMUs). Event groups would not get their fair\nshare of runtime on the PMU. With tickless kernels, if a core is idle\nthere is no timer tick, and thus no event rotation (multiplexing).\nHowever, there are events (especially uncore events) which do count\neven though cores are asleep.\n\nThis patch changes the timer source for multiplexing.  It introduces a\nper-PMU per-cpu hrtimer. The advantage is that even when a core goes\nidle, it will come back to service the hrtimer, thus multiplexing on\nsystem-wide events works much better.\n\nThe per-PMU implementation (suggested by PeterZ) enables adjusting the\nmultiplexing interval per PMU. The preferred interval is stashed into\nthe struct pmu. If not set, it will be forced to the default interval\nvalue.\n\nIn order to minimize the impact of the hrtimer, it is turned on and\noff on demand. When the PMU on a CPU is overcommited, the hrtimer is\nactivated.  It is stopped when the PMU is not overcommitted.\n\nIn order for this to work properly, we had to change the order of\ninitialization in start_kernel() such that hrtimer_init() is run\nbefore perf_event_init().\n\nThe default interval in milliseconds is set to a timer tick just like\nwith the old code. We will provide a sysctl to tune this in another\npatch.\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1364991694-5876-2-git-send-email-eranian@google.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "534c97b0950b1967bca1c753aeaed32f5db40264",
      "tree": "9421d26e4f6d479d1bc32b036a731b065daab0fa",
      "parents": [
        "64049d1973c1735f543eb7a55653e291e108b0cb",
        "265f22a975c1e4cc3a4d1f94a3ec53ffbb6f5b9f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 05 13:23:27 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 05 13:23:27 2013 -0700"
      },
      "message": "Merge branch \u0027timers-nohz-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull \u0027full dynticks\u0027 support from Ingo Molnar:\n \"This tree from Frederic Weisbecker adds a new, (exciting! :-) core\n  kernel feature to the timer and scheduler subsystems: \u0027full dynticks\u0027,\n  or CONFIG_NO_HZ_FULL\u003dy.\n\n  This feature extends the nohz variable-size timer tick feature from\n  idle to busy CPUs (running at most one task) as well, potentially\n  reducing the number of timer interrupts significantly.\n\n  This feature got motivated by real-time folks and the -rt tree, but\n  the general utility and motivation of full-dynticks runs wider than\n  that:\n\n   - HPC workloads get faster: CPUs running a single task should be able\n     to utilize a maximum amount of CPU power.  A periodic timer tick at\n     HZ\u003d1000 can cause a constant overhead of up to 1.0%.  This feature\n     removes that overhead - and speeds up the system by 0.5%-1.0% on\n     typical distro configs even on modern systems.\n\n   - Real-time workload latency reduction: CPUs running critical tasks\n     should experience as little jitter as possible.  The last remaining\n     source of kernel-related jitter was the periodic timer tick.\n\n   - A single task executing on a CPU is a pretty common situation,\n     especially with an increasing number of cores/CPUs, so this feature\n     helps desktop and mobile workloads as well.\n\n  The cost of the feature is mainly related to increased timer\n  reprogramming overhead when a CPU switches its tick period, and thus\n  slightly longer to-idle and from-idle latency.\n\n  Configuration-wise a third mode of operation is added to the existing\n  two NOHZ kconfig modes:\n\n   - CONFIG_HZ_PERIODIC: [formerly !CONFIG_NO_HZ], now explicitly named\n     as a config option.  This is the traditional Linux periodic tick\n     design: there\u0027s a HZ tick going on all the time, regardless of\n     whether a CPU is idle or not.\n\n   - CONFIG_NO_HZ_IDLE: [formerly CONFIG_NO_HZ\u003dy], this turns off the\n     periodic tick when a CPU enters idle mode.\n\n   - CONFIG_NO_HZ_FULL: this new mode, in addition to turning off the\n     tick when a CPU is idle, also slows the tick down to 1 Hz (one\n     timer interrupt per second) when only a single task is running on a\n     CPU.\n\n  The .config behavior is compatible: existing !CONFIG_NO_HZ and\n  CONFIG_NO_HZ\u003dy settings get translated to the new values, without the\n  user having to configure anything.  CONFIG_NO_HZ_FULL is turned off by\n  default.\n\n  This feature is based on a lot of infrastructure work that has been\n  steadily going upstream in the last 2-3 cycles: related RCU support\n  and non-periodic cputime support in particular is upstream already.\n\n  This tree adds the final pieces and activates the feature.  The pull\n  request is marked RFC because:\n\n   - it\u0027s marked 64-bit only at the moment - the 32-bit support patch is\n     small but did not get ready in time.\n\n   - it has a number of fresh commits that came in after the merge\n     window.  The overwhelming majority of commits are from before the\n     merge window, but still some aspects of the tree are fresh and so I\n     marked it RFC.\n\n   - it\u0027s a pretty wide-reaching feature with lots of effects - and\n     while the components have been in testing for some time, the full\n     combination is still not very widely used.  That it\u0027s default-off\n     should reduce its regression abilities and obviously there are no\n     known regressions with CONFIG_NO_HZ_FULL\u003dy enabled either.\n\n   - the feature is not completely idempotent: there is no 100%\n     equivalent replacement for a periodic scheduler/timer tick.  In\n     particular there\u0027s ongoing work to map out and reduce its effects\n     on scheduler load-balancing and statistics.  This should not impact\n     correctness though, there are no known regressions related to this\n     feature at this point.\n\n   - it\u0027s a pretty ambitious feature that with time will likely be\n     enabled by most Linux distros, and we\u0027d like you to make input on\n     its design/implementation, if you dislike some aspect we missed.\n     Without flaming us to crisp! :-)\n\n  Future plans:\n\n   - there\u0027s ongoing work to reduce 1Hz to 0Hz, to essentially shut off\n     the periodic tick altogether when there\u0027s a single busy task on a\n     CPU.  We\u0027d first like 1 Hz to be exposed more widely before we go\n     for the 0 Hz target though.\n\n   - once we reach 0 Hz we can remove the periodic tick assumption from\n     nr_running\u003e\u003d2 as well, by essentially interrupting busy tasks only\n     as frequently as the sched_latency constraints require us to do -\n     once every 4-40 msecs, depending on nr_running.\n\n  I am personally leaning towards biting the bullet and doing this in\n  v3.10, like the -rt tree this effort has been going on for too long -\n  but the final word is up to you as usual.\n\n  More technical details can be found in Documentation/timers/NO_HZ.txt\"\n\n* \u0027timers-nohz-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (39 commits)\n  sched: Keep at least 1 tick per second for active dynticks tasks\n  rcu: Fix full dynticks\u0027 dependency on wide RCU nocb mode\n  nohz: Protect smp_processor_id() in tick_nohz_task_switch()\n  nohz_full: Add documentation.\n  cputime_nsecs: use math64.h for nsec resolution conversion helpers\n  nohz: Select VIRT_CPU_ACCOUNTING_GEN from full dynticks config\n  nohz: Reduce overhead under high-freq idling patterns\n  nohz: Remove full dynticks\u0027 superfluous dependency on RCU tree\n  nohz: Fix unavailable tick_stop tracepoint in dynticks idle\n  nohz: Add basic tracing\n  nohz: Select wide RCU nocb for full dynticks\n  nohz: Disable the tick when irq resume in full dynticks CPU\n  nohz: Re-evaluate the tick for the new task after a context switch\n  nohz: Prepare to stop the tick on irq exit\n  nohz: Implement full dynticks kick\n  nohz: Re-evaluate the tick from the scheduler IPI\n  sched: New helper to prevent from stopping the tick in full dynticks\n  sched: Kick full dynticks CPU that have more than one task enqueued.\n  perf: New helper to prevent full dynticks CPUs from stopping tick\n  perf: Kick full dynticks CPU if events rotation is needed\n  ...\n"
    },
    {
      "commit": "73c30828771acafb0a5e3a1c4cf75e6c5dc5f98a",
      "tree": "08cfdcede966b63ff30ccaf6490535c7cc24a441",
      "parents": [
        "c032862fba51a3ca504752d3a25186b324c5ce83"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri May 03 01:28:12 2013 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat May 04 08:30:34 2013 +0200"
      },
      "message": "rcu: Fix full dynticks\u0027 dependency on wide RCU nocb mode\n\nCommit 0637e029392386e6996f5d6574aadccee8315efa\n(\"nohz: Select wide RCU nocb for full dynticks\") intended\nto force CONFIG_RCU_NOCB_CPU_ALL\u003dy when full dynticks is\nenabled.\n\nHowever this option is part of a choice menu and Kconfig\u0027s\n\"select\" instruction has no effect on such targets.\n\nFix this by using reverse dependencies on the targets we\ndon\u0027t want instead.\n\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Hakan Akkan \u003chakanakkan@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c032862fba51a3ca504752d3a25186b324c5ce83",
      "tree": "955dc2ba4ab3df76ecc2bb780ee84aca04967e8d",
      "parents": [
        "fda76e074c7737fc57855dd17c762e50ed526052",
        "8700c95adb033843fc163d112b9d21d4fda78018"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu May 02 17:37:49 2013 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu May 02 17:54:19 2013 +0200"
      },
      "message": "Merge commit \u00278700c95adb03\u0027 into timers/nohz\n\nThe full dynticks tree needs the latest RCU and sched\nupstream updates in order to fix some dependencies.\n\nMerge a common upstream merge point that has these\nupdates.\n\nConflicts:\n\tinclude/linux/perf_event.h\n\tkernel/rcutree.h\n\tkernel/rcutree_plugin.h\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "20b4fb485227404329e41ad15588afad3df23050",
      "tree": "f3e099f0ab3da8a93b447203e294d2bb22f6dc05",
      "parents": [
        "b9394d8a657cd3c064fa432aa0905c1b58b38fe9",
        "ac3e3c5b1164397656df81b9e9ab4991184d3236"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 17:51:54 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 17:51:54 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull VFS updates from Al Viro,\n\nMisc cleanups all over the place, mainly wrt /proc interfaces (switch\ncreate_proc_entry to proc_create(), get rid of the deprecated\ncreate_proc_read_entry() in favor of using proc_create_data() and\nseq_file etc).\n\n7kloc removed.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (204 commits)\n  don\u0027t bother with deferred freeing of fdtables\n  proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h\n  proc: Make the PROC_I() and PDE() macros internal to procfs\n  proc: Supply a function to remove a proc entry by PDE\n  take cgroup_open() and cpuset_open() to fs/proc/base.c\n  ppc: Clean up scanlog\n  ppc: Clean up rtas_flash driver somewhat\n  hostap: proc: Use remove_proc_subtree()\n  drm: proc: Use remove_proc_subtree()\n  drm: proc: Use minor-\u003eindex to label things, not PDE-\u003ename\n  drm: Constify drm_proc_list[]\n  zoran: Don\u0027t print proc_dir_entry data in debug\n  reiserfs: Don\u0027t access the proc_dir_entry in r_open(), r_start() r_show()\n  proc: Supply an accessor for getting the data from a PDE\u0027s parent\n  airo: Use remove_proc_subtree()\n  rtl8192u: Don\u0027t need to save device proc dir PDE\n  rtl8187se: Use a dir under /proc/net/r8180/\n  proc: Add proc_mkdir_data()\n  proc: Move some bits from linux/proc_fs.h to linux/{of.h,signal.h,tty.h}\n  proc: Move PDE_NET() to fs/proc/proc_net.c\n  ...\n"
    },
    {
      "commit": "0bb80f240520c4148b623161e7856858c021696d",
      "tree": "eeb27af589bc12d5864bd2594e5eea59aabe37db",
      "parents": [
        "c3bef7bcaaa7d9f6704fcd81a171c9f0c91a2259"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Apr 12 01:50:06 2013 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 01 17:29:39 2013 -0400"
      },
      "message": "proc: Split the namespace stuff out into linux/proc_ns.h\n\nSplit the proc namespace stuff out into linux/proc_ns.h.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\ncc: netdev@vger.kernel.org\ncc: Serge E. Hallyn \u003cserge.hallyn@ubuntu.com\u003e\ncc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bf5d770bd234a1e66322dd79c4ae5b397cd2b9c1",
      "tree": "b92a59f7e8cc4417fb2ab853fc08c5dd21538581",
      "parents": [
        "a49fe6d59aae7f7835288df508b709ed2d69cbab"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 01 13:35:51 2013 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 10:44:24 2013 -0700"
      },
      "message": "init: Do not warn on non-zero initcall return\n\nCommit f91eb62f71b3 (\"init: scream bloody murder if interrupts are\nenabled too early\") added three new warnings.  The first two seemed\nreasonable, but the third included a warning when an initcall returned\nnon-zero.  Although, the third WARN() does include an imbalanced preempt\ndisabled, or irqs disable, it shouldn\u0027t warn if it only had an initcall\nthat just returns non-zero.\n\nIn fact, according to Linus, it shouldn\u0027t print at all.  As it only\nprints with initcall_debug set, and that already shows enough\ninformation to fix things.\n\nLink: http://lkml.kernel.org/r/CA+55aFzaBC5SFi7\u003dF2mfm+KWY5qTsBmOqgbbs8E+LUS8JK-sBg@mail.gmail.com\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nReported-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "657a52095fa3e8560d41047851f4e73a410f3ed2",
      "tree": "b53e090824a342394dcfbb0e56047a3c0ac9e900",
      "parents": [
        "966f3096b18bf13385799ef745e114a8f292ed69"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Apr 30 15:28:45 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:09 2013 -0700"
      },
      "message": "init/Kconfig: re-order CONFIG_EXPERT options to fix menuconfig display\n\nThe kconfig language requires that dependent options all follow the\nmenuconfig symbol in order to be collapsed below it.  Recently some hidden\noptions were added below the EXPERT menuconfig, but did not depend on\nEXPERT (because hidden options can\u0027t).  This broke the display.  So\nre-order all these options, and while we\u0027re here stick the PCI quirks\nunder the EXPERT menu (since it isn\u0027t sitting with any related options).\n\nBefore this commit, we get:\n\t[*] Configure standard kernel features (expert users)  ---\u003e\n\t[ ] Sysctl syscall support\n\t[*] Load all symbols for debugging/ksymoops\n\t...\n\t[ ] Embedded system\n\nNow we get the older (and correct) behavior:\n\t[*] Configure standard kernel features (expert users)  ---\u003e\n\t[ ] Embedded system\nAnd if you go into the expert menu you get the expert options:\n\t[ ] Sysctl syscall support\n\t[*] Load all symbols for debugging/ksymoops\n\t...\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nAcked-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nCc: zhangwei(Jovi) \u003cjovi.zhangwei@huawei.com\u003e\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "907ed1328d2a748f3d6028503d3e04c74ea62730",
      "tree": "e91582c2932917736319430f501ee5a9b9f4a0a7",
      "parents": [
        "fb96c475f6b27bd2c7f6fe0720e6972909a203ca"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Tue Apr 30 15:28:07 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:06 2013 -0700"
      },
      "message": "usermodehelper: split remaining calls to call_usermodehelper_fns()\n\nThese are the only users of call_usermodehelper_fns().  This function\nsuffers from not being able to determine if the cleanup is called.  Even\nif in this places the cleanup pointer is NULL, convert them to use the\nseparate call_usermodehelper_setup() + call_usermodehelper_exec()\nfunctions so we can remove the _fns variant.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: James Morris \u003cjames.l.morris@oracle.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab86e974f04b1cd827a9c7c35273834ebcd9ab38",
      "tree": "41df33732d2700d6d57d1e7ab3f430942f09ffcc",
      "parents": [
        "8700c95adb033843fc163d112b9d21d4fda78018",
        "6f7a05d7018de222e40ca003721037a530979974"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 08:15:40 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 08:15:40 2013 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull core timer updates from Ingo Molnar:\n \"The main changes in this cycle\u0027s merge are:\n\n   - Implement shadow timekeeper to shorten in kernel reader side\n     blocking, by Thomas Gleixner.\n\n   - Posix timers enhancements by Pavel Emelyanov:\n\n   - allocate timer ID per process, so that exact timer ID allocations\n     can be re-created be checkpoint/restore code.\n\n   - debuggability and tooling (/proc/PID/timers, etc.) improvements.\n\n   - suspend/resume enhancements by Feng Tang: on certain new Intel Atom\n     processors (Penwell and Cloverview), there is a feature that the\n     TSC won\u0027t stop in S3 state, so the TSC value won\u0027t be reset to 0\n     after resume.  This can be taken advantage of by the generic via\n     the CLOCK_SOURCE_SUSPEND_NONSTOP flag: instead of using the RTC to\n     recover/approximate sleep time, the main (and precise) clocksource\n     can be used.\n\n   - Fix /proc/timer_list for 4096 CPUs by Nathan Zimmer: on so many\n     CPUs the file goes beyond 4MB of size and thus the current\n     simplistic seqfile approach fails.  Convert /proc/timer_list to a\n     proper seq_file with its own iterator.\n\n   - Cleanups and refactorings of the core timekeeping code by John\n     Stultz.\n\n   - International Atomic Clock time is managed by the NTP code\n     internally currently but not exposed externally.  Separate the TAI\n     code out and add CLOCK_TAI support and TAI support to the hrtimer\n     and posix-timer code, by John Stultz.\n\n   - Add deep idle support enhacement to the broadcast clockevents core\n     timer code, by Daniel Lezcano: add an opt-in CLOCK_EVT_FEAT_DYNIRQ\n     clockevents feature (which will be utilized by future clockevents\n     driver updates), which allows the use of IRQ affinities to avoid\n     spurious wakeups of idle CPUs - the right CPU with an expiring\n     timer will be woken.\n\n   - Add new ARM bcm281xx clocksource driver, by Christian Daudt\n\n   - ... various other fixes and cleanups\"\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (52 commits)\n  clockevents: Set dummy handler on CPU_DEAD shutdown\n  timekeeping: Update tk-\u003ecycle_last in resume\n  posix-timers: Remove unused variable\n  clockevents: Switch into oneshot mode even if broadcast registered late\n  timer_list: Convert timer list to be a proper seq_file\n  timer_list: Split timer_list_show_tickdevices\n  posix-timers: Show sigevent info in proc file\n  posix-timers: Introduce /proc/PID/timers file\n  posix timers: Allocate timer id per process (v2)\n  timekeeping: Make sure to notify hrtimers when TAI offset changes\n  hrtimer: Fix ktime_add_ns() overflow on 32bit architectures\n  hrtimer: Add expiry time overflow check in hrtimer_interrupt\n  timekeeping: Shorten seq_count region\n  timekeeping: Implement a shadow timekeeper\n  timekeeping: Delay update of clock-\u003ecycle_last\n  timekeeping: Store cycle_last value in timekeeper struct as well\n  ntp: Remove ntp_lock, using the timekeeping locks to protect ntp state\n  timekeeping: Simplify tai updating from do_adjtimex\n  timekeeping: Hold timekeepering locks in do_adjtimex and hardpps\n  timekeeping: Move ADJ_SETOFFSET to top level do_adjtimex()\n  ...\n"
    },
    {
      "commit": "8700c95adb033843fc163d112b9d21d4fda78018",
      "tree": "7bb9a37b8fe6328f63a61d88063c556346001098",
      "parents": [
        "16fa94b532b1958f508e07eca1a9256351241fbc",
        "d190e8195b90bc1e65c494fe08e54e9e581bfd16"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:50:17 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:50:17 2013 -0700"
      },
      "message": "Merge branch \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull SMP/hotplug changes from Ingo Molnar:\n \"This is a pretty large, multi-arch series unifying and generalizing\n  the various disjunct pieces of idle routines that architectures have\n  historically copied from each other and have grown in random, wildly\n  inconsistent and sometimes buggy directions:\n\n   101 files changed, 455 insertions(+), 1328 deletions(-)\n\n  this went through a number of review and test iterations before it was\n  committed, it was tested on various architectures, was exposed to\n  linux-next for quite some time - nevertheless it might cause problems\n  on architectures that don\u0027t read the mailing lists and don\u0027t regularly\n  test linux-next.\n\n  This cat herding excercise was motivated by the -rt kernel, and was\n  brought to you by Thomas \"the Whip\" Gleixner.\"\n\n* \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)\n  idle: Remove GENERIC_IDLE_LOOP config switch\n  um: Use generic idle loop\n  ia64: Make sure interrupts enabled when we \"safe_halt()\"\n  sparc: Use generic idle loop\n  idle: Remove unused ARCH_HAS_DEFAULT_IDLE\n  bfin: Fix typo in arch_cpu_idle()\n  xtensa: Use generic idle loop\n  x86: Use generic idle loop\n  unicore: Use generic idle loop\n  tile: Use generic idle loop\n  tile: Enter idle with preemption disabled\n  sh: Use generic idle loop\n  score: Use generic idle loop\n  s390: Use generic idle loop\n  powerpc: Use generic idle loop\n  parisc: Use generic idle loop\n  openrisc: Use generic idle loop\n  mn10300: Use generic idle loop\n  mips: Use generic idle loop\n  microblaze: Use generic idle loop\n  ...\n"
    },
    {
      "commit": "16fa94b532b1958f508e07eca1a9256351241fbc",
      "tree": "90012a7b7fe2b8cf96f6f5ec12490e0c5e152291",
      "parents": [
        "e0972916e8fe943f342b0dd1c9d43dbf5bc261c2",
        "25f55d9d01ad7a7ad248fd5af1d22675ffd202c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:43:28 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:43:28 2013 -0700"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler changes from Ingo Molnar:\n \"The main changes in this development cycle were:\n\n   - full dynticks preparatory work by Frederic Weisbecker\n\n   - factor out the cpu time accounting code better, by Li Zefan\n\n   - multi-CPU load balancer cleanups and improvements by Joonsoo Kim\n\n   - various smaller fixes and cleanups\"\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (45 commits)\n  sched: Fix init NOHZ_IDLE flag\n  sched: Prevent to re-select dst-cpu in load_balance()\n  sched: Rename load_balance_tmpmask to load_balance_mask\n  sched: Move up affinity check to mitigate useless redoing overhead\n  sched: Don\u0027t consider other cpus in our group in case of NEWLY_IDLE\n  sched: Explicitly cpu_idle_type checking in rebalance_domains()\n  sched: Change position of resched_cpu() in load_balance()\n  sched: Fix wrong rq\u0027s runnable_avg update with rt tasks\n  sched: Document task_struct::personality field\n  sched/cpuacct/UML: Fix header file dependency bug on the UML build\n  cgroup: Kill subsys.active flag\n  sched/cpuacct: No need to check subsys active state\n  sched/cpuacct: Initialize cpuacct subsystem earlier\n  sched/cpuacct: Initialize root cpuacct earlier\n  sched/cpuacct: Allocate per_cpu cpuusage for root cpuacct statically\n  sched/cpuacct: Clean up cpuacct.h\n  sched/cpuacct: Remove redundant NULL checks in cpuacct_acount_field()\n  sched/cpuacct: Remove redundant NULL checks in cpuacct_charge()\n  sched/cpuacct: Add cpuacct_acount_field()\n  sched/cpuacct: Add cpuacct_init()\n  ...\n"
    },
    {
      "commit": "1f889ec62c3f0d8913f3c32f9aff2a1e15099346",
      "tree": "381a74ab73c865ba6d1c77df39898dd4f81cfeef",
      "parents": [
        "6c24499f40d96bf07a85b709fb1bee5cea611a1d",
        "8fcfae31719c0a6c03f2cf63f815b46d378d8be4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:39:01 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:39:01 2013 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU updates from Ingo Molnar:\n \"The main changes in this cycle are mostly related to preparatory work\n  for the full-dynticks work:\n\n   - Remove restrictions on no-CBs CPUs, make RCU_FAST_NO_HZ take\n     advantage of numbered callbacks, do callback accelerations based on\n     numbered callbacks.  Posted to LKML at\n        https://lkml.org/lkml/2013/3/18/960\n\n   - RCU documentation updates.  Posted to LKML at\n        https://lkml.org/lkml/2013/3/18/570\n\n   - Miscellaneous fixes.  Posted to LKML at\n        https://lkml.org/lkml/2013/3/18/594\"\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)\n  rcu: Make rcu_accelerate_cbs() note need for future grace periods\n  rcu: Abstract rcu_start_future_gp() from rcu_nocb_wait_gp()\n  rcu: Rename n_nocb_gp_requests to need_future_gp\n  rcu: Push lock release to rcu_start_gp()\u0027s callers\n  rcu: Repurpose no-CBs event tracing to future-GP events\n  rcu: Rearrange locking in rcu_start_gp()\n  rcu: Make RCU_FAST_NO_HZ take advantage of numbered callbacks\n  rcu: Accelerate RCU callbacks at grace-period end\n  rcu: Export RCU_FAST_NO_HZ parameters to sysfs\n  rcu: Distinguish \"rcuo\" kthreads by RCU flavor\n  rcu: Add event tracing for no-CBs CPUs\u0027 grace periods\n  rcu: Add event tracing for no-CBs CPUs\u0027 callback registration\n  rcu: Introduce proper blocking to no-CBs kthreads GP waits\n  rcu: Provide compile-time control for no-CBs CPUs\n  rcu: Tone down debugging during boot-up and shutdown.\n  rcu: Add softirq-stall indications to stall-warning messages\n  rcu: Documentation update\n  rcu: Make bugginess of code sample more evident\n  rcu: Fix hlist_bl_set_first_rcu() annotation\n  rcu: Delete unused rcu_node \"wakemask\" field\n  ...\n"
    },
    {
      "commit": "ea676e846a8171b8e215627259f485a4e70328cb",
      "tree": "01e489c639bec5a2e84c6f7398176643eee183a7",
      "parents": [
        "c2409b004ac4757ac5121851f8a58e0bcbcf7a3c"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Apr 29 16:18:20 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:20 2013 -0700"
      },
      "message": "init/main.c: convert to pr_foo()\n\nAlso enables cleanup of some 80-col trickery.\n\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c2409b004ac4757ac5121851f8a58e0bcbcf7a3c",
      "tree": "a5537edab10b0ae5f29d16e75ce67df034d8666a",
      "parents": [
        "f91eb62f71b31e69e405663ff8d047bc3b9f7525"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Apr 29 16:18:19 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:20 2013 -0700"
      },
      "message": "init: raise log level\n\nIf the kernel was booted with the \"quiet\" boot option we have currently no\nchance to see why an initrd fails.  Change KERN_WARNING to KERN_ERR to see\nwhat is going on.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f91eb62f71b31e69e405663ff8d047bc3b9f7525",
      "tree": "7a61eb166aa50db4436dcaa3f5d0f385530dcb59",
      "parents": [
        "8543ae1296f6ec1490c7afab6ae0fe97bf87ebf8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Apr 29 16:18:18 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:20 2013 -0700"
      },
      "message": "init: scream bloody murder if interrupts are enabled too early\n\nAs I was testing a lot of my code recently, and having several\n\"successes\", I accidentally noticed in the dmesg this little line:\n\n  start_kernel(): bug: interrupts were enabled *very* early, fixing it\n\nSure enough, one of my patches two commits ago enabled interrupts early.\nThe sad part here is that I never noticed it, and I ran several tests with\nktest too, and ktest did not notice this line.\n\nWhat ktest looks for (and so does many other automated testing scripts) is\na back trace produced by a WARN_ON() or BUG().  As a back trace was never\nproduced, my buggy patch could have slipped into linux-next, or even\nworse, mainline.\n\nAdding a WARN(!irqs_disabled()) makes this bug a little more obvious:\n\n  PID hash table entries: 4096 (order: 3, 32768 bytes)\n  __ex_table already sorted, skipping sort\n  Checking aperture...\n  No AGP bridge found\n  Calgary: detecting Calgary via BIOS EBDA area\n  Calgary: Unable to locate Rio Grande table in EBDA - bailing!\n  Memory: 2003252k/2054848k available (4857k kernel code, 460k absent, 51136k reserved, 6210k data, 1096k init)\n  ------------[ cut here ]------------\n  WARNING: at /home/rostedt/work/git/linux-trace.git/init/main.c:543 start_kernel+0x21e/0x415()\n  Hardware name: To Be Filled By O.E.M.\n  Interrupts were enabled *very* early, fixing it\n  Modules linked in:\n  Pid: 0, comm: swapper/0 Not tainted 3.8.0-test+ #286\n  Call Trace:\n    warn_slowpath_common+0x83/0x9b\n    warn_slowpath_fmt+0x46/0x48\n    start_kernel+0x21e/0x415\n    x86_64_start_reservations+0x10e/0x112\n    x86_64_start_kernel+0x102/0x111\n  ---[ end trace 007d8b0491b4f5d8 ]---\n  Preemptible hierarchical RCU implementation.\n   RCU restricting CPUs from NR_CPUS\u003d8 to nr_cpu_ids\u003d4.\n  NR_IRQS:4352 nr_irqs:712 16\n  Console: colour VGA+ 80x25\n  console [ttyS0] enabled, bootconsole disabled\n\nDo you see it?\n\nThe original version of this patch just slapped a WARN_ON() in there and\nkept the printk().  Ard van Breemen suggested using the WARN() interface,\nwhich makes the code a bit cleaner.\n\nAlso, while examining other warnings in init/main.c, I found two other\nlocations that deserve a bloody murder scream if their conditions are hit,\nand updated them accordingly.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ard van Breemen \u003card@telegraafnet.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c58b0df12a6b5c497637db0676effd00e1fbab13",
      "tree": "fcceffefccc7c2e33d87406a5e4531c4c613a5ec",
      "parents": [
        "65e709dc0c25dbd563861924815e9a3a93878b75"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Apr 26 15:16:31 2013 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Apr 26 18:56:59 2013 +0200"
      },
      "message": "nohz: Select VIRT_CPU_ACCOUNTING_GEN from full dynticks config\n\nTurn the full dynticks passive dependency on VIRT_CPU_ACCOUNTING_GEN\nto an active one.\n\nThe full dynticks Kconfig is currently hidden behind the full dynticks\ncputime accounting, which is an awkward and counter-intuitive layout:\nthe user first has to select the dynticks cputime accounting in order\nto make the full dynticks feature to be visible.\n\nWe definetly want it the other way around. The usual way to perform\nthis kind of active dependency is use \"select\" on the depended target.\nNow we can\u0027t use the Kconfig \"select\" instruction when the target is\na \"choice\".\n\nSo this patch inspires on how the RCU subsystem Kconfig interact\nwith its dependencies on SMP and PREEMPT: we make sure that cputime\naccounting can\u0027t propose another option than VIRT_CPU_ACCOUNTING_GEN\nwhen NO_HZ_FULL is selected by using the right \"depends on\" instruction\nfor each cputime accounting choices.\n\nv2: Keep full dynticks cputime accounting available even without\nfull dynticks, as per Paul McKenney\u0027s suggestion.\n\nReported-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Hakan Akkan \u003chakanakkan@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6402c7dc2a19c19bd8cdc7d80878b850da418942",
      "tree": "cda2ea2df40442e2aa016119f3548cc504127ea8",
      "parents": [
        "77c675ba18836802f6b73d2d773481d06ebc0f04",
        "60d509fa6a9c4653a86ad830e4c4b30360b23f0e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 24 20:33:46 2013 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 24 20:33:54 2013 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into timers/core\nReason: Get upstream fixes before adding conflicting code.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d1e43fa5f8bb25f83a86a29f11fcfb57ed4d7566",
      "tree": "9eff00255c1061248b6aef2c8341ea527610150c",
      "parents": [
        "0453b435df0d69dd0d8c42eb9b3015aaf0d8a032"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Mar 26 23:47:24 2013 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Apr 19 13:54:04 2013 +0200"
      },
      "message": "nohz: Ensure full dynticks CPUs are RCU nocbs\n\nWe need full dynticks CPU to also be RCU nocb so\nthat we don\u0027t have to keep the tick to handle RCU\ncallbacks.\n\nMake sure the range passed to nohz_full\u003d boot\nparameter is a subset of rcu_nocbs\u003d\n\nThe CPUs that fail to meet this requirement will be\nexcluded from the nohz_full range. This is checked\nearly in boot time, before any CPU has the opportunity\nto stop its tick.\n\nSuggested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Geoff Levand \u003cgeoff@infradead.org\u003e\nCc: Gilad Ben Yossef \u003cgilad@benyossef.com\u003e\nCc: Hakan Akkan \u003chakanakkan@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8fcfae31719c0a6c03f2cf63f815b46d378d8be4",
      "tree": "3da9d65885de6a2b046fbd5eebc0d19def0c1e2c",
      "parents": [
        "d02a9a89db3437467de45a451739e520877f4a48",
        "6d87669357936bffa1e8fea7a4e7743e76905736"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Apr 10 12:55:49 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Apr 10 12:55:49 2013 +0200"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu\n\nPull RCU updates from Paul E. McKenney:\n\n  * Remove restrictions on no-CBs CPUs, make RCU_FAST_NO_HZ\n    take advantage of numbered callbacks, do additional callback\n    accelerations based on numbered callbacks.  Posted to LKML\n    at https://lkml.org/lkml/2013/3/18/960.\n\n  * RCU documentation updates.  Posted to LKML at\n    https://lkml.org/lkml/2013/3/18/570.\n\n  * Miscellaneous fixes.  Posted to LKML at\n    https://lkml.org/lkml/2013/3/18/594.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "a1a04ec3c7c27a682473fd9beb2c996316a64649",
      "tree": "9075a4b4c001f81283b2a7d5c1668dee134ec81d",
      "parents": [
        "3a98f871ecaf44806e188184332c3fec27c8f08c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 21 22:49:34 2013 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Apr 08 17:39:23 2013 +0200"
      },
      "message": "idle: Provide a generic entry point for the idle code\n\nFor now this calls cpu_idle(), but in the long run we want to move the\ncpu bringup code to the core and therefor we add a state argument.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Paul McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nReviewed-by: Cc: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Magnus Damm \u003cmagnus.damm@gmail.com\u003e\nLink: http://lkml.kernel.org/r/20130321215233.583190032@linutronix.de\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3451d0243c3cdfd729b36f9684a14659d4895ca3",
      "tree": "5307f4492708ae089dd0a6d81b54f9e606707ca8",
      "parents": [
        "ab71d36ddb9e60d4ddb28a187718815d38c3c666"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 10 23:21:01 2011 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Apr 03 13:56:03 2013 +0200"
      },
      "message": "nohz: Rename CONFIG_NO_HZ to CONFIG_NO_HZ_COMMON\n\nWe are planning to convert the dynticks Kconfig options layout\ninto a choice menu. The user must be able to easily pick\nany of the following implementations: constant periodic tick,\nidle dynticks, full dynticks.\n\nAs this implies a mutual exclusion, the two dynticks implementions\nneed to converge on the selection of a common Kconfig option in order\nto ease the sharing of a common infrastructure.\n\nIt would thus seem pretty natural to reuse CONFIG_NO_HZ to\nthat end. It already implements all the idle dynticks code\nand the full dynticks depends on all that code for now.\nSo ideally the choice menu would propose CONFIG_NO_HZ_IDLE and\nCONFIG_NO_HZ_EXTENDED then both would select CONFIG_NO_HZ.\n\nOn the other hand we want to stay backward compatible: if\nCONFIG_NO_HZ is set in an older config file, we want to\nenable CONFIG_NO_HZ_IDLE by default.\n\nBut we can\u0027t afford both at the same time or we run into\na circular dependency:\n\n1) CONFIG_NO_HZ_IDLE and CONFIG_NO_HZ_EXTENDED both select\n   CONFIG_NO_HZ\n2) If CONFIG_NO_HZ is set, we default to CONFIG_NO_HZ_IDLE\n\nWe might be able to support that from Kconfig/Kbuild but it\nmay not be wise to introduce such a confusing behaviour.\n\nSo to solve this, create a new CONFIG_NO_HZ_COMMON option\nwhich gathers the common code between idle and full dynticks\n(that common code for now is simply the idle dynticks code)\nand select it from their referring Kconfig.\n\nThen we\u0027ll later create CONFIG_NO_HZ_IDLE and map CONFIG_NO_HZ\nto it for backward compatibility.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Geoff Levand \u003cgeoff@infradead.org\u003e\nCc: Gilad Ben Yossef \u003cgilad@benyossef.com\u003e\nCc: Hakan Akkan \u003chakanakkan@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c0f4dfd4f90f1667d234d21f15153ea09a2eaa66",
      "tree": "e06fa6eef015a373849855249752ec525ca8ad4b",
      "parents": [
        "b11cc5760a9c48c870ad286e8a6d8fdb998fa58d"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Fri Dec 28 11:30:36 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 26 08:04:51 2013 -0700"
      },
      "message": "rcu: Make RCU_FAST_NO_HZ take advantage of numbered callbacks\n\nBecause RCU callbacks are now associated with the number of the grace\nperiod that they must wait for, CPUs can now take advance callbacks\ncorresponding to grace periods that ended while a given CPU was in\ndyntick-idle mode.  This eliminates the need to try forcing the RCU\nstate machine while entering idle, thus reducing the CPU intensiveness\nof RCU_FAST_NO_HZ, which should increase its energy efficiency.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "a488985851cf2facd2227bd982cc2c251df56268",
      "tree": "450d84d1fc01bd7997b651e47d2587fac5c6f085",
      "parents": [
        "09c7b890622d72b5e004cc249bbe610e8b928ddf"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Mon Dec 03 08:16:28 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 26 08:04:48 2013 -0700"
      },
      "message": "rcu: Distinguish \"rcuo\" kthreads by RCU flavor\n\nCurrently, the per-no-CBs-CPU kthreads are named \"rcuo\" followed by\nthe CPU number, for example, \"rcuo\".  This is problematic given that\nthere are either two or three RCU flavors, each of which gets a per-CPU\nkthread with exactly the same name.  This commit therefore introduces\na one-letter abbreviation for each RCU flavor, namely \u0027b\u0027 for RCU-bh,\n\u0027p\u0027 for RCU-preempt, and \u0027s\u0027 for RCU-sched.  This abbreviation is used\nto distinguish the \"rcuo\" kthreads, for example, for CPU 0 we would have\n\"rcuob/0\", \"rcuop/0\", and \"rcuos/0\".\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Dietmar Eggemann \u003cdietmar.eggemann@arm.com\u003e\n"
    },
    {
      "commit": "911af505ef407c2511106c224dd640f882f0f590",
      "tree": "00656ef4be8d1195a568951333dd9618265c6435",
      "parents": [
        "34ed62461ae4970695974afb9a60ac3df0086830"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Mon Feb 11 10:23:27 2013 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 26 08:04:43 2013 -0700"
      },
      "message": "rcu: Provide compile-time control for no-CBs CPUs\n\nCurrently, the only way to specify no-CBs CPUs is via the rcu_nocbs\nkernel command-line parameter.  This is inconvenient in some cases,\nparticularly for randconfig testing, so this commit adds a new set of\nkernel configuration parameters.  CONFIG_RCU_NOCB_CPU_NONE (the default)\nretains the old behavior, CONFIG_RCU_NOCB_CPU_ZERO offloads callback\nprocessing from CPU 0 (along with any other CPUs specified by the\nrcu_nocbs boot-time parameter), and CONFIG_RCU_NOCB_CPU_ALL offloads\ncallback processing from all CPUs.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "3d374d09f16f64ab4d71704cbe621514d36cd0b1",
      "tree": "4183c1b939a0a4a6bab29e5c9acbd5891489f928",
      "parents": [
        "9d1817cab2f030f6af360e961cc69bb1da8ad765"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Wed Mar 06 12:35:31 2013 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Mar 12 16:30:27 2013 -0700"
      },
      "message": "final removal of CONFIG_EXPERIMENTAL\n\nRemove \"config EXPERIMENTAL\" itself, now that every \"depends on\" it has\nbeen removed from the tree.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "34ed62461ae4970695974afb9a60ac3df0086830",
      "tree": "d65a582953a66ee089074fd5a57e39460d4ce2c6",
      "parents": [
        "f6161aa153581da4a3867a2d1a7caf4be19b6ec9"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Mon Jan 07 13:37:42 2013 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 12 11:17:51 2013 -0700"
      },
      "message": "rcu: Remove restrictions on no-CBs CPUs\n\nCurrently, CPU 0 is constrained to not be a no-CBs CPU, and furthermore\nat least one no-CBs CPU must remain online at any given time.  These\nrestrictions are problematic in some situations, such as cases where\nall CPUs must run a real-time workload that needs to be insulated from\nOS jitter and latencies due to RCU callback invocation.  This commit\ntherefore provides no-CBs CPUs a (very crude and energy-inefficient)\nway to start and to wait for grace periods independently of the normal\nRCU callback mechanisms.  This approach allows any or all of the CPUs to\nbe designated as no-CBs CPUs, and allows any proper subset of the CPUs\n(whether no-CBs CPUs or not) to be offlined.\n\nThis commit also provides a fix for a locking bug spotted by Xie\nChanglongX \u003cchanglongx.xie@intel.com\u003e.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "8b43876643a737bb74a0e1e557f634eb2453948b",
      "tree": "00069e6daa2eb10a7f54dbb2eee1f4319e7b1d69",
      "parents": [
        "9fbc42eac1f6917081dc3b39922b2f1c57fdff28"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Feb 26 15:37:59 2013 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Mar 07 17:10:41 2013 +0100"
      },
      "message": "context_tracking: Enable probes by default for selftesting\n\nUntil we provide the nohz_mask boot parameter, keeping\nthe context tracking probes disabled by default is pointless\nsince what we want is to runtime test this code anyway.\n\nIt\u0027s furthermore confusing for the users which don\u0027t expect\nthe probes to be off when they select RCU user mode or full\ndynticks cputime accounting.\n\nLet\u0027s enable these probes selftests by default for now.\n\nSuggested: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Kevin Hilman \u003ckhilman@linaro.org\u003e\nCc: Mats Liljegren \u003cmats.liljegren@enea.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "ad2b13536ace08dfcca4cf86b75a5d06efe06373",
      "tree": "b518daf029f3337ed438d620538129e95ded31ab",
      "parents": [
        "6dbe51c251a327e012439c4772097a13df43c5b8"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 05 15:14:05 2013 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 07 16:13:25 2013 +0100"
      },
      "message": "tick: Call tick_init late\n\nTo convert the clockevents code to cpumask_var_t we need to move the\ninit call after the allocator setup. \n\nClockevents are earliest registered from time_init() as they need\ninterrupts being set up, so this is safe.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20130306111537.304379448@linutronix.de\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "e23b62256a361611cbd45cd1456638f1a5106b5c",
      "tree": "472968c961432a1d9d0c3634ca20433f1d9cd29b",
      "parents": [
        "aebb2afd5420c860b7fbc3882a323ef1247fbf16",
        "8ccfe6675fa974bd06d64f74d0fdee6a5267d2aa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 07:58:56 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 07:58:56 2013 -0800"
      },
      "message": "Merge tag \u0027arc-v3.9-rc1-late\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc\n\nPull new ARC architecture from Vineet Gupta:\n \"Initial ARC Linux port with some fixes on top for 3.9-rc1:\n\n  I would like to introduce the Linux port to ARC Processors (from\n  Synopsys) for 3.9-rc1.  The patch-set has been discussed on the public\n  lists since Nov and has received a fair bit of review, specially from\n  Arnd, tglx, Al and other subsystem maintainers for DeviceTree, kgdb...\n\n  The arch bits are in arch/arc, some asm-generic changes (acked by\n  Arnd), a minor change to PARISC (acked by Helge).\n\n  The series is a touch bigger for a new port for 2 main reasons:\n\n   1. It enables a basic kernel in first sub-series and adds\n      ptrace/kgdb/.. later\n\n   2. Some of the fallout of review (DeviceTree support, multi-platform-\n      image support) were added on top of orig series, primarily to\n      record the revision history.\n\n  This updated pull request additionally contains\n\n   - fixes due to our GNU tools catching up with the new syscall/ptrace\n     ABI\n\n   - some (minor) cross-arch Kconfig updates.\"\n\n* tag \u0027arc-v3.9-rc1-late\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (82 commits)\n  ARC: split elf.h into uapi and export it for userspace\n  ARC: Fixup the current ABI version\n  ARC: gdbserver using regset interface possibly broken\n  ARC: Kconfig cleanup tracking cross-arch Kconfig pruning in merge window\n  ARC: make a copy of flat DT\n  ARC: [plat-arcfpga] DT arc-uart bindings change: \"baud\" \u003d\u003e \"current-speed\"\n  ARC: Ensure CONFIG_VIRT_TO_BUS is not enabled\n  ARC: Fix pt_orig_r8 access\n  ARC: [3.9] Fallout of hlist iterator update\n  ARC: 64bit RTSC timestamp hardware issue\n  ARC: Don\u0027t fiddle with non-existent caches\n  ARC: Add self to MAINTAINERS\n  ARC: Provide a default serial.h for uart drivers needing BASE_BAUD\n  ARC: [plat-arcfpga] defconfig for fully loaded ARC Linux\n  ARC: [Review] Multi-platform image #8: platform registers SMP callbacks\n  ARC: [Review] Multi-platform image #7: SMP common code to use callbacks\n  ARC: [Review] Multi-platform image #6: cpu-to-dma-addr optional\n  ARC: [Review] Multi-platform image #5: NR_IRQS defined by ARC core\n  ARC: [Review] Multi-platform image #4: Isolate platform headers\n  ARC: [Review] Multi-platform image #3: switch to board callback\n  ...\n"
    },
    {
      "commit": "94f2f14234178f118545a0be60a6371ddeb229b7",
      "tree": "313af6e9e255e9060fc24c836cd71ce712502b17",
      "parents": [
        "8d168f71551ec2a6528d01d0389b7a73c091e3e7",
        "139321c65c0584cd65c4c87a5eb3fdb4fdbd0e19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 16:00:49 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 16:00:49 2013 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace\n\nPull user namespace and namespace infrastructure changes from Eric W Biederman:\n \"This set of changes starts with a few small enhnacements to the user\n  namespace.  reboot support, allowing more arbitrary mappings, and\n  support for mounting devpts, ramfs, tmpfs, and mqueuefs as just the\n  user namespace root.\n\n  I do my best to document that if you care about limiting your\n  unprivileged users that when you have the user namespace support\n  enabled you will need to enable memory control groups.\n\n  There is a minor bug fix to prevent overflowing the stack if someone\n  creates way too many user namespaces.\n\n  The bulk of the changes are a continuation of the kuid/kgid push down\n  work through the filesystems.  These changes make using uids and gids\n  typesafe which ensures that these filesystems are safe to use when\n  multiple user namespaces are in use.  The filesystems converted for\n  3.9 are ceph, 9p, afs, ocfs2, gfs2, ncpfs, nfs, nfsd, and cifs.  The\n  changes for these filesystems were a little more involved so I split\n  the changes into smaller hopefully obviously correct changes.\n\n  XFS is the only filesystem that remains.  I was hoping I could get\n  that in this release so that user namespace support would be enabled\n  with an allyesconfig or an allmodconfig but it looks like the xfs\n  changes need another couple of days before it they are ready.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (93 commits)\n  cifs: Enable building with user namespaces enabled.\n  cifs: Convert struct cifs_ses to use a kuid_t and a kgid_t\n  cifs: Convert struct cifs_sb_info to use kuids and kgids\n  cifs: Modify struct smb_vol to use kuids and kgids\n  cifs: Convert struct cifsFileInfo to use a kuid\n  cifs: Convert struct cifs_fattr to use kuid and kgids\n  cifs: Convert struct tcon_link to use a kuid.\n  cifs: Modify struct cifs_unix_set_info_args to hold a kuid_t and a kgid_t\n  cifs: Convert from a kuid before printing current_fsuid\n  cifs: Use kuids and kgids SID to uid/gid mapping\n  cifs: Pass GLOBAL_ROOT_UID and GLOBAL_ROOT_GID to keyring_alloc\n  cifs: Use BUILD_BUG_ON to validate uids and gids are the same size\n  cifs: Override unmappable incoming uids and gids\n  nfsd: Enable building with user namespaces enabled.\n  nfsd: Properly compare and initialize kuids and kgids\n  nfsd: Store ex_anon_uid and ex_anon_gid as kuids and kgids\n  nfsd: Modify nfsd4_cb_sec to use kuids and kgids\n  nfsd: Handle kuids and kgids in the nfs4acl to posix_acl conversion\n  nfsd: Convert nfsxdr to use kuids and kgids\n  nfsd: Convert nfs3xdr to use kuids and kgids\n  ...\n"
    },
    {
      "commit": "9043a2650cd21f96f831a97f516c2c302e21fb70",
      "tree": "926720afb0acc7bad8cfcae537dc58de552f9249",
      "parents": [
        "ab7826595e9ec51a51f622c5fc91e2f59440481a",
        "d9d8d7ed498ec65bea72dd24be7b9cd35af0c200"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 15:41:43 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 15:41:43 2013 -0800"
      },
      "message": "Merge tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module update from Rusty Russell:\n \"The sweeping change is to make add_taint() explicitly indicate whether\n  to disable lockdep, but it\u0027s a mechanical change.\"\n\n* tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  MODSIGN: Add option to not sign modules during modules_install\n  MODSIGN: Add -s \u003csignature\u003e option to sign-file\n  MODSIGN: Specify the hash algorithm on sign-file command line\n  MODSIGN: Simplify Makefile with a Kconfig helper\n  module: clean up load_module a little more.\n  modpost: Ignore ARC specific non-alloc sections\n  module: constify within_module_*\n  taint: add explicit flag to show whether lock dep is still OK.\n  module: printk message when module signature fail taints kernel.\n"
    },
    {
      "commit": "27ea6dfdc23e5e96e324d6cb3488528c14e4a7f7",
      "tree": "f3a77ed29e1cecd1f401b86384b322f1b005ef0b",
      "parents": [
        "81ec44a6c69342fec1b1140c60a604027e429f69",
        "cc883afcc02e1c9c8ab64d20f0288355b857f966"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:55:48 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:55:48 2013 -0800"
      },
      "message": "Merge tag \u0027please-pull-misc-3.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux\n\nPull misc ia64 bits from Tony Luck.\n\n* tag \u0027please-pull-misc-3.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:\n  MAINTAINERS: update SGI \u0026 ia64 Altix stuff\n  sysctl: Enable IA64 \"ignore-unaligned-usertrap\" to be used cross-arch\n"
    },
    {
      "commit": "06991c28f37ad68e5c03777f5c3b679b56e3dac1",
      "tree": "4be75788e21c3c644fe6d39abf47693a171cf4f8",
      "parents": [
        "460dc1eecf37263c8e3b17685ef236f0d236facb",
        "74fef7a8fd1d2bd94f925d6638bb4c3049e7c381"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 12:05:51 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 12:05:51 2013 -0800"
      },
      "message": "Merge tag \u0027driver-core-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core patches from Greg Kroah-Hartman:\n \"Here is the big driver core merge for 3.9-rc1\n\n  There are two major series here, both of which touch lots of drivers\n  all over the kernel, and will cause you some merge conflicts:\n\n   - add a new function called devm_ioremap_resource() to properly be\n     able to check return values.\n\n   - remove CONFIG_EXPERIMENTAL\n\n  Other than those patches, there\u0027s not much here, some minor fixes and\n  updates\"\n\nFix up trivial conflicts\n\n* tag \u0027driver-core-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits)\n  base: memory: fix soft/hard_offline_page permissions\n  drivercore: Fix ordering between deferred_probe and exiting initcalls\n  backlight: fix class_find_device() arguments\n  TTY: mark tty_get_device call with the proper const values\n  driver-core: constify data for class_find_device()\n  firmware: Ignore abort check when no user-helper is used\n  firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER\n  firmware: Make user-mode helper optional\n  firmware: Refactoring for splitting user-mode helper code\n  Driver core: treat unregistered bus_types as having no devices\n  watchdog: Convert to devm_ioremap_resource()\n  thermal: Convert to devm_ioremap_resource()\n  spi: Convert to devm_ioremap_resource()\n  power: Convert to devm_ioremap_resource()\n  mtd: Convert to devm_ioremap_resource()\n  mmc: Convert to devm_ioremap_resource()\n  mfd: Convert to devm_ioremap_resource()\n  media: Convert to devm_ioremap_resource()\n  iommu: Convert to devm_ioremap_resource()\n  drm: Convert to devm_ioremap_resource()\n  ...\n"
    }
  ],
  "next": "ece8e0b2f9c980e5511fe8db2d68c6f1859b9d83"
}
