{"push_id":866910571,"size":1000,"distinct_size":0,"ref":"refs/heads/next","head":"8005c49d9aea74d382f474ce11afbbc7d7130bec","before":"3b0e21ec3b22ab5eced5331eaf55949006f22687","commits":[{"sha":"7343dd61fd1b57c40cc06a5b5b5386df7f73c3ac","author":{"email":"ee937cfcc16cf790ab2b37c6354b6c3019afbce8@gmail.com","name":"Justin Maggard"},"message":"btrfs: qgroup: exit the rescan worker during umount\n\nI was hitting a consistent NULL pointer dereference during shutdown that\nshowed the trace running through end_workqueue_bio().  I traced it back to\nthe endio_meta_workers workqueue being poked after it had already been\ndestroyed.\n\nEventually I found that the root cause was a qgroup rescan that was still\nin progress while we were stopping all the btrfs workers.\n\nCurrently we explicitly pause balance and scrub operations in\nclose_ctree(), but we do nothing to stop the qgroup rescan.  We should\nprobably be doing the same for qgroup rescan, but that's a much larger\nchange.  This small change is good enough to allow me to unmount without\ncrashing.\n\nSigned-off-by: Justin Maggard <jmaggard@netgear.com>\nReviewed-by: Filipe Manana <fdmanana@suse.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/7343dd61fd1b57c40cc06a5b5b5386df7f73c3ac"},{"sha":"190631f1c8cb7e4d5c27ff87e22ed53817e78759","author":{"email":"e0fcd583df77ec6c08e6d1257619cc1216ddc994@suse.com","name":"Filipe Manana"},"message":"Btrfs: fix race waiting for qgroup rescan worker\n\nWe were initializing the completion (fs_info->qgroup_rescan_completion)\nobject after releasing the qgroup rescan lock, which gives a small time\nwindow for a rescan waiter to not actually wait for the rescan worker\nto finish. Example:\n\n         CPU 1                                                     CPU 2\n\n fs_info->qgroup_rescan_completion->done is 0\n\n btrfs_qgroup_rescan_worker()\n   complete_all(&fs_info->qgroup_rescan_completion)\n     sets fs_info->qgroup_rescan_completion->done\n     to UINT_MAX / 2\n\n ... do some other stuff ....\n\n qgroup_rescan_init()\n   mutex_lock(&fs_info->qgroup_rescan_lock)\n   set flag BTRFS_QGROUP_STATUS_FLAG_RESCAN\n     in fs_info->qgroup_flags\n   mutex_unlock(&fs_info->qgroup_rescan_lock)\n\n                                                       btrfs_qgroup_wait_for_completion()\n                                                         mutex_lock(&fs_info->qgroup_rescan_lock)\n                                                         sees flag BTRFS_QGROUP_STATUS_FLAG_RESCAN\n                                                           in fs_info->qgroup_flags\n                                                         mutex_unlock(&fs_info->qgroup_rescan_lock)\n\n                                                         wait_for_completion_interruptible(\n                                                           &fs_info->qgroup_rescan_completion)\n\n                                                           fs_info->qgroup_rescan_completion->done\n                                                           is > 0 so it returns immediately\n\n  init_completion(&fs_info->qgroup_rescan_completion)\n    sets fs_info->qgroup_rescan_completion->done to 0\n\nSo fix this by initializing the completion object while holding the mutex\nfs_info->qgroup_rescan_lock.\n\nSigned-off-by: Filipe Manana <fdmanana@suse.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/190631f1c8cb7e4d5c27ff87e22ed53817e78759"},{"sha":"a3eaa8649e4c6a6afdafaa04b9114fb230617bb1","author":{"email":"e8e62dc715571804daa2470fc550382cc402f037@linux.intel.com","name":"Kai Huang"},"message":"KVM: VMX: Fix commit which broke PML\n\nI found PML was broken since below commit:\n\n\tcommit feda805fe7c4ed9cf78158e73b1218752e3b4314\n\tAuthor: Xiao Guangrong <guangrong.xiao@linux.intel.com>\n\tDate:   Wed Sep 9 14:05:55 2015 +0800\n\n\tKVM: VMX: unify SECONDARY_VM_EXEC_CONTROL update\n\n\tUnify the update in vmx_cpuid_update()\n\n\tSigned-off-by: Xiao Guangrong <guangrong.xiao@linux.intel.com>\n\t[Rewrite to use vmcs_set_secondary_exec_control. - Paolo]\n\tSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\n\nThe reason is in above commit vmx_cpuid_update calls vmx_secondary_exec_control,\nin which currently SECONDARY_EXEC_ENABLE_PML bit is cleared unconditionally (as\nPML is enabled in creating vcpu). Therefore if vcpu_cpuid_update is called after\nvcpu is created, PML will be disabled unexpectedly while log-dirty code still\nthinks PML is used.\n\nFix this by clearing SECONDARY_EXEC_ENABLE_PML in vmx_secondary_exec_control\nonly when PML is not supported or not enabled (!enable_pml). This is more\nreasonable as PML is currently either always enabled or disabled. With this\nexplicit updating SECONDARY_EXEC_ENABLE_PML in vmx_enable{disable}_pml is not\nneeded so also rename vmx_enable{disable}_pml to vmx_create{destroy}_pml_buffer.\n\nFixes: feda805fe7c4ed9cf78158e73b1218752e3b4314\nSigned-off-by: Kai Huang <kai.huang@linux.intel.com>\n[While at it, change a wrong ASSERT to an \"if\".  The condition can happen\n if creating the VCPU fails with ENOMEM. - Paolo]\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/a3eaa8649e4c6a6afdafaa04b9114fb230617bb1"},{"sha":"3b2ba7b31d56c3d8f57cd5d32b8fb5101ab446e4","author":{"email":"e0fcd583df77ec6c08e6d1257619cc1216ddc994@suse.com","name":"Filipe Manana"},"message":"Btrfs: fix sleeping inside atomic context in qgroup rescan worker\n\nWe are holding a btree path with spinning locks and then we attempt to\nclone an extent buffer, which calls kmem_cache_alloc() and this function\ncan sleep, causing the following trace to be reported on a debug kernel:\n\n[107118.218536] BUG: sleeping function called from invalid context at mm/slab.c:2871\n[107118.224110] in_atomic(): 1, irqs_disabled(): 0, pid: 19148, name: kworker/u32:3\n[107118.226120] INFO: lockdep is turned off.\n[107118.226843] Preemption disabled at:[<ffffffffa05ffa22>] btrfs_clear_lock_blocking_rw+0x96/0xea [btrfs]\n\n[107118.229175] CPU: 3 PID: 19148 Comm: kworker/u32:3 Tainted: G        W       4.3.0-rc5-btrfs-next-17+ #1\n[107118.231326] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.8.1-0-g4adadbd-20150316_085822-nilsson.home.kraxel.org 04/01/2014\n[107118.233687] Workqueue: btrfs-qgroup-rescan btrfs_qgroup_rescan_helper [btrfs]\n[107118.236835]  0000000000000000 ffff880424bf3b78 ffffffff812566f4 0000000000000000\n[107118.238369]  ffff880424bf3ba0 ffffffff81070664 ffffffff817f1cd5 0000000000000b37\n[107118.239769]  0000000000000000 ffff880424bf3bc8 ffffffff8107070a 0000000000008850\n[107118.241244] Call Trace:\n[107118.241729]  [<ffffffff812566f4>] dump_stack+0x4e/0x79\n[107118.242602]  [<ffffffff81070664>] ___might_sleep+0x23a/0x241\n[107118.243586]  [<ffffffff8107070a>] __might_sleep+0x9f/0xa6\n[107118.244532]  [<ffffffff8115af70>] cache_alloc_debugcheck_before+0x25/0x36\n[107118.245939]  [<ffffffff8115d52b>] kmem_cache_alloc+0x50/0x215\n[107118.246930]  [<ffffffffa05e627e>] __alloc_extent_buffer+0x2a/0x11f [btrfs]\n[107118.248121]  [<ffffffffa05ecb1a>] btrfs_clone_extent_buffer+0x3d/0xdd [btrfs]\n[107118.249451]  [<ffffffffa06239ea>] btrfs_qgroup_rescan_worker+0x16d/0x434 [btrfs]\n[107118.250755]  [<ffffffff81087481>] ? arch_local_irq_save+0x9/0xc\n[107118.251754]  [<ffffffffa05f7952>] normal_work_helper+0x14c/0x32a [btrfs]\n[107118.252899]  [<ffffffffa05f7952>] ? normal_work_helper+0x14c/0x32a [btrfs]\n[107118.254195]  [<ffffffffa05f7c82>] btrfs_qgroup_rescan_helper+0x12/0x14 [btrfs]\n[107118.255436]  [<ffffffff81063b23>] process_one_work+0x24a/0x4ac\n[107118.263690]  [<ffffffff81064285>] worker_thread+0x206/0x2c2\n[107118.264888]  [<ffffffff8106407f>] ? rescuer_thread+0x2cb/0x2cb\n[107118.267413]  [<ffffffff8106904d>] kthread+0xef/0xf7\n[107118.268417]  [<ffffffff81068f5e>] ? kthread_parkme+0x24/0x24\n[107118.269505]  [<ffffffff8147d10f>] ret_from_fork+0x3f/0x70\n[107118.270491]  [<ffffffff81068f5e>] ? kthread_parkme+0x24/0x24\n\nSo just use blocking locks for our path to solve this.\nThis fixes the patch titled:\n  \"btrfs: qgroup: Don't copy extent buffer to do qgroup rescan\"\n\nSigned-off-by: Filipe Manana <fdmanana@suse.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/3b2ba7b31d56c3d8f57cd5d32b8fb5101ab446e4"},{"sha":"9807216f585fc69a6cad3668414a2936a84444c8","author":{"email":"7c35ed360060af3ecb9cc53d85d27e92e2f5dc59@intel.com","name":"Vivek Kasireddy"},"message":"drm/i915: Skip fence installation for objects with rotated views (v4)\n\nWhile pinning a fb object to the display plane, only install a fence\nif the object is using a normal view. This corresponds with the\nbehavior found in i915_gem_object_do_pin() where the fencability\ncriteria is determined only for objects with normal views.\n\nv2:\nLook at the object's map_and_fenceable flag to determine whether to\ninstall a fence or not (Chris).\n\nv3:\nPin and unpin a fence only if the current view type is normal.\n\nv4:\nExtend the \"view type is normal\" check for pin_fence as well.\n\nCc: Chris Wilson <chris@chris-wilson.co.uk>\nCc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>\nReviewed-by: Ville Syrjala <ville.syrjala@linux.intel.com>\nSigned-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com>\nLink: http://patchwork.freedesktop.org/patch/msgid/1446170078-20792-1-git-send-email-vivek.kasireddy@intel.com\nSigned-off-by: Jani Nikula <jani.nikula@intel.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/9807216f585fc69a6cad3668414a2936a84444c8"},{"sha":"6172180c6b37ea164bf8a9bad70bb348d0a16563","author":{"email":"82325a91373a06cdf12f953d4611ffb7756aa8d4@intel.com","name":"Tvrtko Ursulin"},"message":"drm: Use userspace compatible type in fourcc_mod_code macro\n\n__u64 should be used instead of u64.\n\nFeature originally added in:\n\ncommit e3eb3250d84ef97b766312345774367b6a310db8\nAuthor: Rob Clark <robdclark@gmail.com>\nDate:   Thu Feb 5 14:41:52 2015 +0000\n\n    drm: add support for tiled/compressed/etc modifier in addfb2\n\nSigned-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>\nCc: Rob Clark <robdclark@gmail.com>\nCc: Daniel Stone <daniels@collabora.com>\nCc: Daniel Vetter <daniel.vetter@intel.com>\nCc: dri-devel@lists.freedesktop.org\nCc: stable@vger.kernel.org # v4.1+\nFixes: e3eb3250d84e (\"drm: add support for tiled/compressed/etc modifier in addfb2\")\nReviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>\nLink: http://patchwork.freedesktop.org/patch/msgid/1442999431-28568-1-git-send-email-tvrtko.ursulin@linux.intel.com\nSigned-off-by: Jani Nikula <jani.nikula@intel.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/6172180c6b37ea164bf8a9bad70bb348d0a16563"},{"sha":"100ceb66d5c40cc0c7018e06a9474302470be73c","author":{"email":"fbd796546fc801b34e01e453c6fd30283e012038@s5r6.in-berlin.de","name":"Stefan Richter"},"message":"firewire: ohci: fix JMicron JMB38x IT context discovery\n\nReported by Clifford and Craig for JMicron OHCI-1394 + SDHCI combo\ncontrollers:  Often or even most of the time, the controller is\ninitialized with the message \"added OHCI v1.10 device as card 0, 4 IR +\n0 IT contexts, quirks 0x10\".  With 0 isochronous transmit DMA contexts\n(IT contexts), applications like audio output are impossible.\n\nHowever, OHCI-1394 demands that at least 4 IT contexts are implemented\nby the link layer controller, and indeed JMicron JMB38x do implement\nfour of them.  Only their IsoXmitIntMask register is unreliable at early\naccess.\n\nWith my own JMB381 single function controller I found:\n  - I can reproduce the problem with a lower probability than Craig's.\n  - If I put a loop around the section which clears and reads\n    IsoXmitIntMask, then either the first or the second attempt will\n    return the correct initial mask of 0x0000000f.  I never encountered\n    a case of needing more than a second attempt.\n  - Consequently, if I put a dummy reg_read(...IsoXmitIntMaskSet)\n    before the first write, the subsequent read will return the correct\n    result.\n  - If I merely ignore a wrong read result and force the known real\n    result, later isochronous transmit DMA usage works just fine.\n\nSo let's just fix this chip bug up by the latter method.  Tested with\nJMB381 on kernel 3.13 and 4.3.\n\nSince OHCI-1394 generally requires 4 IT contexts at a minium, this\nworkaround is simply applied whenever the initial read of IsoXmitIntMask\nreturns 0, regardless whether it's a JMicron chip or not.  I never heard\nof this issue together with any other chip though.\n\nI am not 100% sure that this fix works on the OHCI-1394 part of JMB380\nand JMB388 combo controllers exactly the same as on the JMB381 single-\nfunction controller, but so far I haven't had a chance to let an owner\nof a combo chip run a patched kernel.\n\nStrangely enough, IsoRecvIntMask is always reported correctly, even\nthough it is probed right before IsoXmitIntMask.\n\nReported-by: Clifford Dunn\nReported-by: Craig Moore <craig.moore@qenos.com>\nCc: stable@vger.kernel.org\nSigned-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/100ceb66d5c40cc0c7018e06a9474302470be73c"},{"sha":"99106bc17e667989b4c0af0a6afcbd6ddbada8fb","author":{"email":"cd221c71e765d1ce593d15b204fee351fb09fd98@linux.intel.com","name":"Mika Kuoppala"},"message":"drm/i915: Do graphics device reset under forcewake\n\nWe have a timed release of a forcewake when using\nI915_READ/WRITE macros. wait_for() macro will go to quite\nlong sleep if the first read doesn't satisfy the condition for\nsuccessful exit. With these two interacting, it is possible that\nwe lose the forcewake during the wait_for() and the subsequent read\nwill reaquire forcewake.\n\nFurther experiments with skl shows that when we lose forcewake,\nwe lose the reset request we submitted. So reset request register\nis not power context saved.\n\nGrab forcewakes for all engines before starting the reset/request\ndance so that all requests stay valid for the duration of reset\nrequisition across all the engines.\n\nv2: Add comment on power well sleeps. Wrap the reset handling\n    under forcewake instead of just reset requests (Chris)\n\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92774\nCc: Chris Wilson <chris@chris-wilson.co.uk>\nReviewed-by: Chris Wilson <chris@chris-wilson.co.uk>\nTested-by: Tomi Sarvela <tomix.p.sarvela@intel.com> (v1, v2)\nSigned-off-by: Mika Kuoppala <mika.kuoppala@intel.com>\nLink: http://patchwork.freedesktop.org/patch/msgid/1446721898-1450-1-git-send-email-mika.kuoppala@intel.com\nSigned-off-by: Jani Nikula <jani.nikula@intel.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/99106bc17e667989b4c0af0a6afcbd6ddbada8fb"},{"sha":"cb8382e05817a8104ea0edb63b8e37b8fbecd14c","author":{"email":"2c6594f608aa3d41e98d48846a6328831f7084ad@redhat.com","name":"Jiri Olsa"},"message":"perf tools: Insert split maps correctly into origin group\n\nWhen new maps are cloned out of split map they are added into origin\nmap's group, but their groups pointer is not updated.\n\nThis could lead to a segfault, because map->groups is expected to be\nalways set as reported by Markus:\n\n  __map__is_kernel (map=map@entry=0x1abb7a0) at util/map.c:238\n  238             return __machine__kernel_map(map->groups->machine, map->type) =\n  (gdb) bt\n  #0  __map__is_kernel (map=map@entry=0x1abb7a0) at util/map.c:238\n  #1  0x00000000004393e4 in symbol_filter (map=map@entry=0x1abb7a0, sym=sym@entry\n  #2  0x00000000004fcd4d in dso__load_sym (dso=dso@entry=0x166dae0, map=map@entry\n  #3  0x00000000004a64e0 in dso__load (dso=0x166dae0, map=map@entry=0x1abb7a0, fi\n  #4  0x00000000004b941f in map__load (filter=0x4393c0 <symbol_filter>, map=<opti\n  #5  map__find_symbol (map=0x1abb7a0, addr=40188, filter=0x4393c0 <symbol_filter\n  ...\n\nAdding __map_groups__insert function to add map into groups together\nwith map->groups pointer update. It takes no lock as opposed to existing\nmap_groups__insert, as maps__fixup_overlappings(), where it is being\ncalled, already has the necessary lock held.\n\nUsing __map_groups__insert to add new maps after map split.\n\nReported-by: Markus Trippelsdorf <markus@trippelsdorf.de>\nSigned-off-by: Jiri Olsa <jolsa@kernel.org>\nTested-by: Markus Trippelsdorf <markus@trippelsdorf.de>\nCc: Andrew Morton <akpm@linux-foundation.org>\nCc: Peter Zijlstra <a.p.zijlstra@chello.nl>\nCc: Thomas Gleixner <tglx@linutronix.de>\nLink: http://lkml.kernel.org/r/20151104140811.GA32664@krava.brq.redhat.com\nFixes: cfc5acd4c80b (\"perf top: Filter symbols based on __map__is_kernel(map)\")\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/cb8382e05817a8104ea0edb63b8e37b8fbecd14c"},{"sha":"98916392a0bdfd71668b711fd93915791f45df02","author":{"email":"293abb6b76d7791c0732cc517d38c4b5c734b87f@redhat.com","name":"Arnaldo Carvalho de Melo"},"message":"perf tools: Allow shuffling the build tests\n\nThose tests take a long time and sometimes we stop it, so allow randomly\nshuffling the tests so that we have a better chance of running more of\nthem in partial 'make build-test' runs.\n\nUsing it just on the 'build-test' target, i.e.:\n\n   make -C tools/perf build-test\n\nIs equivalent to:\n\n   make SHUF=1 -C tools/perf -f tests/make\n\nCc: Adrian Hunter <adrian.hunter@intel.com>\nCc: David Ahern <dsahern@gmail.com>\nCc: Jiri Olsa <jolsa@redhat.com>\nCc: Namhyung Kim <namhyung@kernel.org>\nCc: Wang Nan <wangnan0@huawei.com>\nLink: http://lkml.kernel.org/n/tip-ey7461i9q4k8u0987j8guun6@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/98916392a0bdfd71668b711fd93915791f45df02"},{"sha":"59f41af980f95cbd556a6dc2e064b412abc439cf","author":{"email":"7b589a40e0ecd4816b422e8ed1f74a01c34bf6bb@huawei.com","name":"Wang Nan"},"message":"perf llvm: Pass number of configured CPUs to clang compiler\n\nThis patch introduces a new macro \"__NR_CPUS__\" to perf's embedded clang\ncompiler, which represent the number of configured CPUs in this system.\nBPF programs can use this macro to create a map with the same number of\nsystem CPUs. For example:\n\n struct bpf_map_def SEC(\"maps\") pmu_map = {\n     .type = BPF_MAP_TYPE_PERF_EVENT_ARRAY,\n     .key_size = sizeof(int),\n     .value_size = sizeof(u32),\n     .max_entries = __NR_CPUS__,\n };\n\nSigned-off-by: Wang Nan <wangnan0@huawei.com>\nCc: Alexei Starovoitov <ast@kernel.org>\nCc: Namhyung Kim <namhyung@kernel.org>\nCc: Zefan Li <lizefan@huawei.com>\nCc: pi3orama@163.com\nLink: http://lkml.kernel.org/r/1446636007-239722-2-git-send-email-wangnan0@huawei.com\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/59f41af980f95cbd556a6dc2e064b412abc439cf"},{"sha":"4a4f66a1a7031675745812729ade94ad1caf1db6","author":{"email":"7b589a40e0ecd4816b422e8ed1f74a01c34bf6bb@huawei.com","name":"Wang Nan"},"message":"perf llvm: Pass LINUX_VERSION_CODE to BPF program when compiling\n\nArnaldo suggests to make LINUX_VERSION_CODE works like __func__ and\n__FILE__ so user don't need to care setting right linux version too\nmuch. In this patch, perf llvm transfers LINUX_VERSION_CODE macro\nthrough clang cmdline.\n\n[1] http://lkml.kernel.org/r/20151029223744.GK2923@kernel.org\n\nCommitter notes:\n\nBefore, forgetting to update the version:\n\n  # uname -r\n  4.3.0-rc1+\n  # cat bpf.c\n  __attribute__((section(\"fork=_do_fork\"), used))\n  int fork(void *ctx)\n  {\n          return 1;\n  }\n\n  char _license[] __attribute__((section(\"license\"), used)) = \"GPL\";\n  int _version __attribute__((section(\"version\"), used)) = 0x40200;\n  #\n  # perf record -e bpf.c sleep 1\n  event syntax error: 'bpf.c'\n                       \\___ Invalid argument: Are you root and runing a CONFIG_BPF_SYSCALL kernel?\n\n  (add -v to see detail)\n  Run 'perf list' for a list of valid events\n\n   Usage: perf record [<options>] [<command>]\n      or: perf record [<options>] -- <command> [<options>]\n\n      -e, --event <event>   event selector. use 'perf list' to list available events\n #\n\nAfter:\n\n  # grep version bpf.c\n  int _version __attribute__((section(\"version\"), used)) = LINUX_VERSION_CODE;\n  # perf record -e bpf.c sleep 1\n  [ perf record: Woken up 1 times to write data ]\n  [ perf record: Captured and wrote 0.017 MB perf.data ]\n  # perf evlist -v\n  perf_bpf_probe:fork: type: 2, size: 112, config: 0x5ee, { sample_period,\n  sample_freq }: 1, sample_type: IP|TID|TIME|CPU|PERIOD|RAW, disabled: 1,\n  inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1, task: 1, sample_id_all:\n  1, exclude_guest: 1, mmap2: 1, comm_exec: 1\n  #\n\nSuggested-and-Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>\nSigned-off-by: Wang Nan <wangnan0@huawei.com>\nCc: Alexei Starovoitov <ast@kernel.org>\nCc: Namhyung Kim <namhyung@kernel.org>\nCc: Zefan Li <lizefan@huawei.com>\nCc: pi3orama@163.com\nLink: http://lkml.kernel.org/r/1446636007-239722-3-git-send-email-wangnan0@huawei.com\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/4a4f66a1a7031675745812729ade94ad1caf1db6"},{"sha":"0c77c04aa9c2b3a154f5cb0559feaee3fb7a6935","author":{"email":"8d07c820a02d28850bd4d06e4d0a5cddd9e128ec@huawei.com","name":"Yunlong Song"},"message":"tools lib bpf: Change FEATURE-DUMP to FEATURE-DUMP.libbpf\n\nCommit ed63f34c026e9a60d17fa750ecdfe3f600d49393 (\"perf tools: Make perf\ndepend on libbpf\") triggers the build of libbpf when building the perf\ntools, dynamically creating FEATURE-DUMP.libbpf.\n\nIt failed to update the tools/lib/bpf/.gitignore file to have that\nprefix, fix it.\n\nSigned-off-by: Yunlong Song <yunlong.song@huawei.com>\nCc: Adrian Hunter <adrian.hunter@intel.com>\nCc: Alexei Starovoitov <ast@kernel.org>\nCc: David Ahern <dsahern@gmail.com>\nCc: Jiri Olsa <jolsa@kernel.org>\nCc: Kan Liang <kan.liang@intel.com>\nCc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>\nCc: Namhyung Kim <namhyung@kernel.org>\nCc: Paul Mackerras <paulus@samba.org>\nCc: Peter Zijlstra <a.p.zijlstra@chello.nl>\nCc: Wang Nan <wangnan0@huawei.com>\nFixes: 65f041bee783 (\"tools lib bpf: Use FEATURE_USER to allow building in the same dir as perf\")\nLink: http://lkml.kernel.org/r/1446706594-4142-1-git-send-email-yunlong.song@huawei.com\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/0c77c04aa9c2b3a154f5cb0559feaee3fb7a6935"},{"sha":"956959f6b7a982b2e789a7a8fa1de437074a5eb9","author":{"email":"7e8d390d042265d58ed89d2fc045804913ae1bf5@google.com","name":"Peter Feiner"},"message":"perf trace: Fix documentation for -i\n\nThe -i flag was incorrectly listed as a short flag for --no-inherit.  It\nshould have only been listed as a short flag for --input.\n\nThis documentation error has existed since the --input flag was\nintroduced in 6810fc915f7a89d8134edb3996dbbf8eac386c26 (perf trace: Add\noption to analyze events in a file versus live).\n\nSigned-off-by: Peter Feiner <pfeiner@google.com>\nCc: David Ahern <dsahern@gmail.com>\nLink: http://lkml.kernel.org/r/1446657706-14518-1-git-send-email-pfeiner@google.com\nFixes: 6810fc915f7a (\"perf trace: Add option to analyze events in a file versus live\")\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/956959f6b7a982b2e789a7a8fa1de437074a5eb9"},{"sha":"98d3b258ede2cdac31a2728543f652964e597e79","author":{"email":"7b589a40e0ecd4816b422e8ed1f74a01c34bf6bb@huawei.com","name":"Wang Nan"},"message":"perf tools: Fix find_perf_probe_point_from_map() which incorrectly returns success\n\nIt is possible that find_perf_probe_point_from_map() fails to find a\nsymbol but still returns 0 because of an small error when coding:\nfind_perf_probe_point_from_map() set 'ret' to error code at first, but\nalso use it to hold return value of kernel_get_symbol_address_by_name().\n\nThis patch resets 'ret' to error even kernel_get_symbol_address_by_name()\nsuccess, so if !sym, the whole function returns error correctly.\n\nSigned-off-by: Wang Nan <wangnan0@huawei.com>\nCc: Jiri Olsa <jolsa@kernel.org>\nCc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>\nCc: Namhyung Kim <namhyung@kernel.org>\nCc: Zefan Li <lizefan@huawei.com>\nCc: pi3orama@163.com\nLink: http://lkml.kernel.org/r/1446729565-27592-3-git-send-email-wangnan0@huawei.com\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/98d3b258ede2cdac31a2728543f652964e597e79"},{"sha":"0014de172d228e450377d1fd079d94e67128d27f","author":{"email":"2c6594f608aa3d41e98d48846a6328831f7084ad@kernel.org","name":"Jiri Olsa"},"message":"perf sched latency: Fix thread pid reuse issue\n\nThe latency subcommand holds a tree of working atoms sorted by thread's\npid/tid. If there's new thread with same pid and tid, the old working atom is\nfound and assert bug condition is hit in search function:\n\n  thread_atoms_search: Assertion `!(thread != atoms->thread)' failed\n\nChanging the sort function to use thread object pointers together with pid and\ntid check. This way new thread will never find old one with same pid/tid.\n\nLink: http://lkml.kernel.org/n/tip-o4doazhhv0zax5zshkg8hnys@git.kernel.org\nReported-by: Mohit Agrawal <moagrawa@redhat.com>\nSigned-off-by: Jiri Olsa <jolsa@kernel.org>\nAcked-by: Namhyung Kim <namhyung@kernel.org>\nCc: David Ahern <dsahern@gmail.com>\nCc: Peter Zijlstra <a.p.zijlstra@chello.nl>\nLink: http://lkml.kernel.org/r/1446462625-15807-1-git-send-email-jolsa@kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/0014de172d228e450377d1fd079d94e67128d27f"},{"sha":"096273304cb13b1b6a611026759df7c738a0e4e2","author":{"email":"fe08d3c717adf2ae63592e4c9aec6e3e404d8e3e@davemloft.net","name":"David S. Miller"},"message":"Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth\n\nJohan Hedberg says:\n\n====================\npull request: bluetooth 2015-11-05\n\nThe following set of Bluetooth patches would be good to get into 4.4-rc1\nif possible:\n\n - Fix for missing LE CoC parameter validity checks\n - Fix for potential deadlock in btusb\n - Fix for issuing unsupported commands during HCI init\n\nPlease let me know if there are any issues pulling. Thanks.\n====================\n\nSigned-off-by: David S. Miller <davem@davemloft.net>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/096273304cb13b1b6a611026759df7c738a0e4e2"},{"sha":"b3d8cf019fb9dd28389b08da7bf54ffabf453ed3","author":{"email":"f0d4d86d9c7002e67e6ae7bb5596bc0afa7b4c3a@true.cz","name":"Petr Štetiar"},"message":"USB: qmi_wwan: Add quirk for Quectel EC20 Mini PCIe module\n\nThis device has same vendor and product IDs as G2K devices, but it has\ndifferent number of interfaces(4 vs 5) and also different interface\nlayout where EC20 has QMI on interface 4 instead of 0.\n\nlsusb output:\n\n\tBus 002 Device 003: ID 05c6:9215 Qualcomm, Inc. Acer Gobi 2000\n\tDevice Descriptor:\n\t  bLength                18\n\t  bDescriptorType         1\n\t  bcdUSB               2.00\n\t  bDeviceClass            0 (Defined at Interface level)\n\t  bDeviceSubClass         0\n\t  bDeviceProtocol         0\n\t  bMaxPacketSize0        64\n\t  idVendor           0x05c6 Qualcomm, Inc.\n\t  idProduct          0x9215 Acer Gobi 2000 Wireless Modem\n\t  bcdDevice            2.32\n\t  iManufacturer           1 Quectel\n\t  iProduct                2 Quectel LTE Module\n\t  iSerial                 0\n\t  bNumConfigurations      1\n\t  Configuration Descriptor:\n\t    bLength                 9\n\t    bDescriptorType         2\n\t    wTotalLength          209\n\t    bNumInterfaces          5\n\t    bConfigurationValue     1\n\t    iConfiguration          0\n\t    bmAttributes         0xa0\n\t      (Bus Powered)\n\t      Remote Wakeup\n\t    MaxPower              500mA\n\nSigned-off-by: Petr Štetiar <ynezz@true.cz>\nAcked-by: Bjørn Mork <bjorn@mork.no>\nSigned-off-by: David S. Miller <davem@davemloft.net>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/b3d8cf019fb9dd28389b08da7bf54ffabf453ed3"},{"sha":"40998193560dab6c3ce8d25f4fa58a23e252ef38","author":{"email":"923f7720577207a44b32e59bbfbea59d27f1ae8e@lst.de","name":"Christoph Hellwig"},"message":"scsi: restart list search after unlock in scsi_remove_target\n\nWhen dropping a lock while iterating a list we must restart the search\nas other threads could have manipulated the list under us.  Without this\nwe can get stuck in an endless loop.  This bug was introduced by\n\ncommit bc3f02a795d3b4faa99d37390174be2a75d091bd\nAuthor: Dan Williams <djbw@fb.com>\nDate:   Tue Aug 28 22:12:10 2012 -0700\n\n    [SCSI] scsi_remove_target: fix softlockup regression on hot remove\n\nWhich was itself trying to fix a reported soft lockup issue\n\nhttp://thread.gmane.org/gmane.linux.kernel/1348679\n\nHowever, we believe even with this revert of the original patch, the soft\nlockup problem has been fixed by\n\ncommit f2495e228fce9f9cec84367547813cbb0d6db15a\nAuthor: James Bottomley <JBottomley@Parallels.com>\nDate:   Tue Jan 21 07:01:41 2014 -0800\n\n    [SCSI] dual scan thread bug fix\n\nThanks go to Dan Williams <dan.j.williams@intel.com> for tracking all this\nprior history down.\n\nReported-by: Johannes Thumshirn <jthumshirn@suse.de>\nSigned-off-by: Christoph Hellwig <hch@lst.de>\nTested-by: Johannes Thumshirn <jthumshirn@suse.de>\nReviewed-by: Johannes Thumshirn <jthumshirn@suse.de>\nFixes: bc3f02a795d3b4faa99d37390174be2a75d091bd\nCc: stable@vger.kernel.org\nSigned-off-by: James Bottomley <JBottomley@Odin.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/40998193560dab6c3ce8d25f4fa58a23e252ef38"},{"sha":"57a65667991aaddef730b0c910111ab76a1ff245","author":{"email":"b07d7e22a002c36e256b78f51f1f0db608e62a13@arm.com","name":"Lorenzo Pieralisi"},"message":"arm64: cmpxchg_dbl: fix return value type\n\nThe current arm64 __cmpxchg_double{_mb} implementations carry out the\ncompare exchange by first comparing the old values passed in to the\nvalues read from the pointer provided and by stashing the cumulative\nbitwise difference in a 64-bit register.\n\nBy comparing the register content against 0, it is possible to detect if\nthe values read differ from the old values passed in, so that the compare\nexchange detects whether it has to bail out or carry on completing the\noperation with the exchange.\n\nGiven the current implementation, to detect the cmpxchg operation\nstatus, the __cmpxchg_double{_mb} functions should return the 64-bit\nstashed bitwise difference so that the caller can detect cmpxchg failure\nby comparing the return value content against 0. The current implementation\ndeclares the return value as an int, which means that the 64-bit\nvalue stashing the bitwise difference is truncated before being\nreturned to the __cmpxchg_double{_mb} callers, which means that\nany bitwise difference present in the top 32 bits goes undetected,\ntriggering false positives and subsequent kernel failures.\n\nThis patch fixes the issue by declaring the arm64 __cmpxchg_double{_mb}\nreturn values as a long, so that the bitwise difference is\nproperly propagated on failure, restoring the expected behaviour.\n\nFixes: e9a4b795652f (\"arm64: cmpxchg_dbl: patch in lse instructions when supported by the CPU\")\nCc: <stable@vger.kernel.org> # 4.3+\nCc: Marc Zyngier <marc.zyngier@arm.com>\nAcked-by: Will Deacon <will.deacon@arm.com>\nSigned-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>\nSigned-off-by: Catalin Marinas <catalin.marinas@arm.com>","distinct":false,"url":"https://api.github.com/repos/linuxppc/linux/commits/57a65667991aaddef730b0c910111ab76a1ff245"}]}