Linux 2.6.23.1

Previous thread: [2.6.24 PATCH 02/25] dm io:ctl use constant struct size by Alasdair G Kergon on Friday, October 12, 2007 - 1:05 pm. (5 messages)

Next thread: [PATCH] defxx: Discardable strings for init and exit sections by Maciej W. Rozycki on Friday, October 12, 2007 - 12:59 pm. (1 message)
To: <linux-kernel@...>, Andrew Morton <akpm@...>, <torvalds@...>, <stable@...>
Date: Friday, October 12, 2007 - 1:01 pm

We (the -stable team) are announcing the release of the 2.6.23.1 kernel.
It fixes a serious data corruption bug in the sata_mv driver, so any
user of that is strongly encouraged to upgrade.

I'll also be replying to this message with a copy of the patch between
2.6.23 and 2.6.23.1

The updated 2.6.23.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-2.6.23.y.git
and can be browsed at the normal kernel.org git web browser:
http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=su...

thanks,

greg k-h

--------

Makefile | 2 +-
drivers/ata/sata_mv.c | 27 ++++++++++++++++++---------
2 files changed, 19 insertions(+), 10 deletions(-)

Summary of changes from v2.6.23 to v2.6.23.1
============================================

Greg Kroah-Hartman (1):
Linux 2.6.23.1

Jeff Garzik (1):
libata: sata_mv: more S/G fixes

-

To: <linux-kernel@...>
Cc: Greg Kroah-Hartman <gregkh@...>, <linuxppc-dev@...>, <stable@...>
Date: Monday, October 15, 2007 - 7:08 am

Hi,

The Open Firmware exception handler is begin invoked, on power5 lpar.

boot: 2.6.23.1
Please wait, loading kernel...
Allocated 03500000 bytes for kernel @ 01c00000
Elf64 kernel loaded...
Loading ramdisk...
ramdisk loaded 0020d000 @ 06b00000
DEFAULT CATCH!, exception-handler=fff00300
at %SRR0: c00000000202705c %SRR1: 8000000000003002
Open Firmware exception handler entered from non-OF code

Client's Fix Pt Regs:
00 0223100003080000 00000000018bfac0 0000000004bbeaf8 00000000018bfb48
04 00000000018bfc90 0000000000c39a48 0000000000000000 5c3a03080000a0fa
08 0000000000000001 0000000000000000 05910000194c0223 000000005cae0000
0c 0000000003f1eaf8 0000000000000000 0000000000000000 0000000000000000
10 0000000000000000 0000000000c39a48 0000000000000000 00000000018bfc90
14 0000000000c00000 000000000020d000 0000000000000000 0000000008b00000
18 0000000000280004 00000000018bff04 0000000000000001 0000000000000000
1c 0000000008b00000 0000000000c39a48 c000000004d1e530 0000000008b00000
Special Regs:
%IV: 00000300 %CR: 44000028 %XER: 00000000 %DSISR: 08000000
%SRR0: c00000000202705c %SRR1: 8000000000003002
%LR: c000000002027428 %CTR: c0000000020273f0
%DAR: 05910000194c02eb
Virtual PID = 0
PFW: Unable to send error log!
ofdbg
0 >

# cat /proc/cpuinfo
processor : 0
cpu : POWER5+ (gs)
clock : 1498.500000MHz
revision : 2.0 (pvr 003b 0200)

processor : 1
cpu : POWER5+ (gs)
clock : 1498.500000MHz
revision : 2.0 (pvr 003b 0200)

timebase : 187199000
platform : pSeries
machine : CHRP IBM,9133-55A
--
Thanks & Regards,
Kamalesh Babulal,
Linux Technology Center,
IBM, ISTL.
-

To: <linux-kernel@...>, Andrew Morton <akpm@...>, <torvalds@...>, <stable@...>
Date: Friday, October 12, 2007 - 1:02 pm

diff --git a/Makefile b/Makefile
index 4635a64..c244a02 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 23
-EXTRAVERSION =
+EXTRAVERSION = .1
NAME = Arr Matey! A Hairy Bilge Rat!

# *DOCUMENTATION*
diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
index cb7dec9..d9832e2 100644
--- a/drivers/ata/sata_mv.c
+++ b/drivers/ata/sata_mv.c
@@ -69,10 +69,11 @@
#include <linux/device.h>
#include <scsi/scsi_host.h>
#include <scsi/scsi_cmnd.h>
+#include <scsi/scsi_device.h>
#include <linux/libata.h>

#define DRV_NAME "sata_mv"
-#define DRV_VERSION "1.0"
+#define DRV_VERSION "1.01"

enum {
/* BAR's are enumerated in terms of pci_resource_start() terms */
@@ -420,6 +421,7 @@ static void mv_error_handler(struct ata_port *ap);
static void mv_post_int_cmd(struct ata_queued_cmd *qc);
static void mv_eh_freeze(struct ata_port *ap);
static void mv_eh_thaw(struct ata_port *ap);
+static int mv_slave_config(struct scsi_device *sdev);
static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent);

static void mv5_phy_errata(struct mv_host_priv *hpriv, void __iomem *mmio,
@@ -457,7 +459,7 @@ static struct scsi_host_template mv5_sht = {
.use_clustering = 1,
.proc_name = DRV_NAME,
.dma_boundary = MV_DMA_BOUNDARY,
- .slave_configure = ata_scsi_slave_config,
+ .slave_configure = mv_slave_config,
.slave_destroy = ata_scsi_slave_destroy,
.bios_param = ata_std_bios_param,
};
@@ -475,7 +477,7 @@ static struct scsi_host_template mv6_sht = {
.use_clustering = 1,
.proc_name = DRV_NAME,
.dma_boundary = MV_DMA_BOUNDARY,
- .slave_configure = ata_scsi_slave_config,
+ .slave_configure = mv_slave_config,
.slave_destroy = ata_scsi_slave_destroy,
.bios_param = ata_std_bios_param,
};
@@ -763,6 +765,17 @@ static void mv_irq_clear(struct ata_port *ap)
{
}

+static int mv_slave_config(struct scsi_device *sdev)
+{
+ int rc = ata_scsi_slave_config(sd...

Previous thread: [2.6.24 PATCH 02/25] dm io:ctl use constant struct size by Alasdair G Kergon on Friday, October 12, 2007 - 1:05 pm. (5 messages)

Next thread: [PATCH] defxx: Discardable strings for init and exit sections by Maciej W. Rozycki on Friday, October 12, 2007 - 12:59 pm. (1 message)