Re: Linux 3.0.61

2013-01-27 Thread Greg KH
diff --git a/Makefile b/Makefile
index 3359fcf..2d64957 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 VERSION = 3
 PATCHLEVEL = 0
-SUBLEVEL = 60
+SUBLEVEL = 61
 EXTRAVERSION =
 NAME = Sneaky Weasel
 
diff --git a/arch/x86/include/asm/traps.h b/arch/x86/include/asm/traps.h
index 0310da6..1d44903 100644
--- a/arch/x86/include/asm/traps.h
+++ b/arch/x86/include/asm/traps.h
@@ -1,6 +1,7 @@
 #ifndef _ASM_X86_TRAPS_H
 #define _ASM_X86_TRAPS_H
 
+#include 
 #include 
 #include/* TRAP_TRACE, ... */
 
@@ -87,4 +88,29 @@ asmlinkage void smp_thermal_interrupt(void);
 asmlinkage void mce_threshold_interrupt(void);
 #endif
 
+/* Interrupts/Exceptions */
+enum {
+   X86_TRAP_DE = 0,/*  0, Divide-by-zero */
+   X86_TRAP_DB,/*  1, Debug */
+   X86_TRAP_NMI,   /*  2, Non-maskable Interrupt */
+   X86_TRAP_BP,/*  3, Breakpoint */
+   X86_TRAP_OF,/*  4, Overflow */
+   X86_TRAP_BR,/*  5, Bound Range Exceeded */
+   X86_TRAP_UD,/*  6, Invalid Opcode */
+   X86_TRAP_NM,/*  7, Device Not Available */
+   X86_TRAP_DF,/*  8, Double Fault */
+   X86_TRAP_OLD_MF,/*  9, Coprocessor Segment Overrun */
+   X86_TRAP_TS,/* 10, Invalid TSS */
+   X86_TRAP_NP,/* 11, Segment Not Present */
+   X86_TRAP_SS,/* 12, Stack Segment Fault */
+   X86_TRAP_GP,/* 13, General Protection Fault */
+   X86_TRAP_PF,/* 14, Page Fault */
+   X86_TRAP_SPURIOUS,  /* 15, Spurious Interrupt */
+   X86_TRAP_MF,/* 16, x87 Floating-Point Exception */
+   X86_TRAP_AC,/* 17, Alignment Check */
+   X86_TRAP_MC,/* 18, Machine Check */
+   X86_TRAP_XF,/* 19, SIMD Floating-Point Exception */
+   X86_TRAP_IRET = 32, /* 32, IRET Exception */
+};
+
 #endif /* _ASM_X86_TRAPS_H */
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
index 431ab11..65976cb 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
@@ -991,6 +991,9 @@ static int acpi_processor_setup_cpuidle(struct 
acpi_processor *pr)
return -EINVAL;
}
 
+   if (!dev)
+   return -EINVAL;
+
dev->cpu = pr->id;
for (i = 0; i < CPUIDLE_STATE_MAX; i++) {
dev->states[i].name[0] = '\0';
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 8300250..75a8d0f 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -402,6 +402,12 @@ static const struct pci_device_id ahci_pci_tbl[] = {
/* Promise */
{ PCI_VDEVICE(PROMISE, 0x3f20), board_ahci },   /* PDC42819 */
 
+   /* Asmedia */
+   { PCI_VDEVICE(ASMEDIA, 0x0601), board_ahci },   /* ASM1060 */
+   { PCI_VDEVICE(ASMEDIA, 0x0602), board_ahci },   /* ASM1060 */
+   { PCI_VDEVICE(ASMEDIA, 0x0611), board_ahci },   /* ASM1061 */
+   { PCI_VDEVICE(ASMEDIA, 0x0612), board_ahci },   /* ASM1062 */
+
/* Generic, PCI class code for AHCI */
{ PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
  PCI_CLASS_STORAGE_SATA_AHCI, 0xff, board_ahci },
diff --git a/drivers/dma/ioat/dma_v3.c b/drivers/dma/ioat/dma_v3.c
index d845dc4..6e33926 100644
--- a/drivers/dma/ioat/dma_v3.c
+++ b/drivers/dma/ioat/dma_v3.c
@@ -949,7 +949,7 @@ static int __devinit ioat_xor_val_self_test(struct 
ioatdma_device *device)
goto free_resources;
}
}
-   dma_sync_single_for_device(dev, dest_dma, PAGE_SIZE, DMA_TO_DEVICE);
+   dma_sync_single_for_device(dev, dest_dma, PAGE_SIZE, DMA_FROM_DEVICE);
 
/* skip validate if the capability is not present */
if (!dma_has_cap(DMA_XOR_VAL, dma_chan->device->cap_mask))
diff --git a/drivers/firmware/dmi_scan.c b/drivers/firmware/dmi_scan.c
index 02a52d1..66b6315 100644
--- a/drivers/firmware/dmi_scan.c
+++ b/drivers/firmware/dmi_scan.c
@@ -16,6 +16,7 @@
  */
 static char dmi_empty_string[] = "";
 
+static u16 __initdata dmi_ver;
 /*
  * Catch too early calls to dmi_check_system():
  */
@@ -118,12 +119,12 @@ static int __init dmi_walk_early(void (*decode)(const 
struct dmi_header *,
return 0;
 }
 
-static int __init dmi_checksum(const u8 *buf)
+static int __init dmi_checksum(const u8 *buf, u8 len)
 {
u8 sum = 0;
int a;
 
-   for (a = 0; a < 15; a++)
+   for (a = 0; a < len; a++)
sum += buf[a];
 
return sum == 0;
@@ -161,8 +162,10 @@ static void __init dmi_save_uuid(const struct dmi_header 
*dm, int slot, int inde
return;
 
for (i = 0; i < 16 && (is_ff || is_00); i++) {
-   if(d[i] != 0x00) is_ff = 0;
-   if(d[i] != 0xFF) is_00 = 0;
+   if (d[i] != 0x00)
+   is_00 = 0;
+   if (d[i] != 0xFF)
+   is_ff = 0;
}
 
   

Linux 3.0.61

2013-01-27 Thread Greg KH
I'm announcing the release of the 3.0.61 kernel.

All users of the 3.0 kernel series must upgrade.

The updated 3.0.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git 
linux-3.0.y
and can be browsed at the normal kernel.org git web browser:

http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary

thanks,

greg k-h



 Makefile   |2 
 arch/x86/include/asm/traps.h   |   26 +
 drivers/acpi/processor_idle.c  |3 +
 drivers/ata/ahci.c |6 ++
 drivers/dma/ioat/dma_v3.c  |2 
 drivers/firmware/dmi_scan.c|   78 ++---
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |   21 +++
 drivers/gpu/drm/i915/i915_reg.h|3 +
 drivers/gpu/drm/i915/intel_display.c   |4 +
 drivers/misc/sgi-xp/xpc_main.c |   34 +++-
 drivers/pci/pcie/aspm.c|3 +
 drivers/scsi/sd.c  |   13 ++--
 drivers/staging/usbip/usbip_common.c   |   11 +---
 drivers/staging/usbip/usbip_common.h   |2 
 drivers/staging/usbip/vhci_rx.c|3 -
 drivers/tty/serial/8250.c  |2 
 drivers/usb/host/uhci-hcd.c|   15 +++--
 include/linux/pci_ids.h|2 
 kernel/trace/ftrace.c  |2 
 19 files changed, 188 insertions(+), 44 deletions(-)

Alan Cox (1):
  ahci: Add identifiers for ASM106x devices

Alan Stern (1):
  USB: UHCI: fix IRQ race during initialization

Bart Westgeest (1):
  staging: usbip: changed function return type to void

Chris Wilson (1):
  drm/i915: Invalidate the relocation presumed_offsets along the slow path

Colin Ian King (1):
  PCI: Allow pcie_aspm=force even when FADT indicates it is unsupported

Daniel Vetter (1):
  drm/i915: Implement WaDisableHiZPlanesWhenMSAAEnabled

Greg Kroah-Hartman (1):
  Linux 3.0.61

Jiri Slaby (1):
  serial: 8250, increase PASS_LIMIT

Joel D. Diaz (1):
  SCSI: sd: Reshuffle init_sd to avoid crash

Kees Cook (1):
  x86: Use enum instead of literals for trap values [PARTIAL]

Konrad Rzeszutek Wilk (1):
  ACPI / cpuidle: Fix NULL pointer issues when cpuidle is disabled

Robin Holt (1):
  SGI-XP: handle non-fatal traps

Shuah Khan (1):
  ioat: Fix DMA memory sync direction correct flag

Steven Rostedt (1):
  ftrace: Be first to run code modification on modules

Zhenzhong Duan (2):
  drivers/firmware/dmi_scan.c: check dmi version when get system uuid
  drivers/firmware/dmi_scan.c: fetch dmi version from SMBIOS if it exists



pgpou2Lj7aCSK.pgp
Description: PGP signature


Linux 3.0.61

2013-01-27 Thread Greg KH
I'm announcing the release of the 3.0.61 kernel.

All users of the 3.0 kernel series must upgrade.

The updated 3.0.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git 
linux-3.0.y
and can be browsed at the normal kernel.org git web browser:

http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary

thanks,

greg k-h



 Makefile   |2 
 arch/x86/include/asm/traps.h   |   26 +
 drivers/acpi/processor_idle.c  |3 +
 drivers/ata/ahci.c |6 ++
 drivers/dma/ioat/dma_v3.c  |2 
 drivers/firmware/dmi_scan.c|   78 ++---
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |   21 +++
 drivers/gpu/drm/i915/i915_reg.h|3 +
 drivers/gpu/drm/i915/intel_display.c   |4 +
 drivers/misc/sgi-xp/xpc_main.c |   34 +++-
 drivers/pci/pcie/aspm.c|3 +
 drivers/scsi/sd.c  |   13 ++--
 drivers/staging/usbip/usbip_common.c   |   11 +---
 drivers/staging/usbip/usbip_common.h   |2 
 drivers/staging/usbip/vhci_rx.c|3 -
 drivers/tty/serial/8250.c  |2 
 drivers/usb/host/uhci-hcd.c|   15 +++--
 include/linux/pci_ids.h|2 
 kernel/trace/ftrace.c  |2 
 19 files changed, 188 insertions(+), 44 deletions(-)

Alan Cox (1):
  ahci: Add identifiers for ASM106x devices

Alan Stern (1):
  USB: UHCI: fix IRQ race during initialization

Bart Westgeest (1):
  staging: usbip: changed function return type to void

Chris Wilson (1):
  drm/i915: Invalidate the relocation presumed_offsets along the slow path

Colin Ian King (1):
  PCI: Allow pcie_aspm=force even when FADT indicates it is unsupported

Daniel Vetter (1):
  drm/i915: Implement WaDisableHiZPlanesWhenMSAAEnabled

Greg Kroah-Hartman (1):
  Linux 3.0.61

Jiri Slaby (1):
  serial: 8250, increase PASS_LIMIT

Joel D. Diaz (1):
  SCSI: sd: Reshuffle init_sd to avoid crash

Kees Cook (1):
  x86: Use enum instead of literals for trap values [PARTIAL]

Konrad Rzeszutek Wilk (1):
  ACPI / cpuidle: Fix NULL pointer issues when cpuidle is disabled

Robin Holt (1):
  SGI-XP: handle non-fatal traps

Shuah Khan (1):
  ioat: Fix DMA memory sync direction correct flag

Steven Rostedt (1):
  ftrace: Be first to run code modification on modules

Zhenzhong Duan (2):
  drivers/firmware/dmi_scan.c: check dmi version when get system uuid
  drivers/firmware/dmi_scan.c: fetch dmi version from SMBIOS if it exists



pgpou2Lj7aCSK.pgp
Description: PGP signature


Re: Linux 3.0.61

2013-01-27 Thread Greg KH
diff --git a/Makefile b/Makefile
index 3359fcf..2d64957 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 VERSION = 3
 PATCHLEVEL = 0
-SUBLEVEL = 60
+SUBLEVEL = 61
 EXTRAVERSION =
 NAME = Sneaky Weasel
 
diff --git a/arch/x86/include/asm/traps.h b/arch/x86/include/asm/traps.h
index 0310da6..1d44903 100644
--- a/arch/x86/include/asm/traps.h
+++ b/arch/x86/include/asm/traps.h
@@ -1,6 +1,7 @@
 #ifndef _ASM_X86_TRAPS_H
 #define _ASM_X86_TRAPS_H
 
+#include linux/kprobes.h
 #include asm/debugreg.h
 #include asm/siginfo.h   /* TRAP_TRACE, ... */
 
@@ -87,4 +88,29 @@ asmlinkage void smp_thermal_interrupt(void);
 asmlinkage void mce_threshold_interrupt(void);
 #endif
 
+/* Interrupts/Exceptions */
+enum {
+   X86_TRAP_DE = 0,/*  0, Divide-by-zero */
+   X86_TRAP_DB,/*  1, Debug */
+   X86_TRAP_NMI,   /*  2, Non-maskable Interrupt */
+   X86_TRAP_BP,/*  3, Breakpoint */
+   X86_TRAP_OF,/*  4, Overflow */
+   X86_TRAP_BR,/*  5, Bound Range Exceeded */
+   X86_TRAP_UD,/*  6, Invalid Opcode */
+   X86_TRAP_NM,/*  7, Device Not Available */
+   X86_TRAP_DF,/*  8, Double Fault */
+   X86_TRAP_OLD_MF,/*  9, Coprocessor Segment Overrun */
+   X86_TRAP_TS,/* 10, Invalid TSS */
+   X86_TRAP_NP,/* 11, Segment Not Present */
+   X86_TRAP_SS,/* 12, Stack Segment Fault */
+   X86_TRAP_GP,/* 13, General Protection Fault */
+   X86_TRAP_PF,/* 14, Page Fault */
+   X86_TRAP_SPURIOUS,  /* 15, Spurious Interrupt */
+   X86_TRAP_MF,/* 16, x87 Floating-Point Exception */
+   X86_TRAP_AC,/* 17, Alignment Check */
+   X86_TRAP_MC,/* 18, Machine Check */
+   X86_TRAP_XF,/* 19, SIMD Floating-Point Exception */
+   X86_TRAP_IRET = 32, /* 32, IRET Exception */
+};
+
 #endif /* _ASM_X86_TRAPS_H */
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
index 431ab11..65976cb 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
@@ -991,6 +991,9 @@ static int acpi_processor_setup_cpuidle(struct 
acpi_processor *pr)
return -EINVAL;
}
 
+   if (!dev)
+   return -EINVAL;
+
dev-cpu = pr-id;
for (i = 0; i  CPUIDLE_STATE_MAX; i++) {
dev-states[i].name[0] = '\0';
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 8300250..75a8d0f 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -402,6 +402,12 @@ static const struct pci_device_id ahci_pci_tbl[] = {
/* Promise */
{ PCI_VDEVICE(PROMISE, 0x3f20), board_ahci },   /* PDC42819 */
 
+   /* Asmedia */
+   { PCI_VDEVICE(ASMEDIA, 0x0601), board_ahci },   /* ASM1060 */
+   { PCI_VDEVICE(ASMEDIA, 0x0602), board_ahci },   /* ASM1060 */
+   { PCI_VDEVICE(ASMEDIA, 0x0611), board_ahci },   /* ASM1061 */
+   { PCI_VDEVICE(ASMEDIA, 0x0612), board_ahci },   /* ASM1062 */
+
/* Generic, PCI class code for AHCI */
{ PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
  PCI_CLASS_STORAGE_SATA_AHCI, 0xff, board_ahci },
diff --git a/drivers/dma/ioat/dma_v3.c b/drivers/dma/ioat/dma_v3.c
index d845dc4..6e33926 100644
--- a/drivers/dma/ioat/dma_v3.c
+++ b/drivers/dma/ioat/dma_v3.c
@@ -949,7 +949,7 @@ static int __devinit ioat_xor_val_self_test(struct 
ioatdma_device *device)
goto free_resources;
}
}
-   dma_sync_single_for_device(dev, dest_dma, PAGE_SIZE, DMA_TO_DEVICE);
+   dma_sync_single_for_device(dev, dest_dma, PAGE_SIZE, DMA_FROM_DEVICE);
 
/* skip validate if the capability is not present */
if (!dma_has_cap(DMA_XOR_VAL, dma_chan-device-cap_mask))
diff --git a/drivers/firmware/dmi_scan.c b/drivers/firmware/dmi_scan.c
index 02a52d1..66b6315 100644
--- a/drivers/firmware/dmi_scan.c
+++ b/drivers/firmware/dmi_scan.c
@@ -16,6 +16,7 @@
  */
 static char dmi_empty_string[] = ;
 
+static u16 __initdata dmi_ver;
 /*
  * Catch too early calls to dmi_check_system():
  */
@@ -118,12 +119,12 @@ static int __init dmi_walk_early(void (*decode)(const 
struct dmi_header *,
return 0;
 }
 
-static int __init dmi_checksum(const u8 *buf)
+static int __init dmi_checksum(const u8 *buf, u8 len)
 {
u8 sum = 0;
int a;
 
-   for (a = 0; a  15; a++)
+   for (a = 0; a  len; a++)
sum += buf[a];
 
return sum == 0;
@@ -161,8 +162,10 @@ static void __init dmi_save_uuid(const struct dmi_header 
*dm, int slot, int inde
return;
 
for (i = 0; i  16  (is_ff || is_00); i++) {
-   if(d[i] != 0x00) is_ff = 0;
-   if(d[i] != 0xFF) is_00 = 0;
+   if (d[i] != 0x00)
+   is_00 = 0;
+   if (d[i] != 0xFF)
+