public inbox for stable@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, "Johannes Weiner" <hannes@cmpxchg.org>,
	"Tejun Heo" <tj@kernel.org>, "Jan Kara" <jack@suse.cz>,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	"Linus Torvalds" <torvalds@linux-foundation.org>
Subject: [PATCH 3.2 096/152] mm: protect set_page_dirty() from ongoing truncation
Date: Tue, 17 Feb 2015 01:46:53 +0000	[thread overview]
Message-ID: <lsq.1424137613.927987603@decadent.org.uk> (raw)
In-Reply-To: <lsq.1424137613.308090640@decadent.org.uk>

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

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

From: Johannes Weiner <hannes@cmpxchg.org>

commit 2d6d7f98284648c5ed113fe22a132148950b140f upstream.

Tejun, while reviewing the code, spotted the following race condition
between the dirtying and truncation of a page:

__set_page_dirty_nobuffers()       __delete_from_page_cache()
  if (TestSetPageDirty(page))
                                     page->mapping = NULL
				     if (PageDirty())
				       dec_zone_page_state(page, NR_FILE_DIRTY);
				       dec_bdi_stat(mapping->backing_dev_info, BDI_RECLAIMABLE);
    if (page->mapping)
      account_page_dirtied(page)
        __inc_zone_page_state(page, NR_FILE_DIRTY);
	__inc_bdi_stat(mapping->backing_dev_info, BDI_RECLAIMABLE);

which results in an imbalance of NR_FILE_DIRTY and BDI_RECLAIMABLE.

Dirtiers usually lock out truncation, either by holding the page lock
directly, or in case of zap_pte_range(), by pinning the mapcount with
the page table lock held.  The notable exception to this rule, though,
is do_wp_page(), for which this race exists.  However, do_wp_page()
already waits for a locked page to unlock before setting the dirty bit,
in order to prevent a race where clear_page_dirty() misses the page bit
in the presence of dirty ptes.  Upgrade that wait to a fully locked
set_page_dirty() to also cover the situation explained above.

Afterwards, the code in set_page_dirty() dealing with a truncation race
is no longer needed.  Remove it.

Reported-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
[bwh: Backported to 3.2:
 - Adjust context
 - Use VM_BUG_ON() rather than VM_BUG_ON_PAGE()]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
 include/linux/writeback.h |  1 -
 mm/memory.c               | 27 +++++++++++++++++----------
 mm/page-writeback.c       | 43 ++++++++++++-------------------------------
 3 files changed, 29 insertions(+), 42 deletions(-)

--- a/include/linux/writeback.h
+++ b/include/linux/writeback.h
@@ -190,7 +190,6 @@ int write_cache_pages(struct address_spa
 		      struct writeback_control *wbc, writepage_t writepage,
 		      void *data);
 int do_writepages(struct address_space *mapping, struct writeback_control *wbc);
-void set_page_dirty_balance(struct page *page);
 void writeback_set_ratelimit(void);
 void tag_pages_for_writeback(struct address_space *mapping,
 			     pgoff_t start, pgoff_t end);
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -2661,17 +2661,24 @@ reuse:
 		if (!dirty_page)
 			return ret;
 
-		/*
-		 * Yes, Virginia, this is actually required to prevent a race
-		 * with clear_page_dirty_for_io() from clearing the page dirty
-		 * bit after it clear all dirty ptes, but before a racing
-		 * do_wp_page installs a dirty pte.
-		 *
-		 * __do_fault is protected similarly.
-		 */
 		if (!page_mkwrite) {
-			wait_on_page_locked(dirty_page);
-			set_page_dirty_balance(dirty_page);
+			struct address_space *mapping;
+			int dirtied;
+
+			lock_page(dirty_page);
+			dirtied = set_page_dirty(dirty_page);
+			VM_BUG_ON(PageAnon(dirty_page));
+			mapping = dirty_page->mapping;
+			unlock_page(dirty_page);
+
+			if (dirtied && mapping) {
+				/*
+				 * Some device drivers do not set page.mapping
+				 * but still dirty their pages
+				 */
+				balance_dirty_pages_ratelimited(mapping);
+			}
+
 		}
 		put_page(dirty_page);
 		if (page_mkwrite) {
--- a/mm/page-writeback.c
+++ b/mm/page-writeback.c
@@ -1202,16 +1202,6 @@ pause:
 		bdi_start_background_writeback(bdi);
 }
 
-void set_page_dirty_balance(struct page *page)
-{
-	if (set_page_dirty(page)) {
-		struct address_space *mapping = page_mapping(page);
-
-		if (mapping)
-			balance_dirty_pages_ratelimited(mapping);
-	}
-}
-
 static DEFINE_PER_CPU(int, bdp_ratelimits);
 
 /**
@@ -1764,32 +1754,25 @@ EXPORT_SYMBOL(account_page_writeback);
  * page dirty in that case, but not all the buffers.  This is a "bottom-up"
  * dirtying, whereas __set_page_dirty_buffers() is a "top-down" dirtying.
  *
- * Most callers have locked the page, which pins the address_space in memory.
- * But zap_pte_range() does not lock the page, however in that case the
- * mapping is pinned by the vma's ->vm_file reference.
- *
- * We take care to handle the case where the page was truncated from the
- * mapping by re-checking page_mapping() inside tree_lock.
+ * The caller must ensure this doesn't race with truncation.  Most will simply
+ * hold the page lock, but e.g. zap_pte_range() calls with the page mapped and
+ * the pte lock held, which also locks out truncation.
  */
 int __set_page_dirty_nobuffers(struct page *page)
 {
 	if (!TestSetPageDirty(page)) {
 		struct address_space *mapping = page_mapping(page);
-		struct address_space *mapping2;
 		unsigned long flags;
 
 		if (!mapping)
 			return 1;
 
 		spin_lock_irqsave(&mapping->tree_lock, flags);
-		mapping2 = page_mapping(page);
-		if (mapping2) { /* Race with truncate? */
-			BUG_ON(mapping2 != mapping);
-			WARN_ON_ONCE(!PagePrivate(page) && !PageUptodate(page));
-			account_page_dirtied(page, mapping);
-			radix_tree_tag_set(&mapping->page_tree,
-				page_index(page), PAGECACHE_TAG_DIRTY);
-		}
+		BUG_ON(page_mapping(page) != mapping);
+		WARN_ON_ONCE(!PagePrivate(page) && !PageUptodate(page));
+		account_page_dirtied(page, mapping);
+		radix_tree_tag_set(&mapping->page_tree, page_index(page),
+				   PAGECACHE_TAG_DIRTY);
 		spin_unlock_irqrestore(&mapping->tree_lock, flags);
 		if (mapping->host) {
 			/* !PageAnon && !swapper_space */
@@ -1946,12 +1929,10 @@ int clear_page_dirty_for_io(struct page
 		/*
 		 * We carefully synchronise fault handlers against
 		 * installing a dirty pte and marking the page dirty
-		 * at this point. We do this by having them hold the
-		 * page lock at some point after installing their
-		 * pte, but before marking the page dirty.
-		 * Pages are always locked coming in here, so we get
-		 * the desired exclusion. See mm/memory.c:do_wp_page()
-		 * for more comments.
+		 * at this point.  We do this by having them hold the
+		 * page lock while dirtying the page, and pages are
+		 * always locked coming in here, so we get the desired
+		 * exclusion.
 		 */
 		if (TestClearPageDirty(page)) {
 			dec_zone_page_state(page, NR_FILE_DIRTY);


  parent reply	other threads:[~2015-02-17  1:46 UTC|newest]

Thread overview: 170+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-17  1:46 [PATCH 3.2 000/152] 3.2.67-rc1 review Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 028/152] Bluetooth: Add firmware update for Atheros 0cf3:311f Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 012/152] UBI: Fix invalid vfree() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 149/152] splice: Apply generic position and size checks to each write Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 135/152] vm: make stack guard page errors return VM_FAULT_SIGSEGV rather than SIGBUS Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 019/152] USB: cdc-acm: check for valid interfaces Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 011/152] KVM: s390: flush CPU on load control Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 088/152] sata_dwc_460ex: fix resource leak on error path Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 102/152] USB: console: fix potential use after free Ben Hutchings
2015-02-17  1:46 ` Ben Hutchings [this message]
2015-02-17  1:46 ` [PATCH 3.2 015/152] PCI: Restore detection of read-only BARs Ben Hutchings
2015-02-17 17:01   ` Bjorn Helgaas
2015-02-18 13:09     ` Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 117/152] gpio: sysfs: fix gpio attribute-creation race Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 127/152] nl80211: fix per-station group key get/del and memory leak Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 052/152] fib_trie: Fix /proc/net/fib_trie when CONFIG_IP_MULTIPLE_TABLES is not defined Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 008/152] ipv4: Remove all uses of LL_ALLOCATED_SPACE Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 094/152] mm: prevent endless growth of anon_vma hierarchy Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 056/152] mac80211: fix multicast LED blinking and counter Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 041/152] USB: adutux: NULL dereferences on disconnect Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 139/152] s390/3215: fix tty output containing tabs Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 006/152] writeback: fix a subtle race condition in I_DIRTY clearing Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 130/152] USB: Add OTG PET device to TPL Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 018/152] genhd: check for int overflow in disk_expand_part_tbl() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 020/152] [media] uvcvideo: Fix destruction order in uvc_delete() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 070/152] udf: Check path length when reading symlink Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 147/152] net/core: Handle csum for CHECKSUM_COMPLETE VXLAN forwarding Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 089/152] time: settimeofday: Validate the values of tv from user Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 123/152] x86, hyperv: Mark the Hyper-V clocksource as being continuous Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 098/152] OHCI: add a quirk for ULi M5237 blocking on reset Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 074/152] net: Fix stacked vlan offload features computation Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 063/152] x86/tls: Don't validate lm in set_thread_area() after all Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 046/152] ath5k: fix hardware queue index assignment Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 090/152] time: adjtimex: Validate the ADJ_FREQUENCY values Ben Hutchings
2015-02-17 14:16   ` Luis Henriques
2015-02-18 12:55     ` Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 038/152] Bluetooth: ath3k: Add support of MCI 13d3:3408 bt device Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 057/152] genirq: Prevent proc race against freeing of irq descriptors Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 114/152] gpiolib: Refactor gpio_export Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 124/152] x86, tls, ldt: Stop checking lm in LDT_empty Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 115/152] Fix circular locking dependency (3.3-rc2) Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 069/152] udf: Treat symlink component of type 2 as / Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 093/152] Input: I8042 - add Acer Aspire 7738 to the nomux list Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 003/152] [media] sound: Update au0828 quirks table Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 040/152] eCryptfs: Remove buggy and unnecessary write in file name decode routine Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 024/152] Bluetooth: ath3k: Add support for a new AR3012 device Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 031/152] Bluetooth: append new supported device to the list [0b05:17d0] Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 078/152] Revert "tcp: Apply device TSO segment limit earlier" Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 107/152] crypto: add missing crypto module aliases Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 017/152] bus: omap_l3_noc: Correct returning IRQ_HANDLED unconditionally in the irq handler Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 079/152] ALSA: hda - Fix wrong gpio_dir & gpio_mask hint setups for IDT/STAC codecs Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 082/152] virtio: use dev_to_virtio wrapper in virtio Ben Hutchings
2015-02-17  5:26   ` Rusty Russell
2015-02-18  0:55     ` Ben Hutchings
2015-02-18  4:44       ` Rusty Russell
2015-02-17  1:46 ` [PATCH 3.2 151/152] KVM: x86 emulator: reject SYSENTER in compatibility mode on AMD guests Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 136/152] Revert "x86, mm: Set NX across entire PMD at boot" Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 062/152] ceph: introduce global empty snap context Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 122/152] libata: prevent HSM state change race between ISR and PIO Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 104/152] mm: fix corner case in anon_vma endless growing prevention Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 067/152] udf: Verify i_size when loading inode Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 110/152] can: dev: fix crtlmode_supported check Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 054/152] ncpfs: return proper error from NCP_IOC_SETROOT ioctl Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 007/152] usb: renesas_usbhs: gadget: fix NULL pointer dereference in ep_disable() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 032/152] Bluetooth: Add support for Intel bootloader devices Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 077/152] USB: cp210x: fix ID for production CEL MeshConnect USB Stick Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 146/152] enic: fix rx skb checksum Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 095/152] mm: remove unused arg of set_page_dirty_balance() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 013/152] driver core: Fix unbalanced device reference in drivers_probe Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 134/152] vm: add VM_FAULT_SIGSEGV handling support Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 086/152] ASoC: wm8960: Fix capture sample rate from 11250 to 11025 Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 111/152] sysfs.h: add ATTRIBUTE_GROUPS() macro Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 071/152] x86_64, vdso: Fix the vdso address randomization algorithm Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 065/152] ocfs2: fix journal commit deadlock Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 064/152] ALSA: usb-audio: extend KEF X300A FU 10 tweak to Arcam rPAC Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 118/152] net: sctp: fix race for one-to-many sockets in sendmsg's auto associate Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 133/152] net: sctp: fix slab corruption from use after free on INIT collisions Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 034/152] Bluetooth: Add support for Acer [13D3:3432] Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 103/152] mm: Don't count the stack guard page towards RLIMIT_STACK Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 075/152] video/logo: prevent use of logos after they have been freed Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 051/152] KEYS: Fix stale key registration at error path Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 035/152] Bluetooth: Add support for Broadcom device of Asus Z97-DELUXE motherboard Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 128/152] usb-storage/SCSI: blacklist FUA on JMicron 152d:2566 USB-SATA controller Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 002/152] [media] sound: simplify au0828 quirk table Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 087/152] mm: propagate error from stack expansion even for guard page Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 073/152] crypto: af_alg - fix backlog handling Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 055/152] x86_64, switch_to(): Load TLS descriptors before switching DS and ES Ben Hutchings
2015-02-24 15:47   ` Denys Vlasenko
2015-02-24 20:02     ` Andy Lutomirski
2015-02-24 20:08       ` Denys Vlasenko
2015-02-25  3:23         ` Brian Gerst
2015-02-26 15:32           ` Andy Lutomirski
2015-02-26 16:28             ` Brian Gerst
2015-02-26 19:17               ` Andy Lutomirski
2015-02-17  1:46 ` [PATCH 3.2 132/152] ALSA: seq-dummy: remove deadlock-causing events on close Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 099/152] usb: gadget: udc: atmel: change setting for DMA Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 105/152] crypto: prefix module autoloading with "crypto-" Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 152/152] KVM: x86: SYSENTER emulation is broken Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 022/152] serial: samsung: wait for transfer completion before clock disable Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 039/152] Bluetooth: Add USB device 04ca:3010 as Atheros AR3012 Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 049/152] hp_accel: Add support for HP ZBook 15 Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 037/152] Bluetooth: Add support for Acer [0489:e078] Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 120/152] libata: allow sata_sil24 to opt-out of tag ordered submission Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 119/152] ALSA: usb-audio: Add mic volume fix quirk for Logitech Webcam C210 Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 053/152] Btrfs: fix fs corruption on transaction abort if device supports discard Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 092/152] regulator: core: fix race condition in regulator_put() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 131/152] drm/i915: Only fence tiled region of object Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 023/152] Bluetooth: btusb: Add support for Belkin F8065bf Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 025/152] Bluetooth: ath3k: Add support for another AR3012 card Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 036/152] Add a new PID/VID 0227/0930 for AR3012 Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 081/152] spi: dw-mid: fix FIFO size Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 043/152] dm space map metadata: fix sm_bootstrap_get_nr_blocks() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 047/152] iommu/vt-d: Fix an off-by-one bug in __domain_mapping() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 108/152] gpio: fix memory and reference leaks in gpiochip_add error path Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 125/152] Input: i8042 - add noloop quirk for Medion Akoya E7225 (MD98857) Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 050/152] ALSA: usb-audio: Don't resubmit pending URBs at MIDI error recovery Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 045/152] ath9k: fix BE/BK queue order Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 141/152] fsnotify: next_i is freed during fsnotify_unmount_inodes Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 001/152] eCryptfs: Force RO mount when encrypted view is enabled Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 113/152] gpio: sysfs: fix gpio-chip device-attribute leak Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 109/152] ftrace/jprobes/x86: Fix conflict between jprobes and function graph tracing Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 010/152] ipv6: mld: fix add_grhead skb_over_panic for devs with large MTUs Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 091/152] Input: i8042 - reset keyboard to fix Elantech touchpad detection Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 061/152] iscsi-target: Fail connection on short sendmsg writes Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 143/152] netfilter: ipset: small potential read beyond the end of buffer Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 072/152] udf: Check component length before reading it Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 101/152] usb: gadget: udc: atmel: fix possible oops when unloading module Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 106/152] crypto: include crypto- module prefix in template Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 004/152] [media] af9005: fix kernel panic on init if compiled without IR Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 144/152] dcache: Fix locking bugs in backported "deal with deadlock in d_walk()" Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 142/152] KEYS: close race between key lookup and freeing Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 116/152] gpio: sysfs: fix gpio device-attribute leak Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 097/152] HID: roccat: potential out of bounds in pyra_sysfs_write_settings() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 076/152] video/fbdev: fix defio's fsync Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 140/152] x86, cpu, amd: Add workaround for family 16h, erratum 793 Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 030/152] Bluetooth: sort the list of IDs in the source code Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 100/152] usb: gadget: udc: atmel: fix possible IN hang issue Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 027/152] Bluetooth: Enable Atheros 0cf3:311e for firmware upload Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 060/152] isofs: Fix infinite looping over CE entries Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 080/152] spi: dw: Fix detecting FIFO depth Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 083/152] virtio_pci: defer kfree until release callback Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 005/152] writeback: Move I_DIRTY_PAGES handling Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 138/152] ACPI / EC: Fix regression due to conflicting firmware behavior between Samsung and Acer Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 129/152] usb-core bInterval quirk Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 150/152] netfilter: conntrack: disable generic tracking for known protocols Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 048/152] drm/vmwgfx: Don't use memory accounting for kernel-side fence objects Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 033/152] Bluetooth: Ignore isochronous endpoints for Intel USB bootloader Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 137/152] Revert "x86, 64bit, mm: Mark data/bss/brk to nx" Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 059/152] x86/tls: Disallow unusual TLS segments Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 021/152] mfd: tc6393xb: Fail ohci suspend if full state restore is required Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 009/152] ipv6: Remove all uses of LL_ALLOCATED_SPACE Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 126/152] x86, tls: Interpret an all-zero struct user_desc as "no segment" Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 058/152] decompress_bunzip2: off by one in get_next_block() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 014/152] drbd: merge_bvec_fn: properly remap bvm->bi_bdev Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 026/152] Bluetooth: Add support for Toshiba Bluetooth device [0930:0220] Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 148/152] vfs: Fix vfsmount_lock imbalance in path_init() Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 044/152] ath9k_hw: fix hardware queue allocation Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 066/152] isofs: Fix unchecked printing of ER records Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 112/152] driver core: Introduce device_create_groups Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 084/152] virtio_pci: document why we defer kfree Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 121/152] scripts/recordmcount.pl: There is no -m32 gcc option on Super-H anymore Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 016/152] scsi: correct return values for .eh_abort_handler implementations Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 029/152] Bluetooth: btusb: Add IMC Networks (Broadcom based) Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 145/152] tg3: tg3_disable_ints using uninitialized mailbox value to disable interrupts Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 042/152] ALSA: hda - using uninitialized data Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 068/152] udf: Verify symlink size before loading it Ben Hutchings
2015-02-17  1:46 ` [PATCH 3.2 085/152] USB: cp210x: add IDs for CEL USB sticks and MeshWorks devices Ben Hutchings
2015-02-17  3:24 ` [PATCH 3.2 000/152] 3.2.67-rc1 review Ben Hutchings
2015-02-17  3:32 ` Guenter Roeck
2015-02-17 13:55   ` 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.1424137613.927987603@decadent.org.uk \
    --to=ben@decadent.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=jack@suse.cz \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=tj@kernel.org \
    --cc=torvalds@linux-foundation.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