public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ben Hutchings <ben@decadent.org.uk>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: akpm@linux-foundation.org, "Tariq Toukan" <tariqt@mellanox.com>,
	"Jack Morgenstein" <jackm@dev.mellanox.co.il>,
	"David S. Miller" <davem@davemloft.net>,
	"Matan Barak" <matanb@mellanox.com>
Subject: [PATCH 3.2 114/199] net/mlx4_core: Fix racy CQ (Completion Queue) free
Date: Fri, 10 Mar 2017 11:46:10 +0000	[thread overview]
Message-ID: <lsq.1489146370.317650655@decadent.org.uk> (raw)
In-Reply-To: <lsq.1489146368.630732676@decadent.org.uk>

3.2.87-rc1 review patch.  If anyone has any objections, please let me know.

------------------

From: Jack Morgenstein <jackm@dev.mellanox.co.il>

commit 291c566a28910614ce42d0ffe82196eddd6346f4 upstream.

In function mlx4_cq_completion() and mlx4_cq_event(), the
radix_tree_lookup requires a rcu_read_lock.
This is mandatory: if another core frees the CQ, it could
run the radix_tree_node_rcu_free() call_rcu() callback while
its being used by the radix tree lookup function.

Additionally, in function mlx4_cq_event(), since we are adding
the rcu lock around the radix-tree lookup, we no longer need to take
the spinlock. Also, the synchronize_irq() call for the async event
eliminates the need for incrementing the cq reference count in
mlx4_cq_event().

Other changes:
1. In function mlx4_cq_free(), replace spin_lock_irq with spin_lock:
   we no longer take this spinlock in the interrupt context.
   The spinlock here, therefore, simply protects against different
   threads simultaneously invoking mlx4_cq_free() for different cq's.

2. In function mlx4_cq_free(), we move the radix tree delete to before
   the synchronize_irq() calls. This guarantees that we will not
   access this cq during any subsequent interrupts, and therefore can
   safely free the CQ after the synchronize_irq calls. The rcu_read_lock
   in the interrupt handlers only needs to protect against corrupting the
   radix tree; the interrupt handlers may access the cq outside the
   rcu_read_lock due to the synchronize_irq calls which protect against
   premature freeing of the cq.

3. In function mlx4_cq_event(), we change the mlx_warn message to mlx4_dbg.

4. We leave the cq reference count mechanism in place, because it is
   still needed for the cq completion tasklet mechanism.

Fixes: 6d90aa5cf17b ("net/mlx4_core: Make sure there are no pending async events when freeing CQ")
Fixes: 225c7b1feef1 ("IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters")
Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Matan Barak <matanb@mellanox.com>
Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
 drivers/net/ethernet/mellanox/mlx4/cq.c | 38 +++++++++++++++++----------------
 1 file changed, 20 insertions(+), 18 deletions(-)

--- a/drivers/net/ethernet/mellanox/mlx4/cq.c
+++ b/drivers/net/ethernet/mellanox/mlx4/cq.c
@@ -78,13 +78,19 @@ void mlx4_cq_completion(struct mlx4_dev
 {
 	struct mlx4_cq *cq;
 
+	rcu_read_lock();
 	cq = radix_tree_lookup(&mlx4_priv(dev)->cq_table.tree,
 			       cqn & (dev->caps.num_cqs - 1));
+	rcu_read_unlock();
+
 	if (!cq) {
 		mlx4_warn(dev, "Completion event for bogus CQ %08x\n", cqn);
 		return;
 	}
 
+	/* Acessing the CQ outside of rcu_read_lock is safe, because
+	 * the CQ is freed only after interrupt handling is completed.
+	 */
 	++cq->arm_sn;
 
 	cq->comp(cq);
@@ -95,23 +101,19 @@ void mlx4_cq_event(struct mlx4_dev *dev,
 	struct mlx4_cq_table *cq_table = &mlx4_priv(dev)->cq_table;
 	struct mlx4_cq *cq;
 
-	spin_lock(&cq_table->lock);
-
+	rcu_read_lock();
 	cq = radix_tree_lookup(&cq_table->tree, cqn & (dev->caps.num_cqs - 1));
-	if (cq)
-		atomic_inc(&cq->refcount);
-
-	spin_unlock(&cq_table->lock);
+	rcu_read_unlock();
 
 	if (!cq) {
-		mlx4_warn(dev, "Async event for bogus CQ %08x\n", cqn);
+		mlx4_dbg(dev, "Async event for bogus CQ %08x\n", cqn);
 		return;
 	}
 
+	/* Acessing the CQ outside of rcu_read_lock is safe, because
+	 * the CQ is freed only after interrupt handling is completed.
+	 */
 	cq->event(cq, event_type);
-
-	if (atomic_dec_and_test(&cq->refcount))
-		complete(&cq->free);
 }
 
 static int mlx4_SW2HW_CQ(struct mlx4_dev *dev, struct mlx4_cmd_mailbox *mailbox,
@@ -216,9 +218,9 @@ int mlx4_cq_alloc(struct mlx4_dev *dev,
 	if (err)
 		goto err_put;
 
-	spin_lock_irq(&cq_table->lock);
+	spin_lock(&cq_table->lock);
 	err = radix_tree_insert(&cq_table->tree, cq->cqn, cq);
-	spin_unlock_irq(&cq_table->lock);
+	spin_unlock(&cq_table->lock);
 	if (err)
 		goto err_cmpt_put;
 
@@ -255,9 +257,9 @@ int mlx4_cq_alloc(struct mlx4_dev *dev,
 	return 0;
 
 err_radix:
-	spin_lock_irq(&cq_table->lock);
+	spin_lock(&cq_table->lock);
 	radix_tree_delete(&cq_table->tree, cq->cqn);
-	spin_unlock_irq(&cq_table->lock);
+	spin_unlock(&cq_table->lock);
 
 err_cmpt_put:
 	mlx4_table_put(dev, &cq_table->cmpt_table, cq->cqn);
@@ -282,11 +284,11 @@ void mlx4_cq_free(struct mlx4_dev *dev,
 	if (err)
 		mlx4_warn(dev, "HW2SW_CQ failed (%d) for CQN %06x\n", err, cq->cqn);
 
-	synchronize_irq(priv->eq_table.eq[cq->vector].irq);
-
-	spin_lock_irq(&cq_table->lock);
+	spin_lock(&cq_table->lock);
 	radix_tree_delete(&cq_table->tree, cq->cqn);
-	spin_unlock_irq(&cq_table->lock);
+	spin_unlock(&cq_table->lock);
+
+	synchronize_irq(priv->eq_table.eq[cq->vector].irq);
 
 	if (atomic_dec_and_test(&cq->refcount))
 		complete(&cq->free);

  parent reply	other threads:[~2017-03-10 12:01 UTC|newest]

Thread overview: 208+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-10 11:46 [PATCH 3.2 000/199] 3.2.87-rc1 review Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 165/199] net: avoid sk_forward_alloc overflows Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 086/199] x86/cpu: Fix bootup crashes by sanitizing the argument of the 'clearcpuid=' command-line option Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 016/199] ext4: fix mballoc breakage with 64k block size Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 097/199] USB: serial: ch341: fix open and resume after B0 Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 057/199] net/mlx4_en: Fix bad WQE issue Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 012/199] powerpc/ibmebus: Fix device reference leaks in sysfs interface Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 017/199] ext4: fix stack memory corruption with 64k block size Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 166/199] tcp: fix wrong checksum calculation on MTU probing Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 018/199] IB/mlx4: Put non zero value in max_ah device attribute Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 181/199] drop_monitor: add missing call to genlmsg_end Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 110/199] xhci: fix deadlock at host remove by running watchdog correctly Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 093/199] USB: ch341: set tty baud speed according to tty struct Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 035/199] hotplug: Make register and unregister notifier API symmetric Ben Hutchings
2017-03-10 11:46 ` Ben Hutchings [this message]
2017-03-10 11:46 ` [PATCH 3.2 169/199] net: mangle zero checksum in skb_checksum_help() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 053/199] target/iscsi: Fix double free in lio_target_tiqn_addtpg() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 103/199] gro: Enter slow-path if there is no tailroom Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 198/199] sctp: avoid BUG_ON on sctp_wait_for_sndbuf Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 079/199] USB: serial: mos7840: fix misleading interrupt-URB comment Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 155/199] irda: Fix lockdep annotations in hashbin_delete() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 134/199] mac80211: Fix adding of mesh vendor IEs Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 062/199] USB: gadgetfs: fix unbounded memory allocation bug Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 036/199] ALSA: usb-audio: Add QuickCam Communicate Deluxe/S7500 to volume_control_quirks Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 064/199] USB: gadgetfs: fix checks of wTotalLength in config descriptors Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 094/199] USB: serial: ch341: add register and USB request definitions Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 115/199] ubifs: Fix journal replay wrt. xattr nodes Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 076/199] USB: serial: mos7720: fix parport use-after-free on probe errors Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 005/199] usb: gadget: composite: correctly initialize ep->maxpacket Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 087/199] usb: musb: Fix trying to free already-free IRQ 4 Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 106/199] sysrq: attach sysrq handler correctly for 32-bit kernel Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 092/199] USB: ch341: remove redundant close from open error path Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 069/199] USB: serial: io_ti: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 009/199] PCI: Check for PME in targeted sleep state Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 152/199] packet: call fanout_release, while UNREGISTERING a netdev Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 060/199] USB: dummy-hcd: fix bug in stop_activity (handle ep0) Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 154/199] Fix missing sanity check in /dev/sg Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 090/199] ata: sata_mv:- Handle return value of devm_ioremap Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 171/199] dccp: fix out of bound access in dccp_v4_err() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 132/199] mm, fs: check for fatal signals in do_generic_file_read() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 014/199] powerpc/pci/rpadlpar: Fix device reference leaks Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 143/199] xen-netfront: Delete rx_refill_timer in xennet_disconnect_backend() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 147/199] futex: Move futex_init() to core_initcall Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 120/199] powerpc/ptrace: Preserve previous fprs/vsrs on short regset write Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 020/199] ssb: Fix error routine when fallback SPROM fails Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 061/199] usb: gadgetfs: restrict upper bound on device configuration size Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 024/199] dm crypt: mark key as invalid until properly loaded Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 107/199] vme: Fix wrong pointer utilization in ca91cx42_slave_get Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 194/199] mld: do not remove mld souce list info when set link down Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 045/199] fsnotify: Fix possible use-after-free in inode iteration on umount Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 078/199] USB: serial: mos7840: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 006/199] drm/gma500: Add compat ioctl Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 177/199] net/sched: pedit: make sure that offset is valid Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 073/199] USB: serial: kobil_sct: fix NULL-deref in write Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 023/199] ext4: add sanity checking to count_overhead() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 172/199] ipv6: dccp: fix out of bound access in dccp_v6_err() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 013/199] powerpc/ibmebus: Fix further device reference leaks Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 163/199] net: fix sk_mem_reclaim_partial() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 145/199] net/sock: Add sock_efree() function Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 183/199] igmp: Make igmp group member RFC 3376 compliant Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 117/199] ceph: fix bad endianness handling in parse_reply_info_extra Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 186/199] can: Fix kernel panic at security_sock_rcv_skb Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 130/199] ARM: 8643/3: arm/ptrace: Preserve previous registers for short regset write Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 026/199] regmap: cache: Remove unused 'blksize' variable Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 066/199] USB: serial: cyberjack: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 027/199] ALSA: usb-audio: Fix bogus error return in snd_usb_create_stream() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 067/199] USB: serial: garmin_gps: fix memory leak on failed URB submit Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 077/199] USB: serial: mos7720: fix parallel probe Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 197/199] ipc/shm: Fix shmat mmap nil-page protection Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 160/199] sch_dsmark: update backlog as well Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 043/199] s390/vmlogrdr: fix IUCV buffer allocation Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 056/199] net: korina: Fix NAPI versus resources freeing Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 174/199] sock: fix sendmmsg for partial sendmsg Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 089/199] HID: hid-cypress: validate length of report Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 033/199] Btrfs: fix tree search logic when replaying directory entry deletes Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 153/199] packet: Do not call fanout_release from atomic contexts Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 170/199] dccp: do not send reset to already closed sockets Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 121/199] powerpc: Ignore reserved field in DCSR and PVR reads and writes Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 025/199] [media] DaVinci-VPFE-Capture: fix error handling Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 129/199] can: bcm: fix hrtimer/tasklet termination in bcm op removal Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 048/199] IB/multicast: Check ib_find_pkey() return value Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 059/199] usb: gadget: composite: Test get_alt() presence instead of set_alt() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 136/199] rtl8150: Use heap buffers for all register access Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 071/199] USB: serial: iuu_phoenix: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 034/199] USB: cdc-acm: add device id for GW Instek AFG-125 Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 063/199] USB: gadgetfs: fix use-after-free bug Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 028/199] thermal: hwmon: Properly report critical temperature in sysfs Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 080/199] USB: serial: omninet: fix NULL-derefs at open and disconnect Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 008/199] xfs: fix up xfs_swap_extent_forks inline extent handling Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 191/199] tun: read vnet_hdr_sz once Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 195/199] igmp, mld: Fix memory leak in igmpv3/mld_del_delrec() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 199/199] sctp: deny peeloff operation on asocs with threads sleeping on it Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 118/199] nbd: fix use-after-free of rq/bio in the xmit path Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 088/199] USB: fix problems with duplicate endpoint addresses Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 125/199] mm/huge_memory.c: respect FOLL_FORCE/FOLL_COW for thp Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 032/199] powerpc/ps3: Fix system hang with GCC 5 builds Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 192/199] macvtap: read vnet_hdr_size once Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 124/199] USB: serial: option: add device ID for HP lt2523 (Novatel E371) Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 031/199] drivers: base: dma-mapping: Fix typo in dmam_alloc_non_coherent comments Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 126/199] USB: Add quirk for WORLDE easykey.25 MIDI keyboard Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 105/199] ocfs2: fix crash caused by stale lvb with fsdlm plugin Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 159/199] sch_htb: update backlog as well Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 119/199] nbd: only set MSG_MORE when we have more to send Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 127/199] sysctl: fix proc_doulongvec_ms_jiffies_minmax() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 182/199] drop_monitor: consider inserted data in genlmsg_end Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 146/199] net/llc: avoid BUG_ON() in skb_orphan() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 128/199] parisc: Don't use BITS_PER_LONG in userspace-exported swab.h header Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 096/199] USB: serial: ch341: fix initial modem-control state Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 144/199] l2tp: do not use udp_ioctl() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 162/199] ipmr/ip6mr: Initialize the last assert time of mfc entries Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 050/199] scsi: zfcp: do not trace pure benign residual HBA responses at default level Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 015/199] usb: xhci-mem: use passed in GFP flags instead of GFP_KERNEL Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 074/199] USB: serial: mos7720: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 148/199] packet: fix races in fanout_add() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 099/199] USB: serial: ch341: fix open error handling Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 055/199] net, sched: fix soft lockup in tc_classify Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 164/199] tcp: fix overflow in __tcp_retransmit_skb() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 102/199] ARM: 8634/1: hw_breakpoint: blacklist Scorpion CPUs Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 139/199] ALSA: seq: Fix race at creating a queue Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 029/199] USB: serial: kl5kusb105: fix open error path Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 133/199] netlabel: out of bound access in cipso_v4_validate() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 101/199] USB: serial: ch341: fix baud rate and line-control handling Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 001/199] staging: iio: ad7606: fix improper setting of oversampling pins Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 047/199] IB/mad: Fix an array index check Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 058/199] net/mlx4: Remove BUG_ON from ICM allocation routine Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 104/199] gro: Disable frag0 optimization on IPv6 ext headers Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 081/199] USB: serial: oti6858: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 100/199] USB: serial: ch341: fix resume after reset Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 002/199] net/sched: em_meta: Fix 'meta vlan' to correctly recognize zero VID frames Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 022/199] ext4: use more strict checks for inodes_per_block on mount Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 112/199] i2c: fix kernel memory disclosure in dev interface Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 151/199] vfs: fix uninitialized flags in splice_to_pipe() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 068/199] USB: serial: io_edgeport: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 175/199] ip6_tunnel: disable caching when the traffic class is inherited Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 037/199] USB: serial: option: add support for Telit LE922A PIDs 0x1040, 0x1041 Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 091/199] USB: ch341: forward USB errors to USB serial core Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 082/199] USB: serial: pl2303: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 180/199] ipv6: handle -EFAULT from skb_copy_bits Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 184/199] ipv6: addrconf: Avoid addrconf_disable_change() using RCU read-side lock Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 109/199] gro: use min_t() in skb_gro_reset_offset() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 150/199] net: xilinx_emaclite: fix receive buffer overflow Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 123/199] crypto: api - Clear CRYPTO_ALG_DEAD bit before registering an alg Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 131/199] USB: serial: pl2303: add ATEN device ID Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 185/199] net: socket: fix recvmmsg not returning error from sock_error Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 040/199] ext4: reject inodes with negative size Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 149/199] [media] siano: make it work again with CONFIG_VMAP_STACK Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 052/199] scsi: avoid a permanent stop of the scsi device's request queue Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 156/199] lib/vsprintf.c: improve sanity check in vsnprintf() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 116/199] can: ti_hecc: add missing prepare and unprepare of the clock Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 041/199] kconfig/nconf: Fix hang when editing symbol with a long prompt Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 113/199] svcrpc: don't leak contexts on PROC_DESTROY Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 070/199] USB: serial: io_ti: fix another NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 085/199] iommu/amd: Fix the left value check of cmd buffer Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 135/199] ALSA: seq: Don't handle loop timeout at snd_seq_pool_done() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 142/199] scsi: zfcp: fix use-after-free by not tracing WKA port open/close on failed send Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 095/199] USB: serial: ch341: reinitialize chip on reconfiguration Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 051/199] scsi: zfcp: fix rport unblock race with LUN recovery Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 141/199] ping: fix a null pointer dereference Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 168/199] net: clear sk_err_soft in sk_clone_lock() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 072/199] USB: serial: keyspan_pda: verify endpoints at probe Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 039/199] nfs_write_end(): fix handling of short copies Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 190/199] tun: Fix TUN_PKT_STRIP setting Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 075/199] USB: serial: mos7720: fix use-after-free on probe errors Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 167/199] net: sctp, forbid negative length Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 111/199] mmc: mxs-mmc: Fix additional cycles after transmission stop Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 178/199] net/dccp: fix use-after-free in dccp_invalid_packet Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 042/199] sparc: leon: Fix a retry loop in leon_init_timers() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 021/199] ext4: fix in-superblock mount options processing Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 038/199] hwmon: (ds620) Fix overflows seen when writing temperature limits Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 011/199] crypto: caam - fix AEAD givenc descriptors Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 003/199] [media] ite-cir: initialize use_demodulator before using it Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 083/199] USB: serial: spcp8x5: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 179/199] netvsc: reduce maximum GSO size Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 054/199] Input: i8042 - add Pegatron touchpad to noloop table Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 084/199] USB: serial: ti_usb_3410_5052: fix NULL-deref at open Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 157/199] decnet: Do not build routes to devices without decnet private data Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 049/199] scsi: zfcp: fix use-after-"free" in FC ingress path after TMF Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 019/199] scsi: mvsas: fix command_active typo Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 065/199] xhci: free xhci virtual devices with leaf nodes first Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 193/199] igmp: do not remove igmp souce list info when set link down Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 161/199] net: bridge: fix old ioctl unlocked net device walk Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 137/199] catc: Combine failure cleanup code in catc_probe() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 046/199] block_dev: don't test bdev->bd_contains when it is not stable Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 098/199] USB: serial: ch341: fix modem-control and B0 handling Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 010/199] USB: UHCI: report non-PME wakeup signalling for Intel hardware Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 187/199] ipv6: fix ip6_tnl_parse_tlv_enc_lim() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 007/199] cris: Only build flash rescue image if CONFIG_ETRAX_AXISFLASHMAP is selected Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 173/199] sctp: assign assoc_id earlier in __sctp_connect Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 108/199] USB: serial: ch341: fix control-message error handling Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 188/199] ipv6: pointer math error in ip6_tnl_parse_tlv_enc_lim() Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 176/199] net: sky2: Fix shutdown crash Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 030/199] USB: serial: kl5kusb105: abort on open exception path Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 044/199] libceph: verify authorize reply on connect Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 140/199] btrfs: fix btrfs_compat_ioctl failures on non-compat ioctls Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 158/199] route: do not cache fib route info on local routes with oif Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 122/199] platform/x86: intel_mid_powerbtn: Set IRQ_ONESHOT Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 138/199] catc: Use heap buffer for memory size test Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 004/199] perf scripting: Avoid leaking the scripting_context variable Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 196/199] Revert "KVM: x86: expose MSR_TSC_AUX to userspace" Ben Hutchings
2017-03-10 11:46 ` [PATCH 3.2 189/199] tcp: fix 0 divide in __tcp_select_window() Ben Hutchings
2017-03-10 12:47 ` [PATCH 3.2 000/199] 3.2.87-rc1 review Guenter Roeck
2017-03-10 13:06   ` Ben Hutchings
2017-03-11 15:15 ` [PATCH 3.2 000/202] 3.2.87-rc2 review Ben Hutchings
2017-03-11 15:15   ` [PATCH 3.2 200/202] TTY: n_hdlc, fix lockdep false positive Ben Hutchings
2017-03-11 15:15   ` [PATCH 3.2 202/202] tty: n_hdlc: get rid of racy n_hdlc.tbuf Ben Hutchings
2017-03-11 15:15   ` [PATCH 3.2 201/202] list: introduce list_first_entry_or_null Ben Hutchings
2017-03-11 16:52   ` [PATCH 3.2 000/202] 3.2.87-rc2 review Ben Hutchings
2017-03-12 18:18   ` Guenter Roeck

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=lsq.1489146370.317650655@decadent.org.uk \
    --to=ben@decadent.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=jackm@dev.mellanox.co.il \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matanb@mellanox.com \
    --cc=stable@vger.kernel.org \
    --cc=tariqt@mellanox.com \
    /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