linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jiri Slaby <jslaby@suse.cz>
To: stable@vger.kernel.org
Cc: linux-kernel@vger.kernel.org,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Hillf Danton <dhillf@gmail.com>,
	Andrea Arcangeli <aarcange@redhat.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Jiri Slaby <jslaby@suse.cz>
Subject: [PATCH 3.12 023/155] mm: thp: give transparent hugepage code a separate copy_page
Date: Tue,  7 Apr 2015 14:49:52 +0200	[thread overview]
Message-ID: <c9665a06ec2afd7d6c42d38661247dac23121dfa.1428411003.git.jslaby@suse.cz> (raw)
In-Reply-To: <9a548862b8a26cbccc14f2c6c9c3688813d8d14b.1428411003.git.jslaby@suse.cz>
In-Reply-To: <cover.1428411003.git.jslaby@suse.cz>

From: Dave Hansen <dave.hansen@linux.intel.com>

3.12-stable review patch.  If anyone has any objections, please let me know.

===============

commit 30b0a105d9f7141e4cbf72ae5511832457d89788 upstream.

Right now, the migration code in migrate_page_copy() uses copy_huge_page()
for hugetlbfs and thp pages:

       if (PageHuge(page) || PageTransHuge(page))
                copy_huge_page(newpage, page);

So, yay for code reuse.  But:

  void copy_huge_page(struct page *dst, struct page *src)
  {
        struct hstate *h = page_hstate(src);

and a non-hugetlbfs page has no page_hstate().  This works 99% of the
time because page_hstate() determines the hstate from the page order
alone.  Since the page order of a THP page matches the default hugetlbfs
page order, it works.

But, if you change the default huge page size on the boot command-line
(say default_hugepagesz=1G), then we might not even *have* a 2MB hstate
so page_hstate() returns null and copy_huge_page() oopses pretty fast
since copy_huge_page() dereferences the hstate:

  void copy_huge_page(struct page *dst, struct page *src)
  {
        struct hstate *h = page_hstate(src);
        if (unlikely(pages_per_huge_page(h) > MAX_ORDER_NR_PAGES)) {
  ...

Mel noticed that the migration code is really the only user of these
functions.  This moves all the copy code over to migrate.c and makes
copy_huge_page() work for THP by checking for it explicitly.

I believe the bug was introduced in commit b32967ff101a ("mm: numa: Add
THP migration for the NUMA working set scanning fault case")

[akpm@linux-foundation.org: fix coding-style and comment text, per Naoya Horiguchi]
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Reviewed-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Cc: Hillf Danton <dhillf@gmail.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Tested-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
 include/linux/hugetlb.h |  4 ----
 mm/hugetlb.c            | 34 ----------------------------------
 mm/migrate.c            | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 48 insertions(+), 38 deletions(-)

diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index 2a943a396d20..1eaf61dde2c3 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -70,7 +70,6 @@ int dequeue_hwpoisoned_huge_page(struct page *page);
 bool isolate_huge_page(struct page *page, struct list_head *list);
 void putback_active_hugepage(struct page *page);
 bool is_hugepage_active(struct page *page);
-void copy_huge_page(struct page *dst, struct page *src);
 
 #ifdef CONFIG_ARCH_WANT_HUGE_PMD_SHARE
 pte_t *huge_pmd_share(struct mm_struct *mm, unsigned long addr, pud_t *pud);
@@ -149,9 +148,6 @@ static inline bool isolate_huge_page(struct page *page, struct list_head *list)
 }
 #define putback_active_hugepage(p)	do {} while (0)
 #define is_hugepage_active(x)	false
-static inline void copy_huge_page(struct page *dst, struct page *src)
-{
-}
 
 static inline unsigned long hugetlb_change_protection(struct vm_area_struct *vma,
 		unsigned long address, unsigned long end, pgprot_t newprot)
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 1b040cb0ac5b..b43467a88243 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -476,40 +476,6 @@ static int vma_has_reserves(struct vm_area_struct *vma, long chg)
 	return 0;
 }
 
-static void copy_gigantic_page(struct page *dst, struct page *src)
-{
-	int i;
-	struct hstate *h = page_hstate(src);
-	struct page *dst_base = dst;
-	struct page *src_base = src;
-
-	for (i = 0; i < pages_per_huge_page(h); ) {
-		cond_resched();
-		copy_highpage(dst, src);
-
-		i++;
-		dst = mem_map_next(dst, dst_base, i);
-		src = mem_map_next(src, src_base, i);
-	}
-}
-
-void copy_huge_page(struct page *dst, struct page *src)
-{
-	int i;
-	struct hstate *h = page_hstate(src);
-
-	if (unlikely(pages_per_huge_page(h) > MAX_ORDER_NR_PAGES)) {
-		copy_gigantic_page(dst, src);
-		return;
-	}
-
-	might_sleep();
-	for (i = 0; i < pages_per_huge_page(h); i++) {
-		cond_resched();
-		copy_highpage(dst + i, src + i);
-	}
-}
-
 static void enqueue_huge_page(struct hstate *h, struct page *page)
 {
 	int nid = page_to_nid(page);
diff --git a/mm/migrate.c b/mm/migrate.c
index 66ca0c494b90..05502f10c842 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -444,6 +444,54 @@ int migrate_huge_page_move_mapping(struct address_space *mapping,
 }
 
 /*
+ * Gigantic pages are so large that we do not guarantee that page++ pointer
+ * arithmetic will work across the entire page.  We need something more
+ * specialized.
+ */
+static void __copy_gigantic_page(struct page *dst, struct page *src,
+				int nr_pages)
+{
+	int i;
+	struct page *dst_base = dst;
+	struct page *src_base = src;
+
+	for (i = 0; i < nr_pages; ) {
+		cond_resched();
+		copy_highpage(dst, src);
+
+		i++;
+		dst = mem_map_next(dst, dst_base, i);
+		src = mem_map_next(src, src_base, i);
+	}
+}
+
+static void copy_huge_page(struct page *dst, struct page *src)
+{
+	int i;
+	int nr_pages;
+
+	if (PageHuge(src)) {
+		/* hugetlbfs page */
+		struct hstate *h = page_hstate(src);
+		nr_pages = pages_per_huge_page(h);
+
+		if (unlikely(nr_pages > MAX_ORDER_NR_PAGES)) {
+			__copy_gigantic_page(dst, src, nr_pages);
+			return;
+		}
+	} else {
+		/* thp page */
+		BUG_ON(!PageTransHuge(src));
+		nr_pages = hpage_nr_pages(src);
+	}
+
+	for (i = 0; i < nr_pages; i++) {
+		cond_resched();
+		copy_highpage(dst + i, src + i);
+	}
+}
+
+/*
  * Copy the page to its new location
  */
 void migrate_page_copy(struct page *newpage, struct page *page)
-- 
2.3.4


  parent reply	other threads:[~2015-04-07 13:31 UTC|newest]

Thread overview: 157+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-07 12:51 [PATCH 3.12 000/155] 3.12.40-stable review Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 001/155] mm/hugetlb: fix getting refcount 0 page in hugetlb_fault() Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 002/155] ALSA: hda - Fix regression of HD-audio controller fallback modes Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 003/155] net: sysctl_net_core: check SNDBUF and RCVBUF for min length Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 004/155] rds: avoid potential stack overflow Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 005/155] inet_diag: fix possible overflow in inet_diag_dump_one_icsk() Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 006/155] caif: fix MSG_OOB test in caif_seqpkt_recvmsg() Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 007/155] rxrpc: bogus MSG_PEEK test in rxrpc_recvmsg() Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 008/155] Revert "net: cx82310_eth: use common match macro" Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 009/155] ipv6: fix backtracking for throw routes Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 010/155] tcp: fix tcp fin memory accounting Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 011/155] net: compat: Update get_compat_msghdr() to match copy_msghdr_from_user() behaviour Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 012/155] tcp: make connect() mem charging friendly Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 013/155] sparc32: destroy_context() and switch_mm() needs to disable interrupts Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 014/155] sparc: semtimedop() unreachable due to comparison error Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 015/155] sparc: perf: Remove redundant perf_pmu_{en|dis}able calls Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 016/155] sparc: perf: Make counting mode actually work Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 017/155] sparc: Touch NMI watchdog when walking cpus and calling printk Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 018/155] sparc64: Fix several bugs in memmove() Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 019/155] HID: add ALWAYS_POLL quirk for a Logitech 0xc007 Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 020/155] powerpc/mpc85xx: Add ranges to etsec2 nodes Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 021/155] include/linux/hugetlb.h: make isolate_huge_page() an inline Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 022/155] mm, hugetlb: define page_hstate for !HUGETLB_PAGE Jiri Slaby
2015-04-07 12:49 ` Jiri Slaby [this message]
2015-04-07 12:49 ` [PATCH 3.12 024/155] IB/core: Avoid leakage from kernel to user space Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 025/155] drm/radeon: fix DRM_IOCTL_RADEON_CS oops Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 026/155] drm/radeon: do a posting read in evergreen_set_irq Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 027/155] drm/radeon: do a posting read in r100_set_irq Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 028/155] drm/radeon: do a posting read in r600_set_irq Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 029/155] drm/radeon: do a posting read in cik_set_irq Jiri Slaby
2015-04-07 12:49 ` [PATCH 3.12 030/155] drm/radeon: do a posting read in si_set_irq Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 031/155] drm/radeon: do a posting read in rs600_set_irq Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 032/155] drm/radeon: fix interlaced modes on DCE8 Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 033/155] drm/radeon: drop setting UPLL to sleep mode Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 034/155] LZ4 : fix the data abort issue Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 035/155] fuse: set stolen page uptodate Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 036/155] fuse: notify: don't move pages Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 037/155] console: Fix console name size mismatch Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 038/155] virtio_console: init work unconditionally Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 039/155] virtio_console: avoid config access from irq Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 040/155] Change email address for 8250_pci Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 041/155] can: add missing initialisations in CAN related skbuffs Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 042/155] workqueue: fix hang involving racing cancel[_delayed]_work_sync()'s for PREEMPT_NONE Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 043/155] cpuset: Fix cpuset sched_relax_domain_level Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 044/155] tpm/ibmvtpm: Additional LE support for tpm_ibmvtpm_send Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 045/155] spi: pl022: Fix race in giveback() leading to driver lock-up Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 046/155] ALSA: snd-usb: add quirks for Roland UA-22 Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 047/155] ALSA: control: Add sanity checks for user ctl id name string Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 048/155] ALSA: hda - Fix built-in mic on Compaq Presario CQ60 Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 049/155] ALSA: hda - Don't access stereo amps for mono channel widgets Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 050/155] ALSA: hda - Set single_adc_amp flag for CS420x codecs Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 051/155] ALSA: hda - Add workaround for MacBook Air 5,2 built-in mic Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 052/155] ALSA: hda - Treat stereo-to-mono mix properly Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 053/155] bnx2x: Force fundamental reset for EEH recovery Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 054/155] regulator: Only enable disabled regulators on resume Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 055/155] regulator: core: Fix enable GPIO reference counting Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 056/155] nilfs2: fix deadlock of segment constructor during recovery Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 057/155] drm/vmwgfx: Reorder device takedown somewhat Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 058/155] xen-pciback: limit guest control of command register Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 059/155] libsas: Fix Kernel Crash in smp_execute_task Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 060/155] pagemap: do not leak physical addresses to non-privileged userspace Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 061/155] crypto: aesni - fix memory usage in GCM decryption Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 062/155] x86/fpu: Avoid math_state_restore() without used_math() in __restore_xstate_sig() Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 063/155] x86/fpu: Drop_fpu() should not assume that tsk equals current Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 064/155] x86/vdso: Fix the build on GCC5 Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 065/155] ARM: at91: pm: fix at91rm9200 standby Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 066/155] target: Fix reference leak in target_get_sess_cmd() error path Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 067/155] target: Fix virtual LUN=0 target_configure_device failure OOPs Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 068/155] iscsi-target: Avoid early conn_logout_comp for iser connections Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 069/155] target/pscsi: Fix NULL pointer dereference in get_device_type Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 070/155] target: Fix R_HOLDER bit usage for AllRegistrants Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 071/155] target: Avoid dropping AllRegistrants reservation during unregister Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 072/155] target: Allow AllRegistrants to re-RESERVE existing reservation Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 073/155] target: Allow Write Exclusive non-reservation holders to READ Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 074/155] power, sched: stop updating inside arch_update_cpu_topology() when nothing to be update Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 075/155] Don't leak a key reference if request_key() tries to use a revoked keyring Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 076/155] ipc/sem.c: fully initialize sem_array before making it visible Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 077/155] ipc/shm.c: fix overly aggressive shmdt() when calls span multiple segments Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 078/155] shmdt: use i_size_read() instead of ->i_size Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 079/155] crypto: sha - Handle unaligned input data in generic sha256 and sha512 Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 080/155] crypto: testmgr - don't use interruptible wait in tests Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 081/155] NFS: Add attribute update barriers to nfs_setattr_update_inode() Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 082/155] ntp: Fixup adjtimex freq validation on 32-bit systems Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 083/155] hung_task: check the value of "sysctl_hung_task_timeout_sec" Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 084/155] topology: Fix compilation warning when not in SMP Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 085/155] xen-blkfront: revoke foreign access for grants not mapped by the backend Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 086/155] xen-blkfront: restore the non-persistent data path Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 087/155] crypto: s390 - fix aes,des ctr mode concurrency finding Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 088/155] ARM: OMAP4: Fix the boot regression with CPU_IDLE enabled Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 089/155] iscsi-target: Fix wrong buffer / buffer overrun in iscsi_change_param_value() Jiri Slaby
2015-04-07 12:50 ` [PATCH 3.12 090/155] [SCSI] megaraid: Use resource_size_t for PCI resources, not long Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 091/155] iio:adc:max1363 incorrect resolutions for max11604, max11605, max11610 and max11611 Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 092/155] parisc: add serial ports of C8000/1GHz machine to hardware database Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 093/155] stable_kernel_rules: Add pointer to netdev-FAQ for network patches Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 094/155] ARM: OMAP2+: hwmod: Rearm wake-up interrupts for DT when MUSB is idled Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 095/155] MIPS: asm/reg.h: Make 32- and 64-bit definitions available at the same time Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 096/155] ACPI: Run fixed event device notifications in process context Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 097/155] USB: zte_ev: fix removed PIDs Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 098/155] ACPICA: Update to GPIO region handler interface Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 099/155] powerpc/perf: Fix ABIv2 kernel backtraces Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 100/155] ARC: [nsimosci] Allow "headless" models to boot Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 101/155] ARC: Update order of registers in KGDB to match GDB 7.5 Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 102/155] ARM: Correct BUG() assembly to ensure it is endian-agnostic Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 103/155] md/bitmap: always wait for writes on unplug Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 104/155] Btrfs: don't delay inode ref updates during log replay Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 105/155] ARC: [nsimosci] move peripherals to match model to FPGA Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 106/155] cfg80211: Fix 160 MHz channels with 80+80 and 160 MHz drivers Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 107/155] ARM: 7866/1: include: asm: use 'long long' instead of 'u64' within atomic.h Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 108/155] ARM: 7867/1: include: asm: use 'int' instead of 'unsigned long' for 'oldval' in atomic_cmpxchg() Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 109/155] ARM: 7931/1: Correct virt_addr_valid Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 110/155] ARM: 8108/1: mm: Introduce {pte,pmd}_isset and {pte,pmd}_isclear Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 111/155] ARM: 8109/1: mm: Modify pte_write and pmd_write logic for LPAE Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 112/155] powerpc/smp: Wait until secondaries are active & online Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 113/155] module: set nx before marking module MODULE_STATE_COMING Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 114/155] module: Clean up ro/nx after early module load failures Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 115/155] x86/microcode/intel: Guard against stack overflow in the loader Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 116/155] powerpc: Fix sys_call_table declaration to enable syscall tracing Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 117/155] intel_idle: Add CPU model 54 (Atom N2000 series) Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 118/155] iommu/core: Check for the right function pointer in iommu_map() Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 119/155] x86/irq: Check for valid irq descriptor in check_irq_vectors_for_cpu_disable() Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 120/155] core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle errors Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 121/155] ipv6: reallocate addrconf router for ipv6 address when lo device up Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 122/155] dns_resolver: Null-terminate the right string Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 123/155] net: mvneta: Fix big endian issue in mvneta_txq_desc_csum() Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 124/155] net: fix sparse warning in sk_dst_set() Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 125/155] net/mlx4_core: pass pci_device_id.driver_data to __mlx4_init_one during reset Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 126/155] net/mlx4_core: Preserve pci_dev_data after __mlx4_remove_one() Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 127/155] net: mvneta: increase the 64-bit rx/tx stats out of the hot path Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 128/155] net: mvneta: use per_cpu stats to fix an SMP lock up Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 129/155] net: mvneta: do not schedule in mvneta_tx_timeout Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 130/155] net: mvneta: add missing bit descriptions for interrupt masks and causes Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 131/155] net: mvneta: replace Tx timer with a real interrupt Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 132/155] ASoC: sgtl5000: remove useless register write clearing CHRGPUMP_POWERUP Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 133/155] ASoC: pcm1681: Fix wrong value references for boolean kctl Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 134/155] ASoC: cs4271: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 135/155] ASoC: wm8960: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 136/155] ASoC: tas5086: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 137/155] ASoC: wm8731: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 138/155] ASoC: wm2000: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 139/155] ASoC: wm8903: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 140/155] ASoC: wm8904: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 141/155] ASoC: ak4641: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 142/155] ASoC: adav80x: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 143/155] ASoC: wm8955: " Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 144/155] regmap: regcache-rbtree: Fix present bitmap resize Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 145/155] tcm_fc: missing curly braces in ft_invl_hw_context() Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 146/155] tcm_qla2xxx: Fix incorrect use of __transport_register_session Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 147/155] nl80211: ignore HT/VHT capabilities without QoS/WMM Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 148/155] mac80211: disable u-APSD queues by default Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 149/155] mac80211: drop unencrypted frames in mesh fwding Jiri Slaby
2015-04-07 12:51 ` [PATCH 3.12 150/155] perf: Fix irq_work 'tail' recursion Jiri Slaby
2015-04-07 12:52 ` [PATCH 3.12 151/155] vt6655: RFbSetPower fix missing rate RATE_12M Jiri Slaby
2015-04-07 12:52 ` [PATCH 3.12 152/155] dmaengine: dw: append MODULE_ALIAS for platform driver Jiri Slaby
2015-04-07 12:52 ` [PATCH 3.12 153/155] dm: hold suspend_lock while suspending device during device deletion Jiri Slaby
2015-04-07 12:52 ` [PATCH 3.12 154/155] dm io: deal with wandering queue limits when handling REQ_DISCARD and REQ_WRITE_SAME Jiri Slaby
2015-04-07 12:52 ` [PATCH 3.12 155/155] hfsplus: fix B-tree corruption after insertion at position 0 Jiri Slaby
2015-04-07 13:08 ` [PATCH 3.12 000/155] 3.12.40-stable review 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=c9665a06ec2afd7d6c42d38661247dac23121dfa.1428411003.git.jslaby@suse.cz \
    --to=jslaby@suse.cz \
    --cc=aarcange@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=dave.hansen@linux.intel.com \
    --cc=dhillf@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.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;
as well as URLs for NNTP newsgroup(s).