{"push_id":1107469888,"size":10,"distinct_size":0,"ref":"refs/heads/caf/torvalds/master","head":"c5114626f33b62fa7595e57d87f33d9d1f8298a2","before":"2d0bd9534c8ddaebee64e1b4b7d621915f65e994","commits":[{"sha":"1e398eae8407abdc02cde8a449b14d17ed193d56","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"PCI: Fix BUG on device attach failure\n\nPreviously when pci_bus_add_device() called device_attach() and it returned\na negative value, we emitted a WARN but carried on.\n\nCommit ab1a187bba5c (\"PCI: Check device_attach() return value always\"),\nintroduced in Linux 4.6-rc1, changed this to unwind all steps preceding\ndevice_attach() and to not set dev->is_added = 1.\n\nThe latter leads to a BUG if pci_bus_add_device() was called from\npci_bus_add_devices().  Fix by not recursing to a child bus if\ndevice_attach() failed for the bridge leading to it.\n\nThis can be triggered by plugging in a PCI device (e.g. Thunderbolt) while\nthe system is asleep.  The system locks up when woken because\ndevice_attach() returns -EPROBE_DEFER.\n\nFixes: ab1a187bba5c (\"PCI: Check device_attach() return value always\")\nSigned-off-by: Lukas Wunner <lukas@wunner.de>\nSigned-off-by: Bjorn Helgaas <bhelgaas@google.com>\nAcked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/1e398eae8407abdc02cde8a449b14d17ed193d56"},{"sha":"9a2a5a638f8eb9c612a7a9af0afab93f506f6ba4","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"PCI: Do not treat EPROBE_DEFER as device attach failure\n\nLinux 4.5 introduced a behavioral change in device probing during the\nsuspend process with commit 013c074f8642 (\"PM / sleep: prohibit devices\nprobing during suspend/hibernation\"): It defers device probing during the\nentire suspend process, starting from the prepare phase and ending with the\ncomplete phase.  A rule existed before that \"we rely on subsystems not to\ndo any probing once a device is suspended\" but it is enforced only now\n(Alan Stern, https://lkml.org/lkml/2015/9/15/908).\n\nThis resulted in a WARN splat if a PCI device (e.g., Thunderbolt) is\nplugged in while the system is asleep: Upon waking up, pciehp_resume()\ndiscovers new devices in the resume phase and immediately tries to bind\nthem to a driver.  Since probing is now deferred, device_attach() returns\n-EPROBE_DEFER, which provoked a WARN in pci_bus_add_device().\n\nLinux 4.6-rc1 aggravates the situation with commit ab1a187bba5c (\"PCI:\nCheck device_attach() return value always\"): If device_attach() returns a\nnegative value, pci_bus_add_device() now removes the sysfs and procfs\nentries for the device and pci_bus_add_devices() subsequently locks up with\na BUG.  Even with the BUG fixed we're still in trouble because the device\nremains on the deferred probing list even though its sysfs and procfs\nentries are gone and its children won't be added.\n\nFix by not interpreting -EPROBE_DEFER as failure.  The device will be\nprobed eventually (through device_unblock_probing() in dpm_complete()) and\nthere is proper locking in place to avoid races (e.g., if devices are\nunplugged again und thus deleted from the system before deferred probing\nhappens, I have tested this).  Also, those functions which dereference\ndev->driver (e.g. pci_pm_*()) do contain proper NULL pointer checks.  So it\nseems safe to ignore -EPROBE_DEFER.\n\nFixes: ab1a187bba5c (\"PCI: Check device_attach() return value always\")\nSigned-off-by: Lukas Wunner <lukas@wunner.de>\nSigned-off-by: Bjorn Helgaas <bhelgaas@google.com>\nAcked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nCc: Grygorii Strashko <grygorii.strashko@ti.com>\nCc: Alan Stern <stern@rowland.harvard.edu>","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/9a2a5a638f8eb9c612a7a9af0afab93f506f6ba4"},{"sha":"536bd00cdbb7b908573e5a93bae67b64cbae60d8","author":{"email":"27ffc44a8ec6a212fba98cfc3246c6ce8ab131e0@intel.com","name":"Rafael J. Wysocki"},"message":"sched/fair: Fix !CONFIG_SMP kernel cpufreq governor breakage\n\nThe following commit:\n\n  34e2c555f3e1 (\"cpufreq: Add mechanism for registering utilization update callbacks\")\n\noverlooked the fact that update_load_avg(), where CFS invokes cpufreq\nutilization update callbacks, becomes an empty stub on UP kernels.\n\nIn consequence, if !CONFIG_SMP, cpufreq governors are never invoked\nfrom CFS and they do not have a chance to evaluate CPU performace\nlevels and update them often enough.\n\nNeedless to say, things don't work as expected then.\n\nFix the problem by making the !CONFIG_SMP stub of update_load_avg()\ninvoke cpufreq update callbacks too.\n\nReported-by: Steve Muckle <steve.muckle@linaro.org>\nTested-by: Steve Muckle <steve.muckle@linaro.org>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nAcked-by: Steve Muckle <steve.muckle@linaro.org>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Linux PM list <linux-pm@vger.kernel.org>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: Viresh Kumar <viresh.kumar@linaro.org>\nFixes: 34e2c555f3e1 (cpufreq: Add mechanism for registering utilization update callbacks)\nLink: http://lkml.kernel.org/r/6282396.VVEdgVYxO3@vostro.rjw.lan\nSigned-off-by: Ingo Molnar <mingo@kernel.org>","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/536bd00cdbb7b908573e5a93bae67b64cbae60d8"},{"sha":"56402d63eefe22179f7311a51ff2094731420406","author":{"email":"00e4cf8f46a57000a44449bf9dd8cbbcc209fd2a@linutronix.de","name":"Thomas Gleixner"},"message":"x86/topology: Handle CPUID bogosity gracefully\n\nJoseph reported that a XEN guest dies with a division by 0 in the package\ntopology setup code. This happens if cpu_info.x86_max_cores is zero.\n\nHandle that case and emit a warning. This does not fix the underlying XEN bug,\nbut makes the code more robust.\n\nReported-and-tested-by: Joseph Salisbury <joseph.salisbury@canonical.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Boris Ostrovsky <boris.ostrovsky@oracle.com>\nCc: David Vrabel <david.vrabel@citrix.com>\nLink: http://lkml.kernel.org/r/alpine.DEB.2.11.1605062046270.3540@nanos\nSigned-off-by: Thomas Gleixner <tglx@linutronix.de>","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/56402d63eefe22179f7311a51ff2094731420406"},{"sha":"4abac0d0bbc628df5f26845fe05ffc6b3a6533dd","author":{"email":"9dbbbf0688fedc85ad4da37637f1a64b8c718ee2@kernel.org","name":"Ingo Molnar"},"message":"MAINTAINERS: Add mmiotrace entry\n\nThe Nouveau maintainers would like to follow and review mmiotrace\nchanges as well, so create a separate entry for that code. The high\nlevel bits are living in the tracing code, the low level bits in the\nx86 code.\n\nAcked-by: Steven Rostedt <rostedt@goodmis.org>\nAcked-by: Pekka Paalanen <ppaalanen@gmail.com>\nAcked-by: karol herbst <karolherbst@gmail.com>\nCc: linux-kernel@vger.kernel.org\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Andrew Morton <akpm@linux-foundation.org>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: Peter Zijlstra <peterz@infradead.org>\nSigned-off-by: Ingo Molnar <mingo@kernel.org>","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/4abac0d0bbc628df5f26845fe05ffc6b3a6533dd"},{"sha":"8d415ee225a3d15d3e3029524350e8237a4de7b8","author":{"email":"00e4cf8f46a57000a44449bf9dd8cbbcc209fd2a@linutronix.de","name":"Thomas Gleixner"},"message":"x86/topology: Set x86_max_cores to 1 for CONFIG_SMP=n\n\nJosef reported that the uncore driver trips over with CONFIG_SMP=n because\nx86_max_cores is 16 instead of 12.\n\nThe reason is, that for SMP=n the extended topology detection is a NOOP and\nthe cache leaf is used to determine the number of cores. That's wrong in two\naspects:\n\n1) The cache leaf enumerates the maximum addressable number of cores in the\n   package, which is obviously not correct\n\n2) UP has no business with topology bits at all.\n\nMake intel_num_cpu_cores() return 1 for CONFIG_SMP=n\n\nReported-by: Josef Bacik <jbacik@fb.com>\nSigned-off-by: Thomas Gleixner <tglx@linutronix.de>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: kernel-team <Kernel-team@fb.com>\nCc: Kan Liang <kan.liang@intel.com>\nLink: http://lkml.kernel.org/r/761b4a2a-0332-7954-f030-c6639f949612@fb.com","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/8d415ee225a3d15d3e3029524350e8237a4de7b8"},{"sha":"13b5ab02ae118fc8dfdc2b8597688ec4a11d5b53","author":{"email":"eb0fe57749fb5220e81e6a8f7e0e28cd1ade30e9@redhat.com","name":"Xunlei Pang"},"message":"sched/rt, sched/dl: Don't push if task's scheduling class was changed\n\nWe got this warning:\n\n    WARNING: CPU: 1 PID: 2468 at kernel/sched/core.c:1161 set_task_cpu+0x1af/0x1c0\n    [...]\n    Call Trace:\n\n    dump_stack+0x63/0x87\n    __warn+0xd1/0xf0\n    warn_slowpath_null+0x1d/0x20\n    set_task_cpu+0x1af/0x1c0\n    push_dl_task.part.34+0xea/0x180\n    push_dl_tasks+0x17/0x30\n    __balance_callback+0x45/0x5c\n    __sched_setscheduler+0x906/0xb90\n    SyS_sched_setattr+0x150/0x190\n    do_syscall_64+0x62/0x110\n    entry_SYSCALL64_slow_path+0x25/0x25\n\nThis corresponds to:\n\n    WARN_ON_ONCE(p->state == TASK_RUNNING &&\n             p->sched_class == &fair_sched_class &&\n             (p->on_rq && !task_on_rq_migrating(p)))\n\nIt happens because in find_lock_later_rq(), the task whose scheduling\nclass was changed to fair class is still pushed away as if it were\na deadline task ...\n\nSo, check in find_lock_later_rq() after double_lock_balance(), if the\nscheduling class of the deadline task was changed, break and retry.\n\nApply the same logic to RT tasks.\n\nSigned-off-by: Xunlei Pang <xlpang@redhat.com>\nReviewed-by: Steven Rostedt <rostedt@goodmis.org>\nAcked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Steven Rostedt <rostedt@goodmis.org>\nCc: Juri Lelli <juri.lelli@arm.com>\nLink: http://lkml.kernel.org/r/1462767091-1215-1-git-send-email-xlpang@redhat.com\nSigned-off-by: Ingo Molnar <mingo@kernel.org>","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/13b5ab02ae118fc8dfdc2b8597688ec4a11d5b53"},{"sha":"ac2440654df6ac7314e2f8819fe05e7c863a2392","author":{"email":"69652caca27c8b940640ad396ab71f93cacec34f@linux-foundation.org","name":"Linus Torvalds"},"message":"Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fixes from Ingo Molnar:\n \"A UP kernel cpufreq fix and a rt/dl scheduler corner case fix\"\n\n* 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched/rt, sched/dl: Don't push if task's scheduling class was changed\n  sched/fair: Fix !CONFIG_SMP kernel cpufreq governor breakage","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/ac2440654df6ac7314e2f8819fe05e7c863a2392"},{"sha":"7ec02e3bf45e0e7502db7f8d50c19abc1ebbab00","author":{"email":"69652caca27c8b940640ad396ab71f93cacec34f@linux-foundation.org","name":"Linus Torvalds"},"message":"Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 fixes from Ingo Molnar:\n \"Two topology corner case fixes, and a MAINTAINERS file update for\n  mmiotrace maintenance\"\n\n* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/topology: Set x86_max_cores to 1 for CONFIG_SMP=n\n  MAINTAINERS: Add mmiotrace entry\n  x86/topology: Handle CPUID bogosity gracefully","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/7ec02e3bf45e0e7502db7f8d50c19abc1ebbab00"},{"sha":"c5114626f33b62fa7595e57d87f33d9d1f8298a2","author":{"email":"69652caca27c8b940640ad396ab71f93cacec34f@linux-foundation.org","name":"Linus Torvalds"},"message":"Merge tag 'pci-v4.6-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci\n\nPull PCI fixes from Bjorn Helgaas:\n \"Since v4.5, we've WARNed during resume if a PCI device, including a\n  Thunderbolt device, was added while we were suspended.  A change we\n  merged for v4.6-rc1 turned that warning into a system hang.  These\n  enumeration patches from Lukas Wunner fix this issue:\n\n   - Fix BUG on device attach failure\n   - Do not treat EPROBE_DEFER as device attach failure\"\n\n* tag 'pci-v4.6-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:\n  PCI: Do not treat EPROBE_DEFER as device attach failure\n  PCI: Fix BUG on device attach failure","distinct":false,"url":"https://api.github.com/repos/olivieer/kernel_msm-3.10/commits/c5114626f33b62fa7595e57d87f33d9d1f8298a2"}]}