From: Sasha Levin <Alexander.Levin@microsoft.com>
To: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"stable@vger.kernel.org" <stable@vger.kernel.org>
Cc: NeilBrown <neilb@suse.com>, Mike Snitzer <snitzer@redhat.com>,
Sasha Levin <Alexander.Levin@microsoft.com>
Subject: [PATCH AUTOSEL for 4.9 156/190] dm: ensure bio submission follows a depth-first tree walk
Date: Thu, 8 Mar 2018 05:00:01 +0000 [thread overview]
Message-ID: <20180308045810.8041-156-alexander.levin@microsoft.com> (raw)
In-Reply-To: <20180308045810.8041-1-alexander.levin@microsoft.com>
From: NeilBrown <neilb@suse.com>
[ Upstream commit 18a25da84354c6bb655320de6072c00eda6eb602 ]
A dm device can, in general, represent a tree of targets, each of which
handles a sub-range of the range of blocks handled by the parent.
The bio sequencing managed by generic_make_request() requires that bios
are generated and handled in a depth-first manner. Each call to a
make_request_fn() may submit bios to a single member device, and may
submit bios for a reduced region of the same device as the
make_request_fn.
In particular, any bios submitted to member devices must be expected to
be processed in order, so a later one must never wait for an earlier
one.
This ordering is usually achieved by using bio_split() to reduce a bio
to a size that can be completely handled by one target, and resubmitting
the remainder to the originating device. bio_queue_split() shows the
canonical approach.
dm doesn't follow this approach, largely because it has needed to split
bios since long before bio_split() was available. It currently can
submit bios to separate targets within the one dm_make_request() call.
Dependencies between these targets, as can happen with dm-snap, can
cause deadlocks if either bios gets stuck behind the other in the queues
managed by generic_make_request(). This requires the 'rescue'
functionality provided by dm_offload_{start,end}.
Some of this requirement can be removed by changing the order of bio
submission to follow the canonical approach. That is, if dm finds that
it needs to split a bio, the remainder should be sent to
generic_make_request() rather than being handled immediately. This
delays the handling until the first part is completely processed, so the
deadlock problems do not occur.
__split_and_process_bio() can be called both from dm_make_request() and
from dm_wq_work(). When called from dm_wq_work() the current approach
is perfectly satisfactory as each bio will be processed immediately.
When called from dm_make_request(), current->bio_list will be non-NULL,
and in this case it is best to create a separate "clone" bio for the
remainder.
When we use bio_clone_bioset() to split off the front part of a bio
and chain the two together and submit the remainder to
generic_make_request(), it is important that the newly allocated
bio is used as the head to be processed immediately, and the original
bio gets "bio_advance()"d and sent to generic_make_request() as the
remainder. Otherwise, if the newly allocated bio is used as the
remainder, and if it then needs to be split again, then the next
bio_clone_bioset() call will be made while holding a reference a bio
(result of the first clone) from the same bioset. This can potentially
exhaust the bioset mempool and result in a memory allocation deadlock.
Note that there is no race caused by reassigning cio.io->bio after already
calling __map_bio(). This bio will only be dereferenced again after
dec_pending() has found io->io_count to be zero, and this cannot happen
before the dec_pending() call at the end of __split_and_process_bio().
To provide the clone bio when splitting, we use q->bio_split. This
was previously being freed by bio-based dm to avoid having excess
rescuer threads. As bio_split bio sets no longer create rescuer
threads, there is little cost and much gain from restoring the
q->bio_split bio set.
Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
---
drivers/md/dm.c | 33 ++++++++++++++++++++++++---------
1 file changed, 24 insertions(+), 9 deletions(-)
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
index 2ffe7db75acb..2b2ced91dda5 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
@@ -1320,8 +1320,29 @@ static void __split_and_process_bio(struct mapped_device *md,
} else {
ci.bio = bio;
ci.sector_count = bio_sectors(bio);
- while (ci.sector_count && !error)
+ while (ci.sector_count && !error) {
error = __split_and_process_non_flush(&ci);
+ if (current->bio_list && ci.sector_count && !error) {
+ /*
+ * Remainder must be passed to generic_make_request()
+ * so that it gets handled *after* bios already submitted
+ * have been completely processed.
+ * We take a clone of the original to store in
+ * ci.io->bio to be used by end_io_acct() and
+ * for dec_pending to use for completion handling.
+ * As this path is not used for REQ_OP_ZONE_REPORT,
+ * the usage of io->bio in dm_remap_zone_report()
+ * won't be affected by this reassignment.
+ */
+ struct bio *b = bio_clone_bioset(bio, GFP_NOIO,
+ md->queue->bio_split);
+ ci.io->bio = b;
+ bio_advance(bio, (bio_sectors(bio) - ci.sector_count) << 9);
+ bio_chain(b, bio);
+ generic_make_request(bio);
+ break;
+ }
+ }
}
/* drop the extra reference count */
@@ -1332,8 +1353,8 @@ static void __split_and_process_bio(struct mapped_device *md,
*---------------------------------------------------------------*/
/*
- * The request function that just remaps the bio built up by
- * dm_merge_bvec.
+ * The request function that remaps the bio to one target and
+ * splits off any remainder.
*/
static blk_qc_t dm_make_request(struct request_queue *q, struct bio *bio)
{
@@ -1854,12 +1875,6 @@ int dm_setup_md_queue(struct mapped_device *md, struct dm_table *t)
case DM_TYPE_DAX_BIO_BASED:
dm_init_normal_md_queue(md);
blk_queue_make_request(md->queue, dm_make_request);
- /*
- * DM handles splitting bios as needed. Free the bio_split bioset
- * since it won't be used (saves 1 process per bio-based DM device).
- */
- bioset_free(md->queue->bio_split);
- md->queue->bio_split = NULL;
if (type == DM_TYPE_DAX_BIO_BASED)
queue_flag_set_unlocked(QUEUE_FLAG_DAX, md->queue);
--
2.14.1
next prev parent reply other threads:[~2018-03-08 5:04 UTC|newest]
Thread overview: 195+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-08 4:58 [PATCH AUTOSEL for 4.9 001/190] powerpc/nohash: Fix use of mmu_has_feature() in setup_initial_memory_limit() Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 002/190] usb: dwc2: Make sure we disconnect the gadget state Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 003/190] usb: gadget: dummy_hcd: Fix wrong power status bit clear/reset in dummy_hub_control() Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 005/190] iwlwifi: mvm: fix RX SKB header size and align it properly Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 004/190] perf evsel: Return exact sub event which failed with EPERM for wildcards Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 007/190] perf session: Don't rely on evlist in pipe mode Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 006/190] drivers/perf: arm_pmu: handle no platform_device Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 009/190] vfio/spapr_tce: Check kzalloc() return when preregistering memory Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 008/190] vfio/powerpc/spapr_tce: Enforce IOMMU type compatibility check Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 010/190] scsi: sg: check for valid direction before starting the request Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 011/190] scsi: sg: close race condition in sg_remove_sfp_usercontext() Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 012/190] ALSA: hda: Add Geminilake id to SKL_PLUS Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 013/190] kprobes/x86: Fix kprobe-booster not to boost far call instructions Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 014/190] kprobes/x86: Set kprobes pages read-only Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 015/190] pwm: tegra: Increase precision in PWM rate calculation Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 018/190] Bluetooth: 6lowpan: fix delay work init in add_peer_chan() Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 017/190] Bluetooth: Avoid bt_accept_unlink() double unlinking Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 016/190] clk: qcom: msm8996: Fix the vfe1 powerdomain name Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 020/190] ath10k: fix compile time sanity check for CE4 buffer size Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 019/190] mac80211_hwsim: use per-interface power level Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 022/190] wil6210: fix memory access violation in wil_memcpy_from/toio_32 Sasha Levin
2018-03-08 4:58 ` [PATCH AUTOSEL for 4.9 021/190] wil6210: fix protection against connections during reset Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 023/190] perf stat: Fix bug in handling events in error state Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 024/190] mwifiex: Fix invalid port issue Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 026/190] bonding: handle link transition from FAIL to UP correctly Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 025/190] platform/x86: asus-nb-wmi: Add wapf4 quirk for the X302UA Sasha Levin
2018-03-08 17:39 ` Darren Hart
2018-03-08 17:47 ` Greg KH
2018-03-08 18:15 ` Sasha Levin
2018-03-08 18:37 ` Darren Hart
2018-03-09 16:37 ` Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 028/190] power: supply: bq24190_charger: Limit over/under voltage fault logging Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 027/190] regulator: anatop: set default voltage selector for pcie Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 029/190] x86: i8259: export legacy_pic symbol Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 031/190] Input: ar1021_i2c - fix too long name in driver's device table Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 030/190] rtc: cmos: Do not assume irq 8 for rtc when there are no legacy irqs Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 032/190] time: Change posix clocks ops interfaces to use timespec64 Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 033/190] ACPI/processor: Fix error handling in __acpi_processor_start() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 035/190] cpufreq/sh: Replace racy task affinity logic Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 034/190] ACPI/processor: " Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 037/190] i2c: i2c-scmi: add a MS HID Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 036/190] genirq: Use irqd_get_trigger_type to compare the trigger type for shared IRQs Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 038/190] net: ipv6: send unsolicited NA on admin up Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 040/190] btrfs: fix a bogus warning when converting only data or metadata Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 039/190] [media] media/dvb-core: Race condition when writing to CAM Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 041/190] ASoC: Intel: Atom: update Thinkpad 10 quirk Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 042/190] tools/testing/nvdimm: fix nfit_test shutdown crash Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 043/190] spi: dw: Disable clock after unregistering the host Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 045/190] ath: Fix updating radar flags for coutry code India Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 044/190] powerpc/64s: Remove SAO feature from Power9 DD1 Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 048/190] iwlwifi: a000: fix memory offsets and lengths Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 046/190] clk: ns2: Correct SDIO bits Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 047/190] iwlwifi: split the handler and the wake parts of the notification infra Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 050/190] KVM: PPC: Book3S PR: Exit KVM on failed mapping Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 049/190] scsi: virtio_scsi: Always try to read VPD pages Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 051/190] mwifiex: don't leak 'chan_stats' on reset Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 052/190] x86/reboot: Turn off KVM when halting a CPU Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 054/190] irqchip/mips-gic: Separate IPI reservation & usage tracking Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 053/190] ARM: 8668/1: ftrace: Fix dynamic ftrace with DEBUG_RODATA and !FRAME_POINTER Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 055/190] iommu/omap: Register driver before setting IOMMU ops Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 056/190] md/raid10: wait up frozen array in handle_write_completed Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 059/190] e1000e: fix timing for 82579 Gigabit Ethernet controller Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 057/190] NFS: Fix missing pg_cleanup after nfs_pageio_cond_complete() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 058/190] tcp: remove poll() flakes with FastOpen Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 061/190] IB/ipoib: Fix deadlock between ipoib_stop and mcast join flow Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 060/190] ALSA: hda - Fix headset microphone detection for ASUS N551 and N751 Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 063/190] HSI: ssi_protocol: double free in ssip_pn_xmit() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 062/190] IB/ipoib: Update broadcast object if PKey value was changed in index 0 Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 065/190] IB/mlx4: Change vma from shared to private Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 064/190] IB/mlx4: Take write semaphore when changing the vma struct Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 066/190] IB/mlx5: " Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 067/190] IB/mlx5: Change vma from shared to private Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 068/190] IB/mlx5: Set correct SL in completion for RoCE Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 070/190] ibmvnic: Disable irq prior to close Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 069/190] ASoC: Intel: Skylake: Uninitialized variable in probe_codec() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 072/190] Fix driver usage of 128B WQEs when WQ_CREATE is V1 Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 071/190] netvsc: Deal with rescinded channels correctly Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 074/190] gpio: gpio-wcove: fix irq pending status bit width Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 073/190] Fix Express lane queue creation Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 075/190] netfilter: xt_CT: fix refcnt leak on error path Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 077/190] netfilter: nf_ct_helper: permit cthelpers with different names via nfnetlink Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 076/190] openvswitch: Delete conntrack entry clashing with an expectation Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 079/190] tipc: check return value of nlmsg_new Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 078/190] mmc: host: omap_hsmmc: checking for NULL instead of IS_ERR() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 081/190] qlcnic: fix unchecked return value Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 080/190] wan: pc300too: abort path on failure Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 082/190] netfilter: nft_dynset: continue to next expr if _OP_ADD succeeded Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 084/190] scsi: mac_esp: Replace bogus memory barrier with spinlock Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 083/190] platform/x86: intel-vbtn: add volume up and down Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 086/190] pNFS: Fix use after free issues in pnfs_do_read() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 085/190] infiniband/uverbs: Fix integer overflows Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 087/190] xprtrdma: Cancel refresh worker during buffer shutdown Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 088/190] NFS: don't try to cross a mountpount when there isn't one there Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 089/190] iio: st_pressure: st_accel: Initialise sensor platform data properly Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 090/190] mt7601u: check return value of alloc_skb Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 091/190] libertas: check return value of alloc_workqueue Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 094/190] Btrfs: send, fix file hole not being preserved due to inline extent Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 092/190] rndis_wlan: add return value validation Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 093/190] Btrfs: fix incorrect space accounting after failure to insert inline extent Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 096/190] orangefs: do not wait for timeout if umounting Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 095/190] Btrfs: fix extent map leak during fallocate error path Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 097/190] mac80211: don't parse encrypted management frames in ieee80211_frame_acked Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 098/190] ACPICA: iasl: Fix IORT SMMU GSI disassembling Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 099/190] iio: hid-sensor: fix return of -EINVAL on invalid values in ret or value Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 101/190] mfd: palmas: Reset the POWERHOLD mux during power off Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 100/190] dt-bindings: mfd: axp20x: Add "xpowers,master-mode" property for AXP806 PMICs Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 103/190] x86/KASLR: Fix kexec kernel boot crash when KASLR randomization fails Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 102/190] mtip32xx: use runtime tag to initialize command header Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 105/190] staging: unisys: visorhba: fix s-Par to boot with option CONFIG_VMAP_STACK set to y Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 104/190] gpio: gpio-wcove: fix GPIO IRQ status mask Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 107/190] ipvs: explicitly forbid ipv6 service/dest creation if ipv6 mod is disabled Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 106/190] staging: wilc1000: fix unchecked return value Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 108/190] mac80211: Fix possible sband related NULL pointer de-reference Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 110/190] netfilter: x_tables: unlock on error in xt_find_table_lock() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 111/190] ARM: DRA7: clockdomain: Change the CLKTRCTRL of CM_PCIE_CLKSTCTRL to SW_WKUP Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 109/190] mmc: sdhci-of-esdhc: limit SD clock for ls1012a/ls1046a Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 113/190] IB/hfi1: Fix softlockup issue Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 112/190] IB/rdmavt: restore IRQs on error path in rvt_create_ah() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 114/190] platform/x86: asus-wmi: try to set als by default Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 116/190] ACPI / PMIC: xpower: Fix power_table addresses Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 115/190] ipmi/watchdog: fix wdog hang on panic waiting for ipmi response Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 117/190] drm/amdgpu: fix gpu reset crash Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 118/190] drm/nouveau/kms: Increase max retries in scanout position queries Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 119/190] jbd2: Fix lockdep splat with generic/270 test Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 120/190] ixgbevf: fix size of queue stats length Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 121/190] net: ethernet: ucc_geth: fix MEM_PART_MURAM mode Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 122/190] soc/fsl/qe: round brg_freq to 1kHz granularity Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 123/190] Bluetooth: hci_ldisc: Add protocol check to hci_uart_dequeue() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 124/190] Bluetooth: hci_ldisc: Add protocol check to hci_uart_tx_wakeup() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 125/190] vxlan: correctly handle ipv6.disable module parameter Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 127/190] bnx2x: Align RX buffers Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 128/190] power: supply: bq24190_charger: Add disable-reset device-property Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 126/190] qed: Unlock on error in qed_vf_pf_acquire() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 129/190] power: supply: isp1704: Fix unchecked return value of devm_kzalloc Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 130/190] power: supply: pda_power: move from timer to delayed_work Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 131/190] Input: twl4030-pwrbutton - use correct device for irq request Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 132/190] IB/rxe: Don't clamp residual length to mtu Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 134/190] ACPI / power: Delay turning off unused power resources after suspend Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 133/190] md/raid10: skip spare disk as 'first' disk Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 136/190] tcm_fileio: Prevent information leak for short reads Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 135/190] ia64: fix module loading for gcc-5.4 Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 137/190] x86/xen: split xen_smp_prepare_boot_cpu() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 138/190] video: fbdev: udlfb: Fix buffer on stack Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 139/190] sm501fb: don't return zero on failure path in sm501fb_start() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 140/190] pNFS: Fix a deadlock when coalescing writes and returning the layout Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 141/190] net: hns: fix ethtool_get_strings overflow in hns driver Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 142/190] cifs: small underflow in cnvrtDosUnixTm() Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 143/190] mm: fix check for reclaimable pages in PF_MEMALLOC reclaim throttling Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 144/190] mm, vmstat: suppress pcp stats for unpopulated zones in zoneinfo Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 145/190] oom: improve oom disable handling Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 146/190] mm: hwpoison: call shake_page() after try_to_unmap() for mlocked page Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 147/190] rtc: ds1374: wdt: Fix issue with timeout scaling from secs to wdt ticks Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 148/190] rtc: ds1374: wdt: Fix stop/start ioctl always returning -EINVAL Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 149/190] ath10k: fix out of bounds access to local buffer Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 151/190] block/mq: Cure cpu hotplug lock inversion Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 150/190] perf tests kmod-path: Don't fail if compressed modules aren't supported Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 152/190] Bluetooth: hci_qca: Avoid setup failure on missing rampatch Sasha Levin
2018-03-08 4:59 ` [PATCH AUTOSEL for 4.9 153/190] Bluetooth: btqcomsmd: Fix skb double free corruption Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 155/190] drm/msm: fix leak in failed get_pages Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 154/190] media: c8sectpfe: fix potential NULL pointer dereference in c8sectpfe_timer_interrupt Sasha Levin
2018-03-08 5:00 ` Sasha Levin [this message]
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 157/190] RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo() Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 158/190] rtlwifi: rtl_pci: Fix the bug when inactiveps is enabled Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 159/190] media: bt8xx: Fix err 'bt878_probe()' Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 161/190] media: [RESEND] media: dvb-frontends: Add delay to Si2168 restart Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 160/190] ath10k: handling qos at STA side based on AP WMM enable/disable Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 163/190] serial: 8250_dw: Disable clock on error Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 162/190] qmi_wwan: set FLAG_SEND_ZLP to avoid network initiated disconnect Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 165/190] watchdog: Fix potential kref imbalance when opening watchdog Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 164/190] cros_ec: fix nul-termination for firmware build info Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 166/190] platform/chrome: Use proper protocol transfer function Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 168/190] drm/tilcdc: ensure nonatomic iowrite64 is not used Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 167/190] dmaengine: zynqmp_dma: Fix race condition in the probe Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 169/190] mmc: avoid removing non-removable hosts during suspend Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 170/190] rtc: ac100: Fix multiple race conditions Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 172/190] RDMA/cma: Use correct size when writing netlink stats Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 171/190] IB/ipoib: Avoid memory leak if the SA returns a different DGID Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 173/190] IB/umem: Fix use of npages/nmap fields Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 174/190] iser-target: avoid reinitializing rdma contexts for isert commands Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 175/190] vgacon: Set VGA struct resource types Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 177/190] drm/omap: DMM: Check for DMM readiness after successful transaction commit Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 176/190] omapdrm: panel: fix compatible vendor string for td028ttec1 Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 179/190] coresight: Fix disabling of CoreSight TPIU Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 178/190] pty: cancel pty slave port buf's work in tty_release Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 180/190] pinctrl: Really force states during suspend/resume Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 181/190] pinctrl: rockchip: enable clock when reading pin direction register Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 184/190] RDMA/ocrdma: Fix permissions for OCRDMA_RESET_STATS Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 182/190] iommu/vt-d: clean up pr_irq if request_threaded_irq fails Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 183/190] ip6_vti: adjust vti mtu according to mtu of lower device Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 186/190] nfsd4: permit layoutget of executable-only files Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 185/190] ARM: dts: aspeed-evb: Add unit name to memory node Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 188/190] clk: axi-clkgen: Correctly handle nocount bit in recalc_rate() Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 187/190] clk: Don't touch hardware when reparenting during registration Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 189/190] clk: si5351: Rename internal plls to avoid name collisions Sasha Levin
2018-03-08 5:00 ` [PATCH AUTOSEL for 4.9 190/190] dmaengine: ti-dma-crossbar: Fix event mapping for TPCC_EVT_MUX_60_63 Sasha Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180308045810.8041-156-alexander.levin@microsoft.com \
--to=alexander.levin@microsoft.com \
--cc=linux-kernel@vger.kernel.org \
--cc=neilb@suse.com \
--cc=snitzer@redhat.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox