)]}'
{
  "log": [
    {
      "commit": "8842daf8de22f7b38609bbd50e2379c0c8164dc9",
      "tree": "ad6c9a55c51a9e79183fd66769116c947c457700",
      "parents": [
        "5be8b6507f7fd570617e331bda05bf11968120c3"
      ],
      "author": {
        "name": "Ruixuan Li",
        "email": "ruixuan.li@amlogic.com",
        "time": "Thu Jun 14 20:21:50 2018 +0800"
      },
      "committer": {
        "name": "Yixun Lan",
        "email": "yixun.lan@amlogic.com",
        "time": "Fri Aug 10 00:25:06 2018 -0700"
      },
      "message": "emmc: upgrade gpt or ept based on priority\n\nPD#168362: P211: emmc: upgrade gpt or ept based on priority\n\nChange-Id: I0e7ea483ac5fc0a59ee24ae21d2e40e1c5d32465\nSigned-off-by: Ruixuan Li \u003cruixuan.li@amlogic.com\u003e\n"
    },
    {
      "commit": "320d53a9d07cb348ca24cb59a4ac716091938aaa",
      "tree": "19f0334d15a116f45000b2fd6e65e49087e7dbdb",
      "parents": [
        "a35dc729372b84fb410279162b05e33f546380e1",
        "5cd35f3eb5384f30d1a10d87f088bacd8839c22b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Apr 24 11:26:46 2018 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Apr 24 11:26:46 2018 +0200"
      },
      "message": "Merge 4.9.96 into android-4.9\n\nChanges in 4.9.96\n\ttty: make n_tty_read() always abort if hangup is in progress\n\tubifs: Check ubifs_wbuf_sync() return code\n\tubi: fastmap: Don\u0027t flush fastmap work on detach\n\tubi: Fix error for write access\n\tubi: Reject MLC NAND\n\tfs/reiserfs/journal.c: add missing resierfs_warning() arg\n\tresource: fix integer overflow at reallocation\n\tipc/shm: fix use-after-free of shm file via remap_file_pages()\n\tmm, slab: reschedule cache_reap() on the same CPU\n\tusb: musb: gadget: misplaced out of bounds check\n\tusb: gadget: udc: core: update usb_ep_queue() documentation\n\tARM: dts: at91: at91sam9g25: fix mux-mask pinctrl property\n\tARM: dts: exynos: Fix IOMMU support for GScaler devices on Exynos5250\n\tARM: dts: at91: sama5d4: fix pinctrl compatible string\n\tspi: Fix scatterlist elements size in spi_map_buf\n\txen-netfront: Fix hang on device removal\n\tregmap: Fix reversed bounds check in regmap_raw_write()\n\tACPI / video: Add quirk to force acpi-video backlight on Samsung 670Z5E\n\tACPI / hotplug / PCI: Check presence of slot itself in get_slot_status()\n\tUSB: gadget: f_midi: fixing a possible double-free in f_midi\n\tUSB:fix USB3 devices behind USB3 hubs not resuming at hibernate thaw\n\tusb: dwc3: pci: Properly cleanup resource\n\tsmb3: Fix root directory when server returns inode number of zero\n\tHID: i2c-hid: fix size check and type usage\n\tpowerpc/powernv: Handle unknown OPAL errors in opal_nvram_write()\n\tpowerpc/64: Fix smp_wmb barrier definition use use lwsync consistently\n\tpowerpc/powernv: define a standard delay for OPAL_BUSY type retry loops\n\tpowerpc/powernv: Fix OPAL NVRAM driver OPAL_BUSY loops\n\tHID: Fix hid_report_len usage\n\tHID: core: Fix size as type u32\n\tASoC: ssm2602: Replace reg_default_raw with reg_default\n\tthunderbolt: Resume control channel after hibernation image is created\n\tirqchip/gic: Take lock when updating irq type\n\trandom: use a tighter cap in credit_entropy_bits_safe()\n\tjbd2: if the journal is aborted then don\u0027t allow update of the log tail\n\text4: don\u0027t update checksum of new initialized bitmaps\n\text4: protect i_disksize update by i_data_sem in direct write path\n\text4: fail ext4_iget for root directory if unallocated\n\tRDMA/ucma: Don\u0027t allow setting RDMA_OPTION_IB_PATH without an RDMA device\n\tRDMA/rxe: Fix an out-of-bounds read\n\tALSA: pcm: Fix UAF at PCM release via PCM timer access\n\tIB/srp: Fix srp_abort()\n\tIB/srp: Fix completion vector assignment algorithm\n\tdmaengine: at_xdmac: fix rare residue corruption\n\tlibnvdimm, namespace: use a safe lookup for dimm device name\n\tnfit, address-range-scrub: fix scrub in-progress reporting\n\tum: Compile with modern headers\n\tum: Use POSIX ucontext_t instead of struct ucontext\n\tiommu/vt-d: Fix a potential memory leak\n\tmmc: jz4740: Fix race condition in IRQ mask update\n\tclk: mvebu: armada-38x: add support for 1866MHz variants\n\tclk: mvebu: armada-38x: add support for missing clocks\n\tclk: fix false-positive Wmaybe-uninitialized warning\n\tclk: bcm2835: De-assert/assert PLL reset signal when appropriate\n\tpwm: rcar: Fix a condition to prevent mismatch value setting to duty\n\tthermal: imx: Fix race condition in imx_thermal_probe()\n\tdt-bindings: clock: mediatek: add binding for fixed-factor clock axisel_d4\n\twatchdog: f71808e_wdt: Fix WD_EN register read\n\tvfio/pci: Virtualize Maximum Read Request Size\n\tALSA: pcm: Use ERESTARTSYS instead of EINTR in OSS emulation\n\tALSA: pcm: Avoid potential races between OSS ioctls and read/write\n\tALSA: pcm: Return -EBUSY for OSS ioctls changing busy streams\n\tALSA: pcm: Fix mutex unbalance in OSS emulation ioctls\n\tALSA: pcm: Fix endless loop for XRUN recovery in OSS emulation\n\text4: don\u0027t allow r/w mounts if metadata blocks overlap the superblock\n\tdrm/amdgpu: Add an ATPX quirk for hybrid laptop\n\tdrm/amdgpu: Fix always_valid bos multiple LRU insertions.\n\tdrm/amdgpu: Fix PCIe lane width calculation\n\tdrm/rockchip: Clear all interrupts before requesting the IRQ\n\tdrm/radeon: Fix PCIe lane width calculation\n\tALSA: line6: Use correct endpoint type for midi output\n\tALSA: rawmidi: Fix missing input substream checks in compat ioctls\n\tALSA: hda - New VIA controller suppor no-snoop path\n\trandom: fix crng_ready() test\n\trandom: crng_reseed() should lock the crng instance that it is modifying\n\trandom: add new ioctl RNDRESEEDCRNG\n\tHID: hidraw: Fix crash on HIDIOCGFEATURE with a destroyed device\n\tMIPS: uaccess: Add micromips clobbers to bzero invocation\n\tMIPS: memset.S: EVA \u0026 fault support for small_memset\n\tMIPS: memset.S: Fix return of __clear_user from Lpartial_fixup\n\tMIPS: memset.S: Fix clobber of v1 in last_fixup\n\tpowerpc/eeh: Fix enabling bridge MMIO windows\n\tpowerpc/lib: Fix off-by-one in alternate feature patching\n\tudf: Fix leak of UTF-16 surrogates into encoded strings\n\tjffs2_kill_sb(): deal with failed allocations\n\thypfs_kill_super(): deal with failed allocations\n\torangefs_kill_sb(): deal with allocation failures\n\trpc_pipefs: fix double-dput()\n\tDon\u0027t leak MNT_INTERNAL away from internal mounts\n\tautofs: mount point create should honour passed in mode\n\tmm/filemap.c: fix NULL pointer in page_cache_tree_insert()\n\tfanotify: fix logic of events on child\n\twriteback: safer lock nesting\n\tblock/mq: fix potential deadlock during cpu hotplug\n\tLinux 4.9.96\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "8d7f1fde9d8df8ae9393c6902470222305ac03b0",
      "tree": "9f11e09811230ba2b7186d46034f697c5d878b90",
      "parents": [
        "18484eb932e2bdbdab83700c6d7d68f9f743f4c8"
      ],
      "author": {
        "name": "Wanpeng Li",
        "email": "wanpeng.li@hotmail.com",
        "time": "Sun May 07 00:14:22 2017 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Apr 24 09:34:18 2018 +0200"
      },
      "message": "block/mq: fix potential deadlock during cpu hotplug\n\ncommit 51d638b1f56a0bfd9219800620994794a1a2b219 upstream.\n\nThis can be triggered by hot-unplug one cpu.\n\n\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 [ INFO: possible circular locking dependency detected ]\n 4.11.0+ #17 Not tainted\n -------------------------------------------------------\n step_after_susp/2640 is trying to acquire lock:\n  (all_q_mutex){+.+...}, at: [\u003cffffffffb33f95b8\u003e] blk_mq_queue_reinit_work+0x18/0x110\n\n but task is already holding lock:\n  (cpu_hotplug.lock){+.+.+.}, at: [\u003cffffffffb306d04f\u003e] cpu_hotplug_begin+0x7f/0xe0\n\n which lock already depends on the new lock.\n\n the existing dependency chain (in reverse order) is:\n\n -\u003e #1 (cpu_hotplug.lock){+.+.+.}:\n        lock_acquire+0x11c/0x230\n        __mutex_lock+0x92/0x990\n        mutex_lock_nested+0x1b/0x20\n        get_online_cpus+0x64/0x80\n        blk_mq_init_allocated_queue+0x3a0/0x4e0\n        blk_mq_init_queue+0x3a/0x60\n        loop_add+0xe5/0x280\n        loop_init+0x124/0x177\n        do_one_initcall+0x53/0x1c0\n        kernel_init_freeable+0x1e3/0x27f\n        kernel_init+0xe/0x100\n        ret_from_fork+0x31/0x40\n\n -\u003e #0 (all_q_mutex){+.+...}:\n        __lock_acquire+0x189a/0x18a0\n        lock_acquire+0x11c/0x230\n        __mutex_lock+0x92/0x990\n        mutex_lock_nested+0x1b/0x20\n        blk_mq_queue_reinit_work+0x18/0x110\n        blk_mq_queue_reinit_dead+0x1c/0x20\n        cpuhp_invoke_callback+0x1f2/0x810\n        cpuhp_down_callbacks+0x42/0x80\n        _cpu_down+0xb2/0xe0\n        freeze_secondary_cpus+0xb6/0x390\n        suspend_devices_and_enter+0x3b3/0xa40\n        pm_suspend+0x129/0x490\n        state_store+0x82/0xf0\n        kobj_attr_store+0xf/0x20\n        sysfs_kf_write+0x45/0x60\n        kernfs_fop_write+0x135/0x1c0\n        __vfs_write+0x37/0x160\n        vfs_write+0xcd/0x1d0\n        SyS_write+0x58/0xc0\n        do_syscall_64+0x8f/0x710\n        return_from_SYSCALL_64+0x0/0x7a\n\n other info that might help us debug this:\n\n  Possible unsafe locking scenario:\n\n        CPU0                    CPU1\n        ----                    ----\n   lock(cpu_hotplug.lock);\n                                lock(all_q_mutex);\n                                lock(cpu_hotplug.lock);\n   lock(all_q_mutex);\n\n  *** DEADLOCK ***\n\n 8 locks held by step_after_susp/2640:\n  #0:  (sb_writers#6){.+.+.+}, at: [\u003cffffffffb3244aed\u003e] vfs_write+0x1ad/0x1d0\n  #1:  (\u0026of-\u003emutex){+.+.+.}, at: [\u003cffffffffb32d3a51\u003e] kernfs_fop_write+0x101/0x1c0\n  #2:  (s_active#166){.+.+.+}, at: [\u003cffffffffb32d3a59\u003e] kernfs_fop_write+0x109/0x1c0\n  #3:  (pm_mutex){+.+...}, at: [\u003cffffffffb30d2ecd\u003e] pm_suspend+0x21d/0x490\n  #4:  (acpi_scan_lock){+.+.+.}, at: [\u003cffffffffb34dc3d7\u003e] acpi_scan_lock_acquire+0x17/0x20\n  #5:  (cpu_add_remove_lock){+.+.+.}, at: [\u003cffffffffb306d6d7\u003e] freeze_secondary_cpus+0x27/0x390\n  #6:  (cpu_hotplug.dep_map){++++++}, at: [\u003cffffffffb306cfd5\u003e] cpu_hotplug_begin+0x5/0xe0\n  #7:  (cpu_hotplug.lock){+.+.+.}, at: [\u003cffffffffb306d04f\u003e] cpu_hotplug_begin+0x7f/0xe0\n\n stack backtrace:\n CPU: 3 PID: 2640 Comm: step_after_susp Not tainted 4.11.0+ #17\n Hardware name: Dell Inc. OptiPlex 7040/0JCTF8, BIOS 1.4.9 09/12/2016\n Call Trace:\n  dump_stack+0x99/0xce\n  print_circular_bug+0x1fa/0x270\n  __lock_acquire+0x189a/0x18a0\n  lock_acquire+0x11c/0x230\n  ? lock_acquire+0x11c/0x230\n  ? blk_mq_queue_reinit_work+0x18/0x110\n  ? blk_mq_queue_reinit_work+0x18/0x110\n  __mutex_lock+0x92/0x990\n  ? blk_mq_queue_reinit_work+0x18/0x110\n  ? kmem_cache_free+0x2cb/0x330\n  ? anon_transport_class_unregister+0x20/0x20\n  ? blk_mq_queue_reinit_work+0x110/0x110\n  mutex_lock_nested+0x1b/0x20\n  ? mutex_lock_nested+0x1b/0x20\n  blk_mq_queue_reinit_work+0x18/0x110\n  blk_mq_queue_reinit_dead+0x1c/0x20\n  cpuhp_invoke_callback+0x1f2/0x810\n  ? __flow_cache_shrink+0x160/0x160\n  cpuhp_down_callbacks+0x42/0x80\n  _cpu_down+0xb2/0xe0\n  freeze_secondary_cpus+0xb6/0x390\n  suspend_devices_and_enter+0x3b3/0xa40\n  ? rcu_read_lock_sched_held+0x79/0x80\n  pm_suspend+0x129/0x490\n  state_store+0x82/0xf0\n  kobj_attr_store+0xf/0x20\n  sysfs_kf_write+0x45/0x60\n  kernfs_fop_write+0x135/0x1c0\n  __vfs_write+0x37/0x160\n  ? rcu_read_lock_sched_held+0x79/0x80\n  ? rcu_sync_lockdep_assert+0x2f/0x60\n  ? __sb_start_write+0xd9/0x1c0\n  ? vfs_write+0x1ad/0x1d0\n  vfs_write+0xcd/0x1d0\n  SyS_write+0x58/0xc0\n  ? rcu_read_lock_sched_held+0x79/0x80\n  do_syscall_64+0x8f/0x710\n  ? trace_hardirqs_on_thunk+0x1a/0x1c\n  entry_SYSCALL64_slow_path+0x25/0x25\n\nThe cpu hotplug path will hold cpu_hotplug.lock and then reinit all exiting\nqueues for blk mq w/ all_q_mutex, however, blk_mq_init_allocated_queue() will\ncontend these two locks in the inversion order. This is due to commit eabe06595d62\n(blk/mq: Cure cpu hotplug lock inversion), it fixes a cpu hotplug lock inversion\nissue because of hotplug rework, however the hotplug rework is still work-in-progress\nand lives in a -tip branch and mainline cannot yet trigger that splat. The commit\nbreaks the linus\u0027s tree in the merge window, so this patch reverts the lock order\nand avoids to splat linus\u0027s tree.\n\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Peter Zijlstra (Intel) \u003cpeterz@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Wanpeng Li \u003cwanpeng.li@hotmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nCc: Thierry Escande \u003cthierry.escande@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "8683408f8e81a1c171f426152f04df6718b5323f",
      "tree": "16b657f9a455b3f4f77e9dda8adf8c0b1eac24b7",
      "parents": [
        "2ba4887f2937a15bf32e0c482d68bd77fcf04aa8",
        "cc0eb4dd504b8a0adab865a9488297aca63013ba"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sat Apr 14 15:40:56 2018 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sat Apr 14 15:40:56 2018 +0200"
      },
      "message": "Merge 4.9.94 into android-4.9\n\nChanges in 4.9.94\n\tqed: Fix overriding of supported autoneg value.\n\tcfg80211: make RATE_INFO_BW_20 the default\n\tmd/raid5: make use of spin_lock_irq over local_irq_disable + spin_lock\n\trtc: snvs: fix an incorrect check of return value\n\tx86/asm: Don\u0027t use RBP as a temporary register in csum_partial_copy_generic()\n\tx86/mm/kaslr: Use the _ASM_MUL macro for multiplication to work around Clang incompatibility\n\tovl: persistent inode numbers for upper hardlinks\n\tNFSv4.1: RECLAIM_COMPLETE must handle NFS4ERR_CONN_NOT_BOUND_TO_SESSION\n\tx86/boot: Declare error() as noreturn\n\tIB/srpt: Fix abort handling\n\tIB/srpt: Avoid that aborting a command triggers a kernel warning\n\taf_key: Fix slab-out-of-bounds in pfkey_compile_policy.\n\tmac80211: bail out from prep_connection() if a reconfig is ongoing\n\tbna: Avoid reading past end of buffer\n\tqlge: Avoid reading past end of buffer\n\tubi: fastmap: Fix slab corruption\n\tipmi_ssif: unlock on allocation failure\n\tnet: cdc_ncm: Fix TX zero padding\n\tnet: ethernet: ti: cpsw: adjust cpsw fifos depth for fullduplex flow control\n\tlockd: fix lockd shutdown race\n\tdrivers/misc/vmw_vmci/vmci_queue_pair.c: fix a couple integer overflow tests\n\tpidns: disable pid allocation if pid_ns_prepare_proc() is failed in alloc_pid()\n\ts390: move _text symbol to address higher than zero\n\tnet/mlx4_en: Avoid adding steering rules with invalid ring\n\tqed: Correct doorbell configuration for !4Kb pages\n\tNFSv4.1: Work around a Linux server bug...\n\tCIFS: silence lockdep splat in cifs_relock_file()\n\tperf/callchain: Force USER_DS when invoking perf_callchain_user()\n\tblk-mq: NVMe 512B/4K+T10 DIF/DIX format returns I/O error on dd with split op\n\tnet: qca_spi: Fix alignment issues in rx path\n\tnetxen_nic: set rcode to the return status from the call to netxen_issue_cmd\n\tmdio: mux: Correct mdio_mux_init error path issues\n\tInput: elan_i2c - check if device is there before really probing\n\tInput: elantech - force relative mode on a certain module\n\tKVM: PPC: Book3S PR: Check copy_to/from_user return values\n\tirqchip/mbigen: Fix the clear register offset calculation\n\tvmxnet3: ensure that adapter is in proper state during force_close\n\tmm, vmstat: Remove spurious WARN() during zoneinfo print\n\tSMB2: Fix share type handling\n\tbus: brcmstb_gisb: Use register offsets with writes too\n\tbus: brcmstb_gisb: correct support for 64-bit address output\n\tPowerCap: Fix an error code in powercap_register_zone()\n\tiio: pressure: zpa2326: report interrupted case as failure\n\tARM: dts: imx53-qsrb: Pulldown PMIC IRQ pin\n\tstaging: wlan-ng: prism2mgmt.c: fixed a double endian conversion before calling hfa384x_drvr_setconfig16, also fixes relative sparse warning\n\tclk: renesas: rcar-gen2: Fix PLL0 on R-Car V2H and E2\n\tx86/tsc: Provide \u0027tsc\u003dunstable\u0027 boot parameter\n\tpowerpc/modules: If mprofile-kernel is enabled add it to vermagic\n\tARM: dts: imx6qdl-wandboard: Fix audio channel swap\n\ti2c: mux: reg: put away the parent i2c adapter on probe failure\n\tarm64: perf: Ignore exclude_hv when kernel is running in HYP\n\tmdio: mux: fix device_node_continue.cocci warnings\n\tipv6: avoid dad-failures for addresses with NODAD\n\tasync_tx: Fix DMA_PREP_FENCE usage in do_async_gen_syndrome()\n\tKVM: arm: Restore banked registers and physical timer access on hyp_panic()\n\tKVM: arm64: Restore host physical timer access on hyp_panic()\n\tusb: dwc3: keystone: check return value\n\tbtrfs: fix incorrect error return ret being passed to mapping_set_error\n\tata: libahci: properly propagate return value of platform_get_irq()\n\tipmr: vrf: Find VIFs using the actual device\n\tuio: fix incorrect memory leak cleanup\n\tneighbour: update neigh timestamps iff update is effective\n\tarp: honour gratuitous ARP _replies_\n\tARM: dts: rockchip: fix rk322x i2s1 pinctrl error\n\tusb: chipidea: properly handle host or gadget initialization failure\n\tpxa_camera: fix module remove codepath for v4l2 clock\n\tUSB: ene_usb6250: fix first command execution\n\tnet: x25: fix one potential use-after-free issue\n\tUSB: ene_usb6250: fix SCSI residue overwriting\n\tserial: 8250: omap: Disable DMA for console UART\n\tserial: sh-sci: Fix race condition causing garbage during shutdown\n\tnet/wan/fsl_ucc_hdlc: fix unitialized variable warnings\n\tnet/wan/fsl_ucc_hdlc: fix incorrect memory allocation\n\tfsl/qe: add bit description for SYNL register for GUMR\n\tsh_eth: Use platform device for printing before register_netdev()\n\tmlxsw: spectrum: Avoid possible NULL pointer dereference\n\tscsi: csiostor: fix use after free in csio_hw_use_fwconfig()\n\tpowerpc/mm: Fix virt_addr_valid() etc. on 64-bit hash\n\tath5k: fix memory leak on buf on failed eeprom read\n\tselftests/powerpc: Fix TM resched DSCR test with some compilers\n\txfrm: fix state migration copy replay sequence numbers\n\tASoC: simple-card: fix mic jack initialization\n\tiio: hi8435: avoid garbage event at first enable\n\tiio: hi8435: cleanup reset gpio\n\tiio: light: rpr0521 poweroff for probe fails\n\text4: handle the rest of ext4_mb_load_buddy() ENOMEM errors\n\tmd-cluster: fix potential lock issue in add_new_disk\n\tARM: davinci: da8xx: Create DSP device only when assigned memory\n\tray_cs: Avoid reading past end of buffer\n\tnet/wan/fsl_ucc_hdlc: fix muram allocation error\n\tleds: pca955x: Correct I2C Functionality\n\tperf/core: Fix error handling in perf_event_alloc()\n\tsched/numa: Use down_read_trylock() for the mmap_sem\n\tgpio: crystalcove: Do not write regular gpio registers for virtual GPIOs\n\tnet/mlx5: Tolerate irq_set_affinity_hint() failures\n\tselinux: do not check open permission on sockets\n\tblock: fix an error code in add_partition()\n\tmlx5: fix bug reading rss_hash_type from CQE\n\tnet: ieee802154: fix net_device reference release too early\n\tlibceph: NULL deref on crush_decode() error path\n\tperf report: Fix off-by-one for non-activation frames\n\tnetfilter: ctnetlink: fix incorrect nf_ct_put during hash resize\n\tpNFS/flexfiles: missing error code in ff_layout_alloc_lseg()\n\tASoC: rsnd: SSI PIO adjust to 24bit mode\n\tscsi: bnx2fc: fix race condition in bnx2fc_get_host_stats()\n\tfix race in drivers/char/random.c:get_reg()\n\text4: fix off-by-one on max nr_pages in ext4_find_unwritten_pgoff()\n\tARM64: PCI: Fix struct acpi_pci_root_ops allocation failure path\n\ttcp: better validation of received ack sequences\n\tnet: move somaxconn init from sysctl code\n\tInput: elan_i2c - clear INT before resetting controller\n\tbonding: Don\u0027t update slave-\u003elink until ready to commit\n\tcpuhotplug: Link lock stacks for hotplug callbacks\n\tPCI/msi: fix the pci_alloc_irq_vectors_affinity stub\n\tKVM: X86: Fix preempt the preemption timer cancel\n\tKVM: nVMX: Fix handling of lmsw instruction\n\tnet: llc: add lock_sock in llc_ui_bind to avoid a race condition\n\tdrm/msm: Take the mutex before calling msm_gem_new_impl\n\ti40iw: Fix sequence number for the first partial FPDU\n\ti40iw: Correct Q1/XF object count equation\n\tARM: dts: ls1021a: add \"fsl,ls1021a-esdhc\" compatible string to esdhc node\n\tthermal: power_allocator: fix one race condition issue for thermal_instances list\n\tperf probe: Add warning message if there is unexpected event name\n\tl2tp: fix missing print session offset info\n\trds; Reset rs-\u003ers_bound_addr in rds_add_bound() failure path\n\tACPI / video: Default lcd_only to true on Win8-ready and newer machines\n\tnet/mlx4_en: Change default QoS settings\n\tVFS: close race between getcwd() and d_move()\n\tPM / devfreq: Fix potential NULL pointer dereference in governor_store\n\thwmon: (ina2xx) Make calibration register value fixed\n\tmedia: videobuf2-core: don\u0027t go out of the buffer range\n\tASoC: Intel: Skylake: Disable clock gating during firmware and library download\n\tASoC: Intel: cht_bsw_rt5645: Analog Mic support\n\tscsi: libiscsi: Allow sd_shutdown on bad transport\n\tscsi: mpt3sas: Proper handling of set/clear of \"ATA command pending\" flag.\n\tirqchip/gic-v3: Fix the driver probe() fail due to disabled GICC entry\n\tACPI: EC: Fix debugfs_create_*() usage\n\tmac80211: Fix setting TX power on monitor interfaces\n\tvfb: fix video mode and line_length being set when loaded\n\tgpio: label descriptors using the device name\n\tIB/rdmavt: Allocate CQ memory on the correct node\n\tblk-mq: fix race between updating nr_hw_queues and switching io sched\n\tbacklight: tdo24m: Fix the SPI CS between transfers\n\tpinctrl: baytrail: Enable glitch filter for GPIOs used as interrupts\n\tASoC: Intel: sst: Fix the return value of \u0027sst_send_byte_stream_mrfld()\u0027\n\trt2x00: do not pause queue unconditionally on error path\n\twl1251: check return from call to wl1251_acx_arp_ip_filter\n\thdlcdrv: Fix divide by zero in hdlcdrv_ioctl\n\tx86/efi: Disable runtime services on kexec kernel if booted with efi\u003dold_map\n\tnetfilter: conntrack: don\u0027t call iter for non-confirmed conntracks\n\tHID: i2c: Call acpi_device_fix_up_power for ACPI-enumerated devices\n\tovl: filter trusted xattr for non-admin\n\tpowerpc/[booke|4xx]: Don\u0027t clobber TCR[WP] when setting TCR[DIE]\n\tdmaengine: imx-sdma: Handle return value of clk_prepare_enable\n\tbacklight: Report error on failure\n\tarm64: futex: Fix undefined behaviour with FUTEX_OP_OPARG_SHIFT usage\n\tnet/mlx5: avoid build warning for uniprocessor\n\tcxgb4: FW upgrade fixes\n\tcxgb4: Fix netdev_features flag\n\trtc: m41t80: fix SQW dividers override when setting a date\n\ti40evf: fix merge error in older patch\n\trtc: opal: Handle disabled TPO in opal_get_tpo_time()\n\trtc: interface: Validate alarm-time before handling rollover\n\tSUNRPC: ensure correct error is reported by xs_tcp_setup_socket()\n\tnet: freescale: fix potential null pointer dereference\n\tclk: at91: fix clk-generated parenting\n\tdrm/sun4i: Ignore the generic connectors for components\n\tdt-bindings: display: sun4i: Add allwinner,tcon-channel property\n\tmtd: nand: gpmi: Fix gpmi_nand_init() error path\n\tmtd: nand: check ecc-\u003etotal sanity in nand_scan_tail\n\tKVM: SVM: do not zero out segment attributes if segment is unusable or not present\n\tclk: scpi: fix return type of __scpi_dvfs_round_rate\n\tclk: Fix __set_clk_rates error print-string\n\tpowerpc/spufs: Fix coredump of SPU contexts\n\tdrm/amdkfd: NULL dereference involving create_process()\n\tath10k: add BMI parameters to fix calibration from DT/pre-cal\n\tperf trace: Add mmap alias for s390\n\tqlcnic: Fix a sleep-in-atomic bug in qlcnic_82xx_hw_write_wx_2M and qlcnic_82xx_hw_read_wx_2M\n\tarm64: kernel: restrict /dev/mem read() calls to linear region\n\tmISDN: Fix a sleep-in-atomic bug\n\tnet: phy: micrel: Restore led_mode and clk_sel on resume\n\tRDMA/iw_cxgb4: Avoid touch after free error in ARP failure handlers\n\tRDMA/hfi1: fix array termination by appending NULL to attr array\n\tdrm/omap: fix tiled buffer stride calculations\n\tpowerpc/8xx: fix mpc8xx_get_irq() return on no irq\n\tcxgb4: fix incorrect cim_la output for T6\n\tFix serial console on SNI RM400 machines\n\tbio-integrity: Do not allocate integrity context for bio w/o data\n\tip6_tunnel: fix traffic class routing for tunnels\n\tskbuff: return -EMSGSIZE in skb_to_sgvec to prevent overflow\n\tmacsec: check return value of skb_to_sgvec always\n\tsit: reload iphdr in ipip6_rcv\n\tnet/mlx4: Fix the check in attaching steering rules\n\tnet/mlx4: Check if Granular QoS per VF has been enabled before updating QP qos_vport\n\tperf header: Set proper module name when build-id event found\n\tperf report: Ensure the perf DSO mapping matches what libdw sees\n\tiwlwifi: mvm: fix firmware debug restart recording\n\twatchdog: f71808e_wdt: Add F71868 support\n\tiwlwifi: mvm: Fix command queue number on d0i3 flow\n\tiwlwifi: tt: move ucode_loaded check under mutex\n\tiwlwifi: pcie: only use d0i3 in suspend/resume if system_pm is set to d0i3\n\tiwlwifi: fix min API version for 7265D, 3168, 8000 and 8265\n\ttags: honor COMPILED_SOURCE with apart output directory\n\tARM: dts: qcom: ipq4019: fix i2c_0 node\n\te1000e: fix race condition around skb_tstamp_tx()\n\tigb: fix race condition with PTP_TX_IN_PROGRESS bits\n\tcxl: Unlock on error in probe\n\tcx25840: fix unchecked return values\n\tmceusb: sporadic RX truncation corruption fix\n\tnet: phy: avoid genphy_aneg_done() for PHYs without clause 22 support\n\tARM: imx: Add MXC_CPU_IMX6ULL and cpu_is_imx6ull\n\tnvme-pci: fix multiple ctrl removal scheduling\n\tnvme: fix hang in remove path\n\tKVM: nVMX: Update vmcs12-\u003eguest_linear_address on nested VM-exit\n\te1000e: Undo e1000e_pm_freeze if __e1000_shutdown fails\n\tperf/core: Correct event creation with PERF_FORMAT_GROUP\n\tsched/deadline: Use the revised wakeup rule for suspending constrained dl tasks\n\tMIPS: mm: fixed mappings: correct initialisation\n\tMIPS: mm: adjust PKMAP location\n\tMIPS: kprobes: flush_insn_slot should flush only if probe initialised\n\tARM: dts: armadillo800eva: Split LCD mux and gpio\n\tFix loop device flush before configure v3\n\tnet: emac: fix reset timeout with AR8035 phy\n\tperf tools: Decompress kernel module when reading DSO data\n\tperf tests: Decompress kernel module before objdump\n\tskbuff: only inherit relevant tx_flags\n\txen: avoid type warning in xchg_xen_ulong\n\tX.509: Fix error code in x509_cert_parse()\n\tpinctrl: meson-gxbb: remove non-existing pin GPIOX_22\n\tcoresight: Fix reference count for software sources\n\tcoresight: tmc: Configure DMA mask appropriately\n\tstmmac: fix ptp header for GMAC3 hw timestamp\n\tgeneve: add missing rx stats accounting\n\tcrypto: omap-sham - buffer handling fixes for hashing later\n\tcrypto: omap-sham - fix closing of hash with separate finalize call\n\tbnx2x: Allow vfs to disable txvlan offload\n\tsctp: fix recursive locking warning in sctp_do_peeloff\n\tnet: fec: Add a fec_enet_clear_ethtool_stats() stub for CONFIG_M5272\n\tsparc64: ldc abort during vds iso boot\n\tiio: magnetometer: st_magn_spi: fix spi_device_id table\n\tnet: ena: fix rare uncompleted admin command false alarm\n\tnet: ena: fix race condition between submit and completion admin command\n\tnet: ena: add missing return when ena_com_get_io_handlers() fails\n\tnet: ena: add missing unmap bars on device removal\n\tnet: ena: disable admin msix while working in polling mode\n\tclk: meson: meson8b: add compatibles for Meson8 and Meson8m2\n\tBluetooth: Send HCI Set Event Mask Page 2 command only when needed\n\tcpuidle: dt: Add missing \u0027of_node_put()\u0027\n\tACPICA: OSL: Add support to exclude stdarg.h\n\tACPICA: Events: Add runtime stub support for event APIs\n\tACPICA: Disassembler: Abort on an invalid/unknown AML opcode\n\ts390/dasd: fix hanging safe offline\n\tvxlan: dont migrate permanent fdb entries during learn\n\thsr: fix incorrect warning\n\tselftests: kselftest_harness: Fix compile warning\n\tdrm/vc4: Fix resource leak in \u0027vc4_get_hang_state_ioctl()\u0027 in error handling path\n\tbcache: stop writeback thread after detaching\n\tbcache: segregate flash only volume write streams\n\tscsi: libsas: fix memory leak in sas_smp_get_phy_events()\n\tscsi: libsas: fix error when getting phy events\n\tscsi: libsas: initialize sas_phy status according to response of DISCOVER\n\tblk-mq: fix kernel oops in blk_mq_tag_idle()\n\ttty: n_gsm: Allow ADM response in addition to UA for control dlci\n\tEDAC, mv64x60: Fix an error handling path\n\tcxgb4vf: Fix SGE FL buffer initialization logic for 64K pages\n\tsdhci: Advertise 2.0v supply on SDIO host controller\n\tInput: goodix - disable IRQs while suspended\n\tmtd: mtd_oobtest: Handle bitflips during reads\n\tperf tools: Fix copyfile_offset update of output offset\n\tipsec: check return value of skb_to_sgvec always\n\trxrpc: check return value of skb_to_sgvec always\n\tvirtio_net: check return value of skb_to_sgvec always\n\tvirtio_net: check return value of skb_to_sgvec in one more location\n\trandom: use lockless method of accessing and updating f-\u003ereg_idx\n\tclk: at91: fix clk-generated compilation\n\tarp: fix arp_filter on l3slave devices\n\tipv6: the entire IPv6 header chain must fit the first fragment\n\tnet: fix possible out-of-bound read in skb_network_protocol()\n\tnet/ipv6: Fix route leaking between VRFs\n\tnet/ipv6: Increment OUTxxx counters after netfilter hook\n\tnetlink: make sure nladdr has correct size in netlink_connect()\n\tnet/sched: fix NULL dereference in the error path of tcf_bpf_init()\n\tpptp: remove a buggy dst release in pptp_connect()\n\tr8169: fix setting driver_data after register_netdev\n\tsctp: do not leak kernel memory to user space\n\tsctp: sctp_sockaddr_af must check minimal addr length for AF_INET6\n\tsky2: Increase D3 delay to sky2 stops working after suspend\n\tvhost: correctly remove wait queue during poll failure\n\tvlan: also check phy_driver ts_info for vlan\u0027s real device\n\tbonding: fix the err path for dev hwaddr sync in bond_enslave\n\tbonding: move dev_mc_sync after master_upper_dev_link in bond_enslave\n\tbonding: process the err returned by dev_set_allmulti properly in bond_enslave\n\tnet: fool proof dev_valid_name()\n\tip_tunnel: better validate user provided tunnel names\n\tipv6: sit: better validate user provided tunnel names\n\tip6_gre: better validate user provided tunnel names\n\tip6_tunnel: better validate user provided tunnel names\n\tvti6: better validate user provided tunnel names\n\tnet/mlx5e: Sync netdev vxlan ports at open\n\tnet/sched: fix NULL dereference in the error path of tunnel_key_init()\n\tnet/sched: fix NULL dereference on the error path of tcf_skbmod_init()\n\tnet/mlx4_en: Fix mixed PFC and Global pause user control requests\n\tvhost: validate log when IOTLB is enabled\n\troute: check sysctl_fib_multipath_use_neigh earlier than hash\n\tteam: move dev_mc_sync after master_upper_dev_link in team_port_add\n\tvhost_net: add missing lock nesting notation\n\tnet/mlx4_core: Fix memory leak while delete slave\u0027s resources\n\tstrparser: Fix sign of err codes\n\tnet sched actions: fix dumping which requires several messages to user space\n\tvrf: Fix use after free and double free in vrf_finish_output\n\tRevert \"xhci: plat: Register shutdown for xhci_plat\"\n\tLinux 4.9.94\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "3f4e241969e87b26a17702457a364228bd675880",
      "tree": "3d5a73fa0dc06576a087547f7fca816a56561abc",
      "parents": [
        "cafd951e8bf2b2f70246a329dd0e226bf3c45d3d"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "ming.lei@redhat.com",
        "time": "Tue Jan 09 21:28:29 2018 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Apr 13 19:48:30 2018 +0200"
      },
      "message": "blk-mq: fix kernel oops in blk_mq_tag_idle()\n\n\n[ Upstream commit 8ab0b7dc73e1b3e2987d42554b2bff503f692772 ]\n\nHW queues may be unmapped in some cases, such as blk_mq_update_nr_hw_queues(),\nthen we need to check it before calling blk_mq_tag_idle(), otherwise\nthe following kernel oops can be triggered, so fix it by checking if\nthe hw queue is unmapped since it doesn\u0027t make sense to idle the tags\nany more after hw queues are unmapped.\n\n[  440.771298] Workqueue: nvme-wq nvme_rdma_del_ctrl_work [nvme_rdma]\n[  440.779104] task: ffff894bae755ee0 ti: ffff893bf9bc8000 task.ti: ffff893bf9bc8000\n[  440.788359] RIP: 0010:[\u003cffffffffb730e2b4\u003e]  [\u003cffffffffb730e2b4\u003e] __blk_mq_tag_idle+0x24/0x40\n[  440.798697] RSP: 0018:ffff893bf9bcbd10  EFLAGS: 00010286\n[  440.805538] RAX: 0000000000000000 RBX: ffff895bb131dc00 RCX: 000000000000011f\n[  440.814426] RDX: 00000000ffffffff RSI: 0000000000000120 RDI: ffff895bb131dc00\n[  440.823301] RBP: ffff893bf9bcbd10 R08: 000000000001b860 R09: 4a51d361c00c0000\n[  440.832193] R10: b5907f32b4cc7003 R11: ffffd6cabfb57000 R12: ffff894bafd1e008\n[  440.841091] R13: 0000000000000001 R14: ffff895baf770000 R15: 0000000000000080\n[  440.849988] FS:  0000000000000000(0000) GS:ffff894bbdcc0000(0000) knlGS:0000000000000000\n[  440.859955] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n[  440.867274] CR2: 0000000000000008 CR3: 000000103d098000 CR4: 00000000001407e0\n[  440.876169] Call Trace:\n[  440.879818]  [\u003cffffffffb7309d68\u003e] blk_mq_exit_hctx+0xd8/0xe0\n[  440.887051]  [\u003cffffffffb730dc40\u003e] blk_mq_free_queue+0xf0/0x160\n[  440.894465]  [\u003cffffffffb72ff679\u003e] blk_cleanup_queue+0xd9/0x150\n[  440.901881]  [\u003cffffffffc08a802b\u003e] nvme_ns_remove+0x5b/0xb0 [nvme_core]\n[  440.910068]  [\u003cffffffffc08a811b\u003e] nvme_remove_namespaces+0x3b/0x60 [nvme_core]\n[  440.919026]  [\u003cffffffffc08b817b\u003e] __nvme_rdma_remove_ctrl+0x2b/0xb0 [nvme_rdma]\n[  440.928079]  [\u003cffffffffc08b8237\u003e] nvme_rdma_del_ctrl_work+0x17/0x20 [nvme_rdma]\n[  440.937126]  [\u003cffffffffb70ab58a\u003e] process_one_work+0x17a/0x440\n[  440.944517]  [\u003cffffffffb70ac3a8\u003e] worker_thread+0x278/0x3c0\n[  440.951607]  [\u003cffffffffb70ac130\u003e] ? manage_workers.isra.24+0x2a0/0x2a0\n[  440.959760]  [\u003cffffffffb70b352f\u003e] kthread+0xcf/0xe0\n[  440.966055]  [\u003cffffffffb70b3460\u003e] ? insert_kthread_work+0x40/0x40\n[  440.973715]  [\u003cffffffffb76d8658\u003e] ret_from_fork+0x58/0x90\n[  440.980586]  [\u003cffffffffb70b3460\u003e] ? insert_kthread_work+0x40/0x40\n[  440.988229] Code: 5b 41 5c 5d c3 66 90 0f 1f 44 00 00 48 8b 87 20 01 00 00 f0 0f ba 77 40 01 19 d2 85 d2 75 08 c3 0f 1f 80 00 00 00 00 55 48 89 e5 \u003cf0\u003e ff 48 08 48 8d 78 10 e8 7f 0f 05 00 5d c3 0f 1f 00 66 2e 0f\n[  441.011620] RIP  [\u003cffffffffb730e2b4\u003e] __blk_mq_tag_idle+0x24/0x40\n[  441.019301]  RSP \u003cffff893bf9bcbd10\u003e\n[  441.024052] CR2: 0000000000000008\n\nReported-by: Zhang Yi \u003cyizhan@redhat.com\u003e\nTested-by: Zhang Yi \u003cyizhan@redhat.com\u003e\nSigned-off-by: Ming Lei \u003cming.lei@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@microsoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "7f851311e4d1e7bd60a5a9a2e761aba178f8bdae",
      "tree": "ca883fdf8ba283d63c56b6ea810c2ec60ca068d1",
      "parents": [
        "e8b356ae7876d4661aee3d307fc2dedd46aa1f42"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Wed May 10 19:20:44 2017 +0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Apr 13 19:48:18 2018 +0200"
      },
      "message": "bio-integrity: Do not allocate integrity context for bio w/o data\n\n\n[ Upstream commit 3116a23bb30272d74ea81baf5d0ee23f602dd15b ]\n\nIf bio has no data, such as ones from blkdev_issue_flush(),\nthen we have nothing to protect.\n\nThis patch prevent bugon like follows:\n\nkfree_debugcheck: out of range ptr ac1fa1d106742a5ah\nkernel BUG at mm/slab.c:2773!\ninvalid opcode: 0000 [#1] SMP\nModules linked in: bcache\nCPU: 0 PID: 4428 Comm: xfs_io Tainted: G        W       4.11.0-rc4-ext4-00041-g2ef0043-dirty #43\nHardware name: Virtuozzo KVM, BIOS seabios-1.7.5-11.vz7.4 04/01/2014\ntask: ffff880137786440 task.stack: ffffc90000ba8000\nRIP: 0010:kfree_debugcheck+0x25/0x2a\nRSP: 0018:ffffc90000babde0 EFLAGS: 00010082\nRAX: 0000000000000034 RBX: ac1fa1d106742a5a RCX: 0000000000000007\nRDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff88013f3ccb40\nRBP: ffffc90000babde8 R08: 0000000000000000 R09: 0000000000000000\nR10: 00000000fcb76420 R11: 00000000725172ed R12: 0000000000000282\nR13: ffffffff8150e766 R14: ffff88013a145e00 R15: 0000000000000001\nFS:  00007fb09384bf40(0000) GS:ffff88013f200000(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\nCR2: 00007fd0172f9e40 CR3: 0000000137fa9000 CR4: 00000000000006f0\nCall Trace:\n kfree+0xc8/0x1b3\n bio_integrity_free+0xc3/0x16b\n bio_free+0x25/0x66\n bio_put+0x14/0x26\n blkdev_issue_flush+0x7a/0x85\n blkdev_fsync+0x35/0x42\n vfs_fsync_range+0x8e/0x9f\n vfs_fsync+0x1c/0x1e\n do_fsync+0x31/0x4a\n SyS_fsync+0x10/0x14\n entry_SYSCALL_64_fastpath+0x1f/0xc2\n\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Hannes Reinecke \u003chare@suse.com\u003e\nReviewed-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@microsoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "3bab65f29e6bf4615519b1e6dba5684cc8b53a72",
      "tree": "ffd75d4bd04fcf025d6ef1b198f7dc1bcb6a9417",
      "parents": [
        "5736369b54e3a4dc00592df922fbd8d739fb5be2"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "ming.lei@redhat.com",
        "time": "Sat Jan 06 16:27:40 2018 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Apr 13 19:48:11 2018 +0200"
      },
      "message": "blk-mq: fix race between updating nr_hw_queues and switching io sched\n\n\n[ Upstream commit fb350e0ad99359768e1e80b4784692031ec340e4 ]\n\nIn both elevator_switch_mq() and blk_mq_update_nr_hw_queues(), sched tags\ncan be allocated, and q-\u003enr_hw_queue is used, and race is inevitable, for\nexample: blk_mq_init_sched() may trigger use-after-free on hctx, which is\nfreed in blk_mq_realloc_hw_ctxs() when nr_hw_queues is decreased.\n\nThis patch fixes the race be holding q-\u003esysfs_lock.\n\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReported-by: Yi Zhang \u003cyi.zhang@redhat.com\u003e\nTested-by: Yi Zhang \u003cyi.zhang@redhat.com\u003e\nSigned-off-by: Ming Lei \u003cming.lei@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@microsoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "e66876452456a209daa7e1bc63539d9be50d9ad6",
      "tree": "5181d8c9f0f0955af4a704cea31eb662761c379f",
      "parents": [
        "b983b2a5969c9ee4e2ec73ff3444ec6814441cb8"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Tue May 23 17:28:36 2017 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Apr 13 19:48:04 2018 +0200"
      },
      "message": "block: fix an error code in add_partition()\n\n\n[ Upstream commit 7bd897cfce1eb373892d35d7f73201b0f9b221c4 ]\n\nWe don\u0027t set an error code on this path.  It means that we return NULL\ninstead of an error pointer and the caller does a NULL dereference.\n\nFixes: 6d1d8050b4bc (\"block, partition: add partition_meta_info to hd_struct\")\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@microsoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "2005c4f3019a8ead93fd14aea1e8684a827b225c",
      "tree": "1d4c9eb1925d2254ae626ab993846aade798f410",
      "parents": [
        "5daab7259a6ec50415c1dcfb1a3ef3302f9281f6"
      ],
      "author": {
        "name": "Wen Xiong",
        "email": "wenxiong@linux.vnet.ibm.com",
        "time": "Wed May 10 08:54:11 2017 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Apr 13 19:47:54 2018 +0200"
      },
      "message": "blk-mq: NVMe 512B/4K+T10 DIF/DIX format returns I/O error on dd with split op\n\n\n[ Upstream commit f36ea50ca0043e7b1204feaf1d2ba6bd68c08d36 ]\n\nWhen formatting NVMe to 512B/4K + T10 DIf/DIX, dd with split op returns\n\"Input/output error\". Looks block layer split the bio after calling\nbio_integrity_prep(bio). This patch fixes the issue.\n\nBelow is how we debug this issue:\n(1)format nvme to 4K block # size with type 2 DIF\n(2)dd with block size bigger than 1024k.\noflag\u003ddirect\ndd: error writing \u0027/dev/nvme0n1\u0027: Input/output error\n\nWe added some debug code in nvme device driver. It showed us the first\nop and the second op have the same bi and pi address. This is not\ncorrect.\n\n1st op: nvme0n1 Op:Wr slba 0x505 length 0x100, PI ctrl\u003d0x1400,\n\tdsmgmt\u003d0x0, AT\u003d0x0 \u0026 RT\u003d0x505\n\tGuard 0x00b1, AT 0x0000, RT physical 0x00000505 RT virtual 0x00002828\n\n2nd op: nvme0n1 Op:Wr slba 0x605 length 0x1, PI ctrl\u003d0x1400, dsmgmt\u003d0x0,\n\tAT\u003d0x0 \u0026 RT\u003d0x605  \u003d\u003d\u003e This op fails and subsequent 5 retires..\n\tGuard 0x00b1, AT 0x0000, RT physical 0x00000605 RT virtual 0x00002828\n\nWith the fix, It showed us both of the first op and the second op have\ncorrect bi and pi address.\n\n1st op: nvme2n1 Op:Wr slba 0x505 length 0x100, PI ctrl\u003d0x1400,\n\tdsmgmt\u003d0x0, AT\u003d0x0 \u0026 RT\u003d0x505\n\tGuard 0x5ccb, AT 0x0000, RT physical 0x00000505 RT virtual\n\t0x00002828\n2nd op: nvme2n1 Op:Wr slba 0x605 length 0x1, PI ctrl\u003d0x1400, dsmgmt\u003d0x0,\n\tAT\u003d0x0 \u0026 RT\u003d0x605\n\tGuard 0xab4c, AT 0x0000, RT physical 0x00000605 RT virtual\n\t0x00003028\n\nSigned-off-by: Wen Xiong \u003cwenxiong@linux.vnet.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@microsoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "05baf14727f31a229a57e527a6aeaa3ce8450c12",
      "tree": "5462bd9c06166c1bb17665b59c6084eca7421579",
      "parents": [
        "4fb542f2aa1414cea5686efcf72a411b7213c375",
        "d32da5bd9fd2e6eafa25c82318b55124c54d3a66"
      ],
      "author": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Mon Apr 09 11:39:13 2018 -0700"
      },
      "committer": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Mon Apr 09 11:39:17 2018 -0700"
      },
      "message": "Merge tag \u0027v4.9.93\u0027 into android-4.9\n\nThis is the 4.9.93 stable release\n\nChange-Id: I4293d83f45982c6fd479bddbf9b0f811248ddc30\nSigned-off-by: Greg Hackmann \u003cghackmann@google.com\u003e\n"
    },
    {
      "commit": "6bae91221eea93a2a7d9a9dda22cf28c1c392db0",
      "tree": "6ff0cb6f4ee45fb9167859bd6820e642f209a470",
      "parents": [
        "83216cbbfda8c7091fffa8260e4436355f1d49a7"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Wed Mar 21 12:49:29 2018 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Apr 08 12:13:00 2018 +0200"
      },
      "message": "Fix slab name \"biovec-(1\u003c\u003c(21-12))\"\n\ncommit bd5c4facf59648581d2f1692dad7b107bf429954 upstream.\n\nI\u0027m getting a slab named \"biovec-(1\u003c\u003c(21-12))\". It is caused by unintended\nexpansion of the macro BIO_MAX_PAGES. This patch renames it to biovec-max.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nCc: stable@vger.kernel.org\t# v4.14+\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "bd94a2c744246617623c3d67a2511d5493250688",
      "tree": "2638dbf035fce79f38c25ef52e75ca1717d3fc20",
      "parents": [
        "e522e2ea300e2345d287478fe034d995fecf96e2"
      ],
      "author": {
        "name": "Richard Narron",
        "email": "comet.berkeley@gmail.com",
        "time": "Wed Jan 10 09:12:16 2018 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Apr 08 12:12:42 2018 +0200"
      },
      "message": "partitions/msdos: Unable to mount UFS 44bsd partitions\n\ncommit 5f15684bd5e5ef39d4337988864fec8012471dda upstream.\n\nUFS partitions from newer versions of FreeBSD 10 and 11 use relative\naddressing for their subpartitions. But older versions of FreeBSD still\nuse absolute addressing just like OpenBSD and NetBSD.\n\nInstead of simply testing for a FreeBSD partition, the code needs to\nalso test if the starting offset of the C subpartition is zero.\n\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d197733\n\nSigned-off-by: Richard Narron \u003ccomet.berkeley@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "dd1e37e6464544cd8e8f32997ef1ab1ff37cae78",
      "tree": "419edaa0de5ec417b347377bd2d363fd1bba3fe1",
      "parents": [
        "f152ce1be2ab0d243e69c8b779181a5925623c2d",
        "24f70aa804cd7f8fee4353cf4990997d1c8375ae"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sun Mar 25 10:55:44 2018 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sun Mar 25 10:55:44 2018 +0200"
      },
      "message": "Merge 4.9.90 into android-4.9\n\nChanges in 4.9.90\n\ttpm: fix potential buffer overruns caused by bit glitches on the bus\n\tASoC: rsnd: check src mod pointer for rsnd_mod_id()\n\tSMB3: Validate negotiate request must always be signed\n\tCIFS: Enable encryption during session setup phase\n\tstaging: android: ashmem: Fix possible deadlock in ashmem_ioctl\n\tRevert \"led: core: Fix brightness setting when setting delay_off\u003d0\"\n\tled: core: Clear LED_BLINK_SW flag in led_blink_set()\n\tplatform/x86: asus-nb-wmi: Add wapf4 quirk for the X302UA\n\tbonding: handle link transition from FAIL to UP correctly\n\tregulator: anatop: set default voltage selector for pcie\n\tpower: supply: bq24190_charger: Limit over/under voltage fault logging\n\tx86: i8259: export legacy_pic symbol\n\trtc: cmos: Do not assume irq 8 for rtc when there are no legacy irqs\n\tInput: ar1021_i2c - fix too long name in driver\u0027s device table\n\ttime: Change posix clocks ops interfaces to use timespec64\n\tACPI/processor: Fix error handling in __acpi_processor_start()\n\tACPI/processor: Replace racy task affinity logic\n\tcpufreq/sh: Replace racy task affinity logic\n\tgenirq: Use irqd_get_trigger_type to compare the trigger type for shared IRQs\n\ti2c: i2c-scmi: add a MS HID\n\tnet: ipv6: send unsolicited NA on admin up\n\tmedia/dvb-core: Race condition when writing to CAM\n\tbtrfs: fix a bogus warning when converting only data or metadata\n\tASoC: Intel: Atom: update Thinkpad 10 quirk\n\ttools/testing/nvdimm: fix nfit_test shutdown crash\n\tspi: dw: Disable clock after unregistering the host\n\tpowerpc/64s: Remove SAO feature from Power9 DD1\n\tath: Fix updating radar flags for coutry code India\n\tclk: ns2: Correct SDIO bits\n\tiwlwifi: split the handler and the wake parts of the notification infra\n\tiwlwifi: a000: fix memory offsets and lengths\n\tscsi: virtio_scsi: Always try to read VPD pages\n\tKVM: PPC: Book3S PR: Exit KVM on failed mapping\n\tmwifiex: don\u0027t leak \u0027chan_stats\u0027 on reset\n\tx86/reboot: Turn off KVM when halting a CPU\n\tARM: 8668/1: ftrace: Fix dynamic ftrace with DEBUG_RODATA and !FRAME_POINTER\n\tirqchip/mips-gic: Separate IPI reservation \u0026 usage tracking\n\tiommu/omap: Register driver before setting IOMMU ops\n\tmd/raid10: wait up frozen array in handle_write_completed\n\tNFS: Fix missing pg_cleanup after nfs_pageio_cond_complete()\n\ttcp: remove poll() flakes with FastOpen\n\te1000e: fix timing for 82579 Gigabit Ethernet controller\n\tALSA: hda - Fix headset microphone detection for ASUS N551 and N751\n\tIB/ipoib: Fix deadlock between ipoib_stop and mcast join flow\n\tIB/ipoib: Update broadcast object if PKey value was changed in index 0\n\tHSI: ssi_protocol: double free in ssip_pn_xmit()\n\tIB/mlx4: Take write semaphore when changing the vma struct\n\tIB/mlx4: Change vma from shared to private\n\tIB/mlx5: Take write semaphore when changing the vma struct\n\tIB/mlx5: Change vma from shared to private\n\tIB/mlx5: Set correct SL in completion for RoCE\n\tASoC: Intel: Skylake: Uninitialized variable in probe_codec()\n\tibmvnic: Disable irq prior to close\n\tnetvsc: Deal with rescinded channels correctly\n\tFix driver usage of 128B WQEs when WQ_CREATE is V1.\n\tFix Express lane queue creation.\n\tgpio: gpio-wcove: fix irq pending status bit width\n\tnetfilter: xt_CT: fix refcnt leak on error path\n\topenvswitch: Delete conntrack entry clashing with an expectation.\n\tnetfilter: nf_ct_helper: permit cthelpers with different names via nfnetlink\n\tmmc: host: omap_hsmmc: checking for NULL instead of IS_ERR()\n\ttipc: check return value of nlmsg_new\n\twan: pc300too: abort path on failure\n\tqlcnic: fix unchecked return value\n\tnetfilter: nft_dynset: continue to next expr if _OP_ADD succeeded\n\tplatform/x86: intel-vbtn: add volume up and down\n\tscsi: mac_esp: Replace bogus memory barrier with spinlock\n\tinfiniband/uverbs: Fix integer overflows\n\tpNFS: Fix use after free issues in pnfs_do_read()\n\txprtrdma: Cancel refresh worker during buffer shutdown\n\tNFS: don\u0027t try to cross a mountpount when there isn\u0027t one there.\n\tiio: st_pressure: st_accel: Initialise sensor platform data properly\n\tmt7601u: check return value of alloc_skb\n\tlibertas: check return value of alloc_workqueue\n\trndis_wlan: add return value validation\n\tBtrfs: fix incorrect space accounting after failure to insert inline extent\n\tBtrfs: send, fix file hole not being preserved due to inline extent\n\tBtrfs: fix extent map leak during fallocate error path\n\torangefs: do not wait for timeout if umounting\n\tmac80211: don\u0027t parse encrypted management frames in ieee80211_frame_acked\n\tACPICA: iasl: Fix IORT SMMU GSI disassembling\n\tiio: hid-sensor: fix return of -EINVAL on invalid values in ret or value\n\tdt-bindings: mfd: axp20x: Add \"xpowers,master-mode\" property for AXP806 PMICs\n\tmfd: palmas: Reset the POWERHOLD mux during power off\n\tmtip32xx: use runtime tag to initialize command header\n\tx86/KASLR: Fix kexec kernel boot crash when KASLR randomization fails\n\tgpio: gpio-wcove: fix GPIO IRQ status mask\n\tstaging: unisys: visorhba: fix s-Par to boot with option CONFIG_VMAP_STACK set to y\n\tstaging: wilc1000: fix unchecked return value\n\tipvs: explicitly forbid ipv6 service/dest creation if ipv6 mod is disabled\n\tmac80211: Fix possible sband related NULL pointer de-reference\n\tmmc: sdhci-of-esdhc: limit SD clock for ls1012a/ls1046a\n\tnetfilter: x_tables: unlock on error in xt_find_table_lock()\n\tARM: DRA7: clockdomain: Change the CLKTRCTRL of CM_PCIE_CLKSTCTRL to SW_WKUP\n\tIB/rdmavt: restore IRQs on error path in rvt_create_ah()\n\tIB/hfi1: Fix softlockup issue\n\tplatform/x86: asus-wmi: try to set als by default\n\tipmi/watchdog: fix wdog hang on panic waiting for ipmi response\n\tACPI / PMIC: xpower: Fix power_table addresses\n\tdrm/amdgpu: fix gpu reset crash\n\tdrm/nouveau/kms: Increase max retries in scanout position queries.\n\tjbd2: Fix lockdep splat with generic/270 test\n\tixgbevf: fix size of queue stats length\n\tnet: ethernet: ucc_geth: fix MEM_PART_MURAM mode\n\tsoc/fsl/qe: round brg_freq to 1kHz granularity\n\tBluetooth: hci_ldisc: Add protocol check to hci_uart_dequeue()\n\tBluetooth: hci_ldisc: Add protocol check to hci_uart_tx_wakeup()\n\tvxlan: correctly handle ipv6.disable module parameter\n\tqed: Unlock on error in qed_vf_pf_acquire()\n\tbnx2x: Align RX buffers\n\tpower: supply: bq24190_charger: Add disable-reset device-property\n\tpower: supply: isp1704: Fix unchecked return value of devm_kzalloc\n\tpower: supply: pda_power: move from timer to delayed_work\n\tInput: twl4030-pwrbutton - use correct device for irq request\n\tIB/rxe: Don\u0027t clamp residual length to mtu\n\tmd/raid10: skip spare disk as \u0027first\u0027 disk\n\tACPI / power: Delay turning off unused power resources after suspend\n\tia64: fix module loading for gcc-5.4\n\ttcm_fileio: Prevent information leak for short reads\n\tx86/xen: split xen_smp_prepare_boot_cpu()\n\tvideo: fbdev: udlfb: Fix buffer on stack\n\tsm501fb: don\u0027t return zero on failure path in sm501fb_start()\n\tpNFS: Fix a deadlock when coalescing writes and returning the layout\n\tnet: hns: fix ethtool_get_strings overflow in hns driver\n\tcifs: small underflow in cnvrtDosUnixTm()\n\tmm: fix check for reclaimable pages in PF_MEMALLOC reclaim throttling\n\tmm, vmstat: suppress pcp stats for unpopulated zones in zoneinfo\n\tmm: hwpoison: call shake_page() after try_to_unmap() for mlocked page\n\trtc: ds1374: wdt: Fix issue with timeout scaling from secs to wdt ticks\n\trtc: ds1374: wdt: Fix stop/start ioctl always returning -EINVAL\n\tath10k: fix out of bounds access to local buffer\n\tperf tests kmod-path: Don\u0027t fail if compressed modules aren\u0027t supported\n\tblock/mq: Cure cpu hotplug lock inversion\n\tBluetooth: hci_qca: Avoid setup failure on missing rampatch\n\tBluetooth: btqcomsmd: Fix skb double free corruption\n\tmedia: c8sectpfe: fix potential NULL pointer dereference in c8sectpfe_timer_interrupt\n\tdrm/msm: fix leak in failed get_pages\n\tRDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo()\n\trtlwifi: rtl_pci: Fix the bug when inactiveps is enabled.\n\tmedia: bt8xx: Fix err \u0027bt878_probe()\u0027\n\tath10k: handling qos at STA side based on AP WMM enable/disable\n\tmedia: [RESEND] media: dvb-frontends: Add delay to Si2168 restart\n\tqmi_wwan: set FLAG_SEND_ZLP to avoid network initiated disconnect\n\tserial: 8250_dw: Disable clock on error\n\tcros_ec: fix nul-termination for firmware build info\n\twatchdog: Fix potential kref imbalance when opening watchdog\n\tplatform/chrome: Use proper protocol transfer function\n\tdmaengine: zynqmp_dma: Fix race condition in the probe\n\tdrm/tilcdc: ensure nonatomic iowrite64 is not used\n\tmmc: avoid removing non-removable hosts during suspend\n\tIB/ipoib: Avoid memory leak if the SA returns a different DGID\n\tRDMA/cma: Use correct size when writing netlink stats\n\tIB/umem: Fix use of npages/nmap fields\n\tiser-target: avoid reinitializing rdma contexts for isert commands\n\tvgacon: Set VGA struct resource types\n\tomapdrm: panel: fix compatible vendor string for td028ttec1\n\tdrm/omap: DMM: Check for DMM readiness after successful transaction commit\n\tpty: cancel pty slave port buf\u0027s work in tty_release\n\tcoresight: Fix disabling of CoreSight TPIU\n\tpinctrl: Really force states during suspend/resume\n\tpinctrl: rockchip: enable clock when reading pin direction register\n\tiommu/vt-d: clean up pr_irq if request_threaded_irq fails\n\tip6_vti: adjust vti mtu according to mtu of lower device\n\tRDMA/ocrdma: Fix permissions for OCRDMA_RESET_STATS\n\tARM: dts: aspeed-evb: Add unit name to memory node\n\tnfsd4: permit layoutget of executable-only files\n\tclk: Don\u0027t touch hardware when reparenting during registration\n\tclk: axi-clkgen: Correctly handle nocount bit in recalc_rate()\n\tclk: si5351: Rename internal plls to avoid name collisions\n\tdmaengine: ti-dma-crossbar: Fix event mapping for TPCC_EVT_MUX_60_63\n\tIB/mlx5: Fix integer overflows in mlx5_ib_create_srq\n\tIB/mlx5: Fix out-of-bounds read in create_raw_packet_qp_rq\n\tclk: migrate the count of orphaned clocks at init\n\tRDMA/ucma: Fix access to non-initialized CM_ID object\n\tRDMA/ucma: Don\u0027t allow join attempts for unsupported AF family\n\tusb: gadget: f_hid: fix: Move IN request allocation to set_alt()\n\tLinux 4.9.90\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "18dd7b964c01ac44497471f4ea3f4c0c663eab55",
      "tree": "aa1ef61e88fca29226a1856ddbe3162e7c0dc86c",
      "parents": [
        "85e598bc1514ba0d161cc0960017ca3b7b1c1640"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu May 04 15:05:26 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Mar 24 11:00:22 2018 +0100"
      },
      "message": "block/mq: Cure cpu hotplug lock inversion\n\n\n[ Upstream commit eabe06595d62cfa9278e2cd012df614bc68a7042 ]\n\nBy poking at /debug/sched_features I triggered the following splat:\n\n [] \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 [] WARNING: possible circular locking dependency detected\n [] 4.11.0-00873-g964c8b7-dirty #694 Not tainted\n [] ------------------------------------------------------\n [] bash/2109 is trying to acquire lock:\n []  (cpu_hotplug_lock.rw_sem){++++++}, at: [\u003cffffffff8120cb8b\u003e] static_key_slow_dec+0x1b/0x50\n []\n [] but task is already holding lock:\n []  (\u0026sb-\u003es_type-\u003ei_mutex_key#4){+++++.}, at: [\u003cffffffff81140216\u003e] sched_feat_write+0x86/0x170\n []\n [] which lock already depends on the new lock.\n []\n []\n [] the existing dependency chain (in reverse order) is:\n []\n [] -\u003e #2 (\u0026sb-\u003es_type-\u003ei_mutex_key#4){+++++.}:\n []        lock_acquire+0x100/0x210\n []        down_write+0x28/0x60\n []        start_creating+0x5e/0xf0\n []        debugfs_create_dir+0x13/0x110\n []        blk_mq_debugfs_register+0x21/0x70\n []        blk_mq_register_dev+0x64/0xd0\n []        blk_register_queue+0x6a/0x170\n []        device_add_disk+0x22d/0x440\n []        loop_add+0x1f3/0x280\n []        loop_init+0x104/0x142\n []        do_one_initcall+0x43/0x180\n []        kernel_init_freeable+0x1de/0x266\n []        kernel_init+0xe/0x100\n []        ret_from_fork+0x31/0x40\n []\n [] -\u003e #1 (all_q_mutex){+.+.+.}:\n []        lock_acquire+0x100/0x210\n []        __mutex_lock+0x6c/0x960\n []        mutex_lock_nested+0x1b/0x20\n []        blk_mq_init_allocated_queue+0x37c/0x4e0\n []        blk_mq_init_queue+0x3a/0x60\n []        loop_add+0xe5/0x280\n []        loop_init+0x104/0x142\n []        do_one_initcall+0x43/0x180\n []        kernel_init_freeable+0x1de/0x266\n []        kernel_init+0xe/0x100\n []        ret_from_fork+0x31/0x40\n\n []  *** DEADLOCK ***\n []\n [] 3 locks held by bash/2109:\n []  #0:  (sb_writers#11){.+.+.+}, at: [\u003cffffffff81292bcd\u003e] vfs_write+0x17d/0x1a0\n []  #1:  (debugfs_srcu){......}, at: [\u003cffffffff8155a90d\u003e] full_proxy_write+0x5d/0xd0\n []  #2:  (\u0026sb-\u003es_type-\u003ei_mutex_key#4){+++++.}, at: [\u003cffffffff81140216\u003e] sched_feat_write+0x86/0x170\n []\n [] stack backtrace:\n [] CPU: 9 PID: 2109 Comm: bash Not tainted 4.11.0-00873-g964c8b7-dirty #694\n [] Hardware name: Intel Corporation S2600GZ/S2600GZ, BIOS SE5C600.86B.02.02.0002.122320131210 12/23/2013\n [] Call Trace:\n\n []  lock_acquire+0x100/0x210\n []  get_online_cpus+0x2a/0x90\n []  static_key_slow_dec+0x1b/0x50\n []  static_key_disable+0x20/0x30\n []  sched_feat_write+0x131/0x170\n []  full_proxy_write+0x97/0xd0\n []  __vfs_write+0x28/0x120\n []  vfs_write+0xb5/0x1a0\n []  SyS_write+0x49/0xa0\n []  entry_SYSCALL_64_fastpath+0x23/0xc2\n\nThis is because of the cpu hotplug lock rework. Break the chain at #1\nby reversing the lock acquisition order. This way i_mutex_key#4 no\nlonger depends on cpu_hotplug_lock and things are good.\n\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Peter Zijlstra (Intel) \u003cpeterz@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@microsoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "960923fdc2781d35cfbafba416d89c8b2de4c829",
      "tree": "eaccbce173cf3bb7f3e3c39b23ba4adc73a9b63a",
      "parents": [
        "71df7bbae4d8f500dffc855d064ce41c2408c52d",
        "a779add58a837fbd5156e0fab0aca5e3b53754ef"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Mar 22 09:54:47 2018 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Mar 22 09:54:47 2018 +0100"
      },
      "message": "Merge 4.9.89 into android-4.9\n\nChanges in 4.9.89\n\tblkcg: fix double free of new_blkg in blkcg_init_queue\n\tInput: tsc2007 - check for presence and power down tsc2007 during probe\n\tperf stat: Issue a HW watchdog disable hint\n\tstaging: speakup: Replace BUG_ON() with WARN_ON().\n\tstaging: wilc1000: add check for kmalloc allocation failure.\n\tHID: reject input outside logical range only if null state is set\n\tdrm: qxl: Don\u0027t alloc fbdev if emulation is not supported\n\tARM: dts: r8a7791: Remove unit-address and reg from integrated cache\n\tARM: dts: r8a7792: Remove unit-address and reg from integrated cache\n\tARM: dts: r8a7793: Remove unit-address and reg from integrated cache\n\tARM: dts: r8a7794: Remove unit-address and reg from integrated cache\n\tarm64: dts: r8a7796: Remove unit-address and reg from integrated cache\n\tdrm/sun4i: Fix up error path cleanup for master bind function\n\tdrm/sun4i: Set drm_crtc.port to the underlying TCON\u0027s output port node\n\tath10k: fix a warning during channel switch with multiple vaps\n\tdrm/sun4i: Fix TCON clock and regmap initialization sequence\n\tPCI/MSI: Stop disabling MSI/MSI-X in pci_device_shutdown()\n\tselinux: check for address length in selinux_socket_bind()\n\tx86/mm: Make mmap(MAP_32BIT) work correctly\n\tperf sort: Fix segfault with basic block \u0027cycles\u0027 sort dimension\n\tx86/mce: Handle broadcasted MCE gracefully with kexec\n\teventpoll.h: fix epoll event masks\n\ti40e: Acquire NVM lock before reads on all devices\n\ti40e: fix ethtool to get EEPROM data from X722 interface\n\tperf tools: Make perf_event__synthesize_mmap_events() scale\n\tARM: brcmstb: Enable ZONE_DMA for non 64-bit capable peripherals\n\tdrivers: net: xgene: Fix hardware checksum setting\n\tdrivers: net: phy: xgene: Fix mdio write\n\tdrivers: net: xgene: Fix wrong logical operation\n\tdrivers: net: xgene: Fix Rx checksum validation logic\n\tdrm: Defer disabling the vblank IRQ until the next interrupt (for instant-off)\n\tath10k: disallow DFS simulation if DFS channel is not enabled\n\tath10k: fix fetching channel during potential radar detection\n\tusb: misc: lvs: fix race condition in disconnect handling\n\tARM: bcm2835: Enable missing CMA settings for VC4 driver\n\tnet: ethernet: bgmac: Allow MAC address to be specified in DTB\n\tnetem: apply correct delay when rate throttling\n\tx86/mce: Init some CPU features early\n\tomapfb: dss: Handle return errors in dss_init_ports()\n\tperf probe: Fix concat_probe_trace_events\n\tperf probe: Return errno when not hitting any event\n\tHID: clamp input to logical range if no null state\n\tnet/8021q: create device with all possible features in wanted_features\n\tARM: dts: Adjust moxart IRQ controller and flags\n\tqed: Always publish VF link from leading hwfn\n\ts390/topology: fix typo in early topology code\n\tzd1211rw: fix NULL-deref at probe\n\tbatman-adv: handle race condition for claims between gateways\n\tof: fix of_device_get_modalias returned length when truncating buffers\n\tsolo6x10: release vb2 buffers in solo_stop_streaming()\n\tx86/boot/32: Defer resyncing initial_page_table until per-cpu is set up\n\tscsi: fnic: Fix for \"Number of Active IOs\" in fnicstats becoming negative\n\tscsi: ipr: Fix missed EH wakeup\n\tmedia: i2c/soc_camera: fix ov6650 sensor getting wrong clock\n\ttimers, sched_clock: Update timeout for clock wrap\n\tsysrq: Reset the watchdog timers while displaying high-resolution timers\n\tInput: qt1070 - add OF device ID table\n\tsched: act_csum: don\u0027t mangle TCP and UDP GSO packets\n\tPCI: hv: Properly handle PCI bus remove\n\tPCI: hv: Lock PCI bus on device eject\n\tASoC: rcar: ssi: don\u0027t set SSICR.CKDV \u003d 000 with SSIWSR.CONT\n\tspi: omap2-mcspi: poll OMAP2_MCSPI_CHSTAT_RXS for PIO transfer\n\ttcp: sysctl: Fix a race to avoid unexpected 0 window from space\n\tdmaengine: imx-sdma: add 1ms delay to ensure SDMA channel is stopped\n\tusb: dwc3: make sure UX_EXIT_PX is cleared\n\tARM: dts: bcm2835: add index to the ethernet alias\n\tperf annotate: Fix a bug following symbolic link of a build-id file\n\tperf buildid: Do not assume that readlink() returns a null terminated string\n\ti40e/i40evf: Fix use after free in Rx cleanup path\n\tscsi: be2iscsi: Check tag in beiscsi_mccq_compl_wait\n\tdriver: (adm1275) set the m,b and R coefficients correctly for power\n\tbonding: make speed, duplex setting consistent with link state\n\tmm: Fix false-positive VM_BUG_ON() in page_cache_{get,add}_speculative()\n\tALSA: firewire-lib: add a quirk of packet without valid EOH in CIP format\n\tARM: dts: r8a7794: Add DU1 clock to device tree\n\tARM: dts: r8a7794: Correct clock of DU1\n\tARM: dts: silk: Correct clock of DU1\n\tblk-throttle: make sure expire time isn\u0027t too big\n\tregulator: core: Limit propagation of parent voltage count and list\n\tperf trace: Handle unpaired raw_syscalls:sys_exit event\n\tf2fs: relax node version check for victim data in gc\n\tdrm/ttm: never add BO that failed to validate to the LRU list\n\tbonding: refine bond_fold_stats() wrap detection\n\tPCI: Apply Cavium ACS quirk only to CN81xx/CN83xx/CN88xx devices\n\tpowerpc/mm/hugetlb: Filter out hugepage size not supported by page table layout\n\tbraille-console: Fix value returned by _braille_console_setup\n\tdrm/vmwgfx: Fixes to vmwgfx_fb\n\tvxlan: vxlan dev should inherit lowerdev\u0027s gso_max_size\n\tNFC: nfcmrvl: Include unaligned.h instead of access_ok.h\n\tNFC: nfcmrvl: double free on error path\n\tNFC: pn533: change order of free_irq and dev unregistration\n\tARM: dts: r7s72100: fix ethernet clock parent\n\tARM: dts: r8a7790: Correct parent of SSI[0-9] clocks\n\tARM: dts: r8a7791: Correct parent of SSI[0-9] clocks\n\tARM: dts: r8a7793: Correct parent of SSI[0-9] clocks\n\tpowerpc: Avoid taking a data miss on every userspace instruction miss\n\tnet: hns: Correct HNS RSS key set function\n\tnet/faraday: Add missing include of of.h\n\tqed: Fix TM block ILT allocation\n\trtmutex: Fix PI chain order integrity\n\tprintk: Correctly handle preemption in console_unlock()\n\tdrm: rcar-du: Handle event when disabling CRTCs\n\tARM: dts: koelsch: Correct clock frequency of X2 DU clock input\n\treiserfs: Make cancel_old_flush() reliable\n\tASoC: rt5677: Add OF device ID table\n\tIB/hfi1: Check for QSFP presence before attempting reads\n\tALSA: firewire-digi00x: add support for console models of Digi00x series\n\tALSA: firewire-digi00x: handle all MIDI messages on streaming packets\n\tfm10k: correctly check if interface is removed\n\tEDAC, altera: Fix peripheral warnings for Cyclone5\n\tscsi: ses: don\u0027t get power status of SES device slot on probe\n\tqed: Correct MSI-x for storage\n\tapparmor: Make path_max parameter readonly\n\tiommu/iova: Fix underflow bug in __alloc_and_insert_iova_range\n\tkvm/svm: Setup MCG_CAP on AMD properly\n\tkvm: nVMX: Disallow userspace-injected exceptions in guest mode\n\tvideo: ARM CLCD: fix dma allocation size\n\tdrm/radeon: Fail fb creation from imported dma-bufs.\n\tdrm/amdgpu: Fail fb creation from imported dma-bufs. (v2)\n\tdrm/rockchip: vop: Enable pm domain before vop_initial\n\ti40e: only register client on iWarp-capable devices\n\tcoresight: Fixes coresight DT parse to get correct output port ID.\n\tlkdtm: turn off kcov for lkdtm_rodata_do_nothing:\n\ttty: amba-pl011: Fix spurious TX interrupts\n\tserial: imx: setup DCEDTE early and ensure DCD and RI irqs to be off\n\tMIPS: BPF: Quit clobbering callee saved registers in JIT code.\n\tMIPS: BPF: Fix multiple problems in JIT skb access helpers.\n\tMIPS: r2-on-r6-emu: Fix BLEZL and BGTZL identification\n\tMIPS: r2-on-r6-emu: Clear BLTZALL and BGEZALL debugfs counters\n\tv4l: vsp1: Prevent multiple streamon race commencing pipeline early\n\tv4l: vsp1: Register pipe with output WPF\n\tregulator: isl9305: fix array size\n\tmd/raid6: Fix anomily when recovering a single device in RAID6.\n\tmd.c:didn\u0027t unlock the mddev before return EINVAL in array_size_store\n\tpowerpc/nohash: Fix use of mmu_has_feature() in setup_initial_memory_limit()\n\tusb: dwc2: Make sure we disconnect the gadget state\n\tusb: gadget: dummy_hcd: Fix wrong power status bit clear/reset in dummy_hub_control()\n\tperf evsel: Return exact sub event which failed with EPERM for wildcards\n\tiwlwifi: mvm: fix RX SKB header size and align it properly\n\tdrivers/perf: arm_pmu: handle no platform_device\n\tperf inject: Copy events when reordering events in pipe mode\n\tnet: fec: add phy-reset-gpios PROBE_DEFER check\n\tperf session: Don\u0027t rely on evlist in pipe mode\n\tvfio/powerpc/spapr_tce: Enforce IOMMU type compatibility check\n\tvfio/spapr_tce: Check kzalloc() return when preregistering memory\n\tscsi: sg: check for valid direction before starting the request\n\tscsi: sg: close race condition in sg_remove_sfp_usercontext()\n\tALSA: hda: Add Geminilake id to SKL_PLUS\n\tkprobes/x86: Fix kprobe-booster not to boost far call instructions\n\tkprobes/x86: Set kprobes pages read-only\n\tpwm: tegra: Increase precision in PWM rate calculation\n\tclk: qcom: msm8996: Fix the vfe1 powerdomain name\n\tBluetooth: Avoid bt_accept_unlink() double unlinking\n\tBluetooth: 6lowpan: fix delay work init in add_peer_chan()\n\tmac80211_hwsim: use per-interface power level\n\tath10k: fix compile time sanity check for CE4 buffer size\n\twil6210: fix protection against connections during reset\n\twil6210: fix memory access violation in wil_memcpy_from/toio_32\n\tperf stat: Fix bug in handling events in error state\n\tmwifiex: Fix invalid port issue\n\tdrm/edid: set ELD connector type in drm_edid_to_eld()\n\tvideo/hdmi: Allow \"empty\" HDMI infoframes\n\tHID: elo: clear BTN_LEFT mapping\n\tiwlwifi: mvm: rs: don\u0027t override the rate history in the search cycle\n\tclk: meson: gxbb: fix wrong clock for SARADC/SANA\n\tARM: dts: exynos: Correct Trats2 panel reset line\n\tsched: Stop switched_to_rt() from sending IPIs to offline CPUs\n\tsched: Stop resched_cpu() from sending IPIs to offline CPUs\n\ttest_firmware: fix setting old custom fw path back on exit\n\tnet: ieee802154: adf7242: Fix bug if defined DEBUG\n\tnet: xfrm: allow clearing socket xfrm policies.\n\tmtd: nand: fix interpretation of NAND_CMD_NONE in nand_command[_lp]()\n\tnet: thunderx: Set max queue count taking XDP_TX into account\n\tARM: dts: am335x-pepper: Fix the audio CODEC\u0027s reset pin\n\tARM: dts: omap3-n900: Fix the audio CODEC\u0027s reset pin\n\tmtd: nand: ifc: update bufnum mask for ver \u003e\u003d 2.0.0\n\tuserns: Don\u0027t fail follow_automount based on s_user_ns\n\tleds: pm8058: Silence pointer to integer size warning\n\tpower: supply: ab8500_charger: Fix an error handling path\n\tpower: supply: ab8500_charger: Bail out in case of error in \u0027ab8500_charger_init_hw_registers()\u0027\n\tath10k: update tdls teardown state to target\n\tscsi: ses: don\u0027t ask for diagnostic pages repeatedly during probe\n\tpwm: stmpe: Fix wrong register offset for hwpwm\u003d2 case\n\tclk: qcom: msm8916: fix mnd_width for codec_digcodec\n\tmwifiex: cfg80211: do not change virtual interface during scan processing\n\tath10k: fix invalid STS_CAP_OFFSET_MASK\n\ttools/usbip: fixes build with musl libc toolchain\n\tspi: sun6i: disable/unprepare clocks on remove\n\tbnxt_en: Don\u0027t print \"Link speed -1 no longer supported\" messages.\n\tscsi: core: scsi_get_device_flags_keyed(): Always return device flags\n\tscsi: devinfo: apply to HP XP the same flags as Hitachi VSP\n\tscsi: dh: add new rdac devices\n\tmedia: vsp1: Prevent suspending and resuming DRM pipelines\n\tmedia: cpia2: Fix a couple off by one bugs\n\tveth: set peer GSO values\n\tdrm/amdkfd: Fix memory leaks in kfd topology\n\tpowerpc/modules: Don\u0027t try to restore r2 after a sibling call\n\tagp/intel: Flush all chipset writes after updating the GGTT\n\tmac80211_hwsim: enforce PS_MANUAL_POLL to be set after PS_ENABLED\n\tmac80211: remove BUG() when interface type is invalid\n\tASoC: nuc900: Fix a loop timeout test\n\tipvlan: add L2 check for packets arriving via virtual devices\n\trcutorture/configinit: Fix build directory error message\n\tlocking/locktorture: Fix num reader/writer corner cases\n\tima: relax requiring a file signature for new files with zero length\n\tnet: hns: Some checkpatch.pl script \u0026 warning fixes\n\tx86/boot/32: Fix UP boot on Quark and possibly other platforms\n\tx86/cpufeatures: Add Intel PCONFIG cpufeature\n\tselftests/x86/entry_from_vm86: Exit with 1 if we fail\n\tselftests/x86: Add tests for User-Mode Instruction Prevention\n\tselftests/x86: Add tests for the STR and SLDT instructions\n\tselftests/x86/entry_from_vm86: Add test cases for POPF\n\tx86/vm86/32: Fix POPF emulation\n\tx86/speculation, objtool: Annotate indirect calls/jumps for objtool on 32-bit kernels\n\tx86/speculation: Remove Skylake C2 from Speculation Control microcode blacklist\n\tx86/mm: Fix vmalloc_fault to use pXd_large\n\tparisc: Handle case where flush_cache_range is called with no context\n\tALSA: pcm: Fix UAF in snd_pcm_oss_get_formats()\n\tALSA: hda - Revert power_save option default value\n\tALSA: seq: Fix possible UAF in snd_seq_check_queue()\n\tALSA: seq: Clear client entry before deleting else at closing\n\tdrm/amdgpu: fix prime teardown order\n\tdrm/amdgpu/dce: Don\u0027t turn off DP sink when disconnected\n\tfs: Teach path_connected to handle nfs filesystems with multiple roots.\n\tlock_parent() needs to recheck if dentry got __dentry_kill\u0027ed under it\n\tfs/aio: Add explicit RCU grace period when freeing kioctx\n\tfs/aio: Use RCU accessors for kioctx_table-\u003etable[]\n\tirqchip/gic-v3-its: Ensure nr_ites \u003e\u003d nr_lpis\n\tscsi: sg: fix SG_DXFER_FROM_DEV transfers\n\tscsi: sg: fix static checker warning in sg_is_valid_dxfer\n\tscsi: sg: only check for dxfer_len greater than 256M\n\tbtrfs: alloc_chunk: fix DUP stripe size handling\n\tbtrfs: Fix use-after-free when cleaning up fs_devs with a single stale device\n\tscsi: qla2xxx: Fix extraneous ref on sp\u0027s after adapter break\n\tUSB: gadget: udc: Add missing platform_device_put() on error in bdc_pci_probe()\n\tusb: dwc3: Fix GDBGFIFOSPACE_TYPE values\n\tusb: gadget: bdc: 64-bit pointer capability check\n\tLinux 4.9.89\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "94b3df54ad6d451a0158681758a0996947b5134d",
      "tree": "182aacc82b2b8f264ad12c32e913688d906bbf0a",
      "parents": [
        "0030b37be54786e156df0ce8ad99b4c1ead682aa"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shli@fb.com",
        "time": "Mon Mar 27 10:51:36 2017 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 22 09:17:44 2018 +0100"
      },
      "message": "blk-throttle: make sure expire time isn\u0027t too big\n\n\n[ Upstream commit 06cceedcca67a93ac7f7aa93bbd9980c7496d14e ]\n\ncgroup could be throttled to a limit but when all cgroups cross high\nlimit, queue enters a higher state and so the group should be throttled\nto a higher limit. It\u0027s possible the cgroup is sleeping because of\nthrottle and other cgroups don\u0027t dispatch IO any more. In this case,\nnobody can trigger current downgrade/upgrade logic. To fix this issue,\nwe could either set up a timer to wakeup the cgroup if other cgroups are\nidle or make sure this cgroup doesn\u0027t sleep too long. Setting up a timer\nmeans we must change the timer very frequently. This patch chooses the\nlatter. Making cgroup sleep time not too big wouldn\u0027t change cgroup\nbps/iops, but could make it wakeup more frequently, which isn\u0027t a big\nissue because throtl_slice * 8 is already quite big.\n\nSigned-off-by: Shaohua Li \u003cshli@fb.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@microsoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "7bd2d0c746f1fac2fb7f2ee972767cbc8be60962",
      "tree": "d5f36ac8dd756cc37f5b4a56a1606d7eaded6876",
      "parents": [
        "46e076f0dad02f5c445a5c27adbd3f06147e33ed"
      ],
      "author": {
        "name": "Hou Tao",
        "email": "houtao1@huawei.com",
        "time": "Fri Feb 03 17:19:07 2017 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 22 09:17:35 2018 +0100"
      },
      "message": "blkcg: fix double free of new_blkg in blkcg_init_queue\n\ncommit 9b54d816e00425c3a517514e0d677bb3cec49258 upstream.\n\nIf blkg_create fails, new_blkg passed as an argument will\nbe freed by blkg_create, so there is no need to free it again.\n\nSigned-off-by: Hou Tao \u003choutao1@huawei.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nCc: Guenter Roeck \u003clinux@roeck-us.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "a9d027374a351b3e334e6e9a83117956ca410a61",
      "tree": "21db110c10d4ad26653c2ceacf6103249928bc31",
      "parents": [
        "a92bb8d6eac3879ae7f9d913d1dd5270ddcbe0eb",
        "19c04ca5b239e6e2277a5b381d1e79482ab9bbc5"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Mon Feb 26 09:18:03 2018 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Mon Feb 26 09:18:03 2018 +0100"
      },
      "message": "Merge 4.9.84 into android-4.9\n\nChanges in 4.9.84\n\tvhost: use mutex_lock_nested() in vhost_dev_lock_vqs()\n\tkcm: Check if sk_user_data already set in kcm_attach\n\tkcm: Only allow TCP sockets to be attached to a KCM mux\n\tcfg80211: check dev_set_name() return value\n\txfrm: skip policies marked as dead while rehashing\n\tmm,vmscan: Make unregister_shrinker() no-op if register_shrinker() failed.\n\txfrm: Fix stack-out-of-bounds read on socket policy lookup.\n\txfrm: check id proto in validate_tmpl()\n\tsctp: set frag_point in sctp_setsockopt_maxseg correctly\n\tblktrace: fix unlocked registration of tracepoints\n\tdrm: Require __GFP_NOFAIL for the legacy drm_modeset_lock_all\n\tptr_ring: fail early if queue occupies more than KMALLOC_MAX_SIZE\n\tProvide a function to create a NUL-terminated string from unterminated data\n\tselinux: ensure the context is NUL terminated in security_context_to_sid_core()\n\tselinux: skip bounded transition processing if the policy isn\u0027t loaded\n\tcrypto: x86/twofish-3way - Fix %rbp usage\n\tstaging: android: ion: Add __GFP_NOWARN for system contig heap\n\tstaging: android: ion: Switch from WARN to pr_warn\n\tblk_rq_map_user_iov: fix error override\n\tKVM: x86: fix escape of guest dr6 to the host\n\tkcov: detect double association with a single task\n\tnetfilter: x_tables: fix int overflow in xt_alloc_table_info()\n\tnetfilter: x_tables: avoid out-of-bounds reads in xt_request_find_{match|target}\n\tnetfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in clusterip_tg_check()\n\tnetfilter: on sockopt() acquire sock lock only in the required scope\n\tnetfilter: xt_cgroup: initialize info-\u003epriv in cgroup_mt_check_v1()\n\tnetfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert\n\trds: tcp: atomically purge entries from rds_tcp_conn_list during netns delete\n\tnet: avoid skb_warn_bad_offload on IS_ERR\n\tcrypto: hash - annotate algorithms taking optional key\n\tcrypto: hash - prevent using keyed hashes without setting key\n\tASoC: ux500: add MODULE_LICENSE tag\n\tvideo: fbdev/mmp: add MODULE_LICENSE\n\tARM: 8743/1: bL_switcher: add MODULE_LICENSE tag\n\tarm64: dts: add #cooling-cells to CPU nodes\n\tdn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock\n\tstaging: android: ashmem: Fix a race condition in pin ioctls\n\tbinder: check for binder_thread allocation failure in binder_poll()\n\tstaging: iio: adc: ad7192: fix external frequency setting\n\tstaging: iio: ad5933: switch buffer mode to software\n\tusbip: keep usbip_device sockfd state in sync with tcp_socket\n\tusb: build drivers/usb/common/ when USB_SUPPORT is set\n\tARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context\n\tARM: AM33xx: PRM: Remove am33xx_pwrdm_read_prev_pwrst function\n\tARM: dts: Fix omap4 hang with GPS connected to USB by using wakeupgen\n\tARM: dts: logicpd-som-lv: Fix gpmc addresses for NAND and enet\n\tARM: dts: logicpd-somlv: Fix wl127x pinmux\n\tARM: dts: am4372: Correct the interrupts_properties of McASP\n\tARM: dts: am437x-cm-t43: Correct the dmas property of spi0\n\tperf top: Fix window dimensions change handling\n\tperf bench numa: Fixup discontiguous/sparse numa nodes\n\tmedia: s5k6aa: describe some function parameters\n\tpinctrl: sunxi: Fix A80 interrupt pin bank\n\tpinctrl: sunxi: Fix A64 UART mux value\n\ti40iw: Correct ARP index mask\n\tRDMA/cma: Make sure that PSN is not over max allowed\n\tsctp: only update outstanding_bytes for transmitted queue when doing prsctp_prune\n\tscripts/kernel-doc: Don\u0027t fail with status !\u003d 0 if error encountered with -none\n\tipvlan: Add the skb-\u003emark as flow4\u0027s member to lookup route\n\tm68k: add missing SOFTIRQENTRY_TEXT linker section\n\tpowerpc/perf: Fix oops when grouping different pmu events\n\ts390/dasd: prevent prefix I/O error\n\tARM: dts: Fix elm interrupt compiler warning\n\tgianfar: fix a flooded alignment reports because of padding issue.\n\tnet_sched: red: Avoid devision by zero\n\tnet_sched: red: Avoid illegal values\n\tbtrfs: Fix possible off-by-one in btrfs_search_path_in_tree\n\tbrcmfmac: Avoid build error with make W\u003d1\n\tnet: ethernet: arc: fix error handling in emac_rockchip_probe\n\t509: fix printing uninitialized stack memory when OID is empty\n\tgianfar: Disable EEE autoneg by default\n\tdmaengine: ioat: Fix error handling path\n\tdmaengine: at_hdmac: fix potential NULL pointer dereference in atc_prep_dma_interleaved\n\tclk: fix a panic error caused by accessing NULL pointer\n\tASoC: rockchip: disable clock on error\n\tspi: sun4i: disable clocks in the remove function\n\txfrm: Fix stack-out-of-bounds with misconfigured transport mode policies.\n\tdrm/armada: fix leak of crtc structure\n\tdmaengine: jz4740: disable/unprepare clk if probe fails\n\tusb: dwc3: gadget: Wait longer for controller to end command processing\n\tusb: dwc3: of-simple: fix missing clk_disable_unprepare\n\tmm/early_ioremap: Fix boot hang with earlyprintk\u003defi,keep\n\tx86/mm/kmmio: Fix mmiotrace for page unaligned addresses\n\tplatform/x86: dell-laptop: Fix keyboard max lighting for Dell Latitude E6410\n\txen: XEN_ACPI_PROCESSOR is Dom0-only\n\thippi: Fix a Fix a possible sleep-in-atomic bug in rr_close\n\tpowerpc/64s: Fix conversion of slb_miss_common to use RFI_TO_USER/KERNEL\n\tpowerpc/64s: Simple RFI macro conversions\n\tpowerpc/64s: Improve RFI L1-D cache flush fallback\n\tcrypto: talitos - fix Kernel Oops on hashing an empty file\n\tdrm/i915: fix intel_backlight_device_register declaration\n\tshmem: avoid maybe-uninitialized warning\n\tclk: sunxi-ng: fix build error without CONFIG_RESET_CONTROLLER\n\tvmxnet3: prevent building with 64K pages\n\tperf/x86: Shut up false-positive -Wmaybe-uninitialized warning\n\tPCI: vmd: Fix suspend handlers defined-but-not-used warning\n\tgpio: intel-mid: Fix build warning when !CONFIG_PM\n\tplatform/x86: intel_mid_thermal: Fix suspend handlers unused warning\n\tusb: musb: fix compilation warning on unused function\n\tPCI: Change pci_host_common_probe() visibility\n\tperf: xgene: Include module.h\n\tvideo: fbdev: via: remove possibly unused variables\n\tscsi: advansys: fix build warning for PCI\u003dn\n\tx86/ras/inject: Make it depend on X86_LOCAL_APIC\u003dy\n\tgpio: xgene: mark PM functions as __maybe_unused\n\tarm64: define BUG() instruction without CONFIG_BUG\n\tx86/fpu/math-emu: Fix possible uninitialized variable use\n\ttools build: Add tools tree support for \u0027make -s\u0027\n\tx86/build: Silence the build with \"make -s\"\n\tthermal: fix INTEL_SOC_DTS_IOSF_CORE dependencies\n\tx86: add MULTIUSER dependency for KVM\n\tdmaengine: zx: fix build warning\n\tx86/platform: Add PCI dependency for PUNIT_ATOM_DEBUG\n\tx86/vm86: Fix unused variable warning if THP is disabled\n\tscsi: advansys: fix uninitialized data access\n\tarm64: Kconfig: select COMPAT_BINFMT_ELF only when BINFMT_ELF is set\n\tALSA: hda/ca0132 - fix possible NULL pointer use\n\treiserfs: avoid a -Wmaybe-uninitialized warning\n\tcw1200: fix bogus maybe-uninitialized warning\n\tsecurity/keys: BIG_KEY requires CONFIG_CRYPTO\n\tdrm: exynos: mark pm functions as __maybe_unused\n\trbd: silence bogus -Wmaybe-uninitialized warning\n\tdrm/nouveau: hide gcc-4.9 -Wmaybe-uninitialized\n\tInput: tca8418_keypad - hide gcc-4.9 -Wmaybe-uninitialized warning\n\tKVM: add X86_LOCAL_APIC dependency\n\tshmem: fix compilation warnings on unused functions\n\ttc358743: fix register i2c_rd/wr functions\n\tgo7007: add MEDIA_CAMERA_SUPPORT dependency\n\tem28xx: only use mt9v011 if camera support is enabled\n\ttw5864: use dev_warn instead of WARN to shut up warning\n\tISDN: eicon: reduce stack size of sig_ind function\n\tclk: meson: gxbb: fix build error without RESET_CONTROLLER\n\tkasan: rework Kconfig settings\n\tdrm/i915: hide unused intel_panel_set_backlight function\n\tarm64: sunxi: always enable reset controller\n\tbinfmt_elf: compat: avoid unused function warning\n\tspi: bcm-qspi: shut up warning about cfi header inclusion\n\tidle: i7300: add PCI dependency\n\tarm64: fix warning about swapper_pg_dir overflow\n\tusb: phy: msm add regulator dependency\n\tx86/microcode/AMD: Change load_microcode_amd()\u0027s param to bool to fix preemptibility bug\n\tKVM: async_pf: Fix #DF due to inject \"Page not Present\" and \"Page Ready\" exceptions simultaneously\n\tKVM: VMX: clean up declaration of VPID/EPT invalidation types\n\tKVM: nVMX: invvpid handling improvements\n\tcrypto: s5p-sss - Fix kernel Oops in AES-ECB mode\n\tLinux 4.9.84\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "7abb5e9dd5683d693376635ff05ec729216fd726",
      "tree": "ddbfb2f4e6724cd35bf0d1bf939c9123374b2422",
      "parents": [
        "3ee287d35b25076b626898284d610465145aa43b"
      ],
      "author": {
        "name": "Douglas Gilbert",
        "email": "dgilbert@interlog.com",
        "time": "Sun Jan 14 17:00:48 2018 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Feb 25 11:05:42 2018 +0100"
      },
      "message": "blk_rq_map_user_iov: fix error override\n\ncommit 69e0927b3774563c19b5fb32e91d75edc147fb62 upstream.\n\nDuring stress tests by syzkaller on the sg driver the block layer\ninfrequently returns EINVAL. Closer inspection shows the block\nlayer was trying to return ENOMEM (which is much more\nunderstandable) but for some reason overroad that useful error.\n\nPatch below does not show this (unchanged) line:\n   ret \u003d__blk_rq_map_user_iov(rq, map_data, \u0026i, gfp_mask, copy);\nThat \u0027ret\u0027 was being overridden when that function failed.\n\nSigned-off-by: Douglas Gilbert \u003cdgilbert@interlog.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "11537d5ac91a51571027818b98a99f43caaacb1b",
      "tree": "49e22b9b9d8b19eacce8a10c74febe041cb97ebf",
      "parents": [
        "4406671f9ec830ed2d41bffe28b801daab0bff3b"
      ],
      "author": {
        "name": "Hyojun Kim",
        "email": "hyojun@google.com",
        "time": "Thu Dec 21 09:57:41 2017 -0800"
      },
      "committer": {
        "name": "Hyojun Kim",
        "email": "hyojun@google.com",
        "time": "Wed Jan 03 21:16:40 2018 +0000"
      },
      "message": "blkdev: Refactoring block io latency histogram codes\n\nThe current io_latency_state structure includes entries for read\nand write requests. There are special types of write commands\nsuch as sync and discard (trim) commands, and the current\nimplementation is not general enough if we want to separate\nlatency histogram for such special commands.\n\nThis change makes io_latency_state structure request-type neutral.\nIt also changes to print the latency average.\n\nSigned-off-by: Hyojun Kim \u003chyojun@google.com\u003e\n"
    },
    {
      "commit": "319c8e1bc7a1552638a0d8b44426546185fa985b",
      "tree": "b1361f6cd84f3b6ba2cc36960f0992a21e820e10",
      "parents": [
        "c14c7b37e933db5f748d544b4a6c8c929ffd9565",
        "b632d710149f1a638ffa6e999cfbd9ee9fbdada6"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Dec 20 10:51:15 2017 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Dec 20 10:51:15 2017 +0100"
      },
      "message": "Merge 4.9.71 into android-4.9\n\nChanges in 4.9.71\n\tmfd: fsl-imx25: Clean up irq settings during removal\n\tcrypto: rsa - fix buffer overread when stripping leading zeroes\n\tcrypto: hmac - require that the underlying hash algorithm is unkeyed\n\tcrypto: salsa20 - fix blkcipher_walk API usage\n\tautofs: fix careless error in recent commit\n\ttracing: Allocate mask_str buffer dynamically\n\tUSB: uas and storage: Add US_FL_BROKEN_FUA for another JMicron JMS567 ID\n\tUSB: core: prevent malicious bNumInterfaces overflow\n\tusbip: fix stub_rx: get_pipe() to validate endpoint number\n\tusb: add helper to extract bits 12:11 of wMaxPacketSize\n\tusbip: fix stub_rx: harden CMD_SUBMIT path to handle malicious input\n\tusbip: fix stub_send_ret_submit() vulnerability to null transfer_buffer\n\tceph: drop negative child dentries before try pruning inode\u0027s alias\n\tusb: xhci: fix TDS for MTK xHCI1.1\n\tBluetooth: btusb: driver to enable the usb-wakeup feature\n\txhci: Don\u0027t add a virt_dev to the devs array before it\u0027s fully allocated\n\tnfs: don\u0027t wait on commit in nfs_commit_inode() if there were no commit requests\n\tsched/rt: Do not pull from current CPU if only one CPU to pull\n\teeprom: at24: change nvmem stride to 1\n\tdmaengine: dmatest: move callback wait queue to thread context\n\text4: fix fdatasync(2) after fallocate(2) operation\n\text4: fix crash when a directory\u0027s i_size is too small\n\tmac80211: Fix addition of mesh configuration element\n\tusb: phy: isp1301: Add OF device ID table\n\tKVM: nVMX: do not warn when MSR bitmap address is not backed\n\tusb: xhci-mtk: check hcc_params after adding primary hcd\n\tmd-cluster: free md_cluster_info if node leave cluster\n\tuserfaultfd: shmem: __do_fault requires VM_FAULT_NOPAGE\n\tuserfaultfd: selftest: vm: allow to build in vm/ directory\n\tnet: initialize msg.msg_flags in recvfrom\n\tbnxt_en: Ignore 0 value in autoneg supported speed from firmware.\n\tnet: bcmgenet: correct the RBUF_OVFL_CNT and RBUF_ERR_CNT MIB values\n\tnet: bcmgenet: correct MIB access of UniMAC RUNT counters\n\tnet: bcmgenet: reserved phy revisions must be checked first\n\tnet: bcmgenet: power down internal phy if open or resume fails\n\tnet: bcmgenet: synchronize irq0 status between the isr and task\n\tnet: bcmgenet: Power up the internal PHY before probing the MII\n\trxrpc: Wake up the transmitter if Rx window size increases on the peer\n\tnet/mlx5: Fix create autogroup prev initializer\n\tnet/mlx5: Don\u0027t save PCI state when PCI error is detected\n\tiommu/io-pgtable-arm-v7s: Check for leaf entry before dereferencing it\n\tdrm/amdgpu: fix parser init error path to avoid crash in parser fini\n\tNFSD: fix nfsd_minorversion(.., NFSD_AVAIL)\n\tNFSD: fix nfsd_reset_versions for NFSv4.\n\tInput: i8042 - add TUXEDO BU1406 (N24_25BU) to the nomux list\n\tdrm/omap: fix dmabuf mmap for dma_alloc\u0027ed buffers\n\tnetfilter: bridge: honor frag_max_size when refragmenting\n\tASoC: rsnd: fix sound route path when using SRC6/SRC9\n\tblk-mq: Fix tagset reinit in the presence of cpu hot-unplug\n\twriteback: fix memory leak in wb_queue_work()\n\tnet: wimax/i2400m: fix NULL-deref at probe\n\tdmaengine: Fix array index out of bounds warning in __get_unmap_pool()\n\tirqchip/mvebu-odmi: Select GENERIC_MSI_IRQ_DOMAIN\n\tnet: Resend IGMP memberships upon peer notification.\n\tmlxsw: reg: Fix SPVM max record count\n\tmlxsw: reg: Fix SPVMLR max record count\n\tqed: Align CIDs according to DORQ requirement\n\tqed: Fix mapping leak on LL2 rx flow\n\tqed: Fix interrupt flags on Rx LL2\n\tdrm: amd: remove broken include path\n\tintel_th: pci: Add Gemini Lake support\n\topenrisc: fix issue handling 8 byte get_user calls\n\tASoC: rcar: clear DE bit only in PDMACHCR when it stops\n\tscsi: hpsa: update check for logical volume status\n\tscsi: hpsa: limit outstanding rescans\n\tscsi: hpsa: do not timeout reset operations\n\tfjes: Fix wrong netdevice feature flags\n\tdrm/radeon/si: add dpm quirk for Oland\n\tDrivers: hv: util: move waiting for release to hv_utils_transport itself\n\tiwlwifi: mvm: cleanup pending frames in DQA mode\n\tsched/deadline: Add missing update_rq_clock() in dl_task_timer()\n\tsched/deadline: Make sure the replenishment timer fires in the next period\n\tsched/deadline: Throttle a constrained deadline task activated after the deadline\n\tsched/deadline: Use deadline instead of period when calculating overflow\n\tmmc: mediatek: Fixed bug where clock frequency could be set wrong\n\tdrm/radeon: reinstate oland workaround for sclk\n\tafs: Fix missing put_page()\n\tafs: Populate group ID from vnode status\n\tafs: Adjust mode bits processing\n\tafs: Deal with an empty callback array\n\tafs: Flush outstanding writes when an fd is closed\n\tafs: Migrate vlocation fields to 64-bit\n\tafs: Prevent callback expiry timer overflow\n\tafs: Fix the maths in afs_fs_store_data()\n\tafs: Invalid op ID should abort with RXGEN_OPCODE\n\tafs: Better abort and net error handling\n\tafs: Populate and use client modification time\n\tafs: Fix page leak in afs_write_begin()\n\tafs: Fix afs_kill_pages()\n\tafs: Fix abort on signal while waiting for call completion\n\tnvme-loop: fix a possible use-after-free when destroying the admin queue\n\tnvmet: confirm sq percpu has scheduled and switched to atomic\n\tnvmet-rdma: Fix a possible uninitialized variable dereference\n\tnet/mlx4_core: Avoid delays during VF driver device shutdown\n\tnet: mpls: Fix nexthop alive tracking on down events\n\trxrpc: Ignore BUSY packets on old calls\n\ttty: don\u0027t panic on OOM in tty_set_ldisc()\n\ttty: fix data race in tty_ldisc_ref_wait()\n\tperf symbols: Fix symbols__fixup_end heuristic for corner cases\n\tefi/esrt: Cleanup bad memory map log messages\n\tNFSv4.1 respect server\u0027s max size in CREATE_SESSION\n\tbtrfs: add missing memset while reading compressed inline extents\n\ttarget: Use system workqueue for ALUA transitions\n\ttarget: fix ALUA transition timeout handling\n\ttarget: fix race during implicit transition work flushes\n\tRevert \"x86/acpi: Set persistent cpuid \u003c-\u003e nodeid mapping when booting\"\n\tHID: cp2112: fix broken gpio_direction_input callback\n\tsfc: don\u0027t warn on successful change of MAC\n\tfbdev: controlfb: Add missing modes to fix out of bounds access\n\tvideo: udlfb: Fix read EDID timeout\n\tvideo: fbdev: au1200fb: Release some resources if a memory allocation fails\n\tvideo: fbdev: au1200fb: Return an error code if a memory allocation fails\n\trtc: pcf8563: fix output clock rate\n\tASoC: Intel: Skylake: Fix uuid_module memory leak in failure case\n\tdmaengine: ti-dma-crossbar: Correct am335x/am43xx mux value type\n\tPCI/PME: Handle invalid data when reading Root Status\n\tpowerpc/powernv/cpufreq: Fix the frequency read by /proc/cpuinfo\n\tPCI: Do not allocate more buses than available in parent\n\tiommu/mediatek: Fix driver name\n\tnetfilter: ipvs: Fix inappropriate output of procfs\n\tpowerpc/opal: Fix EBUSY bug in acquiring tokens\n\tpowerpc/ipic: Fix status get and status clear\n\tplatform/x86: intel_punit_ipc: Fix resource ioremap warning\n\ttarget/iscsi: Fix a race condition in iscsit_add_reject_from_cmd()\n\tiscsi-target: fix memory leak in lio_target_tiqn_addtpg()\n\ttarget:fix condition return in core_pr_dump_initiator_port()\n\ttarget/file: Do not return error for UNMAP if length is zero\n\tbadblocks: fix wrong return value in badblocks_set if badblocks are disabled\n\tiommu/amd: Limit the IOVA page range to the specified addresses\n\txfs: truncate pagecache before writeback in xfs_setattr_size()\n\tarm-ccn: perf: Prevent module unload while PMU is in use\n\tcrypto: tcrypt - fix buffer lengths in test_aead_speed()\n\tmm: Handle 0 flags in _calc_vm_trans() macro\n\tclk: mediatek: add the option for determining PLL source clock\n\tclk: imx6: refine hdmi_isfr\u0027s parent to make HDMI work on i.MX6 SoCs w/o VPU\n\tclk: hi6220: mark clock cs_atb_syspll as critical\n\tclk: tegra: Fix cclk_lp divisor register\n\tppp: Destroy the mutex when cleanup\n\tASoC: rsnd: rsnd_ssi_run_mods() needs to care ssi_parent_mod\n\tthermal/drivers/step_wise: Fix temperature regulation misbehavior\n\tscsi: scsi_debug: write_same: fix error report\n\tGFS2: Take inode off order_write list when setting jdata flag\n\tbcache: explicitly destroy mutex while exiting\n\tbcache: fix wrong cache_misses statistics\n\tIb/hfi1: Return actual operational VLs in port info query\n\tarm64: prevent regressions in compressed kernel image size when upgrading to binutils 2.27\n\tbtrfs: tests: Fix a memory leak in error handling path in \u0027run_test()\u0027\n\tplatform/x86: hp_accel: Add quirk for HP ProBook 440 G4\n\tnvme: use kref_get_unless_zero in nvme_find_get_ns\n\tl2tp: cleanup l2tp_tunnel_delete calls\n\txfs: fix log block underflow during recovery cycle verification\n\txfs: fix incorrect extent state in xfs_bmap_add_extent_unwritten_real\n\tRDMA/cxgb4: Declare stag as __be32\n\tPCI: Detach driver before procfs \u0026 sysfs teardown on device remove\n\tscsi: hpsa: cleanup sas_phy structures in sysfs when unloading\n\tscsi: hpsa: destroy sas transport properties before scsi_host\n\tpowerpc/perf/hv-24x7: Fix incorrect comparison in memord\n\tsoc: mediatek: pwrap: fix compiler errors\n\ttty fix oops when rmmod 8250\n\tusb: musb: da8xx: fix babble condition handling\n\tpinctrl: adi2: Fix Kconfig build problem\n\traid5: Set R5_Expanded on parity devices as well as data.\n\tscsi: scsi_devinfo: Add REPORTLUN2 to EMC SYMMETRIX blacklist entry\n\tIB/core: Fix calculation of maximum RoCE MTU\n\tvt6655: Fix a possible sleep-in-atomic bug in vt6655_suspend\n\trtl8188eu: Fix a possible sleep-in-atomic bug in rtw_createbss_cmd\n\trtl8188eu: Fix a possible sleep-in-atomic bug in rtw_disassoc_cmd\n\tscsi: sd: change manage_start_stop to bool in sysfs interface\n\tscsi: sd: change allow_restart to bool in sysfs interface\n\tscsi: bfa: integer overflow in debugfs\n\tudf: Avoid overflow when session starts at large offset\n\tmacvlan: Only deliver one copy of the frame to the macvlan interface\n\tRDMA/cma: Avoid triggering undefined behavior\n\tIB/ipoib: Grab rtnl lock on heavy flush when calling ndo_open/stop\n\ticmp: don\u0027t fail on fragment reassembly time exceeded\n\tath9k: fix tx99 potential info leak\n\tLinux 4.9.71\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "cb0acb37010c216e4781224ad4ab4c12ca9cb5fe",
      "tree": "9fe7b28e5a06e30f967aa3c5ec15a25c909faf0d",
      "parents": [
        "dcdca123814c5303f0e4d0fba67756d35bb0fd1f"
      ],
      "author": {
        "name": "Liu Bo",
        "email": "bo.li.liu@oracle.com",
        "time": "Fri Nov 03 11:24:44 2017 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Dec 20 10:07:29 2017 +0100"
      },
      "message": "badblocks: fix wrong return value in badblocks_set if badblocks are disabled\n\n\n[ Upstream commit 39b4954c0a1556f8f7f1fdcf59a227117fcd8a0b ]\n\nMD\u0027s rdev_set_badblocks() expects that badblocks_set() returns 1 if\nbadblocks are disabled, otherwise, rdev_set_badblocks() will record\nsuperblock changes and return success in that case and md will fail to\nreport an IO error which it should.\n\nThis bug has existed since badblocks were introduced in commit\n9e0e252a048b (\"badblocks: Add core badblock management code\").\n\nSigned-off-by: Liu Bo \u003cbo.li.liu@oracle.com\u003e\nAcked-by: Guoqing Jiang \u003cgqjiang@suse.com\u003e\nSigned-off-by: Shaohua Li \u003cshli@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@verizon.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "d28046fb8c435fc63f51dca30cdeb423d8ab4479",
      "tree": "8be4c0b5e7d758d81e27ee5acc4cf22d141aa4b3",
      "parents": [
        "143d13d1e6c0a9ea7e6e86a0279907b174a42b4d"
      ],
      "author": {
        "name": "Sagi Grimberg",
        "email": "sagi@grimberg.me",
        "time": "Mon Mar 13 16:10:11 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Dec 20 10:07:20 2017 +0100"
      },
      "message": "blk-mq: Fix tagset reinit in the presence of cpu hot-unplug\n\n\n[ Upstream commit 0067d4b020ea07a58540acb2c5fcd3364bf326e0 ]\n\nIn case cpu was unplugged, we need to make sure not to assume\nthat the tags for that cpu are still allocated. so check\nfor null tags when reinitializing a tagset.\n\nReported-by: Yi Zhang \u003cyizhan@redhat.com\u003e\nSigned-off-by: Sagi Grimberg \u003csagi@grimberg.me\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@verizon.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "3f1d77ca5f8fa20796b766e86092e4f5b594ea31",
      "tree": "6aaeb8ed866992ec9908eddbaf912a8dd545eed8",
      "parents": [
        "fb66dc2a6e5ec417ab7f6df01531aa1ccc9827f8",
        "c91efc7862b3f3c61cb76e926990cdbff5354b57"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Dec 14 09:58:43 2017 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Dec 14 09:58:43 2017 +0100"
      },
      "message": "Merge 4.9.69 into android-4.9\n\nChanges in 4.9.69\n\tusb: gadget: udc: renesas_usb3: fix number of the pipes\n\tcan: ti_hecc: Fix napi poll return value for repoll\n\tcan: kvaser_usb: free buf in error paths\n\tcan: kvaser_usb: Fix comparison bug in kvaser_usb_read_bulk_callback()\n\tcan: kvaser_usb: ratelimit errors if incomplete messages are received\n\tcan: kvaser_usb: cancel urb on -EPIPE and -EPROTO\n\tcan: ems_usb: cancel urb on -EPIPE and -EPROTO\n\tcan: esd_usb2: cancel urb on -EPIPE and -EPROTO\n\tcan: usb_8dev: cancel urb on -EPIPE and -EPROTO\n\tvirtio: release virtio index when fail to device_register\n\thv: kvp: Avoid reading past allocated blocks from KVP file\n\tisa: Prevent NULL dereference in isa_bus driver callbacks\n\tscsi: dma-mapping: always provide dma_get_cache_alignment\n\tscsi: use dma_get_cache_alignment() as minimum DMA alignment\n\tscsi: libsas: align sata_device\u0027s rps_resp on a cacheline\n\tefi: Move some sysfs files to be read-only by root\n\tefi/esrt: Use memunmap() instead of kfree() to free the remapping\n\tASN.1: fix out-of-bounds read when parsing indefinite length item\n\tASN.1: check for error from ASN1_OP_END__ACT actions\n\tKEYS: add missing permission check for request_key() destination\n\tX.509: reject invalid BIT STRING for subjectPublicKey\n\tX.509: fix comparisons of -\u003epkey_algo\n\tx86/PCI: Make broadcom_postcore_init() check acpi_disabled\n\tKVM: x86: fix APIC page invalidation\n\tbtrfs: fix missing error return in btrfs_drop_snapshot\n\tALSA: pcm: prevent UAF in snd_pcm_info\n\tALSA: seq: Remove spurious WARN_ON() at timer check\n\tALSA: usb-audio: Fix out-of-bound error\n\tALSA: usb-audio: Add check return value for usb_string()\n\tiommu/vt-d: Fix scatterlist offset handling\n\tsmp/hotplug: Move step CPUHP_AP_SMPCFD_DYING to the correct place\n\ts390: fix compat system call table\n\tKVM: s390: Fix skey emulation permission check\n\tpowerpc/64s: Initialize ISAv3 MMU registers before setting partition table\n\tbrcmfmac: change driver unbind order of the sdio function devices\n\tkdb: Fix handling of kallsyms_symbol_next() return value\n\tdrm/exynos: gem: Drop NONCONTIG flag for buffers allocated without IOMMU\n\tmedia: dvb: i2c transfers over usb cannot be done from stack\n\tarm64: KVM: fix VTTBR_BADDR_MASK BUG_ON off-by-one\n\tarm: KVM: Fix VTTBR_BADDR_MASK BUG_ON off-by-one\n\tKVM: VMX: remove I/O port 0x80 bypass on Intel hosts\n\tKVM: arm/arm64: Fix broken GICH_ELRSR big endian conversion\n\tKVM: arm/arm64: vgic-irqfd: Fix MSI entry allocation\n\tKVM: arm/arm64: vgic-its: Check result of allocation before use\n\tarm64: fpsimd: Prevent registers leaking from dead tasks\n\tbus: arm-cci: Fix use of smp_processor_id() in preemptible context\n\tbus: arm-ccn: Check memory allocation failure\n\tbus: arm-ccn: Fix use of smp_processor_id() in preemptible context\n\tbus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left.\n\tcrypto: talitos - fix AEAD test failures\n\tcrypto: talitos - fix memory corruption on SEC2\n\tcrypto: talitos - fix setkey to check key weakness\n\tcrypto: talitos - fix AEAD for sha224 on non sha224 capable chips\n\tcrypto: talitos - fix use of sg_link_tbl_len\n\tcrypto: talitos - fix ctr-aes-talitos\n\tusb: f_fs: Force Reserved1\u003d1 in OS_DESC_EXT_COMPAT\n\tARM: BUG if jumping to usermode address in kernel mode\n\tARM: avoid faulting on qemu\n\tthp: reduce indentation level in change_huge_pmd()\n\tthp: fix MADV_DONTNEED vs. numa balancing race\n\tmm: drop unused pmdp_huge_get_and_clear_notify()\n\tRevert \"drm/armada: Fix compile fail\"\n\tRevert \"spi: SPI_FSL_DSPI should depend on HAS_DMA\"\n\tARM: 8657/1: uaccess: consistently check object sizes\n\tvti6: Don\u0027t report path MTU below IPV6_MIN_MTU.\n\tARM: OMAP2+: gpmc-onenand: propagate error on initialization failure\n\tx86/selftests: Add clobbers for int80 on x86_64\n\tx86/platform/uv/BAU: Fix HUB errors by remove initial write to sw-ack register\n\tsched/fair: Make select_idle_cpu() more aggressive\n\tx86/hpet: Prevent might sleep splat on resume\n\tpowerpc/64: Invalidate process table caching after setting process table\n\tselftest/powerpc: Fix false failures for skipped tests\n\tpowerpc: Fix compiling a BE kernel with a powerpc64le toolchain\n\tlirc: fix dead lock between open and wakeup_filter\n\tmodule: set __jump_table alignment to 8\n\tpowerpc/64: Fix checksum folding in csum_add()\n\tARM: OMAP2+: Fix device node reference counts\n\tARM: OMAP2+: Release device node after it is no longer needed.\n\tASoC: rcar: avoid SSI_MODEx settings for SSI8\n\tgpio: altera: Use handle_level_irq when configured as a level_high\n\tHID: chicony: Add support for another ASUS Zen AiO keyboard\n\tusb: gadget: configs: plug memory leak\n\tUSB: gadgetfs: Fix a potential memory leak in \u0027dev_config()\u0027\n\tusb: dwc3: gadget: Fix system suspend/resume on TI platforms\n\tusb: gadget: pxa27x: Test for a valid argument pointer\n\tusb: gadget: udc: net2280: Fix tmp reusage in net2280 driver\n\tkvm: nVMX: VMCLEAR should not cause the vCPU to shut down\n\tlibata: drop WARN from protocol error in ata_sff_qc_issue()\n\tworkqueue: trigger WARN if queue_delayed_work() is called with NULL @wq\n\tscsi: qla2xxx: Fix ql_dump_buffer\n\tscsi: lpfc: Fix crash during Hardware error recovery on SLI3 adapters\n\tirqchip/crossbar: Fix incorrect type of register size\n\tKVM: nVMX: reset nested_run_pending if the vCPU is going to be reset\n\tarm: KVM: Survive unknown traps from guests\n\tarm64: KVM: Survive unknown traps from guests\n\tKVM: arm/arm64: VGIC: Fix command handling while ITS being disabled\n\tspi_ks8995: fix \"BUG: key accdaa28 not in .data!\"\n\tspi_ks8995: regs_size incorrect for some devices\n\tbnx2x: prevent crash when accessing PTP with interface down\n\tbnx2x: fix possible overrun of VFPF multicast addresses array\n\tbnx2x: fix detection of VLAN filtering feature for VF\n\tbnx2x: do not rollback VF MAC/VLAN filters we did not configure\n\trds: tcp: Sequence teardown of listen and acceptor sockets to avoid races\n\tibmvnic: Fix overflowing firmware/hardware TX queue\n\tibmvnic: Allocate number of rx/tx buffers agreed on by firmware\n\tipv6: reorder icmpv6_init() and ip6_mr_init()\n\tcrypto: s5p-sss - Fix completing crypto request in IRQ handler\n\ti2c: riic: fix restart condition\n\tblk-mq: initialize mq kobjects in blk_mq_init_allocated_queue()\n\tzram: set physical queue limits to avoid array out of bounds accesses\n\tnetfilter: don\u0027t track fragmented packets\n\taxonram: Fix gendisk handling\n\tdrm/amd/amdgpu: fix console deadlock if late init failed\n\tpowerpc/powernv/ioda2: Gracefully fail if too many TCE levels requested\n\tEDAC, i5000, i5400: Fix use of MTR_DRAM_WIDTH macro\n\tEDAC, i5000, i5400: Fix definition of NRECMEMB register\n\tkbuild: pkg: use --transform option to prefix paths in tar\n\tcoccinelle: fix parallel build with CHECK\u003dscripts/coccicheck\n\tx86/mpx/selftests: Fix up weird arrays\n\tmac80211_hwsim: Fix memory leak in hwsim_new_radio_nl()\n\tgre6: use log_ecn_error module parameter in ip6_tnl_rcv()\n\troute: also update fnhe_genid when updating a route cache\n\troute: update fnhe_expires for redirect when the fnhe exists\n\tdrivers/rapidio/devices/rio_mport_cdev.c: fix resource leak in error handling path in \u0027rio_dma_transfer()\u0027\n\tlib/genalloc.c: make the avail variable an atomic_long_t\n\tdynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead of 0\n\tNFS: Fix a typo in nfs_rename()\n\tsunrpc: Fix rpc_task_begin trace point\n\txfs: fix forgotten rcu read unlock when skipping inode reclaim\n\tdt-bindings: usb: fix reg-property port-number range\n\tblock: wake up all tasks blocked in get_request()\n\tsparc64/mm: set fields in deferred pages\n\tzsmalloc: calling zs_map_object() from irq is a bug\n\tsctp: do not free asoc when it is already dead in sctp_sendmsg\n\tsctp: use the right sk after waking up from wait_buf sleep\n\tbpf: fix lockdep splat\n\tclk: uniphier: fix DAPLL2 clock rate of Pro5\n\tatm: horizon: Fix irq release error\n\tjump_label: Invoke jump_label_test() via early_initcall()\n\txfrm: Copy policy family in clone_policy\n\tIB/mlx4: Increase maximal message size under UD QP\n\tIB/mlx5: Assign send CQ and recv CQ of UMR QP\n\tafs: Connect up the CB.ProbeUuid\n\tLinux 4.9.69\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "1a5a4c6e868faf01cda18538ea72c6586dfee647",
      "tree": "86d9e62bafb0c2770b9329cd04cc39140fff34aa",
      "parents": [
        "c31bfe7de24387dfc0b4c3c1a34f4f8d1554c907"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "ming.lei@redhat.com",
        "time": "Thu Nov 16 08:08:44 2017 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Dec 14 09:28:23 2017 +0100"
      },
      "message": "block: wake up all tasks blocked in get_request()\n\n\n[ Upstream commit 34d9715ac1edd50285168dd8d80c972739a4f6a4 ]\n\nOnce blk_set_queue_dying() is done in blk_cleanup_queue(), we call\nblk_freeze_queue() and wait for q-\u003eq_usage_counter becoming zero. But\nif there are tasks blocked in get_request(), q-\u003eq_usage_counter can\nnever become zero. So we have to wake up all these tasks in\nblk_set_queue_dying() first.\n\nFixes: 3ef28e83ab157997 (\"block: generic request_queue reference counting\")\nSigned-off-by: Ming Lei \u003cming.lei@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@verizon.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "bc8859174d984975d10f47c55ade762bbf46b5f1",
      "tree": "7ad948f46df1f776e790bdaf11fd643009c2899a",
      "parents": [
        "567df7459e127ded8e50add7ab938335b2dfd92f"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Wed Feb 22 18:13:59 2017 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Dec 14 09:28:21 2017 +0100"
      },
      "message": "blk-mq: initialize mq kobjects in blk_mq_init_allocated_queue()\n\n\n[ Upstream commit 737f98cfe7de8df7433a4d846850aa8efa44bd48 ]\n\nBoth q-\u003emq_kobj and sw queues\u0027 kobjects should have been initialized\nonce, instead of doing that each add_disk context.\n\nAlso this patch removes clearing of ctx in blk_mq_init_cpu_queues()\nbecause percpu allocator fills zero to allocated variable.\n\nThis patch fixes one issue[1] reported from Omar.\n\n[1] kernel wearning when doing unbind/bind on one scsi-mq device\n\n[   19.347924] kobject (ffff8800791ea0b8): tried to init an initialized object, something is seriously wrong.\n[   19.349781] CPU: 1 PID: 84 Comm: kworker/u8:1 Not tainted 4.10.0-rc7-00210-g53f39eeaa263 #34\n[   19.350686] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.1-20161122_114906-anatol 04/01/2014\n[   19.350920] Workqueue: events_unbound async_run_entry_fn\n[   19.350920] Call Trace:\n[   19.350920]  dump_stack+0x63/0x83\n[   19.350920]  kobject_init+0x77/0x90\n[   19.350920]  blk_mq_register_dev+0x40/0x130\n[   19.350920]  blk_register_queue+0xb6/0x190\n[   19.350920]  device_add_disk+0x1ec/0x4b0\n[   19.350920]  sd_probe_async+0x10d/0x1c0 [sd_mod]\n[   19.350920]  async_run_entry_fn+0x48/0x150\n[   19.350920]  process_one_work+0x1d0/0x480\n[   19.350920]  worker_thread+0x48/0x4e0\n[   19.350920]  kthread+0x101/0x140\n[   19.350920]  ? process_one_work+0x480/0x480\n[   19.350920]  ? kthread_create_on_node+0x60/0x60\n[   19.350920]  ret_from_fork+0x2c/0x40\n\nCc: Omar Sandoval \u003cosandov@osandov.com\u003e\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nTested-by: Peter Zijlstra (Intel) \u003cpeterz@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@verizon.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "c1a286429a0ebd7b08d980e8c5338e643914d9f5",
      "tree": "3c5fe945e0b437d950cd655c57edb1f1e0d756b0",
      "parents": [
        "5311c740c0ede33833ed0052b1ececc56c6d6c7a",
        "8743ce3d7c9698285310920c443c086e337aef44"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Nov 30 16:24:14 2017 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Nov 30 16:24:14 2017 +0000"
      },
      "message": "Merge 4.9.66 into android-4.9\n\nChanges in 4.9.66\n\ts390: fix transactional execution control register handling\n\ts390/runtime instrumention: fix possible memory corruption\n\ts390/disassembler: add missing end marker for e7 table\n\ts390/disassembler: increase show_code buffer size\n\tACPI / EC: Fix regression related to triggering source of EC event handling\n\tx86/mm: fix use-after-free of vma during userfaultfd fault\n\tipv6: only call ip6_route_dev_notify() once for NETDEV_UNREGISTER\n\tvsock: use new wait API for vsock_stream_sendmsg()\n\tsched: Make resched_cpu() unconditional\n\tlib/mpi: call cond_resched() from mpi_powm() loop\n\tx86/decoder: Add new TEST instruction pattern\n\tx86/entry/64: Add missing irqflags tracing to native_load_gs_index()\n\tarm64: Implement arch-specific pte_access_permitted()\n\tARM: 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE\n\tARM: 8721/1: mm: dump: check hardware RO bit for LPAE\n\tMIPS: ralink: Fix MT7628 pinmux\n\tMIPS: ralink: Fix typo in mt7628 pinmux function\n\tPCI: Set Cavium ACS capability quirk flags to assert RR/CR/SV/UF\n\tALSA: hda: Add Raven PCI ID\n\tdm bufio: fix integer overflow when limiting maximum cache size\n\tdm: allocate struct mapped_device with kvzalloc\n\tMIPS: pci: Remove KERN_WARN instance inside the mt7620 driver\n\tdm: fix race between dm_get_from_kobject() and __dm_destroy()\n\tMIPS: Fix odd fp register warnings with MIPS64r2\n\tMIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry\n\tMIPS: Fix an n32 core file generation regset support regression\n\tMIPS: BCM47XX: Fix LED inversion for WRT54GSv1\n\trt2x00usb: mark device removed when get ENOENT usb error\n\tautofs: don\u0027t fail mount for transient error\n\tnilfs2: fix race condition that causes file system corruption\n\teCryptfs: use after free in ecryptfs_release_messaging()\n\tlibceph: don\u0027t WARN() if user tries to add invalid key\n\tbcache: check ca-\u003ealloc_thread initialized before wake up it\n\tisofs: fix timestamps beyond 2027\n\tNFS: Fix typo in nomigration mount option\n\tnfs: Fix ugly referral attributes\n\tNFS: Avoid RCU usage in tracepoints\n\tnfsd: deal with revoked delegations appropriately\n\trtlwifi: rtl8192ee: Fix memory leak when loading firmware\n\trtlwifi: fix uninitialized rtlhal-\u003elast_suspend_sec time\n\tata: fixes kernel crash while tracing ata_eh_link_autopsy event\n\text4: fix interaction between i_size, fallocate, and delalloc after a crash\n\tALSA: pcm: update tstamp only if audio_tstamp changed\n\tALSA: usb-audio: Add sanity checks to FE parser\n\tALSA: usb-audio: Fix potential out-of-bound access at parsing SU\n\tALSA: usb-audio: Add sanity checks in v2 clock parsers\n\tALSA: timer: Remove kernel warning at compat ioctl error paths\n\tALSA: hda: Fix too short HDMI/DP chmap reporting\n\tALSA: hda/realtek - Fix ALC700 family no sound issue\n\tfix a page leak in vhost_scsi_iov_to_sgl() error recovery\n\tfs/9p: Compare qid.path in v9fs_test_inode\n\tiscsi-target: Fix non-immediate TMR reference leak\n\ttarget: Fix QUEUE_FULL + SCSI task attribute handling\n\tmtd: nand: omap2: Fix subpage write\n\tmtd: nand: Fix writing mtdoops to nand flash.\n\tmtd: nand: mtk: fix infinite ECC decode IRQ issue\n\tp54: don\u0027t unregister leds when they are not initialized\n\tblock: Fix a race between blk_cleanup_queue() and timeout handling\n\tirqchip/gic-v3: Fix ppi-partitions lookup\n\tlockd: double unregister of inetaddr notifiers\n\tKVM: nVMX: set IDTR and GDTR limits when loading L1 host state\n\tKVM: SVM: obey guest PAT\n\tSUNRPC: Fix tracepoint storage issues with svc_recv and svc_rqst_status\n\tclk: ti: dra7-atl-clock: fix child-node lookups\n\tlibnvdimm, pfn: make \u0027resource\u0027 attribute only readable by root\n\tlibnvdimm, namespace: fix label initialization to use valid seq numbers\n\tlibnvdimm, namespace: make \u0027resource\u0027 attribute only readable by root\n\tIB/srpt: Do not accept invalid initiator port names\n\tIB/srp: Avoid that a cable pull can trigger a kernel crash\n\tNFC: fix device-allocation error return\n\ti40e: Use smp_rmb rather than read_barrier_depends\n\tigb: Use smp_rmb rather than read_barrier_depends\n\tigbvf: Use smp_rmb rather than read_barrier_depends\n\tixgbevf: Use smp_rmb rather than read_barrier_depends\n\ti40evf: Use smp_rmb rather than read_barrier_depends\n\tfm10k: Use smp_rmb rather than read_barrier_depends\n\tixgbe: Fix skb list corruption on Power systems\n\tparisc: Fix validity check of pointer size argument in new CAS implementation\n\tpowerpc/signal: Properly handle return value from uprobe_deny_signal()\n\tmedia: Don\u0027t do DMA on stack for firmware upload in the AS102 driver\n\tmedia: rc: check for integer overflow\n\tcx231xx-cards: fix NULL-deref on missing association descriptor\n\tmedia: v4l2-ctrl: Fix flags field on Control events\n\tsched/rt: Simplify the IPI based RT balancing logic\n\tfscrypt: lock mutex before checking for bounce page pool\n\tnet/9p: Switch to wait_event_killable()\n\tPM / OPP: Add missing of_node_put(np)\n\tRevert \"drm/i915: Do not rely on wm preservation for ILK watermarks\"\n\te1000e: Fix error path in link detection\n\te1000e: Fix return value test\n\te1000e: Separate signaling for link check/link up\n\te1000e: Avoid receiver overrun interrupt bursts\n\tRDS: make message size limit compliant with spec\n\tRDS: RDMA: return appropriate error on rdma map failures\n\tRDS: RDMA: fix the ib_map_mr_sg_zbva() argument\n\tPCI: Apply _HPX settings only to relevant devices\n\tdrm/sun4i: Fix a return value in case of error\n\tclk: sunxi-ng: A31: Fix spdif clock register\n\tclk: sunxi-ng: fix PLL_CPUX adjusting on A33\n\tdmaengine: zx: set DMA_CYCLIC cap_mask bit\n\tfscrypt: use ENOKEY when file cannot be created w/o key\n\tfscrypt: use ENOTDIR when setting encryption policy on nondirectory\n\tnet: Allow IP_MULTICAST_IF to set index to L3 slave\n\tnet: 3com: typhoon: typhoon_init_one: make return values more specific\n\tnet: 3com: typhoon: typhoon_init_one: fix incorrect return values\n\tdrm/armada: Fix compile fail\n\trt2800: set minimum MPDU and PSDU lengths to sane values\n\tadm80211: return an error if adm8211_alloc_rings() fails\n\tmwifiex: sdio: fix use after free issue for save_adapter\n\tath10k: fix incorrect txpower set by P2P_DEVICE interface\n\tath10k: ignore configuring the incorrect board_id\n\tath10k: fix potential memory leak in ath10k_wmi_tlv_op_pull_fw_stats()\n\tpinctrl: sirf: atlas7: Add missing \u0027of_node_put()\u0027\n\tbnxt_en: Set default completion ring for async events.\n\tath10k: set CTS protection VDEV param only if VDEV is up\n\tALSA: hda - Apply ALC269_FIXUP_NO_SHUTUP on HDA_FIXUP_ACT_PROBE\n\tgpio: mockup: dynamically allocate memory for chip name\n\tdrm: Apply range restriction after color adjustment when allocation\n\tclk: qcom: ipq4019: Add all the frequencies for apss cpu\n\tdrm/mediatek: don\u0027t use drm_put_dev\n\tmac80211: Remove invalid flag operations in mesh TSF synchronization\n\tmac80211: Suppress NEW_PEER_CANDIDATE event if no room\n\tadm80211: add checks for dma mapping errors\n\tiio: light: fix improper return value\n\tstaging: iio: cdc: fix improper return value\n\tspi: SPI_FSL_DSPI should depend on HAS_DMA\n\tnetfilter: nft_queue: use raw_smp_processor_id()\n\tnetfilter: nf_tables: fix oob access\n\tASoC: rsnd: don\u0027t double free kctrl\n\tcrypto: marvell - Copy IVDIG before launching partial DMA ahash requests\n\tbtrfs: return the actual error value from from btrfs_uuid_tree_iterate\n\tASoC: wm_adsp: Don\u0027t overrun firmware file buffer when reading region data\n\ts390/kbuild: enable modversions for symbols exported from asm\n\tcec: when canceling a message, don\u0027t overwrite old status info\n\tcec: CEC_MSG_GIVE_FEATURES should abort for CEC version \u003c 2\n\tcec: update log_addr[] before finishing configuration\n\tnvmet: fix KATO offset in Set Features\n\txen: xenbus driver must not accept invalid transaction ids\n\tLinux 4.9.66\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "e5386fca7e04b281e59a719a76243d83e3c2d63a",
      "tree": "ee303b2f4b26de7e5f89a4eec247dddc220a32d9",
      "parents": [
        "7d159bf2afcfed2ca2557180e1166bc88f41fb06"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bart.vanassche@wdc.com",
        "time": "Thu Oct 19 10:00:48 2017 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Nov 30 08:39:06 2017 +0000"
      },
      "message": "block: Fix a race between blk_cleanup_queue() and timeout handling\n\ncommit 4e9b6f20828ac880dbc1fa2fdbafae779473d1af upstream.\n\nMake sure that if the timeout timer fires after a queue has been\nmarked \"dying\" that the affected requests are finished.\n\nReported-by: chenxiang (M) \u003cchenxiang66@hisilicon.com\u003e\nFixes: commit 287922eb0b18 (\"block: defer timeouts to a workqueue\")\nSigned-off-by: Bart Van Assche \u003cbart.vanassche@wdc.com\u003e\nTested-by: chenxiang (M) \u003cchenxiang66@hisilicon.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Keith Busch \u003ckeith.busch@intel.com\u003e\nCc: Hannes Reinecke \u003chare@suse.com\u003e\nCc: Ming Lei \u003cming.lei@redhat.com\u003e\nCc: Johannes Thumshirn \u003cjthumshirn@suse.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "f108c7d9b572e54c451598e7bc16a73eb71fc6c2",
      "tree": "f7a30b795db5bad0fc00150438443739a0e77710",
      "parents": [
        "9eaaf14c7829c6286ce90e63ab55e9e7aeeba6cc",
        "4d4a6a3f8a12602ce8dc800123715fe7b5c1c3a1"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Mon Oct 23 09:35:27 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Mon Oct 23 09:35:27 2017 +0200"
      },
      "message": "Merge 4.9.58 into android-4.9\n\nChanges in 4.9.58\n\tMIPS: Fix minimum alignment requirement of IRQ stack\n\tRevert \"bsg-lib: don\u0027t free job in bsg_prepare_job\"\n\txen-netback: Use GFP_ATOMIC to allocate hash\n\tlocking/lockdep: Add nest_lock integrity test\n\twatchdog: kempld: fix gcc-4.3 build\n\tirqchip/crossbar: Fix incorrect type of local variables\n\tinitramfs: finish fput() before accessing any binary from initramfs\n\tmac80211_hwsim: check HWSIM_ATTR_RADIO_NAME length\n\tALSA: hda: Add Geminilake HDMI codec ID\n\tqed: Don\u0027t use attention PTT for configuring BW\n\tmac80211: fix power saving clients handling in iwlwifi\n\tnet/mlx4_en: fix overflow in mlx4_en_init_timestamp()\n\tstaging: vchiq_2835_arm: Make cache-line-size a required DT property\n\tnetfilter: nf_ct_expect: Change __nf_ct_expect_check() return value.\n\tiio: adc: xilinx: Fix error handling\n\tf2fs: do SSR for data when there is enough free space\n\tsched/fair: Update rq clock before changing a task\u0027s CPU affinity\n\tBtrfs: send, fix failure to rename top level inode due to name collision\n\tf2fs: do not wait for writeback in write_begin\n\tmd/linear: shutup lockdep warnning\n\tsparc64: Migrate hvcons irq to panicked cpu\n\tnet/mlx4_core: Fix VF overwrite of module param which disables DMFS on new probed PFs\n\tcrypto: xts - Add ECB dependency\n\tmm/memory_hotplug: set magic number to page-\u003efreelist instead of page-\u003elru.next\n\tocfs2/dlmglue: prepare tracking logic to avoid recursive cluster lock\n\tslub: do not merge cache if slub_debug contains a never-merge flag\n\tscsi: scsi_dh_emc: return success in clariion_std_inquiry()\n\tASoC: mediatek: add I2C dependency for CS42XX8\n\tdrm/amdgpu: refuse to reserve io mem for split VRAM buffers\n\tnet: mvpp2: release reference to txq_cpu[] entry after unmapping\n\tqede: Prevent index problems in loopback test\n\tqed: Reserve doorbell BAR space for present CPUs\n\tqed: Read queue state before releasing buffer\n\ti2c: at91: ensure state is restored after suspending\n\tceph: don\u0027t update_dentry_lease unless we actually got one\n\tceph: fix bogus endianness change in ceph_ioctl_set_layout\n\tceph: clean up unsafe d_parent accesses in build_dentry_path\n\tuapi: fix linux/rds.h userspace compilation errors\n\tuapi: fix linux/mroute6.h userspace compilation errors\n\tIB/hfi1: Use static CTLE with Preset 6 for integrated HFIs\n\tIB/hfi1: Allocate context data on memory node\n\ttarget/iscsi: Fix unsolicited data seq_end_offset calculation\n\thrtimer: Catch invalid clockids again\n\tnfsd/callback: Cleanup callback cred on shutdown\n\tpowerpc/perf: Add restrictions to PMC5 in power9 DD1\n\tdrm/nouveau/gr/gf100-: fix ccache error logging\n\tregulator: core: Resolve supplies before disabling unused regulators\n\tbtmrvl: avoid double-disable_irq() race\n\tEDAC, mce_amd: Print IPID and Syndrome on a separate line\n\tcpufreq: CPPC: add ACPI_PROCESSOR dependency\n\tusb: dwc3: gadget: Correct ISOC DATA PIDs for short packets\n\tLinux 4.9.58\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "ebbd5ac4acdbfd8e4286a96286b057e49287133a",
      "tree": "fbd0f27ad1e081d69d64a0c753cc2cd7bf6d9811",
      "parents": [
        "0054c0bca32190ccaa283ecaef1c970e4610b7da"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Oct 19 14:55:29 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Oct 21 17:21:33 2017 +0200"
      },
      "message": "Revert \"bsg-lib: don\u0027t free job in bsg_prepare_job\"\n\nThis reverts commit eb4375e1969c48d454998b2a284c2e6a5dc9eb68 which was\ncommit f507b54dccfd8000c517d740bc45f20c74532d18 upstream.\n\nBen reports:\n\tThat function doesn\u0027t exist here (it was introduced in 4.13).\n\tInstead, this backport has modified bsg_create_job(), creating a\n\tleak.  Please revert this on the 3.18, 4.4 and 4.9 stable\n\tbranches.\n\nSo I\u0027m dropping it from here.\n\nReported-by: Ben Hutchings \u003cben.hutchings@codethink.co.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Ming Lei \u003cming.lei@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org\n"
    },
    {
      "commit": "b86d2b14679197d23432f842d478c92f2c59faeb",
      "tree": "39f81e559f1fbc662ee9d28da2e5e3b90cf711fc",
      "parents": [
        "5c73594e214f2328112d6ace6098a5a99860ec36",
        "5d7a76acad403638f635c918cc63d1d44ffa4065"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Oct 18 09:45:37 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Oct 18 09:45:37 2017 +0200"
      },
      "message": "Merge 4.9.57 into android-4.9\n\nChanges in 4.9.57\n\text4: in ext4_seek_{hole,data}, return -ENXIO for negative offsets\n\tCIFS: Reconnect expired SMB sessions\n\tnl80211: Define policy for packet pattern attributes\n\trcu: Allow for page faults in NMI handlers\n\tUSB: dummy-hcd: Fix deadlock caused by disconnect detection\n\tMIPS: math-emu: Remove pr_err() calls from fpu_emu()\n\tdmaengine: edma: Align the memcpy acnt array size with the transfer\n\tdmaengine: ti-dma-crossbar: Fix possible race condition with dma_inuse\n\tHID: usbhid: fix out-of-bounds bug\n\tcrypto: shash - Fix zero-length shash ahash digest crash\n\tKVM: MMU: always terminate page walks at level 1\n\tKVM: nVMX: fix guest CR4 loading when emulating L2 to L1 exit\n\tusb: renesas_usbhs: Fix DMAC sequence for receiving zero-length packet\n\tpinctrl/amd: Fix build dependency on pinmux code\n\tiommu/amd: Finish TLB flush in amd_iommu_unmap()\n\tdevice property: Track owner device of device property\n\tfs/mpage.c: fix mpage_writepage() for pages with buffers\n\tALSA: usb-audio: Kill stray URB at exiting\n\tALSA: seq: Fix use-after-free at creating a port\n\tALSA: seq: Fix copy_from_user() call inside lock\n\tALSA: caiaq: Fix stray URB at probe error path\n\tALSA: line6: Fix missing initialization before error path\n\tALSA: line6: Fix leftover URB at error-path during probe\n\tdrm/i915/edp: Get the Panel Power Off timestamp after panel is off\n\tdrm/i915: Read timings from the correct transcoder in intel_crtc_mode_get()\n\tdrm/i915/bios: parse DDI ports also for CHV for HDMI DDC pin and DP AUX channel\n\tusb: gadget: configfs: Fix memory leak of interface directory data\n\tusb: gadget: composite: Fix use-after-free in usb_composite_overwrite_options\n\tdirect-io: Prevent NULL pointer access in submit_page_section\n\tfix unbalanced page refcounting in bio_map_user_iov\n\tmore bio_map_user_iov() leak fixes\n\tbio_copy_user_iov(): don\u0027t ignore -\u003eiov_offset\n\tUSB: serial: ftdi_sio: add id for Cypress WICED dev board\n\tUSB: serial: cp210x: add support for ELV TFD500\n\tUSB: serial: option: add support for TP-Link LTE module\n\tUSB: serial: qcserial: add Dell DW5818, DW5819\n\tUSB: serial: console: fix use-after-free after failed setup\n\tx86/alternatives: Fix alt_max_short macro to really be a max()\n\tKVM: nVMX: update last_nonleaf_level when initializing nested EPT\n\tLinux 4.9.57\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "ed35ded9c781b2cd86bec3b7b91fd65f310e4700",
      "tree": "c462a0051904c6cabb6490a0941057a166eabeef",
      "parents": [
        "e67dfe75b6830279ef24bfa5237c1488e2890a8d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Sep 24 10:21:15 2017 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Oct 18 09:35:41 2017 +0200"
      },
      "message": "bio_copy_user_iov(): don\u0027t ignore -\u003eiov_offset\n\ncommit 1cfd0ddd82232804e03f3023f6a58b50dfef0574 upstream.\n\nSince \"block: support large requests in blk_rq_map_user_iov\" we\nstarted to call it with partially drained iter; that works fine\non the write side, but reads create a copy of iter for completion\ntime.  And that needs to take the possibility of -\u003eiov_iter !\u003d 0\ninto account...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "e67dfe75b6830279ef24bfa5237c1488e2890a8d",
      "tree": "9d801d884402a459f57f1cdedda29574688dc23d",
      "parents": [
        "5444d8ab9a1406af9f1bc2f00c26838637542480"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Sep 23 15:51:23 2017 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Oct 18 09:35:41 2017 +0200"
      },
      "message": "more bio_map_user_iov() leak fixes\n\ncommit 2b04e8f6bbb196cab4b232af0f8d48ff2c7a8058 upstream.\n\nwe need to take care of failure exit as well - pages already\nin bio should be dropped by analogue of bio_unmap_pages(),\nsince their refcounts had been bumped only once per reference\nin bio.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "5444d8ab9a1406af9f1bc2f00c26838637542480",
      "tree": "4470222da245ca5e9c56152c86858c1c5841b18f",
      "parents": [
        "f9139a1a2457323894c1780f0e44271af807346d"
      ],
      "author": {
        "name": "Vitaly Mayatskikh",
        "email": "v.mayatskih@gmail.com",
        "time": "Fri Sep 22 01:18:39 2017 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Oct 18 09:35:41 2017 +0200"
      },
      "message": "fix unbalanced page refcounting in bio_map_user_iov\n\ncommit 95d78c28b5a85bacbc29b8dba7c04babb9b0d467 upstream.\n\nbio_map_user_iov and bio_unmap_user do unbalanced pages refcounting if\nIO vector has small consecutive buffers belonging to the same page.\nbio_add_pc_page merges them into one, but the page reference is never\ndropped.\n\nSigned-off-by: Vitaly Mayatskikh \u003cv.mayatskih@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "e5eba30388a2822a590c0cb9485d5e0181e456c5",
      "tree": "c3d98bad3aaf06e067cff20f4c98e7a476cf59c6",
      "parents": [
        "2b3a26c86b930d1efab55972052ab2e16336e034",
        "f37eb7b586f1dd24a86c50278c65322fc6787722"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sun Oct 08 10:49:06 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sun Oct 08 10:49:06 2017 +0200"
      },
      "message": "Merge 4.9.54 into android-4.9\n\nChanges in 4.9.54\n\tdrm_fourcc: Fix DRM_FORMAT_MOD_LINEAR #define\n\tdrm: bridge: add DT bindings for TI ths8135\n\tGFS2: Fix reference to ERR_PTR in gfs2_glock_iter_next\n\tdrm/i915: Fix the overlay frontbuffer tracking\n\tARM: dts: exynos: Add CPU OPPs for Exynos4412 Prime\n\tclk: sunxi-ng: fix PLL_CPUX adjusting on H3\n\tRDS: RDMA: Fix the composite message user notification\n\tARM: dts: r8a7790: Use R-Car Gen 2 fallback binding for msiof nodes\n\tMIPS: Ensure bss section ends on a long-aligned address\n\tMIPS: ralink: Fix a typo in the pinmux setup.\n\tMIPS: ralink: Fix incorrect assignment on ralink_soc\n\tpower: supply: axp288_fuel_gauge: Fix fuel_gauge_reg_readb return on error\n\tscsi: be2iscsi: Add checks to validate CID alloc/free\n\tARM: dts: am335x-chilisom: Wakeup from RTC-only state by power on event\n\tigb: re-assign hw address pointer on reset after PCI error\n\textcon: axp288: Use vbus-valid instead of -present to determine cable presence\n\treset: ti_syscon: fix a ti_syscon_reset_status issue\n\tsh_eth: use correct name for ECMR_MPDE bit\n\tclk/axs10x: Clear init field in driver probe\n\tusb: make the MTK XHCI driver compile for older MIPS SoCs\n\thwmon: (gl520sm) Fix overflows and crash seen when writing into limit attributes\n\tiio: adc: imx25-gcq: Fix module autoload\n\tiio: adc: axp288: Drop bogus AXP288_ADC_TS_PIN_CTRL register modifications\n\tiio: adc: hx711: Add DT binding for avia,hx711\n\tIB/rxe: Add a runtime check in alloc_index()\n\tIB/rxe: Fix a MR reference leak in check_rkey()\n\tARM: 8635/1: nommu: allow enabling REMAP_VECTORS_TO_RAM\n\tdrm/i915/psr: disable psr2 for resolution greater than 32X20\n\tserial: 8250: moxa: Store num_ports in brd\n\ttty: goldfish: Fix a parameter of a call to free_irq\n\tserial: 8250_port: Remove dangerous pr_debug()\n\tIB/ipoib: Fix deadlock over vlan_mutex\n\tIB/ipoib: rtnl_unlock can not come after free_netdev\n\tIB/ipoib: Replace list_del of the neigh-\u003elist with list_del_init\n\tarm: dts: mt2701: Add subsystem clock controller device nodes\n\tdrm/amdkfd: fix improper return value on error\n\tUSB: serial: mos7720: fix control-message error handling\n\tUSB: serial: mos7840: fix control-message error handling\n\tsfc: get PIO buffer size from the NIC\n\tpartitions/efi: Fix integer overflow in GPT size calculation\n\tASoC: dapm: handle probe deferrals\n\taudit: log 32-bit socketcalls\n\tath10k: prevent sta pointer rcu violation\n\tspi: pxa2xx: Add support for Intel Gemini Lake\n\tiommu/arm-smmu: Set privileged attribute to \u0027default\u0027 instead of \u0027unprivileged\u0027\n\tusb: chipidea: vbus event may exist before starting gadget\n\trtl8xxxu: Add additional USB IDs for rtl8192eu devices\n\tASoC: dapm: fix some pointer error handling\n\tdrm: mali-dp: Fix destination size handling when rotating\n\tdrm: mali-dp: Fix transposed horizontal/vertical flip\n\tHID: wacom: release the resources before leaving despite devm\n\tMIPS: Lantiq: Fix another request_mem_region() return code check\n\tmips: ath79: clock:- Unmap region obtained by of_iomap\n\tlkdtm: Fix Oops when unloading the module\n\tnet: core: Prevent from dereferencing null pointer when releasing SKB\n\tnet/packet: check length in getsockopt() called with PACKET_HDRLEN\n\tteam: fix memory leaks\n\tusb: plusb: Add support for PL-27A1\n\tudp: disable inner UDP checksum offloads in IPsec case\n\tnet: dsa: b53: Include IMP/CPU port in dumb forwarding mode\n\tqed: Fix possible system hang in the dcbnl-getdcbx() path.\n\tmmc: sdio: fix alignment issue in struct sdio_func\n\tbridge: netlink: register netdevice before executing changelink\n\tBtrfs: fix segmentation fault when doing dio read\n\tBtrfs: fix potential use-after-free for cloned bio\n\tsata_via: Enable hotplug only on VT6421\n\thugetlbfs: initialize shared policy as part of inode allocation\n\tkasan: do not sanitize kexec purgatory\n\tdrivers/rapidio/devices/tsi721.c: make module parameter variable name unique\n\tnetfilter: invoke synchronize_rcu after set the _hook_ to NULL\n\tMIPS: IRQ Stack: Unwind IRQ stack onto task stack\n\tiommu/exynos: Block SYSMMU while invalidating FLPD cache\n\texynos-gsc: Do not swap cb/cr for semi planar formats\n\tMIPS: smp-cps: Fix retrieval of VPE mask on big endian CPUs\n\tnvme-rdma: handle cpu unplug when re-establishing the controller\n\tnetfilter: nfnl_cthelper: fix incorrect helper-\u003eexpect_class_max\n\tparisc: perf: Fix potential NULL pointer dereference\n\tnfs: make nfs4_cb_sv_ops static\n\tibmvnic: Free tx/rx scrq pointer array when releasing sub-crqs\n\tcpufreq: intel_pstate: Update pid_params.sample_rate_ns in pid_param_set()\n\tx86/acpi: Restore the order of CPU IDs\n\tiommu/io-pgtable-arm: Check for leaf entry before dereferencing it\n\tmm/cgroup: avoid panic when init with low memory\n\trds: ib: add error handle\n\tmd/raid10: submit bio directly to replacement disk\n\tnetfilter: nf_tables: set pktinfo-\u003ethoff at AH header if found\n\ti2c: meson: fix wrong variable usage in meson_i2c_put_data\n\txfs: remove kmem_zalloc_greedy\n\tASoC: wm_adsp: Return an error on write to a disabled volatile control\n\tlibata: transport: Remove circular dependency at free time\n\tARM: dts: BCM5301X: Fix memory start address\n\ttools/power turbostat: bugfix: GFXMHz column not changing\n\tIB/qib: fix false-postive maybe-uninitialized warning\n\tARM: remove duplicate \u0027const\u0027 annotations\u0027\n\tASoC: rt5514: fix gcc-7 warning\n\tASoC: rt5659: drop double const\n\tASoC: rt5660: remove double const\n\tALSA: au88x0: avoid theoretical uninitialized access\n\tttpci: address stringop overflow warning\n\ts390/mm: make pmdp_invalidate() do invalidation only\n\tLinux 4.9.54\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "0fc89de6ee777cf48a291505164da2c5eef17311",
      "tree": "dada99a8a845adea1f83482d17eb896794df7280",
      "parents": [
        "eaf9616e406c05c30bb7366be4aae631a715c7ae"
      ],
      "author": {
        "name": "Alden Tondettar",
        "email": "alden.tondettar@gmail.com",
        "time": "Sun Jan 15 15:31:56 2017 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Oct 08 10:26:06 2017 +0200"
      },
      "message": "partitions/efi: Fix integer overflow in GPT size calculation\n\n\n[ Upstream commit c5082b70adfe8e1ea1cf4a8eff92c9f260e364d2 ]\n\nIf a GUID Partition Table claims to have more than 2**25 entries, the\ncalculation of the partition table size in alloc_read_gpt_entries() will\noverflow a 32-bit integer and not enough space will be allocated for the\ntable.\n\nNothing seems to get written out of bounds, but later efi_partition() will\nread up to 32768 bytes from a 128 byte buffer, possibly OOPSing or exposing\ninformation to /proc/partitions and uevents.\n\nThe problem exists on both 64-bit and 32-bit platforms.\n\nFix the overflow and also print a meaningful debug message if the table\nsize is too large.\n\nSigned-off-by: Alden Tondettar \u003calden.tondettar@gmail.com\u003e\nAcked-by: Ard Biesheuvel \u003card.biesheuvel@linaro.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@verizon.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "379e3b2a6d514ea9527d8eacc86eb80de4e31e05",
      "tree": "fed8ab53731ba612377881a688e85103c968afc0",
      "parents": [
        "3217cccb816110165a3d15cf6e03e0127e62741c",
        "1852eae92c460813692808234da35d142a405ab7"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Oct 05 10:37:37 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Oct 05 10:37:37 2017 +0200"
      },
      "message": "Merge 4.9.53 into android-4.9\n\nChanges in 4.9.53\n\tcifs: release cifs root_cred after exit_cifs\n\tcifs: release auth_key.response for reconnect.\n\tfs/proc: Report eip/esp in /prod/PID/stat for coredumping\n\tmac80211: fix VLAN handling with TXQs\n\tmac80211_hwsim: Use proper TX power\n\tmac80211: flush hw_roc_start work before cancelling the ROC\n\tgenirq: Make sparse_irq_lock protect what it should protect\n\tKVM: PPC: Book3S: Fix race and leak in kvm_vm_ioctl_create_spapr_tce()\n\tKVM: PPC: Book3S HV: Protect updates to spapr_tce_tables list\n\ttracing: Fix trace_pipe behavior for instance traces\n\ttracing: Erase irqsoff trace with empty write\n\tmd/raid5: fix a race condition in stripe batch\n\tmd/raid5: preserve STRIPE_ON_UNPLUG_LIST in break_stripe_batch_list\n\tscsi: scsi_transport_iscsi: fix the issue that iscsi_if_rx doesn\u0027t parse nlmsg properly\n\tdrm/radeon: disable hard reset in hibernate for APUs\n\tcrypto: drbg - fix freeing of resources\n\tcrypto: talitos - Don\u0027t provide setkey for non hmac hashing algs.\n\tcrypto: talitos - fix sha224\n\tcrypto: talitos - fix hashing\n\tsecurity/keys: properly zero out sensitive key material in big_key\n\tsecurity/keys: rewrite all of big_key crypto\n\tKEYS: fix writing past end of user-supplied buffer in keyring_read()\n\tKEYS: prevent creating a different user\u0027s keyrings\n\tKEYS: prevent KEYCTL_READ on negative key\n\tpowerpc/pseries: Fix parent_dn reference leak in add_dt_node()\n\tpowerpc/tm: Flush TM only if CPU has TM feature\n\tpowerpc/ftrace: Pass the correct stack pointer for DYNAMIC_FTRACE_WITH_REGS\n\ts390/mm: fix write access check in gup_huge_pmd()\n\tPM: core: Fix device_pm_check_callbacks()\n\tFix SMB3.1.1 guest authentication to Samba\n\tSMB3: Warn user if trying to sign connection that authenticated as guest\n\tSMB: Validate negotiate (to protect against downgrade) even if signing off\n\tSMB3: Don\u0027t ignore O_SYNC/O_DSYNC and O_DIRECT flags\n\tvfs: Return -ENXIO for negative SEEK_HOLE / SEEK_DATA offsets\n\tnl80211: check for the required netlink attributes presence\n\tbsg-lib: don\u0027t free job in bsg_prepare_job\n\tiw_cxgb4: remove the stid on listen create failure\n\tiw_cxgb4: put ep reference in pass_accept_req()\n\tselftests/seccomp: Support glibc 2.26 siginfo_t.h\n\tseccomp: fix the usage of get/put_seccomp_filter() in seccomp_get_filter()\n\tarm64: Make sure SPsel is always set\n\tarm64: fault: Route pte translation faults via do_translation_fault\n\tKVM: VMX: extract __pi_post_block\n\tKVM: VMX: avoid double list add with VT-d posted interrupts\n\tKVM: VMX: simplify and fix vmx_vcpu_pi_load\n\tkvm/x86: Handle async PF in RCU read-side critical sections\n\tKVM: VMX: Do not BUG() on out-of-bounds guest IRQ\n\tkvm: nVMX: Don\u0027t allow L2 to access the hardware CR8\n\txfs: validate bdev support for DAX inode flag\n\tetnaviv: fix gem object list corruption\n\tPCI: Fix race condition with driver_override\n\tbtrfs: fix NULL pointer dereference from free_reloc_roots()\n\tbtrfs: propagate error to btrfs_cmp_data_prepare caller\n\tbtrfs: prevent to set invalid default subvolid\n\tx86/mm: Fix fault error path using unsafe vma pointer\n\tx86/fpu: Don\u0027t let userspace set bogus xcomp_bv\n\tgfs2: Fix debugfs glocks dump\n\ttimer/sysclt: Restrict timer migration sysctl values to 0 and 1\n\tKVM: VMX: do not change SN bit in vmx_update_pi_irte()\n\tKVM: VMX: remove WARN_ON_ONCE in kvm_vcpu_trigger_posted_interrupt\n\tcxl: Fix driver use count\n\tKVM: VMX: use cmpxchg64\n\tvideo: fbdev: aty: do not leak uninitialized padding in clk to userspace\n\tswiotlb-xen: implement xen_swiotlb_dma_mmap callback\n\tLinux 4.9.53\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "eb4375e1969c48d454998b2a284c2e6a5dc9eb68",
      "tree": "9f9c9606e9b999ff7a1f06aca0a4d0af1ebaba20",
      "parents": [
        "c820441a7a52e3626aede8df94069a50a9e4efdb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Sep 07 13:54:35 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Oct 05 09:44:02 2017 +0200"
      },
      "message": "bsg-lib: don\u0027t free job in bsg_prepare_job\n\ncommit f507b54dccfd8000c517d740bc45f20c74532d18 upstream.\n\nThe job structure is allocated as part of the request, so we should not\nfree it in the error path of bsg_prepare_job.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Ming Lei \u003cming.lei@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "c30c69c76c1d065e58776792d55f73212a038d72",
      "tree": "e6723861c3c706b69a77052c9c1b292dd4b84343",
      "parents": [
        "47589a56b9062b3ef5aa439f594e0ef7cf504bbf",
        "d59dabdc4cb380b79c965af28cd4ba001f04834b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Sep 27 14:56:06 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Sep 27 14:56:06 2017 +0200"
      },
      "message": "Merge 4.9.52 into android-4.9\n\nChanges in 4.9.52\n\tSUNRPC: Refactor svc_set_num_threads()\n\tNFSv4: Fix callback server shutdown\n\tmm: prevent double decrease of nr_reserved_highatomic\n\torangefs: Don\u0027t clear SGID when inheriting ACLs\n\tIB/{qib, hfi1}: Avoid flow control testing for RDMA write operation\n\tdrm/sun4i: Implement drm_driver lastclose to restore fbdev console\n\tIB/addr: Fix setting source address in addr6_resolve()\n\ttty: improve tty_insert_flip_char() fast path\n\ttty: improve tty_insert_flip_char() slow path\n\ttty: fix __tty_insert_flip_char regression\n\tpinctrl/amd: save pin registers over suspend/resume\n\tInput: i8042 - add Gigabyte P57 to the keyboard reset table\n\tMIPS: math-emu: \u003cMAX|MAXA|MIN|MINA\u003e.\u003cD|S\u003e: Fix quiet NaN propagation\n\tMIPS: math-emu: \u003cMAX|MAXA|MIN|MINA\u003e.\u003cD|S\u003e: Fix cases of both inputs zero\n\tMIPS: math-emu: \u003cMAX|MIN\u003e.\u003cD|S\u003e: Fix cases of both inputs negative\n\tMIPS: math-emu: \u003cMAXA|MINA\u003e.\u003cD|S\u003e: Fix cases of input values with opposite signs\n\tMIPS: math-emu: \u003cMAXA|MINA\u003e.\u003cD|S\u003e: Fix cases of both infinite inputs\n\tMIPS: math-emu: MINA.\u003cD|S\u003e: Fix some cases of infinity and zero inputs\n\tMIPS: math-emu: Handle zero accumulator case in MADDF and MSUBF separately\n\tMIPS: math-emu: \u003cMADDF|MSUBF\u003e.\u003cD|S\u003e: Fix NaN propagation\n\tMIPS: math-emu: \u003cMADDF|MSUBF\u003e.\u003cD|S\u003e: Fix some cases of infinite inputs\n\tMIPS: math-emu: \u003cMADDF|MSUBF\u003e.\u003cD|S\u003e: Fix some cases of zero inputs\n\tMIPS: math-emu: \u003cMADDF|MSUBF\u003e.\u003cD|S\u003e: Clean up \"maddf_flags\" enumeration\n\tMIPS: math-emu: \u003cMADDF|MSUBF\u003e.S: Fix accuracy (32-bit case)\n\tMIPS: math-emu: \u003cMADDF|MSUBF\u003e.D: Fix accuracy (64-bit case)\n\tcrypto: ccp - Fix XTS-AES-128 support on v5 CCPs\n\tcrypto: AF_ALG - remove SGL terminator indicator when chaining\n\text4: fix incorrect quotaoff if the quota feature is enabled\n\text4: fix quota inconsistency during orphan cleanup for read-only mounts\n\tpowerpc: Fix DAR reporting when alignment handler faults\n\tblock: Relax a check in blk_start_queue()\n\tmd/bitmap: disable bitmap_resize for file-backed bitmaps.\n\tskd: Avoid that module unloading triggers a use-after-free\n\tskd: Submit requests to firmware before triggering the doorbell\n\tscsi: zfcp: fix queuecommand for scsi_eh commands when DIX enabled\n\tscsi: zfcp: add handling for FCP_RESID_OVER to the fcp ingress path\n\tscsi: zfcp: fix capping of unsuccessful GPN_FT SAN response trace records\n\tscsi: zfcp: fix passing fsf_req to SCSI trace on TMF to correlate with HBA\n\tscsi: zfcp: fix missing trace records for early returns in TMF eh handlers\n\tscsi: zfcp: fix payload with full FCP_RSP IU in SCSI trace records\n\tscsi: zfcp: trace HBA FSF response by default on dismiss or timedout late response\n\tscsi: zfcp: trace high part of \"new\" 64 bit SCSI LUN\n\tscsi: megaraid_sas: set minimum value of resetwaittime to be 1 secs\n\tscsi: megaraid_sas: Check valid aen class range to avoid kernel panic\n\tscsi: megaraid_sas: Return pended IOCTLs with cmd_status MFI_STAT_WRONG_STATE in case adapter is dead\n\tscsi: storvsc: fix memory leak on ring buffer busy\n\tscsi: sg: remove \u0027save_scat_len\u0027\n\tscsi: sg: use standard lists for sg_requests\n\tscsi: sg: off by one in sg_ioctl()\n\tscsi: sg: factor out sg_fill_request_table()\n\tscsi: sg: fixup infoleak when using SG_GET_REQUEST_TABLE\n\tscsi: qla2xxx: Correction to vha-\u003evref_count timeout\n\tscsi: qla2xxx: Fix an integer overflow in sysfs code\n\tftrace: Fix selftest goto location on error\n\tftrace: Fix memleak when unregistering dynamic ops when tracing disabled\n\ttracing: Add barrier to trace_printk() buffer nesting modification\n\ttracing: Apply trace_clock changes to instance max buffer\n\tARC: Re-enable MMU upon Machine Check exception\n\tPCI: shpchp: Enable bridge bus mastering if MSI is enabled\n\tPCI: pciehp: Report power fault only once until we clear it\n\tnet/netfilter/nf_conntrack_core: Fix net_conntrack_lock()\n\ts390/mm: fix local TLB flushing vs. detach of an mm address space\n\ts390/mm: fix race on mm-\u003econtext.flush_mm\n\tmedia: v4l2-compat-ioctl32: Fix timespec conversion\n\tmedia: uvcvideo: Prevent heap overflow when accessing mapped controls\n\tPM / devfreq: Fix memory leak when fail to register device\n\tbcache: initialize dirty stripes in flash_dev_run()\n\tbcache: Fix leak of bdev reference\n\tbcache: do not subtract sectors_to_gc for bypassed IO\n\tbcache: correct cache_dirty_target in __update_writeback_rate()\n\tbcache: Correct return value for sysfs attach errors\n\tbcache: fix for gc and write-back race\n\tbcache: fix bch_hprint crash and improve output\n\tLinux 4.9.52\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "120ec1e4cdddfc16c31581c2c30511c6c16fe0fd",
      "tree": "7440d43976c894e121f5df99333934e7dde276c1",
      "parents": [
        "48564b51ac75d81f3f3b584fab8c3be44c7248a8"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bart.vanassche@wdc.com",
        "time": "Thu Aug 17 13:12:44 2017 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Sep 27 14:39:21 2017 +0200"
      },
      "message": "block: Relax a check in blk_start_queue()\n\ncommit 4ddd56b003f251091a67c15ae3fe4a5c5c5e390a upstream.\n\nCalling blk_start_queue() from interrupt context with the queue\nlock held and without disabling IRQs, as the skd driver does, is\nsafe. This patch avoids that loading the skd driver triggers the\nfollowing warning:\n\nWARNING: CPU: 11 PID: 1348 at block/blk-core.c:283 blk_start_queue+0x84/0xa0\nRIP: 0010:blk_start_queue+0x84/0xa0\nCall Trace:\n skd_unquiesce_dev+0x12a/0x1d0 [skd]\n skd_complete_internal+0x1e7/0x5a0 [skd]\n skd_complete_other+0xc2/0xd0 [skd]\n skd_isr_completion_posted.isra.30+0x2a5/0x470 [skd]\n skd_isr+0x14f/0x180 [skd]\n irq_forced_thread_fn+0x2a/0x70\n irq_thread+0x144/0x1a0\n kthread+0x125/0x140\n ret_from_fork+0x2a/0x40\n\nFixes: commit a038e2536472 (\"[PATCH] blk_start_queue() must be called with irq disabled - add warning\")\nSigned-off-by: Bart Van Assche \u003cbart.vanassche@wdc.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Hannes Reinecke \u003chare@suse.de\u003e\nCc: Johannes Thumshirn \u003cjthumshirn@suse.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "5731c30334900957a351c39af33f1059e02fc1dd",
      "tree": "96bdda559c89f13a331daa52cdbd45cd435cb1ca",
      "parents": [
        "bf7ef8f2d57cd1f5f1846dd58ff9309efad58252",
        "4b904b22bc906d5867933b8132ae4d7f31d7645d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Aug 29 14:51:49 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Aug 29 14:51:49 2017 +0200"
      },
      "message": "Merge 4.9.45 into android-4.9\n\nChanges in 4.9.45\n\tnetfilter: nf_ct_ext: fix possible panic after nf_ct_extend_unregister\n\taudit: Fix use after free in audit_remove_watch_rule()\n\tparisc: pci memory bar assignment fails with 64bit kernels on dino/cujo\n\tcrypto: ixp4xx - Fix error handling path in \u0027aead_perform()\u0027\n\tcrypto: x86/sha1 - Fix reads beyond the number of blocks passed\n\tInput: elan_i2c - add ELAN0608 to the ACPI table\n\tInput: elan_i2c - Add antoher Lenovo ACPI ID for upcoming Lenovo NB\n\tALSA: seq: 2nd attempt at fixing race creating a queue\n\tALSA: usb-audio: Apply sample rate quirk to Sennheiser headset\n\tALSA: usb-audio: Add mute TLV for playback volumes on C-Media devices\n\tmm: discard memblock data later\n\tmm: fix double mmap_sem unlock on MMF_UNSTABLE enforced SIGBUS\n\tmm/mempolicy: fix use after free when calling get_mempolicy\n\tmm: revert x86_64 and arm64 ELF_ET_DYN_BASE base changes\n\txen: fix bio vec merging\n\tblk-mq-pci: add a fallback when pci_irq_get_affinity returns NULL\n\tpowerpc: Fix VSX enabling/flushing to also test MSR_FP and MSR_VEC\n\txen-blkfront: use a right index when checking requests\n\tx86/asm/64: Clear AC on NMI entries\n\tirqchip/atmel-aic: Fix unbalanced of_node_put() in aic_common_irq_fixup()\n\tirqchip/atmel-aic: Fix unbalanced refcount in aic_common_rtc_irq_fixup()\n\tgenirq: Restore trigger settings in irq_modify_status()\n\tgenirq/ipi: Fixup checks against nr_cpu_ids\n\tSanitize \u0027move_pages()\u0027 permission checks\n\tpids: make task_tgid_nr_ns() safe\n\tusb: optimize acpi companion search for usb port devices\n\tusb: qmi_wwan: add D-Link DWM-222 device ID\n\tLinux 4.9.45\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "d8c20af0085898f9c818dd599b0afb0d0c99dab2",
      "tree": "85981b663d364fea5fbf7f9cba9cecdf0e6abd35",
      "parents": [
        "6c7f3756d072050d612e5c5c04108f90f1985435"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Aug 17 12:24:47 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Aug 24 17:12:20 2017 -0700"
      },
      "message": "blk-mq-pci: add a fallback when pci_irq_get_affinity returns NULL\n\ncommit c005390374957baacbc38eef96ea360559510aa7 upstream.\n\nWhile pci_irq_get_affinity should never fail for SMP kernel that\nimplement the affinity mapping, it will always return NULL in the\nUP case, so provide a fallback mapping of all queues to CPU 0 in\nthat case.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Omar Sandoval \u003cosandov@fb.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "0d21cf1656bd9bdaa6a4974df67cacdc7caf575d",
      "tree": "24d2800dcc9432bcdfca63e1f1d880e6844ba6f4",
      "parents": [
        "a26cd8eba6b580b15f27193637519b33b08e05ea",
        "050639ef5810e8ad17fb6a426eff3c63e616350c"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Jun 27 10:43:04 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Jun 27 10:43:04 2017 +0200"
      },
      "message": "Merge 4.9.33 into android-4.9\n\nChanges in 4.9.33\n\tPCI/PM: Add needs_resume flag to avoid suspend complete optimization\n\tdrm/i915: Prevent the system suspend complete optimization\n\tpartitions/msdos: FreeBSD UFS2 file systems are not recognized\n\tnetfilter: nf_conntrack_sip: fix wrong memory initialisation\n\tibmvnic: Fix endian errors in error reporting output\n\tibmvnic: Fix endian error when requesting device capabilities\n\tnet: xilinx_emaclite: fix freezes due to unordered I/O\n\tnet: xilinx_emaclite: fix receive buffer overflow\n\ttcp: tcp_probe: use spin_lock_bh()\n\tipv6: Handle IPv4-mapped src to in6addr_any dst.\n\tipv6: Inhibit IPv4-mapped src address on the wire.\n\ttipc: Fix tipc_sk_reinit race conditions\n\tgfs2: Use rhashtable walk interface in glock_hash_walk\n\tNET: Fix /proc/net/arp for AX.25\n\tibmvnic: Call napi_disable instead of napi_enable in failure path\n\tibmvnic: Initialize completion variables before starting work\n\tNET: mkiss: Fix panic\n\tnet: hns: Fix the device being used for dma mapping during TX\n\tsierra_net: Skip validating irrelevant fields for IDLE LSIs\n\tsierra_net: Add support for IPv6 and Dual-Stack Link Sense Indications\n\ti2c: piix4: Request the SMBUS semaphore inside the mutex\n\ti2c: piix4: Fix request_region size\n\tpowerpc/powernv: Properly set \"host-ipi\" on IPIs\n\tkernel/ucount.c: mark user_header with kmemleak_ignore()\n\tnet: thunderx: Fix PHY autoneg for SGMII QLM mode\n\tipv6: addrconf: fix generation of new temporary addresses\n\tvfio/spapr_tce: Set window when adding additional groups to container\n\tipv6: Fix IPv6 packet loss in scenarios involving roaming + snooping switches\n\tARM: defconfigs: make NF_CT_PROTO_SCTP and NF_CT_PROTO_UDPLITE built-in\n\tPM / runtime: Avoid false-positive warnings from might_sleep_if()\n\tjump label: pass kbuild_cflags when checking for asm goto support\n\tshmem: fix sleeping from atomic context\n\tkasan: respect /proc/sys/kernel/traceoff_on_warning\n\tlog2: make order_base_2() behave correctly on const input value zero\n\tethtool: do not vzalloc(0) on registers dump\n\tnet: phy: Fix lack of reference count on PHY driver\n\tnet: phy: Fix PHY module checks and NULL deref in phy_attach_direct()\n\tnet: fix ndo_features_check/ndo_fix_features comment ordering\n\tfscache: Fix dead object requeue\n\tfscache: Clear outstanding writes when disabling a cookie\n\tFS-Cache: Initialise stores_lock in netfs cookie\n\tipv6: fix flow labels when the traffic class is non-0\n\tdrm/nouveau: prevent userspace from deleting client object\n\tdrm/nouveau/fence/g84-: protect against concurrent access to semaphore buffers\n\tnet/mlx4_core: Avoid command timeouts during VF driver device shutdown\n\tgianfar: synchronize DMA API usage by free_skb_rx_queue w/ gfar_new_page\n\tpinctrl: baytrail: Rectify debounce support (part 2)\n\tcec: fix wrong last_la determination\n\tdrm: prevent double-(un)registration for connectors\n\tdrm: Don\u0027t race connector registration\n\tpinctrl: berlin-bg4ct: fix the value for \"sd1a\" of pin SCRD0_CRD_PRES\n\tnet: adaptec: starfire: add checks for dma mapping errors\n\tdrm/i915: Check for NULL i915_vma in intel_unpin_fb_obj()\n\tnet/mlx5: E-Switch, Err when retrieving steering name-space fails\n\tnet/mlx5: Return EOPNOTSUPP when failing to get steering name-space\n\tparisc, parport_gsc: Fixes for printk continuation lines\n\tnet: phy: micrel: add support for KSZ8795\n\tgtp: add genl family modules alias\n\tdrm/nouveau: Intercept ACPI_VIDEO_NOTIFY_PROBE\n\tdrm/nouveau: Rename acpi_work to hpd_work\n\tdrm/nouveau: Handle fbcon suspend/resume in seperate worker\n\tdrm/nouveau: Don\u0027t enabling polling twice on runtime resume\n\tdrm/nouveau: Fix drm poll_helper handling\n\tdrm/ast: Fixed system hanged if disable P2A\n\travb: unmap descriptors when freeing rings\n\tnfs: Fix \"Don\u0027t increment lock sequence ID after NFS4ERR_MOVED\"\n\tnvmet-rdma: Fix missing dma sync to nvme data structures\n\tr8152: avoid start_xmit to call napi_schedule during autosuspend\n\tr8152: check rx after napi is enabled\n\tr8152: re-schedule napi for tx\n\tr8152: fix rtl8152_post_reset function\n\tr8152: avoid start_xmit to schedule napi when napi is disabled\n\tnet-next: ethernet: mediatek: change the compatible string\n\tbnxt_en: Fix bnxt_reset() in the slow path task.\n\tbnxt_en: Enhance autoneg support.\n\tbnxt_en: Fix RTNL lock usage on bnxt_update_link().\n\tbnxt_en: Fix RTNL lock usage on bnxt_get_port_module_status().\n\tsctp: sctp gso should set feature with NETIF_F_SG when calling skb_segment\n\tsctp: sctp_addr_id2transport should verify the addr before looking up assoc\n\tusb: musb: Fix external abort on non-linefetch for musb_irq_work()\n\tmn10300: fix build error of missing fpu_save()\n\tromfs: use different way to generate fsid for BLOCK or MTD\n\tfrv: add atomic64_add_unless()\n\tfrv: add missing atomic64 operations\n\tproc: add a schedule point in proc_pid_readdir()\n\tuserfaultfd: fix SIGBUS resulting from false rwsem wakeups\n\tkernel/watchdog.c: move hardlockup detector to separate file\n\tkernel/watchdog.c: move shared definitions to nmi.h\n\tkernel/watchdog: prevent false hardlockup on overloaded system\n\tvhost/vsock: handle vhost_vq_init_access() error\n\tARC: smp-boot: Decouple Non masters waiting API from jump to entry point\n\tARCv2: smp-boot: wake_flag polling by non-Masters needs to be uncached\n\ttipc: ignore requests when the connection state is not CONNECTED\n\ttipc: fix connection refcount error\n\ttipc: add subscription refcount to avoid invalid delete\n\ttipc: fix nametbl_lock soft lockup at node/link events\n\tnetfilter: nf_tables: fix set-\u003enelems counting with no NLM_F_EXCL\n\tnetfilter: nft_log: restrict the log prefix length to 127\n\tRDMA/qedr: Dispatch port active event from qedr_add\n\tRDMA/qedr: Fix and simplify memory leak in PD alloc\n\tRDMA/qedr: Don\u0027t reset QP when queues aren\u0027t flushed\n\tRDMA/qedr: Don\u0027t spam dmesg if QP is in error state\n\tRDMA/qedr: Return max inline data in QP query result\n\txtensa: don\u0027t use linux IRQ #0\n\ts390/kvm: do not rely on the ILC on kvm host protection fauls\n\tdrm/i915: Workaround VLV/CHV DSI scanline counter hardware fail\n\tdrm/i915: Always recompute watermarks when distrust_bios_wm is set, v2.\n\tsparc64: make string buffers large enough\n\tLinux 4.9.33\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "220b67a16fde7187fae7efcc6809d658e4c49525",
      "tree": "ed04596369ee036dfcbfbc1417e354564e56c271",
      "parents": [
        "7a7b2d5f65a7a12c4f5d43fb10913ca908102833"
      ],
      "author": {
        "name": "Richard",
        "email": "richard@aaazen.com",
        "time": "Sun May 21 12:27:00 2017 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Jun 17 06:41:49 2017 +0200"
      },
      "message": "partitions/msdos: FreeBSD UFS2 file systems are not recognized\n\ncommit 223220356d5ebc05ead9a8d697abb0c0a906fc81 upstream.\n\nThe code in block/partitions/msdos.c recognizes FreeBSD, OpenBSD\nand NetBSD partitions and does a reasonable job picking out OpenBSD\nand NetBSD UFS subpartitions.\n\nBut for FreeBSD the subpartitions are always \"bad\".\n\n    Kernel: \u003cbsd:bad subpartition - ignored\n\nThough all 3 of these BSD systems use UFS as a file system, only\nFreeBSD uses relative start addresses in the subpartition\ndeclarations.\n\nThe following patch fixes this for FreeBSD partitions and leaves\nthe code for OpenBSD and NetBSD intact:\n\nSigned-off-by: Richard Narron \u003ccomet.berkeley@gmail.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "da3493c028e7d91d7fb5724f4fd9266f77a101f5",
      "tree": "ce417adc6d973cdaf17eb7a34a85706f659d62c5",
      "parents": [
        "7eed46b1d5bc6b45ad829f90bfde96616e9fa9f0",
        "05afd4c0af6a43f6bda7caaacb01bc0116d50d3b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Jun 14 16:42:56 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Wed Jun 14 16:42:56 2017 +0200"
      },
      "message": "Merge 4.9.32 into android-4.9\n\nChanges in 4.9.32\n\tbnx2x: Fix Multi-Cos\n\tvxlan: eliminate cached dst leak\n\tipv6: xfrm: Handle errors reported by xfrm6_find_1stfragopt()\n\tcxgb4: avoid enabling napi twice to the same queue\n\ttcp: disallow cwnd undo when switching congestion control\n\tvxlan: fix use-after-free on deletion\n\tipv6: Fix leak in ipv6_gso_segment().\n\tnet: ping: do not abuse udp_poll()\n\tnet/ipv6: Fix CALIPSO causing GPF with datagram support\n\tnet: ethoc: enable NAPI before poll may be scheduled\n\tnet: stmmac: fix completely hung TX when using TSO\n\tnet: bridge: start hello timer only if device is up\n\tsparc64: Add __multi3 for gcc 7.x and later.\n\tsparc64: mm: fix copy_tsb to correctly copy huge page TSBs\n\tsparc: Machine description indices can vary\n\tsparc64: reset mm cpumask after wrap\n\tsparc64: combine activate_mm and switch_mm\n\tsparc64: redefine first version\n\tsparc64: add per-cpu mm of secondary contexts\n\tsparc64: new context wrap\n\tsparc64: delete old wrap code\n\tarch/sparc: support NR_CPUS \u003d 4096\n\tserial: ifx6x60: fix use-after-free on module unload\n\tptrace: Properly initialize ptracer_cred on fork\n\tcrypto: asymmetric_keys - handle EBUSY due to backlog correctly\n\tKEYS: fix dereferencing NULL payload with nonzero length\n\tKEYS: fix freeing uninitialized memory in key_update()\n\tKEYS: encrypted: avoid encrypting/decrypting stack buffers\n\tcrypto: drbg - wait for crypto op not signal safe\n\tcrypto: gcm - wait for crypto op not signal safe\n\tdrm/amdgpu/ci: disable mclk switching for high refresh rates (v2)\n\tnfsd4: fix null dereference on replay\n\tnfsd: Fix up the \"supattr_exclcreat\" attributes\n\tefi: Don\u0027t issue error message when booted under Xen\n\tkvm: async_pf: fix rcu_irq_enter() with irqs enabled\n\tKVM: cpuid: Fix read/write out-of-bounds vulnerability in cpuid emulation\n\tarm64: KVM: Preserve RES1 bits in SCTLR_EL2\n\tarm64: KVM: Allow unaligned accesses at EL2\n\tarm: KVM: Allow unaligned accesses at HYP\n\tKVM: async_pf: avoid async pf injection when in guest mode\n\tKVM: arm/arm64: vgic-v3: Do not use Active+Pending state for a HW interrupt\n\tKVM: arm/arm64: vgic-v2: Do not use Active+Pending state for a HW interrupt\n\tdmaengine: usb-dmac: Fix DMAOR AE bit definition\n\tdmaengine: ep93xx: Always start from BASE0\n\tdmaengine: ep93xx: Don\u0027t drain the transfers in terminate_all()\n\tdmaengine: mv_xor_v2: handle mv_xor_v2_prep_sw_desc() error properly\n\tdmaengine: mv_xor_v2: properly handle wrapping in the array of HW descriptors\n\tdmaengine: mv_xor_v2: do not use descriptors not acked by async_tx\n\tdmaengine: mv_xor_v2: enable XOR engine after its configuration\n\tdmaengine: mv_xor_v2: fix tx_submit() implementation\n\tdmaengine: mv_xor_v2: remove interrupt coalescing\n\tdmaengine: mv_xor_v2: set DMA mask to 40 bits\n\tcfq-iosched: fix the delay of cfq_group\u0027s vdisktime under iops mode\n\txen/privcmd: Support correctly 64KB page granularity when mapping memory\n\text4: fix SEEK_HOLE\n\text4: keep existing extra fields when inode expands\n\text4: fix data corruption with EXT4_GET_BLOCKS_ZERO\n\text4: fix fdatasync(2) after extent manipulation operations\n\tdrm: Fix oops + Xserver hang when unplugging USB drm devices\n\tusb: gadget: f_mass_storage: Serialize wake and sleep execution\n\tusb: chipidea: udc: fix NULL pointer dereference if udc_start failed\n\tusb: chipidea: debug: check before accessing ci_role\n\tstaging/lustre/lov: remove set_fs() call from lov_getstripe()\n\tiio: adc: bcm_iproc_adc: swap primary and secondary isr handler\u0027s\n\tiio: light: ltr501 Fix interchanged als/ps register field\n\tiio: proximity: as3935: fix AS3935_INT mask\n\tiio: proximity: as3935: fix iio_trigger_poll issue\n\tmei: make sysfs modalias format similar as uevent modalias\n\tcpufreq: cpufreq_register_driver() should return -ENODEV if init fails\n\ttarget: Re-add check to reject control WRITEs with overflow data\n\tdrm/msm: Expose our reservation object when exporting a dmabuf.\n\tahci: Acer SA5-271 SSD Not Detected Fix\n\tcgroup: Prevent kill_css() from being called more than once\n\tInput: elantech - add Fujitsu Lifebook E546/E557 to force crc_enabled\n\tcpuset: consider dying css as offline\n\tfs: add i_blocksize()\n\tufs: restore proper tail allocation\n\tfix ufs_isblockset()\n\tufs: restore maintaining -\u003ei_blocks\n\tufs: set correct -\u003es_maxsize\n\tufs_extend_tail(): fix the braino in calling conventions of ufs_new_fragments()\n\tufs_getfrag_block(): we only grab -\u003etruncate_mutex on block creation path\n\tcxl: Fix error path on bad ioctl\n\tcxl: Avoid double free_irq() for psl,slice interrupts\n\tbtrfs: use correct types for page indices in btrfs_page_exists_in_range\n\tbtrfs: fix memory leak in update_space_info failure path\n\tKVM: arm/arm64: Handle possible NULL stage2 pud when ageing pages\n\tscsi: qla2xxx: don\u0027t disable a not previously enabled PCI device\n\tscsi: qla2xxx: Modify T262 FW dump template to specify same start/end to debug customer issues\n\tscsi: qla2xxx: Set bit 15 for DIAG_ECHO_TEST MBC\n\tscsi: qla2xxx: Fix mailbox pointer error in fwdump capture\n\tpowerpc/sysdev/simple_gpio: Fix oops in gpio save_regs function\n\tpowerpc/numa: Fix percpu allocations to be NUMA aware\n\tpowerpc/hotplug-mem: Fix missing endian conversion of aa_index\n\tpowerpc/kernel: Fix FP and vector register restoration\n\tpowerpc/kernel: Initialize load_tm on task creation\n\tperf/core: Drop kernel samples even though :u is specified\n\tdrm/vmwgfx: Handle vmalloc() failure in vmw_local_fifo_reserve()\n\tdrm/vmwgfx: limit the number of mip levels in vmw_gb_surface_define_ioctl()\n\tdrm/vmwgfx: Make sure backup_handle is always valid\n\tdrm/nouveau/tmr: fully separate alarm execution/pending lists\n\tALSA: timer: Fix race between read and ioctl\n\tALSA: timer: Fix missing queue indices reset at SNDRV_TIMER_IOCTL_SELECT\n\tASoC: Fix use-after-free at card unregistration\n\tcpu/hotplug: Drop the device lock on error\n\tdrivers: char: mem: Fix wraparound check to allow mappings up to the end\n\tserial: sh-sci: Fix panic when serial console and DMA are enabled\n\tarm64: traps: fix userspace cache maintenance emulation on a tagged pointer\n\tarm64: hw_breakpoint: fix watchpoint matching for tagged pointers\n\tarm64: entry: improve data abort handling of tagged pointers\n\tARM: 8636/1: Cleanup sanity_check_meminfo\n\tARM: 8637/1: Adjust memory boundaries after reservations\n\tusercopy: Adjust tests to deal with SMAP/PAN\n\tdrm/i915/vbt: don\u0027t propagate errors from intel_bios_init()\n\tdrm/i915/vbt: split out defaults that are set when there is no VBT\n\tcpufreq: schedutil: move cached_raw_freq to struct sugov_policy\n\tcpufreq: schedutil: Fix per-CPU structure initialization in sugov_start()\n\tnetfilter: nft_set_rbtree: handle element re-addition after deletion\n\tLinux 4.9.32\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "08229c119c426fc8666f1dc2822a8c38fc77fa6a",
      "tree": "7500477a188169236f92b1b67f604f8f5ad9319a",
      "parents": [
        "1f67d28d2707dc1da24c7f94b0a80721ea89abac"
      ],
      "author": {
        "name": "Hou Tao",
        "email": "houtao1@huawei.com",
        "time": "Wed Mar 01 09:02:33 2017 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jun 14 15:05:58 2017 +0200"
      },
      "message": "cfq-iosched: fix the delay of cfq_group\u0027s vdisktime under iops mode\n\ncommit 5be6b75610cefd1e21b98a218211922c2feb6e08 upstream.\n\nWhen adding a cfq_group into the cfq service tree, we use CFQ_IDLE_DELAY\nas the delay of cfq_group\u0027s vdisktime if there have been other cfq_groups\nalready.\n\nWhen cfq is under iops mode, commit 9a7f38c42c2b (\"cfq-iosched: Convert\nfrom jiffies to nanoseconds\") could result in a large iops delay and\nlead to an abnormal io schedule delay for the added cfq_group. To fix\nit, we just need to revert to the old CFQ_IDLE_DELAY value: HZ / 5\nwhen iops mode is enabled.\n\nDespite having the same value, the delay of a cfq_queue in idle class\nand the delay of cfq_group are different things, so I define two new\nmacros for the delay of a cfq_group under time-slice mode and iops mode.\n\nFixes: 9a7f38c42c2b (\"cfq-iosched: Convert from jiffies to nanoseconds\")\nSigned-off-by: Hou Tao \u003choutao1@huawei.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "33c4c2a6d1e50c546c11643804051da08248dd7d",
      "tree": "84cbb8c56f3249568c42ca3ccbccb050f27e9b70",
      "parents": [
        "a56a105ea76353249a44315cc542d1a1cb56e0f7",
        "f5eea276d8de10a32e68721707ae8f2fdfaa0960"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sun May 21 21:03:59 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sun May 21 21:03:59 2017 +0200"
      },
      "message": "Merge 4.9.29 into android-4.9\n\nChanges in 4.9.29\n\txen: adjust early dom0 p2m handling to xen hypervisor behavior\n\ttarget: Fix compare_and_write_callback handling for non GOOD status\n\ttarget/fileio: Fix zero-length READ and WRITE handling\n\tiscsi-target: Set session_fall_back_to_erl0 when forcing reinstatement\n\tusb: xhci: bInterval quirk for TI TUSB73x0\n\tusb: host: xhci: print correct command ring address\n\tUSB: serial: ftdi_sio: add device ID for Microsemi/Arrow SF2PLUS Dev Kit\n\tUSB: Proper handling of Race Condition when two USB class drivers try to call init_usb_class simultaneously\n\tUSB: Revert \"cdc-wdm: fix \"out-of-sync\" due to missing notifications\"\n\tstaging: vt6656: use off stack for in buffer USB transfers.\n\tstaging: vt6656: use off stack for out buffer USB transfers.\n\tstaging: gdm724x: gdm_mux: fix use-after-free on module unload\n\tstaging: comedi: jr3_pci: fix possible null pointer dereference\n\tstaging: comedi: jr3_pci: cope with jiffies wraparound\n\tusb: misc: add missing continue in switch\n\tusb: gadget: legacy gadgets are optional\n\tusb: Make sure usb/phy/of gets built-in\n\tusb: hub: Fix error loop seen after hub communication errors\n\tusb: hub: Do not attempt to autosuspend disconnected devices\n\tx86/boot: Fix BSS corruption/overwrite bug in early x86 kernel startup\n\tselftests/x86/ldt_gdt_32: Work around a glibc sigaction() bug\n\tx86, pmem: Fix cache flushing for iovec write \u003c 8 bytes\n\tum: Fix PTRACE_POKEUSER on x86_64\n\tperf/x86: Fix Broadwell-EP DRAM RAPL events\n\tKVM: x86: fix user triggerable warning in kvm_apic_accept_events()\n\tKVM: arm/arm64: fix races in kvm_psci_vcpu_on\n\tarm64: KVM: Fix decoding of Rt/Rt2 when trapping AArch32 CP accesses\n\tblock: fix blk_integrity_register to use template\u0027s interval_exp if not 0\n\tcrypto: algif_aead - Require setkey before accept(2)\n\tcrypto: ccp - Use only the relevant interrupt bits\n\tcrypto: ccp - Disable interrupts early on unload\n\tcrypto: ccp - Change ISR handler method for a v3 CCP\n\tcrypto: ccp - Change ISR handler method for a v5 CCP\n\tdm era: save spacemap metadata root after the pre-commit\n\tdm rq: check blk_mq_register_dev() return value in dm_mq_init_request_queue()\n\tdm thin: fix a memory leak when passing discard bio down\n\tvfio/type1: Remove locked page accounting workqueue\n\tiov_iter: don\u0027t revert iov buffer if csum error\n\tIB/core: Fix sysfs registration error flow\n\tIB/core: For multicast functions, verify that LIDs are multicast LIDs\n\tIB/IPoIB: ibX: failed to create mcg debug file\n\tIB/mlx4: Fix ib device initialization error flow\n\tIB/mlx4: Reduce SRIOV multicast cleanup warning message to debug level\n\tIB/hfi1: Prevent kernel QP post send hard lockups\n\tperf auxtrace: Fix no_size logic in addr_filter__resolve_kernel_syms()\n\text4: evict inline data when writing to memory map\n\torangefs: fix bounds check for listxattr\n\torangefs: clean up oversize xattr validation\n\torangefs: do not set getattr_time on orangefs_lookup\n\torangefs: do not check possibly stale size on truncate\n\tfs/xattr.c: zero out memory copied to userspace in getxattr\n\tceph: fix memory leak in __ceph_setxattr()\n\tfs/block_dev: always invalidate cleancache in invalidate_bdev()\n\tmm: prevent potential recursive reclaim due to clearing PF_MEMALLOC\n\tFix match_prepath()\n\tSet unicode flag on cifs echo request to avoid Mac error\n\tSMB3: Work around mount failure when using SMB3 dialect to Macs\n\tCIFS: fix mapping of SFM_SPACE and SFM_PERIOD\n\tcifs: fix leak in FSCTL_ENUM_SNAPS response handling\n\tcifs: fix CIFS_ENUMERATE_SNAPSHOTS oops\n\tCIFS: fix oplock break deadlocks\n\tcifs: fix CIFS_IOC_GET_MNT_INFO oops\n\tCIFS: add misssing SFM mapping for doublequote\n\tpadata: free correct variable\n\tdevice-dax: fix cdev leak\n\tfscrypt: fix context consistency check when key(s) unavailable\n\tserial: samsung: Use right device for DMA-mapping calls\n\tserial: omap: fix runtime-pm handling on unbind\n\tserial: omap: suspend device on probe errors\n\ttty: pty: Fix ldisc flush after userspace become aware of the data already\n\tBluetooth: Fix user channel for 32bit userspace on 64bit kernel\n\tBluetooth: hci_bcm: add missing tty-device sanity check\n\tBluetooth: hci_intel: add missing tty-device sanity check\n\tipmi: Fix kernel panic at ipmi_ssif_thread()\n\tlibnvdimm, region: fix flush hint detection crash\n\tlibnvdimm, pmem: fix a NULL pointer BUG in nd_pmem_notify\n\tlibnvdimm, pfn: fix \u0027npfns\u0027 vs section alignment\n\tpstore: Fix flags to enable dumps on powerpc\n\tpstore: Shut down worker when unregistering\n\tLinux 4.9.29\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "9b2fb8ad5ba1b528e2f2927898403b0df40fd09b",
      "tree": "88963dbafe4f8abc1dba43db81d5a370d1aa5a10",
      "parents": [
        "884ba252f3f16c577d7e5f6996c3e73a834b19fe"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Sat Apr 22 17:22:09 2017 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat May 20 14:28:36 2017 +0200"
      },
      "message": "block: fix blk_integrity_register to use template\u0027s interval_exp if not 0\n\ncommit 2859323e35ab5fc42f351fbda23ab544eaa85945 upstream.\n\nWhen registering an integrity profile: if the template\u0027s interval_exp is\nnot 0 use it, otherwise use the ilog2() of logical block size of the\nprovided gendisk.\n\nThis fixes a long-standing DM linear target bug where it cannot pass\nintegrity data to the underlying device if its logical block size\nconflicts with the underlying device\u0027s logical block size.\n\nReported-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nAcked-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "a745b345b714b3c1399fdae3412e708d3db9cb41",
      "tree": "eaae5dcaff79ee5be57bae39668488183d77c957",
      "parents": [
        "99c809676f6c895a5a97bf37d7c412bc9919710d",
        "58cd97ff374b7c6c39c9a78595a5eb75a56a08ac"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Mon May 15 09:26:49 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Mon May 15 09:26:49 2017 +0200"
      },
      "message": "Merge 4.9.28 into android-4.9\n\nChanges in 4.9.28\n\t9p: fix a potential acl leak\n\tdrm/sti: fix GDP size to support up to UHD resolution\n\thwmon: (it87) Fix pwm4 detection for IT8620 and IT8628\n\ttpm: fix RC value check in tpm2_seal_trusted\n\ttmp: use pdev for parent device in tpm_chip_alloc\n\tcrypto: caam - fix error path for ctx_dma mapping failure\n\tpower: supply: lp8788: prevent out of bounds array access\n\tcpupower: Fix turbo frequency reporting for pre-Sandy Bridge cores\n\tpowerpc/mm: Fixup wrong LPCR_VRMASD value\n\tpowerpc/powernv: Fix opal_exit tracepoint opcode\n\tpowerpc/ftrace: Fix confusing help text for DISABLE_MPROFILE_KERNEL\n\tpowerpc: Correctly disable latent entropy GCC plugin on prom_init.o\n\tperf/x86/intel/pt: Add format strings for PTWRITE and power event tracing\n\tpower: supply: bq24190_charger: Fix irq trigger to IRQF_TRIGGER_FALLING\n\tpower: supply: bq24190_charger: Call set_mode_host() on pm_resume()\n\tpower: supply: bq24190_charger: Install irq_handler_thread() at end of probe()\n\tpower: supply: bq24190_charger: Call power_supply_changed() for relevant component\n\tpower: supply: bq24190_charger: Don\u0027t read fault register outside irq_handle_thread()\n\tpower: supply: bq24190_charger: Handle fault before status on interrupt\n\tarm64: dts: r8a7795: Mark EthernetAVB device node disabled\n\tarm: dts: qcom: Fix ipq board clock rates\n\tarm64: Improve detection of user/non-user mappings in set_pte(_at)\n\tleds: ktd2692: avoid harmless maybe-uninitialized warning\n\tARM: dts: NSP: GPIO reboot open-source\n\tARM: OMAP5 / DRA7: Fix HYP mode boot for thumb2 build\n\tARM: dts: sun7i: lamobo-r1: Fix CPU port RGMII settings\n\tmwifiex: debugfs: Fix (sometimes) off-by-1 SSID print\n\tmwifiex: remove redundant dma padding in AMSDU\n\tmwifiex: Avoid skipping WEP key deletion for AP\n\tiwlwifi: fix MODULE_FIRMWARE for 6030\n\tiwlwifi: mvm: don\u0027t restart HW if suspend fails with unified image\n\tiwlwifi: mvm: overwrite skb info later\n\tiwlwifi: pcie: don\u0027t increment / decrement a bool\n\tiwlwifi: pcie: trans: Remove unused \u0027shift_param\u0027\n\tiwlwifi: pcie: fix the set of DMA memory mask\n\tiwlwifi: mvm: fix reorder timer re-arming\n\tiwlwifi: mvm: Use aux queue for offchannel frames in dqa\n\tiwlwifi: mvm/pcie: adjust A-MSDU tx_cmd length in PCIe\n\tiwlwifi: mvm: fix pending frame counter calculation\n\tiwlwifi: mvm: fix references to first_agg_queue in DQA mode\n\tiwlwifi: mvm: synchronize firmware DMA paging memory\n\tiwlwifi: mvm: writing zero bytes to debugfs causes a crash\n\tx86/ioapic: Restore IO-APIC irq_chip retrigger callback\n\tx86/pci-calgary: Fix iommu_free() comparison of unsigned expression \u003e\u003d 0\n\tx86/mpx: Re-add MPX to selftests Makefile\n\tclk: Make x86/ conditional on CONFIG_COMMON_CLK\n\tkprobes/x86: Fix kernel panic when certain exception-handling addresses are probed\n\tx86/platform/intel-mid: Correct MSI IRQ line for watchdog device\n\tRevert \"KVM: nested VMX: disable perf cpuid reporting\"\n\tKVM: nVMX: initialize PML fields in vmcs02\n\tKVM: nVMX: do not leak PML full vmexit to L1\n\tusb: dwc2: host: use msleep() for long delay\n\tusb: host: ehci-exynos: Decrese node refcount on exynos_ehci_get_phy() error paths\n\tusb: host: ohci-exynos: Decrese node refcount on exynos_ehci_get_phy() error paths\n\tusb: chipidea: Only read/write OTGSC from one place\n\tusb: chipidea: Handle extcon events properly\n\tUSB: serial: keyspan_pda: fix receive sanity checks\n\tUSB: serial: digi_acceleport: fix incomplete rx sanity check\n\tUSB: serial: ssu100: fix control-message error handling\n\tUSB: serial: io_edgeport: fix epic-descriptor handling\n\tUSB: serial: ti_usb_3410_5052: fix control-message error handling\n\tUSB: serial: ark3116: fix open error handling\n\tUSB: serial: ftdi_sio: fix latency-timer error handling\n\tUSB: serial: quatech2: fix control-message error handling\n\tUSB: serial: mct_u232: fix modem-status error handling\n\tUSB: serial: io_edgeport: fix descriptor error handling\n\tclk: rockchip: add \",\" to mux_pll_src_apll_dpll_gpll_usb480m_p on rk3036\n\tphy: qcom-usb-hs: Add depends on EXTCON\n\tserial: 8250_omap: Fix probe and remove for PM runtime\n\tscsi: qla2xxx: Fix crash in qla2xxx_eh_abort on bad ptr\n\tscsi: mac_scsi: Fix MAC_SCSI\u003dm option when SCSI\u003dm\n\tscsi: smartpqi: fix time handling\n\tMIPS: R2-on-R6 MULTU/MADDU/MSUBU emulation bugfix\n\tbrcmfmac: Ensure pointer correctly set if skb data location changes\n\tbrcmfmac: Make skb header writable before use\n\tstaging/lustre/llite: move root_squash from sysfs to debugfs\n\tstaging: wlan-ng: add missing byte order conversion\n\tstaging: emxx_udc: remove incorrect __init annotations\n\tALSA: hda - Fix deadlock of controller device lock at unbinding\n\tsparc64: fix fault handling in NGbzero.S and GENbzero.S\n\tmacsec: dynamically allocate space for sglist\n\ttcp: do not underestimate skb-\u003etruesize in tcp_trim_head()\n\tbpf: enhance verifier to understand stack pointer arithmetic\n\tbpf, arm64: fix jit branch offset related to ldimm64\n\ttcp: fix wraparound issue in tcp_lp\n\tnet: ipv6: Do not duplicate DAD on link up\n\tnet: usb: qmi_wwan: add Telit ME910 support\n\ttcp: do not inherit fastopen_req from parent\n\tipv4, ipv6: ensure raw socket message is big enough to hold an IP header\n\trtnetlink: NUL-terminate IFLA_PHYS_PORT_NAME string\n\tipv6: initialize route null entry in addrconf_init()\n\tipv6: reorder ip6_route_dev_notifier after ipv6_dev_notf\n\tbnxt_en: allocate enough space for -\u003entp_fltr_bmap\n\tbpf: don\u0027t let ldimm64 leak map addresses on unprivileged\n\tnet: mdio-mux: bcm-iproc: call mdiobus_free() in error path\n\tf2fs: sanity check segment count\n\txen: Revert commits da72ff5bfcb0 and 72a9b186292d\n\twlcore: Pass win_size taken from ieee80211_sta to FW\n\twlcore: Add RX_BA_WIN_SIZE_CHANGE_EVENT event\n\tdrm/ttm: fix use-after-free races in vm fault handling\n\tblock: get rid of blk_integrity_revalidate()\n\tLinux 4.9.28\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "6a7620744e89c99b5f9aeaf083766d48b0500d87",
      "tree": "10be05fc6d02718296860a35e25cf138c6153f9f",
      "parents": [
        "48d9fa1ece5ee453d4c08a7feec74c966939a25c"
      ],
      "author": {
        "name": "Ilya Dryomov",
        "email": "idryomov@gmail.com",
        "time": "Tue Apr 18 18:43:20 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun May 14 14:00:22 2017 +0200"
      },
      "message": "block: get rid of blk_integrity_revalidate()\n\ncommit 19b7ccf8651df09d274671b53039c672a52ad84d upstream.\n\nCommit 25520d55cdb6 (\"block: Inline blk_integrity in struct gendisk\")\nintroduced blk_integrity_revalidate(), which seems to assume ownership\nof the stable pages flag and unilaterally clears it if no blk_integrity\nprofile is registered:\n\n    if (bi-\u003eprofile)\n            disk-\u003equeue-\u003ebacking_dev_info-\u003ecapabilities |\u003d\n                    BDI_CAP_STABLE_WRITES;\n    else\n            disk-\u003equeue-\u003ebacking_dev_info-\u003ecapabilities \u0026\u003d\n                    ~BDI_CAP_STABLE_WRITES;\n\nIt\u0027s called from revalidate_disk() and rescan_partitions(), making it\nimpossible to enable stable pages for drivers that support partitions\nand don\u0027t use blk_integrity: while the call in revalidate_disk() can be\ntrivially worked around (see zram, which doesn\u0027t support partitions and\nhence gets away with zram_revalidate_disk()), rescan_partitions() can\nbe triggered from userspace at any time.  This breaks rbd, where the\nceph messenger is responsible for generating/verifying CRCs.\n\nSince blk_integrity_{un,}register() \"must\" be used for (un)registering\nthe integrity profile with the block layer, move BDI_CAP_STABLE_WRITES\nsetting there.  This way drivers that call blk_integrity_register() and\nuse integrity infrastructure won\u0027t interfere with drivers that don\u0027t\nbut still want stable pages.\n\nFixes: 25520d55cdb6 (\"block: Inline blk_integrity in struct gendisk\")\nCc: \"Martin K. Petersen\" \u003cmartin.petersen@oracle.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Mike Snitzer \u003csnitzer@redhat.com\u003e\nTested-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nSigned-off-by: Ilya Dryomov \u003cidryomov@gmail.com\u003e\n[idryomov@gmail.com: backport to \u003c 4.11: bdi is embedded in queue]\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "497947879fe0a56535afbb8c7505174af2d87d07",
      "tree": "aec0fe25c4769cc4c48f55706ddc14aef7865c73",
      "parents": [
        "8fc6fba4c15c9c64a12dc9658a4abb4425a47d8f",
        "c3582cc56eac9213b32cc2a2886b11e2e5027598"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Apr 18 09:31:20 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Tue Apr 18 09:31:20 2017 +0200"
      },
      "message": "Merge 4.9.23 into android-4.9\n\nChanges in 4.9.23:\n\tdrm/i915/gen9: Increase PCODE request timeout to 50ms\n\tdrm/i915: Nuke debug messages from the pipe update critical section\n\tdrm/i915: Avoid tweaking evaluation thresholds on Baytrail v3\n\tdrm/i915: Only enable hotplug interrupts if the display interrupts are enabled\n\tdrm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters.\n\tdrm/i915: Stop using RP_DOWN_EI on Baytrail\n\tdrm/i915: Avoid rcu_barrier() from reclaim paths (shrinker)\n\torangefs: fix memory leak of string \u0027new\u0027 on exit path\n\torangefs: Dan Carpenter influenced cleanups...\n\torangefs: fix buffer size mis-match between kernel space and user space.\n\ti2c: bcm2835: Fix hang for writing messages larger than 16 bytes\n\trt2x00usb: fix anchor initialization\n\trt2x00usb: do not anchor rx and tx urb\u0027s\n\trt2x00: Fix incorrect usage of CONFIG_RT2X00_LIB_USB\n\tmtd: bcm47xxpart: fix parsing first block after aligned TRX\n\tMIPS: Introduce irq_stack\n\tMIPS: Stack unwinding while on IRQ stack\n\tMIPS: Only change $28 to thread_info if coming from user mode\n\tMIPS: Switch to the irq_stack in interrupts\n\tMIPS: Select HAVE_IRQ_EXIT_ON_IRQ_STACK\n\tMIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch\n\tcrypto: caam - fix RNG deinstantiation error checking\n\tcrypto: caam - fix invalid dereference in caam_rsa_init_tfm()\n\tRevert \"drm/i915/execlists: Reset RING registers upon resume\"\n\tnet/packet: fix overflow in check for priv area size\n\tblk-mq: Avoid memory reclaim when remapping queues\n\tusb: hub: Wait for connection to be reestablished after port reset\n\tnet/mlx4_en: Fix bad WQE issue\n\tnet/mlx4_core: Fix racy CQ (Completion Queue) free\n\tnet/mlx4_core: Fix when to save some qp context flags for dynamic VST to VGT transitions\n\tdma-buf: add support for compat ioctl\n\tLinux 4.9.23\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "d7045cbf4a061ca38a3080fbbfcf6a021f8a49c7",
      "tree": "28a997195d6f3d2d0d7cce2f196ad0b7cd576e21",
      "parents": [
        "16fc98c2479f5477f2df220acd9cb53686e33f4c"
      ],
      "author": {
        "name": "Gabriel Krisman Bertazi",
        "email": "krisman@linux.vnet.ibm.com",
        "time": "Tue Dec 06 13:31:44 2016 -0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Apr 18 07:11:49 2017 +0200"
      },
      "message": "blk-mq: Avoid memory reclaim when remapping queues\n\ncommit 36e1f3d107867b25c616c2fd294f5a1c9d4e5d09 upstream.\n\nWhile stressing memory and IO at the same time we changed SMT settings,\nwe were able to consistently trigger deadlocks in the mm system, which\nfroze the entire machine.\n\nI think that under memory stress conditions, the large allocations\nperformed by blk_mq_init_rq_map may trigger a reclaim, which stalls\nwaiting on the block layer remmaping completion, thus deadlocking the\nsystem.  The trace below was collected after the machine stalled,\nwaiting for the hotplug event completion.\n\nThe simplest fix for this is to make allocations in this path\nnon-reclaimable, with GFP_NOIO.  With this patch, We couldn\u0027t hit the\nissue anymore.\n\nThis should apply on top of Jens\u0027s for-next branch cleanly.\n\nChanges since v1:\n  - Use GFP_NOIO instead of GFP_NOWAIT.\n\n Call Trace:\n[c000000f0160aaf0] [c000000f0160ab50] 0xc000000f0160ab50 (unreliable)\n[c000000f0160acc0] [c000000000016624] __switch_to+0x2e4/0x430\n[c000000f0160ad20] [c000000000b1a880] __schedule+0x310/0x9b0\n[c000000f0160ae00] [c000000000b1af68] schedule+0x48/0xc0\n[c000000f0160ae30] [c000000000b1b4b0] schedule_preempt_disabled+0x20/0x30\n[c000000f0160ae50] [c000000000b1d4fc] __mutex_lock_slowpath+0xec/0x1f0\n[c000000f0160aed0] [c000000000b1d678] mutex_lock+0x78/0xa0\n[c000000f0160af00] [d000000019413cac] xfs_reclaim_inodes_ag+0x33c/0x380 [xfs]\n[c000000f0160b0b0] [d000000019415164] xfs_reclaim_inodes_nr+0x54/0x70 [xfs]\n[c000000f0160b0f0] [d0000000194297f8] xfs_fs_free_cached_objects+0x38/0x60 [xfs]\n[c000000f0160b120] [c0000000003172c8] super_cache_scan+0x1f8/0x210\n[c000000f0160b190] [c00000000026301c] shrink_slab.part.13+0x21c/0x4c0\n[c000000f0160b2d0] [c000000000268088] shrink_zone+0x2d8/0x3c0\n[c000000f0160b380] [c00000000026834c] do_try_to_free_pages+0x1dc/0x520\n[c000000f0160b450] [c00000000026876c] try_to_free_pages+0xdc/0x250\n[c000000f0160b4e0] [c000000000251978] __alloc_pages_nodemask+0x868/0x10d0\n[c000000f0160b6f0] [c000000000567030] blk_mq_init_rq_map+0x160/0x380\n[c000000f0160b7a0] [c00000000056758c] blk_mq_map_swqueue+0x33c/0x360\n[c000000f0160b820] [c000000000567904] blk_mq_queue_reinit+0x64/0xb0\n[c000000f0160b850] [c00000000056a16c] blk_mq_queue_reinit_notify+0x19c/0x250\n[c000000f0160b8a0] [c0000000000f5d38] notifier_call_chain+0x98/0x100\n[c000000f0160b8f0] [c0000000000c5fb0] __cpu_notify+0x70/0xe0\n[c000000f0160b930] [c0000000000c63c4] notify_prepare+0x44/0xb0\n[c000000f0160b9b0] [c0000000000c52f4] cpuhp_invoke_callback+0x84/0x250\n[c000000f0160ba10] [c0000000000c570c] cpuhp_up_callbacks+0x5c/0x120\n[c000000f0160ba60] [c0000000000c7cb8] _cpu_up+0xf8/0x1d0\n[c000000f0160bac0] [c0000000000c7eb0] do_cpu_up+0x120/0x150\n[c000000f0160bb40] [c0000000006fe024] cpu_subsys_online+0x64/0xe0\n[c000000f0160bb90] [c0000000006f5124] device_online+0xb4/0x120\n[c000000f0160bbd0] [c0000000006f5244] online_store+0xb4/0xc0\n[c000000f0160bc20] [c0000000006f0a68] dev_attr_store+0x68/0xa0\n[c000000f0160bc60] [c0000000003ccc30] sysfs_kf_write+0x80/0xb0\n[c000000f0160bca0] [c0000000003cbabc] kernfs_fop_write+0x17c/0x250\n[c000000f0160bcf0] [c00000000030fe6c] __vfs_write+0x6c/0x1e0\n[c000000f0160bd90] [c000000000311490] vfs_write+0xd0/0x270\n[c000000f0160bde0] [c0000000003131fc] SyS_write+0x6c/0x110\n[c000000f0160be30] [c000000000009204] system_call+0x38/0xec\n\nSigned-off-by: Gabriel Krisman Bertazi \u003ckrisman@linux.vnet.ibm.com\u003e\nCc: Brian King \u003cbrking@linux.vnet.ibm.com\u003e\nCc: Douglas Miller \u003cdougmill@linux.vnet.ibm.com\u003e\nCc: linux-block@vger.kernel.org\nCc: linux-scsi@vger.kernel.org\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "68565811fefb2f1bb1f130e28c186a4bf892f7b7",
      "tree": "bd17aaeda00652a68e67882498887c2bbb5b7fc9",
      "parents": [
        "75665df5434d9f2217e3bbdab8d772a5138e6d21",
        "37feaf8095d352014555b82adb4a04609ca17d3f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sat Apr 08 09:38:27 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Sat Apr 08 09:38:27 2017 +0200"
      },
      "message": "Merge 4.9.21 into android-4.9\n\nChanges in 4.9.21:\n\tlibceph: force GFP_NOIO for socket allocations\n\txen/setup: Don\u0027t relocate p2m over existing one\n\txfs: only update mount/resv fields on success in __xfs_ag_resv_init\n\txfs: use per-AG reservations for the finobt\n\txfs: pull up iolock from xfs_free_eofblocks()\n\txfs: sync eofblocks scans under iolock are livelock prone\n\txfs: fix eofblocks race with file extending async dio writes\n\txfs: fix toctou race when locking an inode to access the data map\n\txfs: fail _dir_open when readahead fails\n\txfs: filter out obviously bad btree pointers\n\txfs: check for obviously bad level values in the bmbt root\n\txfs: verify free block header fields\n\txfs: allow unwritten extents in the CoW fork\n\txfs: mark speculative prealloc CoW fork extents unwritten\n\txfs: reset b_first_retry_time when clear the retry status of xfs_buf_t\n\txfs: update ctime and mtime on clone destinatation inodes\n\txfs: reject all unaligned direct writes to reflinked files\n\txfs: don\u0027t fail xfs_extent_busy allocation\n\txfs: handle indlen shortage on delalloc extent merge\n\txfs: split indlen reservations fairly when under reserved\n\txfs: fix uninitialized variable in _reflink_convert_cow\n\txfs: don\u0027t reserve blocks for right shift transactions\n\txfs: Use xfs_icluster_size_fsb() to calculate inode chunk alignment\n\txfs: tune down agno asserts in the bmap code\n\txfs: only reclaim unwritten COW extents periodically\n\txfs: fix and streamline error handling in xfs_end_io\n\txfs: Use xfs_icluster_size_fsb() to calculate inode alignment mask\n\txfs: use iomap new flag for newly allocated delalloc blocks\n\txfs: try any AG when allocating the first btree block when reflinking\n\tscsi: sg: check length passed to SG_NEXT_CMD_LEN\n\tscsi: libsas: fix ata xfer length\n\tscsi: scsi_dh_alua: Check scsi_device_get() return value\n\tscsi: scsi_dh_alua: Ensure that alua_activate() calls the completion function\n\tPCI: iproc: Save host bridge window resource in struct iproc_pcie\n\tALSA: seq: Fix race during FIFO resize\n\tALSA: hda - fix a problem for lineout on a Dell AIO machine\n\tASoC: atmel-classd: fix audio clock rate\n\tASoC: Intel: Skylake: fix invalid memory access due to wrong reference of pointer\n\tHID: wacom: Don\u0027t add ghost interface as shared data\n\tmmc: sdhci: Disable runtime pm when the sdio_irq is enabled\n\tmmc: sdhci-of-at91: fix MMC_DDR_52 timing selection\n\tNFSv4.1 fix infinite loop on IO BAD_STATEID error\n\tnfsd: map the ENOKEY to nfserr_perm for avoiding warning\n\tparisc: Clean up fixup routines for get_user()/put_user()\n\tparisc: Avoid stalled CPU warnings after system shutdown\n\tparisc: Fix access fault handling in pa_memcpy()\n\tACPI: Fix incompatibility with mcount-based function graph tracing\n\tACPI: Do not create a platform_device for IOAPIC/IOxAPIC\n\ttty/serial: atmel: fix race condition (TX+DMA)\n\ttty/serial: atmel: fix TX path in atmel_console_write()\n\tUSB: fix linked-list corruption in rh_call_control()\n\tserial: mxs-auart: Fix baudrate calculation\n\tKVM: x86: clear bus pointer when destroyed\n\tKVM: kvm_io_bus_unregister_dev() should never fail\n\tdrm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags\n\tdrm/vc4: Allocate the right amount of space for boot-time CRTC state.\n\tdrm/etnaviv: (re-)protect fence allocation with GPU mutex\n\tx86/mm/KASLR: Exclude EFI region from KASLR VA space randomization\n\tx86/mce: Fix copy/paste error in exception table entries\n\tlib/syscall: Clear return values when no stack\n\tmm: rmap: fix huge file mmap accounting in the memcg stats\n\tmm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd()\n\tARM: BCM5301X: Add back handler ignoring external imprecise aborts\n\tqla2xxx: Allow vref count to timeout on vport delete.\n\tARM: dts: BCM5301X: Correct GIC_PPI interrupt flags\n\tMIPS: Lantiq: Fix cascaded IRQ setup\n\tmm: workingset: fix premature shadow node shrinking with cgroups\n\tblk: improve order of bio handling in generic_make_request()\n\tblk: Ensure users for current-\u003ebio_list can see the full list.\n\tpadata: avoid race in reordering\n\tnvme/core: Fix race kicking freed request_queue\n\tnvme/pci: Disable on removal when disconnected\n\tLinux 4.9.21\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "5959cded91e319524f4e09f747b03c477d9fbaef",
      "tree": "c36407ef9c7196f3b8dcd9acdf26cffdfd735cda",
      "parents": [
        "d5986e0078f25ee9862f3f13157f1421f18d6c64"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.com",
        "time": "Fri Mar 10 17:00:47 2017 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Apr 08 09:30:36 2017 +0200"
      },
      "message": "blk: Ensure users for current-\u003ebio_list can see the full list.\n\ncommit f5fe1b51905df7cfe4fdfd85c5fb7bc5b71a094f upstream.\n\nCommit 79bd99596b73 (\"blk: improve order of bio handling in generic_make_request()\")\nchanged current-\u003ebio_list so that it did not contain *all* of the\nqueued bios, but only those submitted by the currently running\nmake_request_fn.\n\nThere are two places which walk the list and requeue selected bios,\nand others that check if the list is empty.  These are no longer\ncorrect.\n\nSo redefine current-\u003ebio_list to point to an array of two lists, which\ncontain all queued bios, and adjust various code to test or walk both\nlists.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.com\u003e\nFixes: 79bd99596b73 (\"blk: improve order of bio handling in generic_make_request()\")\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nCc: Jack Wang \u003cjinpu.wang@profitbricks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "d5986e0078f25ee9862f3f13157f1421f18d6c64",
      "tree": "870873ccf448a1daf6cecbbdd4aaac2f3a9b2565",
      "parents": [
        "e3a55294fc2048136de8a3f9c5154f5e4d3438d8"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.com",
        "time": "Wed Mar 08 07:38:05 2017 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Apr 08 09:30:36 2017 +0200"
      },
      "message": "blk: improve order of bio handling in generic_make_request()\n\ncommit 79bd99596b7305ab08109a8bf44a6a4511dbf1cd upstream.\n\nTo avoid recursion on the kernel stack when stacked block devices\nare in use, generic_make_request() will, when called recursively,\nqueue new requests for later handling.  They will be handled when the\nmake_request_fn for the current bio completes.\n\nIf any bios are submitted by a make_request_fn, these will ultimately\nbe handled seqeuntially.  If the handling of one of those generates\nfurther requests, they will be added to the end of the queue.\n\nThis strict first-in-first-out behaviour can lead to deadlocks in\nvarious ways, normally because a request might need to wait for a\nprevious request to the same device to complete.  This can happen when\nthey share a mempool, and can happen due to interdependencies\nparticular to the device.  Both md and dm have examples where this happens.\n\nThese deadlocks can be erradicated by more selective ordering of bios.\nSpecifically by handling them in depth-first order.  That is: when the\nhandling of one bio generates one or more further bios, they are\nhandled immediately after the parent, before any siblings of the\nparent.  That way, when generic_make_request() calls make_request_fn\nfor some particular device, we can be certain that all previously\nsubmited requests for that device have been completely handled and are\nnot waiting for anything in the queue of requests maintained in\ngeneric_make_request().\n\nAn easy way to achieve this would be to use a last-in-first-out stack\ninstead of a queue.  However this will change the order of consecutive\nbios submitted by a make_request_fn, which could have unexpected consequences.\nInstead we take a slightly more complex approach.\nA fresh queue is created for each call to a make_request_fn.  After it completes,\nany bios for a different device are placed on the front of the main queue, followed\nby any bios for the same device, followed by all bios that were already on\nthe queue before the make_request_fn was called.\nThis provides the depth-first approach without reordering bios on the same level.\n\nThis, by itself, it not enough to remove all deadlocks.  It just makes\nit possible for drivers to take the extra step required themselves.\n\nTo avoid deadlocks, drivers must never risk waiting for a request\nafter submitting one to generic_make_request.  This includes never\nallocing from a mempool twice in the one call to a make_request_fn.\n\nA common pattern in drivers is to call bio_split() in a loop, handling\nthe first part and then looping around to possibly split the next part.\nInstead, a driver that finds it needs to split a bio should queue\n(with generic_make_request) the second part, handle the first part,\nand then return.  The new code in generic_make_request will ensure the\nrequests to underlying bios are processed first, then the second bio\nthat was split off.  If it splits again, the same process happens.  In\neach case one bio will be completely handled before the next one is attempted.\n\nWith this is place, it should be possible to disable the\npunt_bios_to_recover() recovery thread for many block devices, and\neventually it may be possible to remove it completely.\n\nRef: http://www.spinics.net/lists/raid/msg54680.html\nTested-by: Jinpu Wang \u003cjinpu.wang@profitbricks.com\u003e\nInspired-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nCc: Jack Wang \u003cjinpu.wang@profitbricks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "42c3c882617bfe5dd141d2d76f50b22e873bc51d",
      "tree": "9cf6b4edd36b6c9967119608692f82cecd134a27",
      "parents": [
        "6bf53d414346a972d9f640d4caf7e06420cba116",
        "c8e131605de2e0d1d5769ff25272ae1c8e4720b0"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Mar 30 13:29:38 2017 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@google.com",
        "time": "Thu Mar 30 13:29:38 2017 +0200"
      },
      "message": "Merge 4.9.19 into android-4.9\n\nChanges in 4.9.19:\n\tnet/openvswitch: Set the ipv6 source tunnel key address attribute correctly\n\tnet: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled\n\tnet: properly release sk_frag.page\n\tamd-xgbe: Fix jumbo MTU processing on newer hardware\n\topenvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD\n\tnet: unix: properly re-increment inflight counter of GC discarded candidates\n\tqmi_wwan: add Dell DW5811e\n\tnet: vrf: Reset rt6i_idev in local dst after put\n\tnet/mlx5: Add missing entries for set/query rate limit commands\n\tnet/mlx5e: Use the proper UAPI values when offloading TC vlan actions\n\tnet/mlx5: Increase number of max QPs in default profile\n\tnet/mlx5e: Count GSO packets correctly\n\tnet/mlx5e: Count LRO packets correctly\n\tipv6: make sure to initialize sockc.tsflags before first use\n\tnet: bcmgenet: remove bcmgenet_internal_phy_setup()\n\tipv4: provide stronger user input validation in nl_fib_input()\n\tsocket, bpf: fix sk_filter use after free in sk_clone_lock\n\ttcp: initialize icsk_ack.lrcvtime at session start time\n\tInput: ALPS - fix V8+ protocol handling (73 03 28)\n\tInput: ALPS - fix trackstick button handling on V8 devices\n\tInput: elan_i2c - add ASUS EeeBook X205TA special touchpad fw\n\tInput: i8042 - add noloop quirk for Dell Embedded Box PC 3000\n\tInput: iforce - validate number of endpoints before using them\n\tInput: ims-pcu - validate number of endpoints before using them\n\tInput: hanwang - validate number of endpoints before using them\n\tInput: yealink - validate number of endpoints before using them\n\tInput: cm109 - validate number of endpoints before using them\n\tInput: kbtab - validate number of endpoints before using them\n\tInput: sur40 - validate number of endpoints before using them\n\tALSA: seq: Fix racy cell insertions during snd_seq_pool_done()\n\tALSA: ctxfi: Fix the incorrect check of dma_set_mask() call\n\tALSA: hda - Adding a group of pin definition to fix headset problem\n\tUSB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems\n\tUSB: serial: qcserial: add Dell DW5811e\n\tACM gadget: fix endianness in notifications\n\tusb: gadget: f_uvc: Fix SuperSpeed companion descriptor\u0027s wBytesPerInterval\n\tusb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk\n\tUSB: uss720: fix NULL-deref at probe\n\tUSB: lvtest: fix NULL-deref at probe\n\tUSB: idmouse: fix NULL-deref at probe\n\tUSB: wusbcore: fix NULL-deref at probe\n\tusb: musb: cppi41: don\u0027t check early-TX-interrupt for Isoch transfer\n\tusb: hub: Fix crash after failure to read BOS descriptor\n\tUSB: usbtmc: add missing endpoint sanity check\n\tUSB: usbtmc: fix probe error path\n\tuwb: i1480-dfu: fix NULL-deref at probe\n\tuwb: hwa-rc: fix NULL-deref at probe\n\tmmc: ushc: fix NULL-deref at probe\n\tiio: adc: ti_am335x_adc: fix fifo overrun recovery\n\tiio: sw-device: Fix config group initialization\n\tiio: hid-sensor-trigger: Change get poll value function order to avoid sensor properties losing after resume from S3\n\tiio: magnetometer: ak8974: remove incorrect __exit markups\n\tparport: fix attempt to write duplicate procfiles\n\text4: mark inode dirty after converting inline directory\n\text4: lock the xattr block before checksuming it\n\tpowerpc/64s: Fix idle wakeup potential to clobber registers\n\tmmc: sdhci-of-at91: Support external regulators\n\tmmc: sdhci-of-arasan: fix incorrect timeout clock\n\tmmc: sdhci: Do not disable interrupts while waiting for clock\n\tmmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power\n\thwrng: amd - Revert managed API changes\n\thwrng: geode - Revert managed API changes\n\tclk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock\n\tclk: sunxi-ng: mp: Adjust parent rate for pre-dividers\n\tmwifiex: pcie: don\u0027t leak DMA buffers when removing\n\tcrypto: ccp - Assign DMA commands to the channel\u0027s CCP\n\txen/acpi: upload PM state from init-domain to Xen\n\tiommu/vt-d: Fix NULL pointer dereference in device_to_iommu\n\tRevert \"ARM: at91/dt: sama5d2: Use new compatible for ohci node\"\n\tARM: at91: pm: cpu_idle: switch DDR to power-down mode\n\tarm64: kaslr: Fix up the kernel image alignment\n\tcpufreq: Restore policy min/max limits on CPU online\n\tcgroup, net_cls: iterate the fds of only the tasks which are being migrated\n\tblk-mq: don\u0027t complete un-started request in timeout handler\n\tdrm/amdgpu: reinstate oland workaround for sclk\n\tauxdisplay: img-ascii-lcd: add missing sentinel entry in img_ascii_lcd_matches\n\tjbd2: don\u0027t leak memory if setting up journal fails\n\tintel_th: Don\u0027t leak module refcount on failure to activate\n\tDrivers: hv: vmbus: Don\u0027t leak channel ids\n\tDrivers: hv: vmbus: Don\u0027t leak memory when a channel is rescinded\n\tlibceph: don\u0027t set weight to IN when OSD is destroyed\n\tdevice-dax: fix pmd/pte fault fallback handling\n\tdrm/bridge: analogix dp: Fix runtime PM state on driver bind\n\tnl80211: fix dumpit error path RTNL deadlocks\n\tdrm: reference count event-\u003ecompletion\n\tfbcon: Fix vc attr at deinit\n\tcrypto: algif_hash - avoid zero-sized array\n\tLinux 4.9.19\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@google.com\u003e\n"
    },
    {
      "commit": "21d17f1b53ce1d52c098ef59ec579a85efef90c2",
      "tree": "03d1fc684fdd514774564b7d1d31f5889f1c0839",
      "parents": [
        "62f6341c858babe0390eea2fd497ceb6ea54bb07"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Wed Mar 22 10:14:43 2017 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 30 09:41:27 2017 +0200"
      },
      "message": "blk-mq: don\u0027t complete un-started request in timeout handler\n\ncommit 95a49603707d982b25d17c5b70e220a05556a2f9 upstream.\n\nWhen iterating busy requests in timeout handler,\nif the STARTED flag of one request isn\u0027t set, that means\nthe request is being processed in block layer or driver, and\nisn\u0027t submitted to hardware yet.\n\nIn current implementation of blk_mq_check_expired(),\nif the request queue becomes dying, un-started requests are\nhandled as being completed/freed immediately. This way is\nwrong, and can cause rq corruption or double allocation[1][2],\nwhen doing I/O and removing\u0026resetting NVMe device at the sametime.\n\nThis patch fixes several issues reported by Yi Zhang.\n\n[1]. oops log 1\n[  581.789754] ------------[ cut here ]------------\n[  581.789758] kernel BUG at block/blk-mq.c:374!\n[  581.789760] invalid opcode: 0000 [#1] SMP\n[  581.789761] Modules linked in: vfat fat ipmi_ssif intel_rapl sb_edac\nedac_core x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm nvme\nirqbypass crct10dif_pclmul nvme_core crc32_pclmul ghash_clmulni_intel\nintel_cstate ipmi_si mei_me ipmi_devintf intel_uncore sg ipmi_msghandler\nintel_rapl_perf iTCO_wdt mei iTCO_vendor_support mxm_wmi lpc_ich dcdbas shpchp\npcspkr acpi_power_meter wmi nfsd auth_rpcgss nfs_acl lockd dm_multipath grace\nsunrpc ip_tables xfs libcrc32c sd_mod mgag200 i2c_algo_bit drm_kms_helper\nsyscopyarea sysfillrect sysimgblt fb_sys_fops ttm drm ahci libahci\ncrc32c_intel tg3 libata megaraid_sas i2c_core ptp fjes pps_core dm_mirror\ndm_region_hash dm_log dm_mod\n[  581.789796] CPU: 1 PID: 1617 Comm: kworker/1:1H Not tainted 4.10.0.bz1420297+ #4\n[  581.789797] Hardware name: Dell Inc. PowerEdge R730xd/072T6D, BIOS 2.2.5 09/06/2016\n[  581.789804] Workqueue: kblockd blk_mq_timeout_work\n[  581.789806] task: ffff8804721c8000 task.stack: ffffc90006ee4000\n[  581.789809] RIP: 0010:blk_mq_end_request+0x58/0x70\n[  581.789810] RSP: 0018:ffffc90006ee7d50 EFLAGS: 00010202\n[  581.789811] RAX: 0000000000000001 RBX: ffff8802e4195340 RCX: ffff88028e2f4b88\n[  581.789812] RDX: 0000000000001000 RSI: 0000000000001000 RDI: 0000000000000000\n[  581.789813] RBP: ffffc90006ee7d60 R08: 0000000000000003 R09: ffff88028e2f4b00\n[  581.789814] R10: 0000000000001000 R11: 0000000000000001 R12: 00000000fffffffb\n[  581.789815] R13: ffff88042abe5780 R14: 000000000000002d R15: ffff88046fbdff80\n[  581.789817] FS:  0000000000000000(0000) GS:ffff88047fc00000(0000) knlGS:0000000000000000\n[  581.789818] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n[  581.789819] CR2: 00007f64f403a008 CR3: 000000014d078000 CR4: 00000000001406e0\n[  581.789820] Call Trace:\n[  581.789825]  blk_mq_check_expired+0x76/0x80\n[  581.789828]  bt_iter+0x45/0x50\n[  581.789830]  blk_mq_queue_tag_busy_iter+0xdd/0x1f0\n[  581.789832]  ? blk_mq_rq_timed_out+0x70/0x70\n[  581.789833]  ? blk_mq_rq_timed_out+0x70/0x70\n[  581.789840]  ? __switch_to+0x140/0x450\n[  581.789841]  blk_mq_timeout_work+0x88/0x170\n[  581.789845]  process_one_work+0x165/0x410\n[  581.789847]  worker_thread+0x137/0x4c0\n[  581.789851]  kthread+0x101/0x140\n[  581.789853]  ? rescuer_thread+0x3b0/0x3b0\n[  581.789855]  ? kthread_park+0x90/0x90\n[  581.789860]  ret_from_fork+0x2c/0x40\n[  581.789861] Code: 48 85 c0 74 0d 44 89 e6 48 89 df ff d0 5b 41 5c 5d c3 48\n8b bb 70 01 00 00 48 85 ff 75 0f 48 89 df e8 7d f0 ff ff 5b 41 5c 5d c3 \u003c0f\u003e\n0b e8 71 f0 ff ff 90 eb e9 0f 1f 40 00 66 2e 0f 1f 84 00 00\n[  581.789882] RIP: blk_mq_end_request+0x58/0x70 RSP: ffffc90006ee7d50\n[  581.789889] ---[ end trace bcaf03d9a14a0a70 ]---\n\n[2]. oops log2\n[ 6984.857362] BUG: unable to handle kernel NULL pointer dereference at 0000000000000010\n[ 6984.857372] IP: nvme_queue_rq+0x6e6/0x8cd [nvme]\n[ 6984.857373] PGD 0\n[ 6984.857374]\n[ 6984.857376] Oops: 0000 [#1] SMP\n[ 6984.857379] Modules linked in: ipmi_ssif vfat fat intel_rapl sb_edac\nedac_core x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm\nirqbypass crct10dif_pclmul crc32_pclmul ghash_clmulni_intel ipmi_si iTCO_wdt\niTCO_vendor_support mxm_wmi ipmi_devintf intel_cstate sg dcdbas intel_uncore\nmei_me intel_rapl_perf mei pcspkr lpc_ich ipmi_msghandler shpchp\nacpi_power_meter wmi nfsd auth_rpcgss dm_multipath nfs_acl lockd grace sunrpc\nip_tables xfs libcrc32c sd_mod mgag200 i2c_algo_bit drm_kms_helper syscopyarea\nsysfillrect crc32c_intel sysimgblt fb_sys_fops ttm nvme drm nvme_core ahci\nlibahci i2c_core tg3 libata ptp megaraid_sas pps_core fjes dm_mirror\ndm_region_hash dm_log dm_mod\n[ 6984.857416] CPU: 7 PID: 1635 Comm: kworker/7:1H Not tainted\n4.10.0-2.el7.bz1420297.x86_64 #1\n[ 6984.857417] Hardware name: Dell Inc. PowerEdge R730xd/072T6D, BIOS 2.2.5 09/06/2016\n[ 6984.857427] Workqueue: kblockd blk_mq_run_work_fn\n[ 6984.857429] task: ffff880476e3da00 task.stack: ffffc90002e90000\n[ 6984.857432] RIP: 0010:nvme_queue_rq+0x6e6/0x8cd [nvme]\n[ 6984.857433] RSP: 0018:ffffc90002e93c50 EFLAGS: 00010246\n[ 6984.857434] RAX: 0000000000000000 RBX: ffff880275646600 RCX: 0000000000001000\n[ 6984.857435] RDX: 0000000000000fff RSI: 00000002fba2a000 RDI: ffff8804734e6950\n[ 6984.857436] RBP: ffffc90002e93d30 R08: 0000000000002000 R09: 0000000000001000\n[ 6984.857437] R10: 0000000000001000 R11: 0000000000000000 R12: ffff8804741d8000\n[ 6984.857438] R13: 0000000000000040 R14: ffff880475649f80 R15: ffff8804734e6780\n[ 6984.857439] FS:  0000000000000000(0000) GS:ffff88047fcc0000(0000) knlGS:0000000000000000\n[ 6984.857440] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n[ 6984.857442] CR2: 0000000000000010 CR3: 0000000001c09000 CR4: 00000000001406e0\n[ 6984.857443] Call Trace:\n[ 6984.857451]  ? mempool_free+0x2b/0x80\n[ 6984.857455]  ? bio_free+0x4e/0x60\n[ 6984.857459]  blk_mq_dispatch_rq_list+0xf5/0x230\n[ 6984.857462]  blk_mq_process_rq_list+0x133/0x170\n[ 6984.857465]  __blk_mq_run_hw_queue+0x8c/0xa0\n[ 6984.857467]  blk_mq_run_work_fn+0x12/0x20\n[ 6984.857473]  process_one_work+0x165/0x410\n[ 6984.857475]  worker_thread+0x137/0x4c0\n[ 6984.857478]  kthread+0x101/0x140\n[ 6984.857480]  ? rescuer_thread+0x3b0/0x3b0\n[ 6984.857481]  ? kthread_park+0x90/0x90\n[ 6984.857489]  ret_from_fork+0x2c/0x40\n[ 6984.857490] Code: 8b bd 70 ff ff ff 89 95 50 ff ff ff 89 8d 58 ff ff ff 44\n89 95 60 ff ff ff e8 b7 dd 12 e1 8b 95 50 ff ff ff 48 89 85 68 ff ff ff \u003c4c\u003e\n8b 48 10 44 8b 58 18 8b 8d 58 ff ff ff 44 8b 95 60 ff ff ff\n[ 6984.857511] RIP: nvme_queue_rq+0x6e6/0x8cd [nvme] RSP: ffffc90002e93c50\n[ 6984.857512] CR2: 0000000000000010\n[ 6984.895359] ---[ end trace 2d7ceb528432bf83 ]---\n\nReported-by: Yi Zhang \u003cyizhan@redhat.com\u003e\nTested-by: Yi Zhang \u003cyizhan@redhat.com\u003e\nReviewed-by: Bart Van Assche \u003cbart.vanassche@sandisk.com\u003e\nReviewed-by: Hannes Reinecke \u003chare@suse.com\u003e\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "17992f15bd5283ffb6027f90e19ec70654414004",
      "tree": "f7a247d3a19f7c9a44b77e01ffe724567df1771b",
      "parents": [
        "9d3ae38069321c697f70f2209e67b09e723902d0",
        "61a153d06ef4ce17bf2a200dc6e7247dc3b56a57"
      ],
      "author": {
        "name": "Mauricio Faria de Oliveira",
        "email": "mauricfo@linux.vnet.ibm.com",
        "time": "Wed Mar 22 12:06:36 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 22 12:06:36 2017 +0000"
      },
      "message": "block: allow WRITE_SAME commands with the SG_IO ioctl\nam: 61a153d06e\n\nChange-Id: If120b5ff61d9a89f43810dd2adfb03ffc7d0de19\n"
    },
    {
      "commit": "61a153d06ef4ce17bf2a200dc6e7247dc3b56a57",
      "tree": "d5b4d2d1e86f570ef6091f1095466ff5579b1595",
      "parents": [
        "0042afe117c69e41511e22c15994e853a856e10f"
      ],
      "author": {
        "name": "Mauricio Faria de Oliveira",
        "email": "mauricfo@linux.vnet.ibm.com",
        "time": "Fri Mar 17 00:48:30 2017 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Mar 22 12:43:38 2017 +0100"
      },
      "message": "block: allow WRITE_SAME commands with the SG_IO ioctl\n\n[ Upstream commit 25cdb64510644f3e854d502d69c73f21c6df88a9 ]\n\nThe WRITE_SAME commands are not present in the blk_default_cmd_filter\nwrite_ok list, and thus are failed with -EPERM when the SG_IO ioctl()\nis executed without CAP_SYS_RAWIO capability (e.g., unprivileged users).\n[ sg_io() -\u003e blk_fill_sghdr_rq() \u003e blk_verify_command() -\u003e -EPERM ]\n\nThe problem can be reproduced with the sg_write_same command\n\n  # sg_write_same --num 1 --xferlen 512 /dev/sda\n  #\n\n  # capsh --drop\u003dcap_sys_rawio -- -c \\\n    \u0027sg_write_same --num 1 --xferlen 512 /dev/sda\u0027\n    Write same: pass through os error: Operation not permitted\n  #\n\nFor comparison, the WRITE_VERIFY command does not observe this problem,\nsince it is in that list:\n\n  # capsh --drop\u003dcap_sys_rawio -- -c \\\n    \u0027sg_write_verify --num 1 --ilen 512 --lba 0 /dev/sda\u0027\n  #\n\nSo, this patch adds the WRITE_SAME commands to the list, in order\nfor the SG_IO ioctl to finish successfully:\n\n  # capsh --drop\u003dcap_sys_rawio -- -c \\\n    \u0027sg_write_same --num 1 --xferlen 512 /dev/sda\u0027\n  #\n\nThat case happens to be exercised by QEMU KVM guests with \u0027scsi-block\u0027 devices\n(qemu \"-device scsi-block\" [1], libvirt \"\u003cdisk type\u003d\u0027block\u0027 device\u003d\u0027lun\u0027\u003e\" [2]),\nwhich employs the SG_IO ioctl() and runs as an unprivileged user (libvirt-qemu).\n\nIn that scenario, when a filesystem (e.g., ext4) performs its zero-out calls,\nwhich are translated to write-same calls in the guest kernel, and then into\nSG_IO ioctls to the host kernel, SCSI I/O errors may be observed in the guest:\n\n  [...] sd 0:0:0:0: [sda] tag#0 FAILED Result: hostbyte\u003dDID_OK driverbyte\u003dDRIVER_SENSE\n  [...] sd 0:0:0:0: [sda] tag#0 Sense Key : Aborted Command [current]\n  [...] sd 0:0:0:0: [sda] tag#0 Add. Sense: I/O process terminated\n  [...] sd 0:0:0:0: [sda] tag#0 CDB: Write Same(10) 41 00 01 04 e0 78 00 00 08 00\n  [...] blk_update_request: I/O error, dev sda, sector 17096824\n\nLinks:\n[1] http://git.qemu.org/?p\u003dqemu.git;a\u003dcommit;h\u003d336a6915bc7089fb20fea4ba99972ad9a97c5f52\n[2] https://libvirt.org/formatdomain.html#elementsDisks (see \u0027disk\u0027 -\u003e \u0027device\u0027)\n\nSigned-off-by: Mauricio Faria de Oliveira \u003cmauricfo@linux.vnet.ibm.com\u003e\nSigned-off-by: Brahadambal Srinivasan \u003clatha@linux.vnet.ibm.com\u003e\nReported-by: Manjunatha H R \u003cmanjuhr1@in.ibm.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Sasha Levin \u003calexander.levin@verizon.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "cd082873969327f165451d780b032b1d61943c32",
      "tree": "efe0893590d6afb23348565f989a697d30fe6ed5",
      "parents": [
        "9dcfc2a39b200d4d89d15542f48b6f81d762b2d9",
        "09f886dc5a6945679ed35e6acfbc746f472f0f34"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Tue Jan 31 13:51:21 2017 -0800"
      },
      "committer": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Tue Jan 31 13:55:27 2017 -0800"
      },
      "message": "Merge tag \u0027v4.9.6\u0027 into android-4.9\n\nThis is the 4.9.6 stable release\n\nChange-Id: I318df4b9d706d50c13fe3969d734117c25fc94bc\n"
    },
    {
      "commit": "e2d88788d5b048b40d6e9ab80024a017edafc569",
      "tree": "db31f0c1755964e89d8b7b1fc90bc96691928658",
      "parents": [
        "2a061a87b05f8c0167fbf9944b307b530f749a3e"
      ],
      "author": {
        "name": "Mohan Srinivasan",
        "email": "srmohan@google.com",
        "time": "Wed Dec 14 15:55:36 2016 -0800"
      },
      "committer": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Fri Jan 27 13:55:56 2017 -0800"
      },
      "message": "ANDROID: MMC/UFS IO Latency Histograms.\n\nThis patch adds a new sysfs node (latency_hist) and reports\nIO (svc time) latency histograms. Disabled by default, can be\nenabled by echoing 0 into latency_hist, stats can be cleared\nby writing 2 into latency_hist. This commit fixes the 32 bit\nbuild breakage in the previous commit. Tested on both 32 bit\nand 64 bit arm devices. (Merged from android4.4-common).\n\nBug: 30677035\nChange-Id: I9403ea093f4cd54ebae08f12a11d01ef153118d0\nSigned-off-by: Mohan Srinivasan \u003csrmohan@google.com\u003e\n"
    },
    {
      "commit": "d9c19f90f3a50eb4ff8d17616492338c0b2f9434",
      "tree": "3a4c6783db9c7970a0c4af0b36564d5a4482a4aa",
      "parents": [
        "cb50d45c3d42633830ca60b34bf46c14941cdde4"
      ],
      "author": {
        "name": "Gabriel Krisman Bertazi",
        "email": "krisman@linux.vnet.ibm.com",
        "time": "Wed Sep 28 00:24:24 2016 -0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 19 20:18:07 2017 +0100"
      },
      "message": "blk-mq: Always schedule hctx-\u003enext_cpu\n\ncommit c02ebfdddbafa9a6a0f52fbd715e6bfa229af9d3 upstream.\n\nCommit 0e87e58bf60e (\"blk-mq: improve warning for running a queue on the\nwrong CPU\") attempts to avoid triggering the WARN_ON in\n__blk_mq_run_hw_queue when the expected CPU is dead.  Problem is, in the\nlast batch execution before round robin, blk_mq_hctx_next_cpu can\nschedule a dead CPU and also update next_cpu to the next alive CPU in\nthe mask, which will trigger the WARN_ON despite the previous\nworkaround.\n\nThe following patch fixes this scenario by always scheduling the value\nin hctx-\u003enext_cpu.  This changes the moment when we round-robin the CPU\nrunning the hctx, but it really doesn\u0027t matter, since it still executes\nBLK_MQ_CPU_WORK_BATCH times in a row before switching to another CPU.\n\nFixes: 0e87e58bf60e (\"blk-mq: improve warning for running a queue on the wrong CPU\")\nSigned-off-by: Gabriel Krisman Bertazi \u003ckrisman@linux.vnet.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "f57d8710096d9f95ed4fd5bb80a6dc5865e4ea7c",
      "tree": "6142fc82400692b3464aae090837730c181e063f",
      "parents": [
        "f99694cdaf7667c737a6ffa14609a4e880647dcd"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Nov 10 11:16:37 2016 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 19 20:18:07 2017 +0100"
      },
      "message": "block: cfq_cpd_alloc() should use @gfp\n\ncommit ebc4ff661fbe76781c6b16dfb7b754a5d5073f8e upstream.\n\ncfq_cpd_alloc() which is the cpd_alloc_fn implementation for cfq was\nincorrectly hard coding GFP_KERNEL instead of using the mask specified\nthrough the @gfp parameter.  This currently doesn\u0027t cause any actual\nissues because all current callers specify GFP_KERNEL.  Fix it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nFixes: e4a9bde9589f (\"blkcg: replace blkcg_policy-\u003ecpd_size with -\u003ecpd_alloc/free_fn() methods\")\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "3f3a6bbe6f9f5e895d8945494173594ee51632da",
      "tree": "07d69582b4b05fe1b7cf99dc58ab907eb4d0113a",
      "parents": [
        "d024532a97db32db4b0fc4cd27c7a9ac15b84e5b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Dec 16 13:42:06 2016 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jan 09 08:32:25 2017 +0100"
      },
      "message": "sg_write()/bsg_write() is not fit to be called under KERNEL_DS\n\ncommit 128394eff343fc6d2f32172f03e24829539c5835 upstream.\n\nBoth damn things interpret userland pointers embedded into the payload;\nworse, they are actually traversing those.  Leaving aside the bad\nAPI design, this is very much _not_ safe to call with KERNEL_DS.\nBail out early if that happens.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "67b0069a5175c14ddcf12c431bcf400ca23f9931",
      "tree": "3921e7e4c1110631f423b99b9dea083b185269b2",
      "parents": [
        "7ac62bcde2d417777a40ced09d958f99ed9009c9"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bart.vanassche@sandisk.com",
        "time": "Fri Oct 28 17:18:48 2016 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 06 10:40:15 2017 +0100"
      },
      "message": "blk-mq: Do not invoke .queue_rq() for a stopped queue\n\ncommit bc27c01b5c46d3bfec42c96537c7a3fae0bb2cc4 upstream.\n\nThe meaning of the BLK_MQ_S_STOPPED flag is \"do not call\n.queue_rq()\". Hence modify blk_mq_make_request() such that requests\nare queued instead of issued if a queue has been stopped.\n\nReported-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Bart Van Assche \u003cbart.vanassche@sandisk.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nReviewed-by: Hannes Reinecke \u003chare@suse.com\u003e\nReviewed-by: Johannes Thumshirn \u003cjthumshirn@suse.de\u003e\nReviewed-by: Sagi Grimberg \u003csagi@grimberg.me\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "a0ac402cfcdc904f9772e1762b3fda112dcc56a0",
      "tree": "6d4a89d91174c334881d9224bfcf9752ae75c8d3",
      "parents": [
        "bc3913a5378cd0ddefd1dfec6917cc12eb23a946"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 06 16:18:14 2016 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 08:23:35 2016 -0800"
      },
      "message": "Don\u0027t feed anything but regular iovec\u0027s to blk_rq_map_user_iov\n\nIn theory we could map other things, but there\u0027s a reason that function\nis called \"user_iov\".  Using anything else (like splice can do) just\nconfuses it.\n\nReported-and-tested-by: Johannes Thumshirn \u003cjthumshirn@suse.de\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7fe311302f7d52601cd799ad508a6f92cb3d748d",
      "tree": "9ee240140ac26203b706e4b8e277dcea147f5d51",
      "parents": [
        "94d7dea448fae6cbb83395323c1d2fd7f19dc388"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Oct 27 09:49:19 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Oct 27 09:56:03 2016 -0600"
      },
      "message": "blk-mq: update hardware and software queues for sleeping alloc\n\nIf we end up sleeping due to running out of requests, we should\nupdate the hardware and software queues in the map ctx structure.\nOtherwise we could end up having rq-\u003emq_ctx point to the pre-sleep\ncontext, and risk corrupting ctx-\u003erq_list since we\u0027ll be\ngrabbing the wrong lock when inserting the request.\n\nReported-by: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nReported-by: Chris Mason \u003cclm@fb.com\u003e\nTested-by: Chris Mason \u003cclm@fb.com\u003e\nFixes: 63581af3f31e (\"blk-mq: remove non-blocking pass in blk_mq_map_request\")\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "94d7dea448fae6cbb83395323c1d2fd7f19dc388",
      "tree": "45662f72c66596b223f1ea5218dfbd8380eea2b5",
      "parents": [
        "423221d1745b53656db896bd34646d09d620c759"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Wed Oct 26 16:57:15 2016 +0800"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Wed Oct 26 07:49:27 2016 -0600"
      },
      "message": "block: flush: fix IO hang in case of flood fua req\n\nThis patch fixes one issue reported by Kent, which can\nbe triggered in bcachefs over sata disk. Actually it\nis a generic issue in block flush vs. blk-tag.\n\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nReported-by: Kent Overstreet \u003ckent.overstreet@gmail.com\u003e\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "b4a1278c78bc939b3e29c3ad21ceaa636b0ca8c8",
      "tree": "d2cd820ba9f15c351d0fead32b08e3b698f7d4cc",
      "parents": [
        "f660f6066716b700148f60dba3461e65efff3123"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shli@fb.com",
        "time": "Thu Oct 20 14:40:06 2016 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Fri Oct 21 15:45:47 2016 -0600"
      },
      "message": "badblocks: badblocks_set/clear update unacked_exist\n\nWhen bandblocks_set acknowledges a range or badblocks_clear a range,\nit\u0027s possible all badblocks are acknowledged. We should update\nunacked_exist if this occurs.\n\nSigned-off-by: Shaohua Li \u003cshli@fb.com\u003e\nReviewed-by: Tomasz Majchrzak \u003ctomasz.majchrzak@intel.com\u003e\nTested-by: Tomasz Majchrzak \u003ctomasz.majchrzak@intel.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "ecd06f28836f9d10c92a4740b5aaf7caf4324927",
      "tree": "8ceb01018cb6701836bc127ca2a8ebe1c9b3ee57",
      "parents": [
        "e59f30b417499414a1f9afaaad3a42937060832f",
        "e9c9346e20c1b18a3ec30defd5ff7134bcc0da6d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 21 10:54:01 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 21 10:54:01 2016 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-block\n\nPull block fixes from Jens Axboe:\n \"A set of fixes that missed the merge window, mostly due to me being\n  away around that time.\n\n  Nothing major here, a mix of nvme cleanups and fixes, and one fix for\n  the badblocks handling\"\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-block:\n  nvmet: use symbolic constants for CNS values\n  nvme: use symbolic constants for CNS values\n  nvme.h: add an enum for cns values\n  nvme.h: don\u0027t use uuid_be\n  nvme.h: resync with nvme-cli\n  nvme: Add tertiary number to NVME_VS\n  nvme : Add sysfs entry for NVMe CMBs when appropriate\n  nvme: don\u0027t schedule multiple resets\n  nvme: Delete created IO queues on reset\n  nvme: Stop probing a removed device\n  badblocks: fix overlapping check for clearing\n"
    },
    {
      "commit": "9ffc66941df278c9f4df979b6bcf6c6ddafedd16",
      "tree": "a2cff20aafb7ecb352a0c2dd41a5430f64a248e0",
      "parents": [
        "133d970e0dadf7b413db19893acc5b26664bf4a1",
        "0766f788eb727e2e330d55d30545db65bcf2623f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 15 10:03:15 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 15 10:03:15 2016 -0700"
      },
      "message": "Merge tag \u0027gcc-plugins-v4.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux\n\nPull gcc plugins update from Kees Cook:\n \"This adds a new gcc plugin named \"latent_entropy\". It is designed to\n  extract as much possible uncertainty from a running system at boot\n  time as possible, hoping to capitalize on any possible variation in\n  CPU operation (due to runtime data differences, hardware differences,\n  SMP ordering, thermal timing variation, cache behavior, etc).\n\n  At the very least, this plugin is a much more comprehensive example\n  for how to manipulate kernel code using the gcc plugin internals\"\n\n* tag \u0027gcc-plugins-v4.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:\n  latent_entropy: Mark functions with __latent_entropy\n  gcc-plugins: Add latent_entropy plugin\n"
    },
    {
      "commit": "f34d3606f76a8121b9d4940d2dd436bebeb2f9d7",
      "tree": "61a9deb6a950568df274580fbbd44a7015af9f7c",
      "parents": [
        "b6daa51b9a6a02a644dcf6b880fd50c1f70ec07f",
        "bbb427e342495df1cda10051d0566388697499c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 14 12:18:50 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 14 12:18:50 2016 -0700"
      },
      "message": "Merge branch \u0027for-4.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup updates from Tejun Heo:\n\n - tracepoints for basic cgroup management operations added\n\n - kernfs and cgroup path formatting functions updated to behave in the\n   style of strlcpy()\n\n - non-critical bug fixes\n\n* \u0027for-4.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:\n  blkcg: Unlock blkcg_pol_mutex only once when cpd \u003d\u003d NULL\n  cgroup: fix error handling regressions in proc_cgroup_show() and cgroup_release_agent()\n  cpuset: fix error handling regression in proc_cpuset_show()\n  cgroup: add tracepoints for basic operations\n  cgroup: make cgroup_path() and friends behave in the style of strlcpy()\n  kernfs: remove kernfs_path_len()\n  kernfs: make kernfs_path*() behave in the style of strlcpy()\n  kernfs: add dummy implementation of kernfs_path_from_node()\n"
    },
    {
      "commit": "1fa9ce8d0e903449842943a77e8ba100169964be",
      "tree": "41d80d976b3c37fb424d44f25239fbb5c3aa3198",
      "parents": [
        "24532f768121b07b16178ffb40442ece43365cbd"
      ],
      "author": {
        "name": "Tomasz Majchrzak",
        "email": "tomasz.majchrzak@intel.com",
        "time": "Wed Oct 12 12:23:08 2016 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Wed Oct 12 08:08:08 2016 -0600"
      },
      "message": "badblocks: fix overlapping check for clearing\n\nCurrent bad block clear implementation assumes the range to clear\noverlaps with at least one bad block already stored. If given range to\nclear precedes first bad block in a list, the first entry is incorrectly\nupdated.\n\nCheck not only if stored block end is past clear block end but also if\nstored block start is before clear block end.\n\nSigned-off-by: Tomasz Majchrzak \u003ctomasz.majchrzak@intel.com\u003e\nAcked-by: NeilBrown \u003cneilb@suse.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "28b2be203e5a09de566d6f7e21183f861e36f07e",
      "tree": "fae93d2f35925bafb738ef2172d93e4b68cf60d9",
      "parents": [
        "22dd6d356628bccb1a83e12212ec2934f4444e2c"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Tue Oct 11 13:51:08 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 11 15:06:30 2016 -0700"
      },
      "message": "block: require write_same and discard requests align to logical block size\n\nMake sure that the offset and length arguments that we\u0027re using to\nconstruct WRITE SAME and DISCARD requests are actually aligned to the\nlogical block size.  Failure to do this causes other errors in other parts\nof the block layer or the SCSI layer because disks don\u0027t support partial\nlogical block writes.\n\nLink: http://lkml.kernel.org/r/147518379026.22791.4437508871355153928.stgit@birch.djwong.org\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Bart Van Assche \u003cbart.vanassche@sandisk.com\u003e\nReviewed-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nReviewed-by: Hannes Reinecke \u003chare@suse.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Mike Snitzer \u003csnitzer@redhat.com\u003e # tweaked header\nCc: Brian Foster \u003cbfoster@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22dd6d356628bccb1a83e12212ec2934f4444e2c",
      "tree": "13a8c5c3ae1e4ab5ccbc491974fe74a3f396d155",
      "parents": [
        "0cc482ee41d609811bd7b91abdbcd1c5dbdfb783"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Tue Oct 11 13:51:05 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 11 15:06:30 2016 -0700"
      },
      "message": "block: invalidate the page cache when issuing BLKZEROOUT\n\nPatch series \"fallocate for block devices\", v11.\n\nThis is a patchset to fix page cache coherency with BLKZEROOUT and\nimplement fallocate for block devices.\n\nThe first patch is a fix to the existing BLKZEROOUT ioctl to invalidate\nthe page cache if the zeroing command to the underlying device succeeds.\nWithout this patch we still have the pagecache coherence bug that\u0027s been\nin the kernel forever.\n\nThe second patch changes the internal block device functions to reject\nattempts to discard or zeroout that are not aligned to the logical block\nsize.  Previously, we only checked that the start/len parameters were\n512-byte aligned, which caused kernel BUG_ONs for unaligned IOs to 4k-LBA\ndevices.\n\nThe third patch creates an fallocate handler for block devices, wires up\nthe FALLOC_FL_PUNCH_HOLE flag to zeroing-discard, and connects\nFALLOC_FL_ZERO_RANGE to write-same so that we can have a consistent\nfallocate interface between files and block devices.  It also allows the\ncombination of PUNCH_HOLE and NO_HIDE_STALE to invoke non-zeroing discard.\n\nTest cases for the new block device fallocate are now in xfstests as\ngeneric/349-351.\n\nThis patch (of 3):\n\nInvalidate the page cache (as a regular O_DIRECT write would do) to avoid\nreturning stale cache contents at a later time.\n\nLink: http://lkml.kernel.org/r/147518378313.22791.16649519283678515021.stgit@birch.djwong.org\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nReviewed-by: Bart Van Assche \u003cbart.vanassche@sandisk.com\u003e\nReviewed-by: Hannes Reinecke \u003chare@suse.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Mike Snitzer \u003csnitzer@redhat.com\u003e\nCc: Brian Foster \u003cbfoster@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0766f788eb727e2e330d55d30545db65bcf2623f",
      "tree": "0436ae3b005558a4fb827459fe5c602037fe764a",
      "parents": [
        "38addce8b600ca335dc86fa3d48c890f1c6fa1f4"
      ],
      "author": {
        "name": "Emese Revfy",
        "email": "re.emese@gmail.com",
        "time": "Mon Jun 20 20:42:34 2016 +0200"
      },
      "committer": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Mon Oct 10 14:51:45 2016 -0700"
      },
      "message": "latent_entropy: Mark functions with __latent_entropy\n\nThe __latent_entropy gcc attribute can be used only on functions and\nvariables.  If it is on a function then the plugin will instrument it for\ngathering control-flow entropy. If the attribute is on a variable then\nthe plugin will initialize it with random contents.  The variable must\nbe an integer, an integer array type or a structure with integer fields.\n\nThese specific functions have been selected because they are init\nfunctions (to help gather boot-time entropy), are called at unpredictable\ntimes, or they have variable loops, each of which provide some level of\nlatent entropy.\n\nSigned-off-by: Emese Revfy \u003cre.emese@gmail.com\u003e\n[kees: expanded commit message]\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\n"
    },
    {
      "commit": "24532f768121b07b16178ffb40442ece43365cbd",
      "tree": "ca2eaf2c3ed031dd3aa977af95df77bfa2e18cc6",
      "parents": [
        "12e3d3cdd975fe986cc5c35f60b1467a8ec20b80",
        "97a32864e6de5944c6356049f60569de01e9ba1f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 09 17:32:20 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 09 17:32:20 2016 -0700"
      },
      "message": "Merge branch \u0027for-4.9/block-smp\u0027 of git://git.kernel.dk/linux-block\n\nPull blk-mq CPU hotplug update from Jens Axboe:\n \"This is the conversion of blk-mq to the new hotplug state machine\"\n\n* \u0027for-4.9/block-smp\u0027 of git://git.kernel.dk/linux-block:\n  blk-mq: fixup \"Convert to new hotplug state machine\"\n  blk-mq: Convert to new hotplug state machine\n  blk-mq/cpu-notif: Convert to new hotplug state machine\n"
    },
    {
      "commit": "12e3d3cdd975fe986cc5c35f60b1467a8ec20b80",
      "tree": "14ec935d2e15f454ba69353fcf5329ac67f72e4f",
      "parents": [
        "48915c2cbc77eceec2005afb695ac658fede4e0d",
        "8ec2ef2b66ea2fd00acc28aca8edaad441dbb424"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 09 17:29:33 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 09 17:29:33 2016 -0700"
      },
      "message": "Merge branch \u0027for-4.9/block-irq\u0027 of git://git.kernel.dk/linux-block\n\nPull blk-mq irq/cpu mapping updates from Jens Axboe:\n \"This is the block-irq topic branch for 4.9-rc. It\u0027s mostly from\n  Christoph, and it allows drivers to specify their own mappings, and\n  more importantly, to share the blk-mq mappings with the IRQ affinity\n  mappings. It\u0027s a good step towards making this work better out of the\n  box\"\n\n* \u0027for-4.9/block-irq\u0027 of git://git.kernel.dk/linux-block:\n  blk_mq: linux/blk-mq.h does not include all the headers it depends on\n  blk-mq: kill unused blk_mq_create_mq_map()\n  blk-mq: get rid of the cpumask in struct blk_mq_tags\n  nvme: remove the post_scan callout\n  nvme: switch to use pci_alloc_irq_vectors\n  blk-mq: provide a default queue mapping for PCI device\n  blk-mq: allow the driver to pass in a queue mapping\n  blk-mq: remove -\u003emap_queue\n  blk-mq: only allocate a single mq_map per tag_set\n  blk-mq: don\u0027t redistribute hardware queues on a CPU hotplug event\n"
    },
    {
      "commit": "513a4befae06c4469abfb836e8f71977de58c636",
      "tree": "18cc7d0b01a7fd2352de734e99a4ca5c29ad5fac",
      "parents": [
        "87840a2b7e048018d18d60bdac5c09224de85370",
        "997198ba1ed691c09457120576c27dbd953d0557"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 07 14:42:05 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 07 14:42:05 2016 -0700"
      },
      "message": "Merge branch \u0027for-4.9/block\u0027 of git://git.kernel.dk/linux-block\n\nPull block layer updates from Jens Axboe:\n \"This is the main pull request for block layer changes in 4.9.\n\n  As mentioned at the last merge window, I\u0027ve changed things up and now\n  do just one branch for core block layer changes, and driver changes.\n  This avoids dependencies between the two branches. Outside of this\n  main pull request, there are two topical branches coming as well.\n\n  This pull request contains:\n\n   - A set of fixes, and a conversion to blk-mq, of nbd. From Josef.\n\n   - Set of fixes and updates for lightnvm from Matias, Simon, and Arnd.\n     Followup dependency fix from Geert.\n\n   - General fixes from Bart, Baoyou, Guoqing, and Linus W.\n\n   - CFQ async write starvation fix from Glauber.\n\n   - Add supprot for delayed kick of the requeue list, from Mike.\n\n   - Pull out the scalable bitmap code from blk-mq-tag.c and make it\n     generally available under the name of sbitmap. Only blk-mq-tag uses\n     it for now, but the blk-mq scheduling bits will use it as well.\n     From Omar.\n\n   - bdev thaw error progagation from Pierre.\n\n   - Improve the blk polling statistics, and allow the user to clear\n     them. From Stephen.\n\n   - Set of minor cleanups from Christoph in block/blk-mq.\n\n   - Set of cleanups and optimizations from me for block/blk-mq.\n\n   - Various nvme/nvmet/nvmeof fixes from the various folks\"\n\n* \u0027for-4.9/block\u0027 of git://git.kernel.dk/linux-block: (54 commits)\n  fs/block_dev.c: return the right error in thaw_bdev()\n  nvme: Pass pointers, not dma addresses, to nvme_get/set_features()\n  nvme/scsi: Remove power management support\n  nvmet: Make dsm number of ranges zero based\n  nvmet: Use direct IO for writes\n  admin-cmd: Added smart-log command support.\n  nvme-fabrics: Add host_traddr options field to host infrastructure\n  nvme-fabrics: revise host transport option descriptions\n  nvme-fabrics: rework nvmf_get_address() for variable options\n  nbd: use BLK_MQ_F_BLOCKING\n  blkcg: Annotate blkg_hint correctly\n  cfq: fix starvation of asynchronous writes\n  blk-mq: add flag for drivers wanting blocking -\u003equeue_rq()\n  blk-mq: remove non-blocking pass in blk_mq_map_request\n  blk-mq: get rid of manual run of queue with __blk_mq_run_hw_queue()\n  block: export bio_free_pages to other modules\n  lightnvm: propagate device_add() error code\n  lightnvm: expose device geometry through sysfs\n  lightnvm: control life of nvm_dev in driver\n  blk-mq: register device instead of disk\n  ...\n"
    },
    {
      "commit": "597f03f9d133e9837d00965016170271d4f87dcf",
      "tree": "33bdb5c1104d5b466387f4ae98748c5f4ddd29bb",
      "parents": [
        "999dcbe2414e15e19cdc1f91497d01f262c6e1cf",
        "0bf71e4d02ffec8ab9a6adecca61d3eed74fc99d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 03 19:43:08 2016 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 03 19:43:08 2016 -0700"
      },
      "message": "Merge branch \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull CPU hotplug updates from Thomas Gleixner:\n \"Yet another batch of cpu hotplug core updates and conversions:\n\n   - Provide core infrastructure for multi instance drivers so the\n     drivers do not have to keep custom lists.\n\n   - Convert custom lists to the new infrastructure. The block-mq custom\n     list conversion comes through the block tree and makes the diffstat\n     tip over to more lines removed than added.\n\n   - Handle unbalanced hotplug enable/disable calls more gracefully.\n\n   - Remove the obsolete CPU_STARTING/DYING notifier support.\n\n   - Convert another batch of notifier users.\n\n   The relayfs changes which conflicted with the conversion have been\n   shipped to me by Andrew.\n\n   The remaining lot is targeted for 4.10 so that we finally can remove\n   the rest of the notifiers\"\n\n* \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (46 commits)\n  cpufreq: Fix up conversion to hotplug state machine\n  blk/mq: Reserve hotplug states for block multiqueue\n  x86/apic/uv: Convert to hotplug state machine\n  s390/mm/pfault: Convert to hotplug state machine\n  mips/loongson/smp: Convert to hotplug state machine\n  mips/octeon/smp: Convert to hotplug state machine\n  fault-injection/cpu: Convert to hotplug state machine\n  padata: Convert to hotplug state machine\n  cpufreq: Convert to hotplug state machine\n  ACPI/processor: Convert to hotplug state machine\n  virtio scsi: Convert to hotplug state machine\n  oprofile/timer: Convert to hotplug state machine\n  block/softirq: Convert to hotplug state machine\n  lib/irq_poll: Convert to hotplug state machine\n  x86/microcode: Convert to hotplug state machine\n  sh/SH-X3 SMP: Convert to hotplug state machine\n  ia64/mca: Convert to hotplug state machine\n  ARM/OMAP/wakeupgen: Convert to hotplug state machine\n  ARM/shmobile: Convert to hotplug state machine\n  arm64/FP/SIMD: Convert to hotplug state machine\n  ...\n"
    },
    {
      "commit": "bbb427e342495df1cda10051d0566388697499c0",
      "tree": "f52002457cef52dd9e3cdcb490b6342a81767d9f",
      "parents": [
        "e0223003e6e141533446d01a92784592a97a8552"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bart.vanassche@sandisk.com",
        "time": "Thu Sep 29 08:33:30 2016 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Sep 30 10:31:20 2016 +0200"
      },
      "message": "blkcg: Unlock blkcg_pol_mutex only once when cpd \u003d\u003d NULL\n\nUnlocking a mutex twice is wrong. Hence modify blkcg_policy_register()\nsuch that blkcg_pol_mutex is unlocked once if cpd \u003d\u003d NULL. This patch\navoids that smatch reports the following error:\n\nblock/blk-cgroup.c:1378: blkcg_policy_register() error: double unlock \u0027mutex:\u0026blkcg_pol_mutex\u0027\n\nFixes: 06b285bd1125 (\"blkcg: fix blkcg_policy_data allocation bug\")\nSigned-off-by: Bart Van Assche \u003cbart.vanassche@sandisk.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: \u003cstable@vger.kernel.org\u003e # v4.2+\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "c8712c6a674e3382fe4d26d108251ccfa55d08e0",
      "tree": "0448232c6dc785440ade5f5ee5e648d9fc56d996",
      "parents": [
        "3b4ac78610690bd83fb33762ef97e8b8a89285ae"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Sep 23 10:25:48 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Fri Sep 23 10:25:48 2016 -0600"
      },
      "message": "blk-mq: skip unmapped queues in blk_mq_alloc_request_hctx\n\nThis provides the caller a feedback that a given hctx is not mapped and thus\nno command can be sent on it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nTested-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "3932a86b4b9d1f0b049d64d4591ce58ad18b44ec",
      "tree": "6909440a0a01bfabe865bc3e9e30314382a7b665",
      "parents": [
        "1b792f2f92784c00db2e6431496e437855d6f12a"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glauber@scylladb.com",
        "time": "Thu Sep 22 20:59:59 2016 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Fri Sep 23 10:01:24 2016 -0600"
      },
      "message": "cfq: fix starvation of asynchronous writes\n\nWhile debugging timeouts happening in my application workload (ScyllaDB), I have\nobserved calls to open() taking a long time, ranging everywhere from 2 seconds -\nthe first ones that are enough to time out my application - to more than 30\nseconds.\n\nThe problem seems to happen because XFS may block on pending metadata updates\nunder certain circumnstances, and that\u0027s confirmed with the following backtrace\ntaken by the offcputime tool (iovisor/bcc):\n\n    ffffffffb90c57b1 finish_task_switch\n    ffffffffb97dffb5 schedule\n    ffffffffb97e310c schedule_timeout\n    ffffffffb97e1f12 __down\n    ffffffffb90ea821 down\n    ffffffffc046a9dc xfs_buf_lock\n    ffffffffc046abfb _xfs_buf_find\n    ffffffffc046ae4a xfs_buf_get_map\n    ffffffffc046babd xfs_buf_read_map\n    ffffffffc0499931 xfs_trans_read_buf_map\n    ffffffffc044a561 xfs_da_read_buf\n    ffffffffc0451390 xfs_dir3_leaf_read.constprop.16\n    ffffffffc0452b90 xfs_dir2_leaf_lookup_int\n    ffffffffc0452e0f xfs_dir2_leaf_lookup\n    ffffffffc044d9d3 xfs_dir_lookup\n    ffffffffc047d1d9 xfs_lookup\n    ffffffffc0479e53 xfs_vn_lookup\n    ffffffffb925347a path_openat\n    ffffffffb9254a71 do_filp_open\n    ffffffffb9242a94 do_sys_open\n    ffffffffb9242b9e sys_open\n    ffffffffb97e42b2 entry_SYSCALL_64_fastpath\n    00007fb0698162ed [unknown]\n\nInspecting my run with blktrace, I can see that the xfsaild kthread exhibit very\nhigh \"Dispatch wait\" times, on the dozens of seconds range and consistent with\nthe open() times I have saw in that run.\n\nStill from the blktrace output, we can after searching a bit, identify the\nrequest that wasn\u0027t dispatched:\n\n  8,0   11      152    81.092472813   804  A  WM 141698288 + 8 \u003c- (8,1) 141696240\n  8,0   11      153    81.092472889   804  Q  WM 141698288 + 8 [xfsaild/sda1]\n  8,0   11      154    81.092473207   804  G  WM 141698288 + 8 [xfsaild/sda1]\n  8,0   11      206    81.092496118   804  I  WM 141698288 + 8 (   22911) [xfsaild/sda1]\n  \u003c\u003d\u003d\u003d\u003d \u0027I\u0027 means Inserted (into the IO scheduler) \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\u003e\n  8,0    0   289372    96.718761435     0  D  WM 141698288 + 8 (15626265317) [swapper/0]\n  \u003c\u003d\u003d\u003d\u003d Only 15s later the CFQ scheduler dispatches the request \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003e\n\nAs we can see above, in this particular example CFQ took 15 seconds to dispatch\nthis request. Going back to the full trace, we can see that the xfsaild queue\nhad plenty of opportunity to run, and it was selected as the active queue many\ntimes. It would just always be preempted by something else (example):\n\n  8,0    1        0    81.117912979     0  m   N cfq1618SN / insert_request\n  8,0    1        0    81.117913419     0  m   N cfq1618SN / add_to_rr\n  8,0    1        0    81.117914044     0  m   N cfq1618SN / preempt\n  8,0    1        0    81.117914398     0  m   N cfq767A  / slice expired t\u003d1\n  8,0    1        0    81.117914755     0  m   N cfq767A  / resid\u003d40\n  8,0    1        0    81.117915340     0  m   N / served: vt\u003d1948520448 min_vt\u003d1948520448\n  8,0    1        0    81.117915858     0  m   N cfq767A  / sl_used\u003d1 disp\u003d0 charge\u003d0 iops\u003d1 sect\u003d0\n\nwhere cfq767 is the xfsaild queue and cfq1618 corresponds to one of the ScyllaDB\nIO dispatchers.\n\nThe requests preempting the xfsaild queue are synchronous requests. That\u0027s a\ncharacteristic of ScyllaDB workloads, as we only ever issue O_DIRECT requests.\nWhile it can be argued that preempting ASYNC requests in favor of SYNC is part\nof the CFQ logic, I don\u0027t believe that doing so for 15+ seconds is anyone\u0027s\ngoal.\n\nMoreover, unless I am misunderstanding something, that breaks the expectation\nset by the \"fifo_expire_async\" tunable, which in my system is set to the\ndefault.\n\nLooking at the code, it seems to me that the issue is that after we make\nan async queue active, there is no guarantee that it will execute any request.\n\nWhen the queue itself tests if it cfq_may_dispatch() it can bail if it sees SYNC\nrequests in flight. An incoming request from another queue can also preempt it\nin such situation before we have the chance to execute anything (as seen in the\ntrace above).\n\nThis patch sets the must_dispatch flag if we notice that we have requests\nthat are already fifo_expired. This flag is always cleared after\ncfq_dispatch_request() returns from cfq_dispatch_requests(), so it won\u0027t pin\nthe queue for subsequent requests (unless they are themselves expired)\n\nCare is taken during preempt to still allow rt requests to preempt us\nregardless.\n\nTesting my workload with this patch applied produces much better results.\nFrom the application side I see no timeouts, and the open() latency histogram\ngenerated by systemtap looks much better, with the worst outlier at 131ms:\n\nLatency histogram of xfs_buf_lock acquisition (microseconds):\n value |-------------------------------------------------- count\n     0 |                                                     11\n     1 |@@@@                                                161\n     2 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  1966\n     4 |@                                                    54\n     8 |                                                     36\n    16 |                                                      7\n    32 |                                                      0\n    64 |                                                      0\n       ~\n  1024 |                                                      0\n  2048 |                                                      0\n  4096 |                                                      1\n  8192 |                                                      1\n 16384 |                                                      2\n 32768 |                                                      0\n 65536 |                                                      0\n131072 |                                                      1\n262144 |                                                      0\n524288 |                                                      0\n\nSigned-off-by: Glauber Costa \u003cglauber@scylladb.com\u003e\nCC: Jens Axboe \u003caxboe@kernel.dk\u003e\nCC: linux-block@vger.kernel.org\nCC: linux-kernel@vger.kernel.org\n\nSigned-off-by: Glauber Costa \u003cglauber@scylladb.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "97a32864e6de5944c6356049f60569de01e9ba1f",
      "tree": "76f5a1818cd0323ae09debb061a3f23d625ca2d6",
      "parents": [
        "65d5291eee667b9b310123991234f2fb18e51548"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Fri Sep 23 15:02:38 2016 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Fri Sep 23 09:49:32 2016 -0600"
      },
      "message": "blk-mq: fixup \"Convert to new hotplug state machine\"\n\nThe \"blk_mq_queue_reinit_dead()\" just cleared the cpumask instead doing\na copy. Since we might never had an online callback we could end up with\na ZERO mask which in turn leads to crash as test robot demonstarted.\n\nFixes: 65d5291eee66 (\"blk-mq: Convert to new hotplug state machine\")\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "1b792f2f92784c00db2e6431496e437855d6f12a",
      "tree": "50c049a9056d96ebaf176d6a339f655282ff9098",
      "parents": [
        "63581af3f31e0dbea112b83f77c4fbb6a10e1406"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Wed Sep 21 10:12:13 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 22 14:28:38 2016 -0600"
      },
      "message": "blk-mq: add flag for drivers wanting blocking -\u003equeue_rq()\n\nIf a driver sets BLK_MQ_F_BLOCKING, it is allowed to block in its\n-\u003equeue_rq() handler. For that case, blk-mq ensures that we always\ncalls it from a safe context.\n\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nTested-by: Josef Bacik \u003cjbacik@fb.com\u003e\n"
    },
    {
      "commit": "63581af3f31e0dbea112b83f77c4fbb6a10e1406",
      "tree": "ca9d5f19448c800daffee3183e197ff361a2c495",
      "parents": [
        "841bac2c87fc21c3ecf3bc3354855921735aeec1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Sep 22 11:38:23 2016 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 22 14:27:39 2016 -0600"
      },
      "message": "blk-mq: remove non-blocking pass in blk_mq_map_request\n\nbt_get already does a non-blocking pass as well as running the queue\nwhen scheduling internally, no need to duplicate it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "841bac2c87fc21c3ecf3bc3354855921735aeec1",
      "tree": "950195b86586bf2aee0fc21229d083a5b139b1b6",
      "parents": [
        "491221f88d00651e449c9caf7415b6453c8a77b7"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Wed Sep 21 10:08:43 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 22 09:39:53 2016 -0600"
      },
      "message": "blk-mq: get rid of manual run of queue with __blk_mq_run_hw_queue()\n\nTwo cases:\n\n1) blk_mq_alloc_request() needlessly re-runs the queue, after\n   calling into the tag allocation without NOWAIT set. We don\u0027t\n   need to do that.\n\n2) blk_mq_map_request() should just use blk_mq_run_hw_queue() with\n   the async flag set to false.\n\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "65d5291eee667b9b310123991234f2fb18e51548",
      "tree": "f6f2dde61df2e89ca826f97c4e6a44e8ee028597",
      "parents": [
        "9467f85960a31d56f95371516e55e210e1e3d51c"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Thu Sep 22 08:05:19 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 22 08:05:19 2016 -0600"
      },
      "message": "blk-mq: Convert to new hotplug state machine\n\nInstall the callbacks via the state machine so we can phase out the cpu\nhotplug notifiers mess.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: linux-block@vger.kernel.org\nCc: rt@linutronix.de\nCc: Christoph Hellwing \u003chch@lst.de\u003e\nLink: http://lkml.kernel.org/r/20160919212601.180033814@linutronix.de\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "9467f85960a31d56f95371516e55e210e1e3d51c",
      "tree": "9f770d6ff47c5bf72ad037f5b266fc77378050d6",
      "parents": [
        "5dfcfb02e18dec9a2f56765011817706e1ab1daf"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 22 08:05:17 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 22 08:05:17 2016 -0600"
      },
      "message": "blk-mq/cpu-notif: Convert to new hotplug state machine\n\nReplace the block-mq notifier list management with the multi instance\nfacility in the cpu hotplug state machine.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: linux-block@vger.kernel.org\nCc: rt@linutronix.de\nCc: Christoph Hellwing \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "491221f88d00651e449c9caf7415b6453c8a77b7",
      "tree": "8021285e1ee5eaff42fa4a5a00929ad36dad7633",
      "parents": [
        "1e3aeae4ea710023dda2a6b780183ee371d1a796"
      ],
      "author": {
        "name": "Guoqing Jiang",
        "email": "gqjiang@suse.com",
        "time": "Thu Sep 22 03:10:01 2016 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 22 07:48:03 2016 -0600"
      },
      "message": "block: export bio_free_pages to other modules\n\nbio_free_pages is introduced in commit 1dfa0f68c040\n(\"block: add a helper to free bio bounce buffer pages\"),\nwe can reuse the func in other modules after it was\nimported.\n\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jens Axboe \u003caxboe@fb.com\u003e\nCc: Mike Snitzer \u003csnitzer@redhat.com\u003e\nCc: Shaohua Li \u003cshli@fb.com\u003e\nSigned-off-by: Guoqing Jiang \u003cgqjiang@suse.com\u003e\nAcked-by: Kent Overstreet \u003ckent.overstreet@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "b21d5b301794ae332eaa6e177d71fe8b77d3664c",
      "tree": "338c8338e49341229936f0a38c1d58841f664ff6",
      "parents": [
        "9ae2d0aa5046c67dd37cf4b70998ad296e718835"
      ],
      "author": {
        "name": "Matias Bjørling",
        "email": "m@bjorling.me",
        "time": "Fri Sep 16 14:25:06 2016 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Wed Sep 21 07:56:16 2016 -0600"
      },
      "message": "blk-mq: register device instead of disk\n\nEnable devices without a gendisk instance to register itself with blk-mq\nand expose the associated multi-queue sysfs entries.\n\nSigned-off-by: Matias Bjørling \u003cm@bjorling.me\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "164c80ed84a7669114869d9347c0f3ea7f56ea89",
      "tree": "cc7a1df35a2c6127a49b279d87020cf8e8503113",
      "parents": [
        "3be7988674ab33565700a37b210f502563d932e6"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Mon Sep 19 15:12:41 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Mon Sep 19 15:12:41 2016 -0600"
      },
      "message": "blk-throttle: Extend slice if throttle group is not empty\n\nRight now, if slice is expired, we start a new slice. If a bio is\nqueued, we keep on extending slice by throtle_slice interval (100ms).\n\nThis worked well as long as pending timer function got executed with-in\nfew milli seconds of scheduled time. But looks like with recent changes\nin timer subsystem, slack can be much longer depending on the expiry time\nof the scheduled timer.\n\ncommit 500462a9de65 (\"timers: Switch to a non-cascading wheel\")\n\nThis means, by the time timer function gets executed, it is possible the\ndelay from scheduled time is more than 100ms. That means current code\nwill conclude that existing slice has expired and a new one needs to\nbe started. New slice will be 100ms by default and that will not be\nsufficient to meet rate requirement of group given the bio size and\nbio will not be dispatched and we will start a new timer function to\nwait. And when that timer expires, same process will repeat and we\nwill wait again and this can easily be an infinite loop.\n\nSolve this issue by starting a new slice only if throttle gropup is\nempty. If it is not empty, that means there should be an active slice\ngoing on. Ideally it should not be expired but given the slack, it is\npossible that it has expired.\n\nReported-by: Hou Tao \u003choutao1@huawei.com\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "9a659f43dfea27cca423d4e80809be447f4c9ce7",
      "tree": "199546092aa55bb1ed17bfb4b0a9badb21b9f6da",
      "parents": [
        "75e12ed65312a56401f3b286ac7e12994301371c"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Tue Sep 06 19:04:44 2016 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Sep 19 21:44:28 2016 +0200"
      },
      "message": "block/softirq: Convert to hotplug state machine\n\nInstall the callbacks via the state machine.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: rt@linutronix.de\nLink: http://lkml.kernel.org/r/20160906170457.32393-9-bigeasy@linutronix.de\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "8ec2ef2b66ea2fd00acc28aca8edaad441dbb424",
      "tree": "5f46c82958d879c841ae666c7fbeb1a520eb08db",
      "parents": [
        "9151bcb4fb38aab04cdc67cc3b3e11396db1b8b4"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Mon Sep 19 15:50:16 2016 +1000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Mon Sep 19 08:21:51 2016 -0600"
      },
      "message": "blk_mq: linux/blk-mq.h does not include all the headers it depends on\n\nand building block/blk-mq-pci.o should depend on CONFIG_BLOCK\n\nFixes: 973c4e372c8f (\"blk-mq: provide a default queue mapping for PCI device\")\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "98d95416dbfaf4910caadfb4ddc75e4aacbdff8c",
      "tree": "ed6a08e6d4358da522265ac1e6a595fe8db35572",
      "parents": [
        "f4a644db86669d938c71f19560aebf69d4720d63"
      ],
      "author": {
        "name": "Omar Sandoval",
        "email": "osandov@fb.com",
        "time": "Sat Sep 17 01:28:25 2016 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Sat Sep 17 08:39:14 2016 -0600"
      },
      "message": "sbitmap: randomize initial alloc_hint values\n\nIn order to get good cache behavior from a sbitmap, we want each CPU to\nstick to its own cacheline(s) as much as possible. This might happen\nnaturally as the bitmap gets filled up and the alloc_hint values spread\nout, but we really want this behavior from the start. blk-mq apparently\nintended to do this, but the code to do this was never wired up. Get rid\nof the dead code and make it part of the sbitmap library.\n\nSigned-off-by: Omar Sandoval \u003cosandov@fb.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "f4a644db86669d938c71f19560aebf69d4720d63",
      "tree": "9a3f2df232414fdeae47881639ed1ed77406198a",
      "parents": [
        "40aabb67464d5aad9ca3d2a5fedee56e2ff45aa0"
      ],
      "author": {
        "name": "Omar Sandoval",
        "email": "osandov@fb.com",
        "time": "Sat Sep 17 01:28:24 2016 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Sat Sep 17 08:39:12 2016 -0600"
      },
      "message": "sbitmap: push alloc policy into sbitmap_queue\n\nAgain, there\u0027s no point in passing this in every time. Make it part of\nstruct sbitmap_queue and clean up the API.\n\nSigned-off-by: Omar Sandoval \u003cosandov@fb.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "40aabb67464d5aad9ca3d2a5fedee56e2ff45aa0",
      "tree": "19592825f8eb48363f5f9279c0d32003e7ed6532",
      "parents": [
        "48e28166a7b608e19a6aea3acadd81cdfe660f6b"
      ],
      "author": {
        "name": "Omar Sandoval",
        "email": "osandov@fb.com",
        "time": "Sat Sep 17 01:28:23 2016 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Sat Sep 17 08:39:10 2016 -0600"
      },
      "message": "sbitmap: push per-cpu last_tag into sbitmap_queue\n\nAllocating your own per-cpu allocation hint separately makes for an\nawkward API. Instead, allocate the per-cpu hint as part of the struct\nsbitmap_queue. There\u0027s no point for a struct sbitmap_queue without the\ncache, but you can still use a bare struct sbitmap.\n\nSigned-off-by: Omar Sandoval \u003cosandov@fb.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "88459642cba452630326b9cab1c651e09577d4e4",
      "tree": "cd7ecd917b294a92ff827b0e7dab526f0069547f",
      "parents": [
        "703fd1c0f177219e3a84e6c095c31dc566514d81"
      ],
      "author": {
        "name": "Omar Sandoval",
        "email": "osandov@fb.com",
        "time": "Sat Sep 17 08:38:44 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Sat Sep 17 08:38:44 2016 -0600"
      },
      "message": "blk-mq: abstract tag allocation out into sbitmap library\n\nThis is a generally useful data structure, so make it available to\nanyone else who might want to use it. It\u0027s also a nice cleanup\nseparating the allocation logic from the rest of the tag handling logic.\n\nThe code is behind a new Kconfig option, CONFIG_SBITMAP, which is only\nselected by CONFIG_BLOCK for now.\n\nThis should be a complete noop functionality-wise.\n\nSigned-off-by: Omar Sandoval \u003cosandov@fb.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    },
    {
      "commit": "703fd1c0f177219e3a84e6c095c31dc566514d81",
      "tree": "468875ddeecad8922369359e863e100d061995ef",
      "parents": [
        "2849450ad39d2e699fda2d5c6f41e05d87fd7004"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Fri Sep 16 13:59:14 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Fri Sep 16 14:03:04 2016 -0600"
      },
      "message": "blk-mq: account higher order dispatch\n\nWe currently account a \u00270\u0027 dispatch, and anything above that still falls\nbelow the range set by BLK_MQ_MAX_DISPATCH_ORDER. If we dispatch more,\nwe don\u0027t account it.\n\nChange the last bucket to be inclusive of anything above the range we\ntrack, and have the sysfs file reflect that by including a \u0027+\u0027 in the\noutput:\n\n$ cat /sys/block/nvme0n1/mq/0/dispatched\n        0\t1006\n        1\t20229\n        2\t1\n        4\t0\n        8\t0\n       16\t0\n       32+\t0\n\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\nReviewed-by: Omar Sandoval \u003cosandov@fb.com\u003e\n"
    },
    {
      "commit": "9151bcb4fb38aab04cdc67cc3b3e11396db1b8b4",
      "tree": "21c63aa480fc912adf83d1aa37e32ca061d410c2",
      "parents": [
        "1b157939f92ae22d10b9d52baaa14f826927f5ff"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 15 08:45:45 2016 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Thu Sep 15 08:45:45 2016 -0600"
      },
      "message": "blk-mq: kill unused blk_mq_create_mq_map()\n\nFixes 1b157939f92a (\"blk-mq: get rid of the cpumask in struct blk_mq_tags\")\nSigned-off-by: Jens Axboe \u003caxboe@fb.com\u003e\n"
    }
  ],
  "next": "1b157939f92ae22d10b9d52baaa14f826927f5ff"
}
