mirror of https://lore.kernel.org/lkml/
 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,
	"Emmanuel Grumbach" <emmanuel.grumbach@intel.com>,
	"Stanislaw Gruszka" <sgruszka@redhat.com>,
	"Yaara Rozenblum" <yaara.rozenblum@intel.com>,
	"Johannes Berg" <johannes.berg@intel.com>
Subject: [PATCH 3.2 134/200] mac80211: fix AP powersave TX vs. wakeup race
Date: Mon, 31 Mar 2014 00:23:35 +0100	[thread overview]
Message-ID: <lsq.1396221815.749408142@decadent.org.uk> (raw)
In-Reply-To: <lsq.1396221814.369444335@decadent.org.uk>

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

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

From: Emmanuel Grumbach <emmanuel.grumbach@intel.com>

commit 1d147bfa64293b2723c4fec50922168658e613ba upstream.

There is a race between the TX path and the STA wakeup: while
a station is sleeping, mac80211 buffers frames until it wakes
up, then the frames are transmitted. However, the RX and TX
path are concurrent, so the packet indicating wakeup can be
processed while a packet is being transmitted.

This can lead to a situation where the buffered frames list
is emptied on the one side, while a frame is being added on
the other side, as the station is still seen as sleeping in
the TX path.

As a result, the newly added frame will not be send anytime
soon. It might be sent much later (and out of order) when the
station goes to sleep and wakes up the next time.

Additionally, it can lead to the crash below.

Fix all this by synchronising both paths with a new lock.
Both path are not fastpath since they handle PS situations.

In a later patch we'll remove the extra skb queue locks to
reduce locking overhead.

BUG: unable to handle kernel
NULL pointer dereference at 000000b0
IP: [<ff6f1791>] ieee80211_report_used_skb+0x11/0x3e0 [mac80211]
*pde = 00000000
Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
EIP: 0060:[<ff6f1791>] EFLAGS: 00210282 CPU: 1
EIP is at ieee80211_report_used_skb+0x11/0x3e0 [mac80211]
EAX: e5900da0 EBX: 00000000 ECX: 00000001 EDX: 00000000
ESI: e41d00c0 EDI: e5900da0 EBP: ebe458e4 ESP: ebe458b0
 DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
CR0: 8005003b CR2: 000000b0 CR3: 25a78000 CR4: 000407d0
DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
DR6: ffff0ff0 DR7: 00000400
Process iperf (pid: 3934, ti=ebe44000 task=e757c0b0 task.ti=ebe44000)
iwlwifi 0000:02:00.0: I iwl_pcie_enqueue_hcmd Sending command LQ_CMD (#4e), seq: 0x0903, 92 bytes at 3[3]:9
Stack:
 e403b32c ebe458c4 00200002 00200286 e403b338 ebe458cc c10960bb e5900da0
 ff76a6ec ebe458d8 00000000 e41d00c0 e5900da0 ebe458f0 ff6f1b75 e403b210
 ebe4598c ff723dc1 00000000 ff76a6ec e597c978 e403b758 00000002 00000002
Call Trace:
 [<ff6f1b75>] ieee80211_free_txskb+0x15/0x20 [mac80211]
 [<ff723dc1>] invoke_tx_handlers+0x1661/0x1780 [mac80211]
 [<ff7248a5>] ieee80211_tx+0x75/0x100 [mac80211]
 [<ff7249bf>] ieee80211_xmit+0x8f/0xc0 [mac80211]
 [<ff72550e>] ieee80211_subif_start_xmit+0x4fe/0xe20 [mac80211]
 [<c149ef70>] dev_hard_start_xmit+0x450/0x950
 [<c14b9aa9>] sch_direct_xmit+0xa9/0x250
 [<c14b9c9b>] __qdisc_run+0x4b/0x150
 [<c149f732>] dev_queue_xmit+0x2c2/0xca0

Reported-by: Yaara Rozenblum <yaara.rozenblum@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Reviewed-by: Stanislaw Gruszka <sgruszka@redhat.com>
[reword commit log, use a separate lock]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
 net/mac80211/sta_info.c |  4 ++++
 net/mac80211/sta_info.h |  7 +++----
 net/mac80211/tx.c       | 15 +++++++++++++++
 3 files changed, 22 insertions(+), 4 deletions(-)

--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
@@ -292,6 +292,7 @@ struct sta_info *sta_info_alloc(struct i
 		return NULL;
 
 	spin_lock_init(&sta->lock);
+	spin_lock_init(&sta->ps_lock);
 	INIT_WORK(&sta->drv_unblock_wk, sta_unblock);
 	INIT_WORK(&sta->ampdu_mlme.work, ieee80211_ba_session_work);
 	mutex_init(&sta->ampdu_mlme.mtx);
@@ -1141,6 +1142,8 @@ void ieee80211_sta_ps_deliver_wakeup(str
 
 	skb_queue_head_init(&pending);
 
+	/* sync with ieee80211_tx_h_unicast_ps_buf */
+	spin_lock(&sta->ps_lock);
 	/* Send all buffered frames to the station */
 	for (ac = 0; ac < IEEE80211_NUM_ACS; ac++) {
 		int count = skb_queue_len(&pending), tmp;
@@ -1160,6 +1163,7 @@ void ieee80211_sta_ps_deliver_wakeup(str
 	}
 
 	ieee80211_add_pending_skbs_fn(local, &pending, clear_sta_ps_flags, sta);
+	spin_unlock(&sta->ps_lock);
 
 	local->total_ps_buffered -= buffered;
 
--- a/net/mac80211/sta_info.h
+++ b/net/mac80211/sta_info.h
@@ -216,6 +216,7 @@ struct sta_ampdu_mlme {
  * @drv_unblock_wk: used for driver PS unblocking
  * @listen_interval: listen interval of this station, when we're acting as AP
  * @_flags: STA flags, see &enum ieee80211_sta_info_flags, do not use directly
+ * @ps_lock: used for powersave (when mac80211 is the AP) related locking
  * @ps_tx_buf: buffers (per AC) of frames to transmit to this station
  *	when it leaves power saving state or polls
  * @tx_filtered: buffers (per AC) of frames we already tried to
@@ -284,10 +285,8 @@ struct sta_info {
 	/* use the accessors defined below */
 	unsigned long _flags;
 
-	/*
-	 * STA powersave frame queues, no more than the internal
-	 * locking required.
-	 */
+	/* STA powersave lock and frame queues */
+	spinlock_t ps_lock;
 	struct sk_buff_head ps_tx_buf[IEEE80211_NUM_ACS];
 	struct sk_buff_head tx_filtered[IEEE80211_NUM_ACS];
 	unsigned long driver_buffered_tids;
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -464,6 +464,20 @@ ieee80211_tx_h_unicast_ps_buf(struct iee
 #endif /* CONFIG_MAC80211_VERBOSE_PS_DEBUG */
 		if (tx->local->total_ps_buffered >= TOTAL_MAX_TX_BUFFER)
 			purge_old_ps_buffers(tx->local);
+
+		/* sync with ieee80211_sta_ps_deliver_wakeup */
+		spin_lock(&sta->ps_lock);
+		/*
+		 * STA woke up the meantime and all the frames on ps_tx_buf have
+		 * been queued to pending queue. No reordering can happen, go
+		 * ahead and Tx the packet.
+		 */
+		if (!test_sta_flag(sta, WLAN_STA_PS_STA) &&
+		    !test_sta_flag(sta, WLAN_STA_PS_DRIVER)) {
+			spin_unlock(&sta->ps_lock);
+			return TX_CONTINUE;
+		}
+
 		if (skb_queue_len(&sta->ps_tx_buf[ac]) >= STA_MAX_TX_BUFFER) {
 			struct sk_buff *old = skb_dequeue(&sta->ps_tx_buf[ac]);
 #ifdef CONFIG_MAC80211_VERBOSE_PS_DEBUG
@@ -480,6 +494,7 @@ ieee80211_tx_h_unicast_ps_buf(struct iee
 		info->control.vif = &tx->sdata->vif;
 		info->flags |= IEEE80211_TX_INTFL_NEED_TXPROCESSING;
 		skb_queue_tail(&sta->ps_tx_buf[ac], tx->skb);
+		spin_unlock(&sta->ps_lock);
 
 		if (!timer_pending(&local->sta_cleanup))
 			mod_timer(&local->sta_cleanup,


  parent reply	other threads:[~2014-03-30 23:54 UTC|newest]

Thread overview: 211+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-30 23:23 [PATCH 3.2 000/200] 3.2.56-rc1 review Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 002/200] rtlwifi: rtl8192cu: Fix some code in RF handling Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 055/200] KVM: PPC: e500: Fix bad address type in deliver_tlb_misss() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 174/200] KVM: SVM: fix cr8 intercept window Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 048/200] hp_accel: Add a new PnP ID HPQ6007 for new HP laptops Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 171/200] [SCSI] qla2xxx: Poll during initialization for ISP25xx and ISP83xx Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 104/200] drm/i915: Add intel_ring_cachline_align() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 183/200] hpfs: deadlock and race in directory lseek() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 147/200] iwlwifi: fix TX status for aggregated packets Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 181/200] TTY: pmac_zilog, check existence of ports in pmz_console_init() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 075/200] ath9k_htc: Do not support PowerSave by default Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 128/200] workqueue: ensure @task is valid across kthread_stop() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 101/200] SUNRPC: Fix races in xs_nospace() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 018/200] USB: Nokia 502 is an unusual device Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 117/200] EDAC: Correct workqueue setup path Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 105/200] drm/i915: Prevent MI_DISPLAY_FLIP straddling two cachelines on IVB Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 069/200] ata: enable quirk from jmicron JMB350 for JMB394 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 130/200] hwmon: (max1668) Fix writing the minimum temperature Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 186/200] printk: Fix scheduling-while-atomic problem in console_cpu_notify() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 192/200] cifs: set MAY_SIGN when sec=krb5 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 185/200] timekeeping: fix 32-bit overflow in get_monotonic_boottime Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 172/200] ocfs2 syncs the wrong range Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 032/200] staging:iio:ad799x fix error_free_irq which was freeing an irq that may not have been requested Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 090/200] mm: __set_page_dirty_nobuffers() uses spin_lock_irqsave() instead of spin_lock_irq() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 063/200] target/iscsi: Fix network portal creation race Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 039/200] dm sysfs: fix a module unload race Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 022/200] SELinux: Fix memory leak upon loading policy Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 115/200] rtl8187: fix regression on MIPS without coherent DMA Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 088/200] x86, hweight: Fix BUG when booting with CONFIG_GCOV_PROFILE_ALL=y Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 190/200] bonding: 802.3ad: make aggregator_identifier bond-private Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 137/200] ath9k: Fix ETSI compliance for AR9462 2.0 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 138/200] quota: Fix race between dqput() and dquot_scan_active() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 191/200] net: sctp: fix sctp_connectx abi for ia32 emulation/compat mode Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 065/200] crypto: s390 - fix concurrency issue in aes-ctr mode Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 058/200] ACPI / init: Flag use of ACPI and ACPI idioms for power supplies to regulator API Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 066/200] crypto: s390 - fix des and des3_ede cbc concurrency issue Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 071/200] power: max17040: Fix NULL pointer dereference when there is no platform_data Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 111/200] drm/i915/dp: add native aux defer retry limit Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 060/200] Btrfs: setup inode location during btrfs_init_inode_locked Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 056/200] Btrfs: handle EAGAIN case properly in btrfs_drop_snapshot() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 167/200] usb: Add device quirk for Logitech HD Pro Webcams C920 and C930e Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 081/200] ALSA: hda/realtek - Avoid invalid COEFs for ALC271X Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 013/200] rtc-cmos: Add an alarm disable quirk Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 008/200] usb: option: add new zte 3g modem pids to option driver Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 102/200] xen: install xen/gntdev.h and xen/gntalloc.h Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 023/200] drm/radeon: warn users when hw_i2c is enabled (v2) Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 113/200] rtlwifi: rtl8192ce: Fix too long disable of IRQs Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 175/200] vmxnet3: fix building without CONFIG_PCI_MSI Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 084/200] SELinux: Fix kernel BUG on empty security contexts Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 168/200] usb: Make DELAY_INIT quirk wait 100ms between Get Configuration requests Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 154/200] powerpc/crashdump : Fix page frame number check in copy_oldmem_page Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 100/200] fs/file.c:fdtable: avoid triggering OOMs from alloc_fdmem Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 021/200] sunrpc: Fix infinite loop in RPC state machine Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 091/200] mm: __set_page_dirty uses spin_lock_irqsave instead of spin_lock_irq Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 047/200] drm/radeon: set the full cache bit for fences on r7xx+ Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 097/200] Modpost: fixed USB alias generation for ranges including 0x9 and 0xA Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 080/200] usb-storage: enable multi-LUN scanning when needed Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 131/200] ASoC: sta32x: Fix array access overflow Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 093/200] raw: test against runtime value of max_raw_minors Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 027/200] dm space map common: make sure new space is used during extend Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 120/200] dma: ste_dma40: don't dereference free:d descriptor Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 004/200] selinux: process labeled IPsec TCP SYN-ACK packets properly in selinux_ip_postroute() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 110/200] drm/i915/dp: increase native aux defer retry timeout Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 061/200] drm/radeon/DCE4+: clear bios scratch dpms bit (v2) Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 034/200] ftrace: Use schedule_on_each_cpu() as a heavy synchronize_sched() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 016/200] USB: pl2303: fix data corruption on termios updates Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 010/200] serial: add support for 400 and 800 v3 series Titan cards Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 029/200] radeon/pm: Guard access to rdev->pm.power_state array Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 163/200] mwifiex: copy AP's HT capability info correctly Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 106/200] usb: option: blacklist ZTE MF667 net interface Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 144/200] USB: ftdi_sio: add Cressi Leonardo PID Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 031/200] ALSA: Enable CONFIG_ZONE_DMA for smaller PCI DMA masks Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 046/200] drm/radeon: disable ss on DP for DCE3.x Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 188/200] tg3: Fix deadlock in tg3_change_mtu() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 126/200] USB: EHCI: add delay during suspend to prevent erroneous wakeups Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 139/200] i7core_edac: Fix PCI device reference count Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 152/200] cpuset: fix a race condition in __cpuset_node_allowed_softwall() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 030/200] staging: r8712u: Set device type to wlan Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 064/200] s390/crypto: Don't panic after crypto instruction failures Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 161/200] mac80211: clear sequence/fragment number in QoS-null frames Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 119/200] ext4: don't leave i_crtime.tv_sec uninitialized Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 072/200] sata_sil: apply MOD15WRITE quirk to TOSHIBA MK2561GSYN Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 074/200] s390/dump: Fix dump memory detection Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 151/200] perf: Fix hotplug splat Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 179/200] nfs: fix do_div() warning by instead using sector_div() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 180/200] mm/hugetlb: check for pte NULL pointer in __page_check_address() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 011/200] serial: add support for 200 v3 series Titan card Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 112/200] lockd: send correct lock when granting a delayed lock Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 014/200] slub: Fix calculation of cpu slabs Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 173/200] vmxnet3: fix netpoll race condition Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 041/200] md/raid5: fix long-standing problem with bitmap handling on write failure Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 162/200] ACPI / EC: Clear stale EC events on Samsung systems Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 051/200] IB/qib: Fix QP check when looping back to/from QP1 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 155/200] can: flexcan: fix shutdown: first disable chip, then all interrupts Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 073/200] [media] mxl111sf: Fix compile when CONFIG_DVB_USB_MXL111SF is unset Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 189/200] usbnet: remove generic hard_header_len check Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 153/200] powerpc/le: Ensure that the 'stop-self' RTAS token is handled correctly Ben Hutchings
2014-03-31  2:40   ` Tony Breeds
2014-03-31 19:47     ` Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 099/200] ARM: 7955/1: spinlock: ensure we have a compiler barrier before sev Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 083/200] of: fix PCI bus match for PCIe slots Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 053/200] b43: fix the wrong assignment of status.freq in b43_rx() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 025/200] serial: 8250: enable UART_BUG_NOMSR for Tegra Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 094/200] tty: n_gsm: Fix for modems with brk in modem status control Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 012/200] x86/efi: Fix off-by-one bug in EFI Boot Services reservation Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 129/200] cgroup: update cgroup_enable_task_cg_lists() to grab siglock Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 123/200] avr32: Makefile: add '-D__linux__' flag for gcc-4.4.7 use Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 125/200] ahci: disable NCQ on Samsung pci-e SSDs on macbooks Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 068/200] mm, oom: base root bonus on current usage Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 140/200] i7300_edac: Fix device reference count Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 146/200] ASoC: sta32x: Fix wrong enum for limiter2 release rate Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 116/200] IB/qib: Add missing serdes init sequence Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 096/200] xen-blkfront: handle backend CLOSED without CLOSING Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 196/200] jiffies: Avoid undefined behavior from signed overflow Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 044/200] mmc: sdhci: fix lockdep error in tuning routine Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 177/200] staging: comedi: ssv_dnp: correct insn_bits result Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 036/200] rtlwifi: rtl8192cu: Add new device ID Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 178/200] staging: comedi: pcmuio: fix possible NULL deref on detach Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 042/200] x86: Add check for number of available vectors before CPU down Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 033/200] mmc: atmel-mci: fix timeout errors in SDIO mode when using DMA Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 015/200] mtd: mxc_nand: remove duplicated ecc_stats counting Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 107/200] block: add cond_resched() to potentially long running ioctl discard loop Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 078/200] usb-storage: restrict bcdDevice range for Super Top in Cypress ATACB Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 043/200] libata: disable LPM for some WD SATA-I devices Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 164/200] net: unix socket code abuses csum_partial Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 122/200] avr32: fix missing module.h causing build failure in mimc200/fram.c Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 194/200] ALSA: oxygen: Xonar DG(X): capture from I2S channel 1, not 2 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 006/200] staging: vt6656: [BUG] BBvUpdatePreEDThreshold Always set sensitivity on bScanning Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 095/200] staging: comedi: adv_pci1710: fix analog output readback value Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 089/200] mm/swap: fix race on swap_info reuse between swapoff and swapon Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 052/200] ore: Fix wrong math in allocation of per device BIO Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 045/200] turbostat: Use GCC's CPUID functions to support PIC Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 166/200] libata: add ATA_HORKAGE_BROKEN_FPDMA_AA quirk for Seagate Momentus SpinPoint M8 (2BA30001) Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 059/200] powerpc: Make sure "cache" directory is removed when offlining cpu Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 148/200] genirq: Remove racy waitqueue_active check Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 156/200] can: flexcan: flexcan_open(): fix error path if flexcan_chip_start() fails Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 158/200] tracing: Do not add event files for modules that fail tracepoints Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 103/200] ring-buffer: Fix first commit on sub-buffer having non-zero delta Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 145/200] usb: ehci: fix deadlock when threadirqs option is used Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 135/200] SELinux: bigendian problems with filename trans rules Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 159/200] ocfs2: fix quota file corruption Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 142/200] ACPI / processor: Rework processor throttling with work_on_cpu() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 157/200] can: flexcan: flexcan_remove(): add missing netif_napi_del() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 187/200] net: fix 'ip rule' iif/oif device rename Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 057/200] btrfs: restrict snapshotting to own subvolumes Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 007/200] [SCSI] bfa: Chinook quad port 16G FC HBA claim issue Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 176/200] x86/amd/numa: Fix northbridge quirk to assign correct NUMA node Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 082/200] of: Fix address decoding on Bimini and js2x machines Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 035/200] ftrace: Fix synchronization location disabling and freeing ftrace_ops Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 169/200] [SCSI] isci: fix reset timeout handling Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 195/200] ALSA: oxygen: Xonar DG(X): modify DAC routing Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 076/200] ath9k: Do not support PowerSave by default Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 199/200] net: sctp: fix sctp_sf_do_5_1D_ce to verify if we/peer is AUTH capable Ben Hutchings
2014-03-30 23:23 ` Ben Hutchings [this message]
2014-03-30 23:23 ` [PATCH 3.2 085/200] USB: ftdi_sio: add Tagsys RFID Reader IDs Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 079/200] usb-storage: add unusual-devs entry for BlackBerry 9000 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 017/200] USB: serial: add support for iBall 3.5G connect usb modem Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 165/200] powerpc: Align p_dyn, p_rela and p_st symbols Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 170/200] [SCSI] isci: correct erroneous for_each_isci_host macro Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 024/200] USB: ftdi_sio: added CS5 quirk for broken smartcard readers Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 108/200] md/raid5: Fix CPU hotplug callback registration Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 136/200] ath9k: protect tid->sched check Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 109/200] compiler/gcc4: Make quirk for asm_volatile_goto() unconditional Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 019/200] USB: cypress_m8: fix ring-indicator detection and reporting Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 003/200] NFSv4: OPEN must handle the NFS4ERR_IO return code correctly Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 184/200] ftrace: Have function graph only trace based on global_ops filters Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 001/200] rtlwifi: Set the link state Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 087/200] time: Fix overflow when HZ is smaller than 60 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 020/200] ALSA: rme9652: fix a missing comma in channel_map_9636_ds[] Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 037/200] nfs4.1: properly handle ENOTSUP in SECINFO_NO_NAME Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 193/200] [media] saa7134: Fix unlocked snd_pcm_stop() call Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 038/200] usb: ehci: add freescale imx28 special write register method Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 198/200] tg3: Don't check undefined error bits in RXBD Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 118/200] PCI: Enable INTx if BIOS left them disabled Ben Hutchings
2014-03-31 17:15   ` Bjorn Helgaas
2014-03-31 19:32     ` Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 026/200] dm: wait until embedded kobject is released before destroying a device Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 054/200] i2c: piix4: Add support for AMD ML and CZ SMBus changes Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 092/200] Drivers: hv: vmbus: Don't timeout during the initial connection with host Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 197/200] virtio-net: alloc big buffers also when guest can receive UFO Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 049/200] intel-iommu: fix off-by-one in pagetable freeing Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 040/200] KVM: x86: limit PIT timer frequency Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 028/200] ASoC: adau1701: Fix ADAU1701_SEROCTL_WORD_LEN_16 constant Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 114/200] MIPS: Fix potencial corruption Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 124/200] ARM: 7957/1: add DSB after icache flush in __flush_icache_all() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 143/200] USB: serial: ftdi_sio: add id for Z3X Box device Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 086/200] mac80211: fix fragmentation code, particularly for encryption Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 127/200] USB: serial: option: blacklist interface 4 for Cinterion PHS8 and PXS8 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 133/200] ASoC: wm8770: Fix wrong number of enum items Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 062/200] KVM: return an error code in kvm_vm_ioctl_register_coalesced_mmio() Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 050/200] fuse: fix pipe_buf_operations Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 150/200] perf/x86: Fix event scheduling Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 070/200] alpha: fix broken network checksum Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 067/200] crypto: s390 - fix des and des3_ede ctr concurrency issue Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 160/200] ALSA: usb-audio: Add quirk for Logitech Webcam C500 Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 077/200] usb: ftdi_sio: add Mindstorms EV3 console adapter Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 098/200] ARM: 7953/1: mm: ensure TLB invalidation is complete before enabling MMU Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 005/200] parport: parport_pc: remove double PCI ID for NetMos Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 182/200] hpfs: remember free space Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 141/200] ioat: fix tasklet tear down Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 121/200] ALSA: usb-audio: work around KEF X300A firmware bug Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 149/200] sched: Fix double normalization of vruntime Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 200/200] intel_idle: Check cpu_idle_get_driver() for NULL before dereferencing it Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 009/200] [media] dib8000: make 32 bits read atomic Ben Hutchings
2014-03-30 23:23 ` [PATCH 3.2 132/200] ACPI / video: Filter the _BCL table for duplicate brightness values Ben Hutchings
2014-03-31  0:41 ` [PATCH 3.2 000/200] 3.2.56-rc1 review Ben Hutchings
2014-03-31  0:49 ` Guenter Roeck
2014-03-31  1:04   ` Ben Hutchings
2014-03-31 21:57     ` Guenter Roeck
2014-04-01 13:36   ` Satoru Takeuchi
2014-04-01 16:49     ` Ben Hutchings

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.1396221815.749408142@decadent.org.uk \
    --to=ben@decadent.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=emmanuel.grumbach@intel.com \
    --cc=johannes.berg@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sgruszka@redhat.com \
    --cc=stable@vger.kernel.org \
    --cc=yaara.rozenblum@intel.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

Powered by JetHome