{"push_id":1249991468,"size":41,"distinct_size":41,"ref":"refs/heads/torvalds/master","head":"118253a593bd1c57de2d1193df1ccffe1abe745b","before":"f31494bd05b06b0cdb4da6aebe92eaafab970df6","commits":[{"sha":"0b857b44b5e445dc850cd91c45ce6edeb7797480","author":{"name":"Roland Dreier","email":"fc7707a71fb275485f881499a576a8d106687c27@purestorage.com"},"message":"nvme-rdma: Don't leak uninitialized memory in connect request private data\n\nZero out the full nvme_rdma_cm_req structure before sending it.\nOtherwise we end up leaking kernel memory in the reserved field, which\nmight break forward compatibility in the future.\n\nSigned-off-by: Roland Dreier <roland@purestorage.com>\nReviewed-by: Christoph Hellwig <hch@lst.de>\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/0b857b44b5e445dc850cd91c45ce6edeb7797480"},{"sha":"5f372eb3e76317b4fe4ba53ad1547f39fc883350","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-rdma: Queue ns scanning after a sucessful reconnection\n\nOn an ordered target shutdown, the target can send a AEN on a namespace\nremoval, this will trigger the host to queue ns-list query. The shutdown\nwill trigger error recovery which will attepmt periodic reconnect.\n\nWe can hit a race where the ns rescanning fails (error recovery kicked\nin and we're not connected) causing removing all the namespaces and when\nwe reconnect we won't see any namespaces for this controller.\n\nSo, queue a namespace rescan after we successfully reconnected to the target.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/5f372eb3e76317b4fe4ba53ad1547f39fc883350"},{"sha":"57de5a0a40db97bb390d3ac1f4c2e74b9f3515c3","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-rdma: Fix device removal handling\n\nDevice removal sequence may have crashed because the\ncontroller (and admin queue space) was freed before\nwe destroyed the admin queue resources. Thus we\nwant to destroy the admin queue and only then queue\ncontroller deletion and wait for it to complete.\n\nMore specifically we:\n1. own the controller deletion (make sure we are not\n   competing with another deletion).\n2. get rid of inflight reconnects if exists (which\n   also destroy and create queues).\n3. destroy the queue.\n4. safely queue controller deletion (and wait for it\n   to complete).\n\nReported-by: Steve Wise <swise@opengridcomputing.com>\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/57de5a0a40db97bb390d3ac1f4c2e74b9f3515c3"},{"sha":"2461a8dd38bea3cb5b1c1f0323794483292fb03f","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-rdma: Remove duplicate call to nvme_remove_namespaces\n\nnvme_uninit_ctrl already does that for us. Note that we reordered\nnvme_rdma_shutdown_ctrl and nvme_uninit_ctrl, this is perfectly\nfine because we actually want ctrl uninit (aen, scan cancellation\nand namespaces removal) to happen before we shutdown the rdma\nresources.\n\nAlso, centralize the deletion work and the dead controller removal\nwork code duplication into __nvme_rdma_shutdown_ctrl that accepts\na shutdown boolean.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/2461a8dd38bea3cb5b1c1f0323794483292fb03f"},{"sha":"a34ca17a9717fe607cd58285a1704cb6526cf561","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-rdma: Free the I/O tags when we delete the controller\n\nIf we wait until we free the controller (free_ctrl) we might\nlose our rdma device without any notification while we still\nhave open resources (tags mrs and dma mappings).\n\nInstead, destroy the tags with their rdma resources once we\ndelete the device and not when freeing it.\n\nNote that we don't do that in nvme_rdma_shutdown_ctrl because\ncontroller reset uses it as well and we want to give active I/O\na chance to complete successfully.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/a34ca17a9717fe607cd58285a1704cb6526cf561"},{"sha":"a159c64d936eb0d1da29d8ad384183d8984899c9","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-loop: Remove duplicate call to nvme_remove_namespaces\n\nnvme_uninit_ctrl already does that for us. Note that we\nreordered nvme_loop_shutdown_ctrl with nvme_uninit_ctrl\nbut its safe because we want controller uninit to happen\nbefore we shutdown the transport resources.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/a159c64d936eb0d1da29d8ad384183d8984899c9"},{"sha":"45862ebcc4883b1b6bc0701cd15cb2b68b140c5d","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-rdma: Make sure to shutdown the controller if we can\n\nRelying on ctrl state in nvme_rdma_shutdown_ctrl is wrong because\nit will never be NVME_CTRL_LIVE (delete_ctrl or reset_ctrl invoked it).\n\nInstead, check that the admin queue is connected. Note that it is safe\nbecause we can never see a copmeting thread trying to destroy the admin\nqueue (reset or delete controller).\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/45862ebcc4883b1b6bc0701cd15cb2b68b140c5d"},{"sha":"d8f7750a08968b105056328652d2c332bdfa062d","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvmet-rdma: Correctly handle RDMA device hot removal\n\nWhen configuring a device attached listener, we may\nsee device removal events. In this case we return a\nnon-zero return code from the cm event handler which\nimplicitly destroys the cm_id. It is possible that in\nthe future the user will remove this listener and by\nthat trigger a second call to rdma_destroy_id on an\nalready destroyed cm_id -> BUG.\n\nIn addition, when a queue bound (active session) cm_id\ngenerates a DEVICE_REMOVAL event we must guarantee all\nresources are cleaned up by the time we return from the\nevent handler.\n\nIntroduce nvmet_rdma_device_removal which addresses\n(or at least attempts to) both scenarios.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/d8f7750a08968b105056328652d2c332bdfa062d"},{"sha":"40e64e07213201710a51e270595d6e6c028f9502","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvmet-rdma: Don't use the inline buffer in order to avoid allocation for small reads\n\nUnder extreme conditions this might cause data corruptions. By doing that\nwe we repost the buffer and then post this buffer for the device to send.\nIf we happen to use shared receive queues the device might write to the\nbuffer before it sends it (there is no ordering between send and recv\nqueues). Without SRQs we probably won't get that if the host doesn't\nmis-behave and send more than we allowed it, but relying on that is not\nreally a good idea.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/40e64e07213201710a51e270595d6e6c028f9502"},{"sha":"28b89118539da03f4b188763e1b2fd1aec0f580a","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvmet: Fix controller serial number inconsistency\n\nThe host is allowed to issue identify as many times\nas it wants, we need to stay consistent when reporting\nthe serial number for a given controller.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/28b89118539da03f4b188763e1b2fd1aec0f580a"},{"sha":"3ef1b4b298d98ccb3cc895baf1b18f7f9d073bee","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-rdma: start async event handler after reconnecting to a controller\n\nWhen we reset or reconnect to a controller, we are cancelling the\nasync event handler so we can safely re-establish resources, but we\nneed to remember to start it again when we successfully reconnect.\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Christoph Hellwig <hch@lst.de>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/3ef1b4b298d98ccb3cc895baf1b18f7f9d073bee"},{"sha":"e3266378bdbca82c2854fc612fa9a391eba1f173","author":{"name":"Sagi Grimberg","email":"935eda79e238ddab911d6cde528dc35d4949c2aa@grimberg.me"},"message":"nvme-rdma: Remove unused includes\n\nSigned-off-by: Sagi Grimberg <sagi@grimberg.me>\nReviewed-by: Steve Wise <swise@opengridcomputing.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/e3266378bdbca82c2854fc612fa9a391eba1f173"},{"sha":"d3f422c8d58b2f0d68a51db88389a715dc10b4d2","author":{"name":"Jens Axboe","email":"f8b120bbe297304053fa957b507156696820d130@fb.com"},"message":"Merge branch 'nvmf-4.8-rc' of git://git.infradead.org/nvme-fabrics into for-linus\n\nSagi writes:\n\nMostly stability fixes for nvmet, rdma:\n- fix uninitialized rdma_cm private data from Roland.\n- rdma device removal handling (host and target).\n- fix controller disconnect during active mounts.\n- fix namespaces lost after fabric reconnects.\n- remove redundant calls to namespace removal (rdma, loop).\n- actually send controller shutdown when disconnecting.\n- reconnect fixes (ns rescan and aen requeue)\n- nvmet controller serial number inconsistency fix.","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/d3f422c8d58b2f0d68a51db88389a715dc10b4d2"},{"sha":"50ee91bdef41c15b671dcd9446ee007a1d2f5ab7","author":{"name":"Kefeng Wang","email":"1ff0a8e70a0d22cd78c773803bf266a3b2e64dfe@huawei.com"},"message":"arm64: Support hard limit of cpu count by nr_cpus\n\nEnable the hard limit of cpu count by set boot options nr_cpus=x\non arm64, and make a minor change about message when total number\nof cpu exceeds the limit.\n\nReviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>\nReported-by: Shiyuan Hu <hushiyuan@huawei.com>\nSigned-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>\nSigned-off-by: Will Deacon <will.deacon@arm.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/50ee91bdef41c15b671dcd9446ee007a1d2f5ab7"},{"sha":"a026bb12cc57d758e045126a252e12e868076cb4","author":{"name":"Sudeep Holla","email":"59421025db0a4566b0c646d02b1a8fb3615a9cf9@arm.com"},"message":"drivers/perf: arm-pmu: convert arm_pmu_mutex to spinlock\n\narm_pmu_mutex is never held long and we don't want to sleep while the\nlock is being held as it's executed in the context of hotplug notifiers.\nSo it can be converted to a simple spinlock instead.\n\nWithout this patch we get the following warning:\n\nBUG: sleeping function called from invalid context at kernel/locking/mutex.c:620\nin_atomic(): 1, irqs_disabled(): 128, pid: 0, name: swapper/2\nno locks held by swapper/2/0.\nirq event stamp: 381314\nhardirqs last  enabled at (381313): _raw_spin_unlock_irqrestore+0x7c/0x88\nhardirqs last disabled at (381314): cpu_die+0x28/0x48\nsoftirqs last  enabled at (381294): _local_bh_enable+0x28/0x50\nsoftirqs last disabled at (381293): irq_enter+0x58/0x78\nCPU: 2 PID: 0 Comm: swapper/2 Not tainted 4.7.0 #12\nCall trace:\n dump_backtrace+0x0/0x220\n show_stack+0x24/0x30\n dump_stack+0xb4/0xf0\n ___might_sleep+0x1d8/0x1f0\n __might_sleep+0x5c/0x98\n mutex_lock_nested+0x54/0x400\n arm_perf_starting_cpu+0x34/0xb0\n cpuhp_invoke_callback+0x88/0x3d8\n notify_cpu_starting+0x78/0x98\n secondary_start_kernel+0x108/0x1a8\n\nThis patch converts the mutex to spinlock to eliminate the above\nwarnings. This constraints pmu->reset to be non-blocking call which is\nthe case with all the ARM PMU backends.\n\nCc: Stephen Boyd <sboyd@codeaurora.org>\nFixes: 37b502f121ad (\"arm/perf: Fix hotplug state machine conversion\")\nAcked-by: Mark Rutland <mark.rutland@arm.com>\nSigned-off-by: Sudeep Holla <sudeep.holla@arm.com>\nSigned-off-by: Will Deacon <will.deacon@arm.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/a026bb12cc57d758e045126a252e12e868076cb4"},{"sha":"7f1d642fbb5c356519617c24757a0cbed7f800a8","author":{"name":"Marc Zyngier","email":"3404add73d8af5dc5183acdd46985971473febc7@arm.com"},"message":"drivers/perf: arm-pmu: Fix handling of SPI lacking \"interrupt-affinity\" property\n\nPatch 19a469a58720 (\"drivers/perf: arm-pmu: Handle per-interrupt\naffinity mask\") added support for partitionned PPI setups, but\ninadvertently broke setups using SPIs without the \"interrupt-affinity\"\nproperty (which is the case for UP platforms).\n\nThis patch restore the broken functionnality by testing whether the\ninterrupt is percpu or not instead of relying on the using_spi flag\nthat really means \"SPI *and* interrupt-affinity property\".\n\nAcked-by: Mark Rutland <mark.rutland@arm.com>\nReported-by: Geert Uytterhoeven <geert@linux-m68k.org>\nTested-by: Geert Uytterhoeven <geert@linux-m68k.org>\nFixes: 19a469a58720 (\"drivers/perf: arm-pmu: Handle per-interrupt affinity mask\")\nSigned-off-by: Marc Zyngier <marc.zyngier@arm.com>\nSigned-off-by: Will Deacon <will.deacon@arm.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/7f1d642fbb5c356519617c24757a0cbed7f800a8"},{"sha":"51350ea0d7f355dfc03deb343a665802d3d5cbba","author":{"name":"Konstantin Khlebnikov","email":"33f393458f79f8bd43067082d72780d307e418ab@yandex-team.ru"},"message":"mm, writeback: flush plugged IO in wakeup_flusher_threads()\n\nI've found funny live-lock between raid10 barriers during resync and\nmemory controller hard limits. Inside mpage_readpages() task holds on to\nits plug bio which blocks the barrier in raid10. Its memory cgroup have\nno free memory thus the task goes into reclaimer but all reclaimable\npages are dirty and cannot be written because raid10 is rebuilding and\nstuck on the barrier.\n\nCommon flush of such IO in schedule() never happens, because the caller\ndoesn't go to sleep.\n\nLock is 'live' because changing memory limit or killing tasks which\nholds that stuck bio unblock whole progress.\n\nThat was what happened in 3.18.x but I see no difference in upstream\nlogic.  Theoretically this might happen even without memory cgroup.\n\nSigned-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>\nSigned-off-by: Jens Axboe <axboe@fb.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/51350ea0d7f355dfc03deb343a665802d3d5cbba"},{"sha":"c21377f8366c95440d533edbe47d070f662c62ef","author":{"name":"Gabriel Krisman Bertazi","email":"70c508657631d6f248acc0b255cbde9f133e6554@linux.vnet.ibm.com"},"message":"nvme: Suspend all queues before deletion\n\nWhen nvme_delete_queue fails in the first pass of the\nnvme_disable_io_queues() loop, we return early, failing to suspend all\nof the IO queues.  Later, on the nvme_pci_disable path, this causes us\nto disable MSI without actually having freed all the IRQs, which\ntriggers the BUG_ON in free_msi_irqs(), as show below.\n\nThis patch refactors nvme_disable_io_queues to suspend all queues before\nstart submitting delete queue commands.  This way, we ensure that we\nhave at least returned every IRQ before continuing with the removal\npath.\n\n[  487.529200] kernel BUG at ../drivers/pci/msi.c:368!\ncpu 0x46: Vector: 700 (Program Check) at [c0000078c5b83650]\n    pc: c000000000627a50: free_msi_irqs+0x90/0x200\n    lr: c000000000627a40: free_msi_irqs+0x80/0x200\n    sp: c0000078c5b838d0\n   msr: 9000000100029033\n  current = 0xc0000078c5b40000\n  paca    = 0xc000000002bd7600   softe: 0        irq_happened: 0x01\n    pid   = 1376, comm = kworker/70:1H\nkernel BUG at ../drivers/pci/msi.c:368!\nLinux version 4.7.0.mainline+ (root@iod76) (gcc version 5.3.1 20160413\n(Ubuntu/IBM 5.3.1-14ubuntu2.1) ) #104 SMP Fri Jul 29 09:20:17 CDT 2016\nenter ? for help\n[c0000078c5b83920] d0000000363b0cd8 nvme_dev_disable+0x208/0x4f0 [nvme]\n[c0000078c5b83a10] d0000000363b12a4 nvme_timeout+0xe4/0x250 [nvme]\n[c0000078c5b83ad0] c0000000005690e4 blk_mq_rq_timed_out+0x64/0x110\n[c0000078c5b83b40] c00000000056c930 bt_for_each+0x160/0x170\n[c0000078c5b83bb0] c00000000056d928 blk_mq_queue_tag_busy_iter+0x78/0x110\n[c0000078c5b83c00] c0000000005675d8 blk_mq_timeout_work+0xd8/0x1b0\n[c0000078c5b83c50] c0000000000e8cf0 process_one_work+0x1e0/0x590\n[c0000078c5b83ce0] c0000000000e9148 worker_thread+0xa8/0x660\n[c0000078c5b83d80] c0000000000f2090 kthread+0x110/0x130\n[c0000078c5b83e30] c0000000000095f0 ret_from_kernel_thread+0x5c/0x6c\n\nSigned-off-by: Gabriel Krisman Bertazi <krisman@linux.vnet.ibm.com>\nCc: Brian King <brking@linux.vnet.ibm.com>\nCc: Keith Busch <keith.busch@intel.com>\nCc: linux-nvme@lists.infradead.org\nSigned-off-by: Jens Axboe <axboe@fb.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/c21377f8366c95440d533edbe47d070f662c62ef"},{"sha":"005411ea7ee776a56b1e0120a31c65efdee5cab1","author":{"name":"Joe Lawrence","email":"54448cb6bcb7f6b9e33bae1a9cc93249cb9c1e88@redhat.com"},"message":"doc: update block/queue-sysfs.txt entries\n\nAdd descriptions for dax, io_poll, and write_same_max_bytes files.\n\nSigned-off-by: Joe Lawrence <joe.lawrence@redhat.com>\nSigned-off-by: Jens Axboe <axboe@fb.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/005411ea7ee776a56b1e0120a31c65efdee5cab1"},{"sha":"1ea049b2de5d803374fdbf43add23c8d1c518e7b","author":{"name":"Johannes Berg","email":"9a5936d824e6835dfe162c5611d10d2cf40ffbad@intel.com"},"message":"bvec: avoid variable shadowing warning\n\nDue to the (indirect) nesting of min(..., min(...)), sparse will\nshow a variable shadowing warning whenever bvec.h is included.\n\nAvoid that by assigning the inner min() to a temporary variable first.\n\nSigned-off-by: Johannes Berg <johannes.berg@intel.com>\nSigned-off-by: Jens Axboe <axboe@fb.com>","distinct":true,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/1ea049b2de5d803374fdbf43add23c8d1c518e7b"}]}
{"actor":{"display_login":"Jackeagle"}}