mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kamal Mostafa <kamal@canonical.com>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	kernel-team@lists.ubuntu.com
Cc: Yinghai Lu <yinghai@kernel.org>,
	"H. Peter Anvin" <hpa@linux.intel.com>,
	Luis Henriques <luis.henriques@canonical.com>
Subject: [PATCH 038/145] x86: Fix /proc/mtrr with base/size more than 44bits
Date: Wed, 17 Jul 2013 15:46:10 -0700	[thread overview]
Message-ID: <1374101277-7915-39-git-send-email-kamal@canonical.com> (raw)
In-Reply-To: <1374101277-7915-1-git-send-email-kamal@canonical.com>

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

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

From: Yinghai Lu <yinghai@kernel.org>

commit d5c78673b1b28467354c2c30c3d4f003666ff385 upstream.

On one sytem that mtrr range is more then 44bits, in dmesg we have
[    0.000000] MTRR default type: write-back
[    0.000000] MTRR fixed ranges enabled:
[    0.000000]   00000-9FFFF write-back
[    0.000000]   A0000-BFFFF uncachable
[    0.000000]   C0000-DFFFF write-through
[    0.000000]   E0000-FFFFF write-protect
[    0.000000] MTRR variable ranges enabled:
[    0.000000]   0 [000080000000-0000FFFFFFFF] mask 3FFF80000000 uncachable
[    0.000000]   1 [380000000000-38FFFFFFFFFF] mask 3F0000000000 uncachable
[    0.000000]   2 [000099000000-000099FFFFFF] mask 3FFFFF000000 write-through
[    0.000000]   3 [00009A000000-00009AFFFFFF] mask 3FFFFF000000 write-through
[    0.000000]   4 [381FFA000000-381FFBFFFFFF] mask 3FFFFE000000 write-through
[    0.000000]   5 [381FFC000000-381FFC0FFFFF] mask 3FFFFFF00000 write-through
[    0.000000]   6 [0000AD000000-0000ADFFFFFF] mask 3FFFFF000000 write-through
[    0.000000]   7 [0000BD000000-0000BDFFFFFF] mask 3FFFFF000000 write-through
[    0.000000]   8 disabled
[    0.000000]   9 disabled

but /proc/mtrr report wrong:
reg00: base=0x080000000 ( 2048MB), size= 2048MB, count=1: uncachable
reg01: base=0x80000000000 (8388608MB), size=1048576MB, count=1: uncachable
reg02: base=0x099000000 ( 2448MB), size=   16MB, count=1: write-through
reg03: base=0x09a000000 ( 2464MB), size=   16MB, count=1: write-through
reg04: base=0x81ffa000000 (8519584MB), size=   32MB, count=1: write-through
reg05: base=0x81ffc000000 (8519616MB), size=    1MB, count=1: write-through
reg06: base=0x0ad000000 ( 2768MB), size=   16MB, count=1: write-through
reg07: base=0x0bd000000 ( 3024MB), size=   16MB, count=1: write-through
reg08: base=0x09b000000 ( 2480MB), size=   16MB, count=1: write-combining

so bit 44 and bit 45 get cut off.

We have problems in arch/x86/kernel/cpu/mtrr/generic.c::generic_get_mtrr().
1. for base, we miss cast base_lo to 64bit before shifting.
Fix that by adding u64 casting.

2. for size, it only can handle 44 bits aka 32bits + page_shift
Fix that with 64bit mask instead of 32bit mask_lo, then range could be
more than 44bits.
At the same time, we need to update size_or_mask for old cpus that does
support cpuid 0x80000008 to get phys_addr. Need to set high 32bits
to all 1s, otherwise will not get correct size for them.

Also fix mtrr_add_page: it should check base and (base + size - 1)
instead of base and size, as base and size could be small but
base + size could bigger enough to be out of boundary. We can
use boot_cpu_data.x86_phys_bits directly to avoid size_or_mask.

So When are we going to have size more than 44bits? that is 16TiB.

after patch we have right ouput:
reg00: base=0x080000000 ( 2048MB), size= 2048MB, count=1: uncachable
reg01: base=0x380000000000 (58720256MB), size=1048576MB, count=1: uncachable
reg02: base=0x099000000 ( 2448MB), size=   16MB, count=1: write-through
reg03: base=0x09a000000 ( 2464MB), size=   16MB, count=1: write-through
reg04: base=0x381ffa000000 (58851232MB), size=   32MB, count=1: write-through
reg05: base=0x381ffc000000 (58851264MB), size=    1MB, count=1: write-through
reg06: base=0x0ad000000 ( 2768MB), size=   16MB, count=1: write-through
reg07: base=0x0bd000000 ( 3024MB), size=   16MB, count=1: write-through
reg08: base=0x09b000000 ( 2480MB), size=   16MB, count=1: write-combining

-v2: simply checking in mtrr_add_page according to hpa.

[ hpa: This probably wants to go into -stable only after having sat in
  mainline for a bit.  It is not a regression. ]

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Link: http://lkml.kernel.org/r/1371162815-29931-1-git-send-email-yinghai@kernel.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
[ luis: backported to 3.8: adjusted context ]
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
---
 arch/x86/kernel/cpu/mtrr/generic.c | 21 +++++++++++----------
 arch/x86/kernel/cpu/mtrr/main.c    | 16 +++++++++-------
 2 files changed, 20 insertions(+), 17 deletions(-)

diff --git a/arch/x86/kernel/cpu/mtrr/generic.c b/arch/x86/kernel/cpu/mtrr/generic.c
index e9fe907..5ac2152 100644
--- a/arch/x86/kernel/cpu/mtrr/generic.c
+++ b/arch/x86/kernel/cpu/mtrr/generic.c
@@ -510,8 +510,9 @@ generic_get_free_region(unsigned long base, unsigned long size, int replace_reg)
 static void generic_get_mtrr(unsigned int reg, unsigned long *base,
 			     unsigned long *size, mtrr_type *type)
 {
-	unsigned int mask_lo, mask_hi, base_lo, base_hi;
-	unsigned int tmp, hi;
+	u32 mask_lo, mask_hi, base_lo, base_hi;
+	unsigned int hi;
+	u64 tmp, mask;
 
 	/*
 	 * get_mtrr doesn't need to update mtrr_state, also it could be called
@@ -532,18 +533,18 @@ static void generic_get_mtrr(unsigned int reg, unsigned long *base,
 	rdmsr(MTRRphysBase_MSR(reg), base_lo, base_hi);
 
 	/* Work out the shifted address mask: */
-	tmp = mask_hi << (32 - PAGE_SHIFT) | mask_lo >> PAGE_SHIFT;
-	mask_lo = size_or_mask | tmp;
+	tmp = (u64)mask_hi << (32 - PAGE_SHIFT) | mask_lo >> PAGE_SHIFT;
+	mask = size_or_mask | tmp;
 
 	/* Expand tmp with high bits to all 1s: */
-	hi = fls(tmp);
+	hi = fls64(tmp);
 	if (hi > 0) {
-		tmp |= ~((1<<(hi - 1)) - 1);
+		tmp |= ~((1ULL<<(hi - 1)) - 1);
 
-		if (tmp != mask_lo) {
+		if (tmp != mask) {
 			printk(KERN_WARNING "mtrr: your BIOS has configured an incorrect mask, fixing it.\n");
 			add_taint(TAINT_FIRMWARE_WORKAROUND);
-			mask_lo = tmp;
+			mask = tmp;
 		}
 	}
 
@@ -551,8 +552,8 @@ static void generic_get_mtrr(unsigned int reg, unsigned long *base,
 	 * This works correctly if size is a power of two, i.e. a
 	 * contiguous range:
 	 */
-	*size = -mask_lo;
-	*base = base_hi << (32 - PAGE_SHIFT) | base_lo >> PAGE_SHIFT;
+	*size = -mask;
+	*base = (u64)base_hi << (32 - PAGE_SHIFT) | base_lo >> PAGE_SHIFT;
 	*type = base_lo & 0xff;
 
 out_put_cpu:
diff --git a/arch/x86/kernel/cpu/mtrr/main.c b/arch/x86/kernel/cpu/mtrr/main.c
index 726bf96..ca22b73 100644
--- a/arch/x86/kernel/cpu/mtrr/main.c
+++ b/arch/x86/kernel/cpu/mtrr/main.c
@@ -305,7 +305,8 @@ int mtrr_add_page(unsigned long base, unsigned long size,
 		return -EINVAL;
 	}
 
-	if (base & size_or_mask || size & size_or_mask) {
+	if ((base | (base + size - 1)) >>
+	    (boot_cpu_data.x86_phys_bits - PAGE_SHIFT)) {
 		pr_warning("mtrr: base or size exceeds the MTRR width\n");
 		return -EINVAL;
 	}
@@ -583,6 +584,7 @@ static struct syscore_ops mtrr_syscore_ops = {
 
 int __initdata changed_by_mtrr_cleanup;
 
+#define SIZE_OR_MASK_BITS(n)  (~((1ULL << ((n) - PAGE_SHIFT)) - 1))
 /**
  * mtrr_bp_init - initialize mtrrs on the boot CPU
  *
@@ -600,7 +602,7 @@ void __init mtrr_bp_init(void)
 
 	if (cpu_has_mtrr) {
 		mtrr_if = &generic_mtrr_ops;
-		size_or_mask = 0xff000000;			/* 36 bits */
+		size_or_mask = SIZE_OR_MASK_BITS(36);
 		size_and_mask = 0x00f00000;
 		phys_addr = 36;
 
@@ -619,7 +621,7 @@ void __init mtrr_bp_init(void)
 			     boot_cpu_data.x86_mask == 0x4))
 				phys_addr = 36;
 
-			size_or_mask = ~((1ULL << (phys_addr - PAGE_SHIFT)) - 1);
+			size_or_mask = SIZE_OR_MASK_BITS(phys_addr);
 			size_and_mask = ~size_or_mask & 0xfffff00000ULL;
 		} else if (boot_cpu_data.x86_vendor == X86_VENDOR_CENTAUR &&
 			   boot_cpu_data.x86 == 6) {
@@ -627,7 +629,7 @@ void __init mtrr_bp_init(void)
 			 * VIA C* family have Intel style MTRRs,
 			 * but don't support PAE
 			 */
-			size_or_mask = 0xfff00000;		/* 32 bits */
+			size_or_mask = SIZE_OR_MASK_BITS(32);
 			size_and_mask = 0;
 			phys_addr = 32;
 		}
@@ -637,21 +639,21 @@ void __init mtrr_bp_init(void)
 			if (cpu_has_k6_mtrr) {
 				/* Pre-Athlon (K6) AMD CPU MTRRs */
 				mtrr_if = mtrr_ops[X86_VENDOR_AMD];
-				size_or_mask = 0xfff00000;	/* 32 bits */
+				size_or_mask = SIZE_OR_MASK_BITS(32);
 				size_and_mask = 0;
 			}
 			break;
 		case X86_VENDOR_CENTAUR:
 			if (cpu_has_centaur_mcr) {
 				mtrr_if = mtrr_ops[X86_VENDOR_CENTAUR];
-				size_or_mask = 0xfff00000;	/* 32 bits */
+				size_or_mask = SIZE_OR_MASK_BITS(32);
 				size_and_mask = 0;
 			}
 			break;
 		case X86_VENDOR_CYRIX:
 			if (cpu_has_cyrix_arr) {
 				mtrr_if = mtrr_ops[X86_VENDOR_CYRIX];
-				size_or_mask = 0xfff00000;	/* 32 bits */
+				size_or_mask = SIZE_OR_MASK_BITS(32);
 				size_and_mask = 0;
 			}
 			break;
-- 
1.8.1.2


  parent reply	other threads:[~2013-07-17 23:07 UTC|newest]

Thread overview: 150+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-17 22:45 [ 3.8.y.z extended stable ] Linux 3.8.13.5 stable review Kamal Mostafa
2013-07-17 22:45 ` [PATCH 001/145] UBIFS: correct mount message Kamal Mostafa
2013-07-17 22:45 ` [PATCH 002/145] [SCSI] zfcp: fix adapter (re)open recovery while link to SAN is down Kamal Mostafa
2013-07-17 22:45 ` [PATCH 003/145] [SCSI] zfcp: block queue limits with data router Kamal Mostafa
2013-07-17 22:45 ` [PATCH 004/145] [SCSI] zfcp: status read buffers on first adapter open with link down Kamal Mostafa
2013-07-17 22:45 ` [PATCH 005/145] ahci: Add AMD CZ SATA device ID Kamal Mostafa
2013-07-17 22:45 ` [PATCH 006/145] i2c-piix4: Add AMD CZ SMBus " Kamal Mostafa
2013-07-17 22:45 ` [PATCH 007/145] sata_highbank: increase retry count but shorten duration for Calxeda controller Kamal Mostafa
2013-07-17 22:45 ` [PATCH 008/145] clocksource: dw_apb: Fix error check Kamal Mostafa
2013-07-17 22:45 ` [PATCH 009/145] zram: avoid invalid memory access in zram_exit() Kamal Mostafa
2013-07-17 22:45 ` [PATCH 010/145] zram: use zram->lock to protect zram_free_page() in swap free notify path Kamal Mostafa
2013-07-17 22:45 ` [PATCH 011/145] zram: destroy all devices on error recovery path in zram_init() Kamal Mostafa
2013-07-17 22:45 ` [PATCH 012/145] zram: avoid access beyond the zram device Kamal Mostafa
2013-07-17 22:45 ` [PATCH 013/145] zram: protect sysfs handler from invalid memory access Kamal Mostafa
2013-07-17 22:45 ` [PATCH 014/145] pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status Kamal Mostafa
2013-07-17 22:45 ` [PATCH 015/145] PCI: Fix refcount issue in pci_create_root_bus() error recovery path Kamal Mostafa
2013-07-17 22:45 ` [PATCH 016/145] ahci: remove pmp link online check in FBS EH Kamal Mostafa
2013-07-17 22:45 ` [PATCH 017/145] usb: gadget: f_mass_storage: add missing memory barrier for thread_wakeup_needed Kamal Mostafa
2013-07-17 22:45 ` [PATCH 018/145] x86, efi: retry ExitBootServices() on failure Kamal Mostafa
2013-07-17 22:45 ` [PATCH 019/145] libata: skip SRST for all SIMG [34]7x port-multipliers Kamal Mostafa
2013-07-17 22:45 ` [PATCH 020/145] ASoC: wm8962: Remove remaining direct register cache accesses Kamal Mostafa
2013-07-17 22:45 ` [PATCH 021/145] xen/pcifront: Deal with toolstack missing 'XenbusStateClosing' state Kamal Mostafa
2013-07-17 22:45 ` [PATCH 022/145] ACPICA: Do not use extended sleep registers unless HW-reduced bit is set Kamal Mostafa
2013-07-17 22:45 ` [PATCH 023/145] ALSA: hda - Cache the MUX selection for generic HDMI Kamal Mostafa
2013-07-17 22:45 ` [PATCH 024/145] cgroup: fix umount vs cgroup_cfts_commit() race Kamal Mostafa
2013-07-17 22:45 ` [PATCH 025/145] cgroup: fix umount vs cgroup_event_remove() race Kamal Mostafa
2013-07-17 22:45 ` [PATCH 026/145] xhci: check for failed dma pool allocation Kamal Mostafa
2013-07-17 22:45 ` [PATCH 027/145] powerpc/eeh: Fix fetching bus for single-dev-PE Kamal Mostafa
2013-07-17 22:46 ` [PATCH 028/145] ata_piix: IDE-mode SATA patch for Intel Coleto Creek DeviceIDs Kamal Mostafa
2013-07-17 22:46 ` [PATCH 029/145] ahci: AHCI-mode " Kamal Mostafa
2013-07-17 22:46 ` [PATCH 030/145] ARM: 7765/1: perf: Record the user-mode PC in the call chain Kamal Mostafa
2013-07-17 22:46 ` [PATCH 031/145] [SCSI] mpt2sas: Fix for issue Missing delay not getting set during system bootup Kamal Mostafa
2013-07-17 22:46 ` [PATCH 032/145] [SCSI] mpt2sas: Fix for device scan following host reset could get stuck in a infinite loop Kamal Mostafa
2013-07-17 22:46 ` [PATCH 033/145] [SCSI] mpt2sas: fix firmware failure with wrong task attribute Kamal Mostafa
2013-07-17 22:46 ` [PATCH 034/145] usb: host: xhci-plat: release mem region while removing module Kamal Mostafa
2013-07-17 22:46 ` [PATCH 035/145] USB: option,qcserial: move Novatel Gobi1K IDs to qcserial Kamal Mostafa
2013-07-17 22:46 ` [PATCH 036/145] powerpc/hw_brk: Fix setting of length for exact mode breakpoints Kamal Mostafa
2013-07-17 22:46 ` [PATCH 037/145] crypto: algboss - Hold ref count on larval Kamal Mostafa
2013-07-17 22:46 ` Kamal Mostafa [this message]
2013-07-17 22:46 ` [PATCH 039/145] futex: Take hugepages into account when generating futex_key Kamal Mostafa
2013-07-17 22:46 ` [PATCH 040/145] pch_uart: Add uart_clk selection for the MinnowBoard Kamal Mostafa
2013-07-17 22:46 ` [PATCH 041/145] perf: Disable monitoring on setuid processes for regular users Kamal Mostafa
2013-07-17 22:46 ` [PATCH 042/145] [SCSI] sd: Fix parsing of 'temporary ' cache mode prefix Kamal Mostafa
2013-07-17 22:46 ` [PATCH 043/145] Handle big endianness in NTLM (ntlmv2) authentication Kamal Mostafa
2013-07-17 22:46 ` [PATCH 044/145] [SCSI] sd: Update WRITE SAME heuristics Kamal Mostafa
2013-07-17 22:46 ` [PATCH 045/145] [SCSI] aacraid: Fix for arrays are going offline in the system. System hangs Kamal Mostafa
2013-07-17 22:46 ` [PATCH 046/145] genirq: Fix can_request_irq() for IRQs without an action Kamal Mostafa
2013-07-17 22:46 ` [PATCH 047/145] timer: Fix jiffies wrap behavior of round_jiffies_common() Kamal Mostafa
2013-07-17 22:46 ` [PATCH 048/145] xen/time: remove blocked time accounting from xen "clockchip" Kamal Mostafa
2013-07-17 22:46 ` [PATCH 049/145] UBIFS: prepare to fix a horrid bug Kamal Mostafa
2013-07-17 22:46 ` [PATCH 050/145] UBIFS: " Kamal Mostafa
2013-07-17 22:46 ` [PATCH 051/145] Revert "serial: 8250_pci: add support for another kind of NetMos Technology PCI 9835 Multi-I/O Controller" Kamal Mostafa
2013-07-17 22:46 ` [PATCH 052/145] powerpc/smp: Section mismatch from smp_release_cpus to __initdata spinning_secondaries Kamal Mostafa
2013-07-17 22:46 ` [PATCH 053/145] ext4: fix corruption when online resizing a fs with 1K block size Kamal Mostafa
2013-07-17 22:46 ` [PATCH 054/145] jbd2: move superblock checksum calculation to jbd2_write_superblock() Kamal Mostafa
2013-07-17 22:46 ` [PATCH 055/145] ext3,ext4: don't mess with dir_file->f_pos in htree_dirblock_to_tree() Kamal Mostafa
2013-07-17 22:46 ` [PATCH 056/145] jbd2: fix theoretical race in jbd2__journal_restart Kamal Mostafa
2013-07-17 22:46 ` [PATCH 057/145] tick: Prevent uncontrolled switch to oneshot mode Kamal Mostafa
2013-07-17 22:46 ` [PATCH 058/145] md/raid10: fix two bugs affecting RAID10 reshape Kamal Mostafa
2013-07-17 22:46 ` [PATCH 059/145] HID: apple: Add support for the 2013 Macbook Air Kamal Mostafa
2013-07-17 22:46 ` [PATCH 060/145] Input: bcm5974 - add support for the 2013 MacBook Air Kamal Mostafa
2013-07-17 22:46 ` [PATCH 061/145] drivers/dma/pl330.c: fix locking in pl330_free_chan_resources() Kamal Mostafa
2013-07-17 22:46 ` [PATCH 062/145] ocfs2: xattr: fix inlined xattr reflink Kamal Mostafa
2013-07-17 22:46 ` [PATCH 063/145] block: do not pass disk names as format strings Kamal Mostafa
2013-07-17 22:46 ` [PATCH 064/145] crypto: sanitize argument for format string Kamal Mostafa
2013-07-17 22:46 ` [PATCH 065/145] mm/memory-hotplug: fix lowmem count overflow when offline pages Kamal Mostafa
2013-07-17 22:46 ` [PATCH 066/145] drivers/rtc/rtc-rv3029c2.c: fix disabling AIE irq Kamal Mostafa
2013-07-17 22:46 ` [PATCH 067/145] nbd: correct disconnect behavior Kamal Mostafa
2013-07-17 22:46 ` [PATCH 068/145] hpfs: better test for errors Kamal Mostafa
2013-07-17 22:46 ` [PATCH 069/145] Drivers: hv: Execute shutdown in a thread context Kamal Mostafa
2013-07-17 22:46 ` [PATCH 070/145] ext3: fix data=journal fast mount/umount hang Kamal Mostafa
2013-07-17 22:46 ` [PATCH 071/145] netfilter: xt_TCPOPTSTRIP: fix possible mangling beyond packet boundary Kamal Mostafa
2013-07-17 22:46 ` [PATCH 072/145] netfilter: ipt_ULOG: fix non-null terminated string in the nf_log path Kamal Mostafa
2013-07-17 22:46 ` [PATCH 073/145] netfilter: add nf_ipv6_ops hook to fix xt_addrtype with IPv6 Kamal Mostafa
2013-07-17 22:46 ` [PATCH 074/145] ipvs: Fix reuse connection if real server is dead Kamal Mostafa
2013-07-17 22:46 ` [PATCH 075/145] netfilter: xt_LOG: fix mark logging for IPv6 packets Kamal Mostafa
2013-07-17 22:46 ` [PATCH 076/145] ipvs: info leak in __ip_vs_get_dest_entries() Kamal Mostafa
2013-07-17 22:46 ` [PATCH 077/145] netfilter: nfnetlink_cttimeout: fix incomplete dumping of objects Kamal Mostafa
2013-07-17 22:46 ` [PATCH 078/145] netfilter: nfnetlink_acct: " Kamal Mostafa
2013-07-17 22:46 ` [PATCH 079/145] netfilter: xt_TCPMSS: Fix violation of RFC879 in absence of MSS option Kamal Mostafa
2013-07-17 22:46 ` [PATCH 080/145] netfilter: xt_TCPOPTSTRIP: don't use tcp_hdr() Kamal Mostafa
2013-07-17 22:46 ` [PATCH 081/145] netfilter: xt_TCPMSS: Fix missing fragmentation handling Kamal Mostafa
2013-07-17 22:46 ` [PATCH 082/145] netfilter: xt_TCPMSS: Fix IPv6 default MSS too Kamal Mostafa
2013-07-17 22:46 ` [PATCH 083/145] ipvs: SCTP ports should be writable in ICMP packets Kamal Mostafa
2013-07-17 22:46 ` [PATCH 084/145] tracing: Use current_uid() for critical time tracing Kamal Mostafa
2013-07-17 22:46 ` [PATCH 085/145] ext4: fix overflow when counting used blocks on 32-bit architectures Kamal Mostafa
2013-07-17 22:46 ` [PATCH 086/145] ext4: fix data offset overflow in ext4_xattr_fiemap() on 32-bit archs Kamal Mostafa
2013-07-17 22:46 ` [PATCH 087/145] ext4: fix overflows in SEEK_HOLE, SEEK_DATA implementations Kamal Mostafa
2013-07-17 22:47 ` [PATCH 088/145] ext4: fix data offset overflow on 32-bit archs in ext4_inline_data_fiemap() Kamal Mostafa
2013-07-17 22:47 ` [PATCH 089/145] iommu/vt-d: add quirk for broken interrupt remapping on 55XX chipsets Kamal Mostafa
2013-07-18  8:02   ` Thomas Backlund
2013-07-18 10:37     ` Neil Horman
2013-07-18 13:45       ` Thomas Backlund
2013-07-18 18:30         ` Kamal Mostafa
2013-07-17 22:47 ` [PATCH 090/145] dma: tegra: avoid channel lock up after free Kamal Mostafa
2013-07-17 22:47 ` [PATCH 091/145] drivers/cdrom/cdrom.c: use kzalloc() for failing hardware Kamal Mostafa
2013-07-17 22:47 ` [PATCH 092/145] printk: Fix rq->lock vs logbuf_lock unlock lock inversion Kamal Mostafa
2013-07-17 22:47 ` [PATCH 093/145] charger-manager: Ensure event is not used as format string Kamal Mostafa
2013-07-17 22:47 ` [PATCH 094/145] drm/radeon: add backlight quirk for hybrid mac Kamal Mostafa
2013-07-17 22:47 ` [PATCH 095/145] b43: ensue that BCMA is "y" when B43 is "y" Kamal Mostafa
2013-07-17 22:47 ` [PATCH 096/145] ath9k_hw: Assign default xlna config for AR9485 Kamal Mostafa
2013-07-17 22:47 ` [PATCH 097/145] ath9k: Do not assign noise for NULL caldata Kamal Mostafa
2013-07-17 22:47 ` [PATCH 098/145] iwlwifi: pcie: fix race in queue unmapping Kamal Mostafa
2013-07-17 22:47 ` [PATCH 099/145] iwlwifi: pcie: wake the queue if stopped when being unmapped Kamal Mostafa
2013-07-17 22:47 ` [PATCH 100/145] rtlwifi: rtl8192cu: Add new USB ID for TP-Link TL-WN8200ND Kamal Mostafa
2013-07-17 22:47 ` [PATCH 101/145] [media] media: dmxdev: remove dvb_ringbuffer_flush() on writer side Kamal Mostafa
2013-07-17 22:47 ` [PATCH 102/145] MIPS: Octeon: Don't clobber bootloader data structures Kamal Mostafa
2013-07-17 22:47 ` [PATCH 103/145] iommu/amd: Only unmap large pages from the first pte Kamal Mostafa
2013-07-17 22:47 ` [PATCH 104/145] rt2x00: read 5GHz TX power values from the correct offset Kamal Mostafa
2013-07-17 22:47 ` [PATCH 105/145] rtlwifi: rtl8723ae: Fix typo in firmware names Kamal Mostafa
2013-07-17 22:47 ` [PATCH 106/145] writeback: Fix periodic writeback after fs mount Kamal Mostafa
2013-07-17 22:47 ` [PATCH 107/145] drm/i915: Fix context sizes on HSW Kamal Mostafa
2013-07-17 22:47 ` [PATCH 108/145] drm/i915: Only clear write-domains after a successful wait-seqno Kamal Mostafa
2013-07-17 22:47 ` [PATCH 109/145] nfsd4: fix decoding of compounds across page boundaries Kamal Mostafa
2013-07-17 22:47 ` [PATCH 110/145] svcrpc: fix handling of too-short rpc's Kamal Mostafa
2013-07-17 22:47 ` [PATCH 111/145] svcrpc: don't error out on small tcp fragment Kamal Mostafa
2013-07-17 22:47 ` [PATCH 112/145] ARM: shmobile: emev2 GIO3 resource fix Kamal Mostafa
2013-07-17 22:47 ` [PATCH 113/145] Btrfs: fix unlock after free on rewinded tree blocks Kamal Mostafa
2013-07-17 22:47 ` [PATCH 114/145] Btrfs: hold the tree mod lock in __tree_mod_log_rewind Kamal Mostafa
2013-07-17 22:47 ` [PATCH 115/145] Btrfs: only do the tree_mod_log_free_eb if this is our last ref Kamal Mostafa
2013-07-17 22:47 ` [PATCH 116/145] uprobes: Fix return value in error handling path Kamal Mostafa
2013-07-17 22:47 ` [PATCH 117/145] module: do percpu allocation after uniqueness check. No, really! Kamal Mostafa
2013-07-17 22:47 ` [PATCH 118/145] libceph: Fix NULL pointer dereference in auth client code Kamal Mostafa
2013-07-17 22:47 ` [PATCH 119/145] [CIFS] use sensible file nlink values if unprovided Kamal Mostafa
2013-07-17 22:47 ` [PATCH 120/145] drm/nouveau: use vmalloc for pgt allocation Kamal Mostafa
2013-07-17 22:47 ` [PATCH 121/145] drm/nva3/disp: Fix HDMI audio regression Kamal Mostafa
2013-07-17 22:47 ` [PATCH 122/145] ACPI / power: add missing newline to debug messages Kamal Mostafa
2013-07-17 22:47 ` [PATCH 123/145] [SCSI] megaraid_sas: fix memory leak if SGL has zero length entries Kamal Mostafa
2013-07-17 22:47 ` [PATCH 124/145] iscsi-target: Fix tfc_tpg_nacl_auth_cit configfs length overflow Kamal Mostafa
2013-07-17 22:47 ` [PATCH 125/145] [SCSI] mpt3sas: fix for kernel panic when driver loads with HBA conected to non LUN 0 configured expander Kamal Mostafa
2013-07-17 22:47 ` [PATCH 126/145] [SCSI] mpt3sas: Infinite loops can occur if MPI2_IOCSTATUS_CONFIG_INVALID_PAGE is not returned Kamal Mostafa
2013-07-17 22:47 ` [PATCH 127/145] parisc: Fix gcc miscompilation in pa_memcpy() Kamal Mostafa
2013-07-17 22:47 ` [PATCH 128/145] ARM: 7778/1: smp_twd: twd_update_frequency need be run on all online CPUs Kamal Mostafa
2013-07-17 22:47 ` [PATCH 129/145] dm mpath: fix ioctl deadlock when no paths Kamal Mostafa
2013-07-17 22:47 ` [PATCH 130/145] dm ioctl: set noio flag to avoid __vmalloc deadlock Kamal Mostafa
2013-07-17 22:47 ` [PATCH 131/145] dm verity: fix inability to use a few specific devices sizes Kamal Mostafa
2013-07-17 22:47 ` [PATCH 132/145] CIFS: Fix a deadlock when a file is reopened Kamal Mostafa
2013-07-17 22:47 ` [PATCH 133/145] perf: Clone child context from parent context pmu Kamal Mostafa
2013-07-17 22:47 ` [PATCH 134/145] perf: Remove WARN_ON_ONCE() check in __perf_event_enable() for valid scenario Kamal Mostafa
2013-07-17 22:47 ` [PATCH 135/145] perf: Fix perf_lock_task_context() vs RCU Kamal Mostafa
2013-07-17 22:47 ` [PATCH 136/145] MFD: rtsx_pcr: Fix probe fail path Kamal Mostafa
2013-07-17 22:47 ` [PATCH 137/145] x86, efivars: firmware bug workarounds should be in platform code Kamal Mostafa
2013-07-17 22:47 ` [PATCH 138/145] x86, efi: remove duplicate code in setup_arch() by using, efi_is_native() Kamal Mostafa
2013-07-17 22:47 ` [PATCH 139/145] x86,efi: Implement efi_no_storage_paranoia parameter Kamal Mostafa
2013-07-17 22:47 ` [PATCH 140/145] Modify UEFI anti-bricking code Kamal Mostafa
2013-07-17 22:47 ` [PATCH 141/145] x86/efi: Fix dummy variable buffer allocation Kamal Mostafa
2013-07-17 22:47 ` [PATCH 142/145] lockd: protect nlm_blocked access in nlmsvc_retry_blocked Kamal Mostafa
2013-07-17 22:47 ` [PATCH 143/145] ext4: don't show usrquota/grpquota twice in /proc/mounts Kamal Mostafa
2013-07-17 22:47 ` [PATCH 144/145] ext4: don't allow ext4_free_blocks() to fail due to ENOMEM Kamal Mostafa
2013-07-17 22:47 ` [PATCH 145/145] svcrdma: underflow issue in decode_write_list() Kamal Mostafa

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=1374101277-7915-39-git-send-email-kamal@canonical.com \
    --to=kamal@canonical.com \
    --cc=hpa@linux.intel.com \
    --cc=kernel-team@lists.ubuntu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luis.henriques@canonical.com \
    --cc=stable@vger.kernel.org \
    --cc=yinghai@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®