lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.00.1009010536070.14332@p34.internal.lan>
Date:	Wed, 1 Sep 2010 05:40:52 -0400 (EDT)
From:	Justin Piszcz <jpiszcz@...idpixels.com>
To:	adam radford <aradford@...il.com>
cc:	linux-kernel@...r.kernel.org, linux-scsi@...r.kernel.org,
	linux-ide@...r.kernel.org
Subject: Re: 3w-9xxx: scsi0: WARNING: (0x06:0x0037): Character ioctl (0x108)
 timed out, resetting card.



On Tue, 31 Aug 2010, Justin Piszcz wrote:

>>

Hi Adam and LSI,

LSI got back to me, they said to try their latest firwmare and that the high
I/O wait was solved in that release.

# tw_cli  /c0 show all | grep -i firmware
/c0 Firmware Version = FE9X 4.10.00.016
# tw_cli  /c1 show all | grep -i firmware
/c1 Firmware Version = FE9X 4.10.00.016

I upgraded to the newest firmware, 2.6.34 remains solid.
However, when I moved to 2.6.35, the high I/O weight and system freezes recur.
Has anyone not noticed this?  I have two different controllers, a 4 and 16
port 9650SE, both with BBUs, one with a RAID-1 the other with a RAID-6 and
I've never had any problems like this before (this high I/O wait/ctrl reset)
until I moved to 2.6.35.

There is something wrong/happening here in 2.6.35 that causes the system
to become unresponsive and reset the controllers under high load.  Prior to
2.6.35, the problem does not exist, I have confirmed this on both firmwares
now.


Could the lock/unlock be causing the issue?
Again, in 2.6.34, there are no latency problems or controller resets.

3ware diff:

--- linux-2.6.34.6/drivers/scsi/3w-9xxx.c       2010-08-26 19:44:38.000000000 -0400
+++ linux-2.6.35.4/drivers/scsi/3w-9xxx.c       2010-08-26 19:47:12.000000000 -0400
-   Written By: Adam Radford <linuxraid@...c.com>
-   Modifications By: Tom Couch <linuxraid@...c.com>
+   Written By: Adam Radford <linuxraid@....com>
+   Modifications By: Tom Couch <linuxraid@....com>
+   Copyright (C) 2010 LSI Corporation.
-   linuxraid@...c.com
+   linuxraid@....com
-   http://www.amcc.com
+   http://www.lsi.com
+   2.26.02.014 - Force 60 second timeout default.
-#define TW_DRIVER_VERSION "2.26.02.013"
+#define TW_DRIVER_VERSION "2.26.02.014"
-MODULE_AUTHOR ("AMCC");
+MODULE_AUTHOR ("LSI");
-static int twa_chrdev_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg);
+static long twa_chrdev_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
-       .ioctl          = twa_chrdev_ioctl,
+       .unlocked_ioctl = twa_chrdev_ioctl,
-static int twa_chrdev_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg)
+static long twa_chrdev_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
+       struct inode *inode = file->f_path.dentry->d_inode;
+       lock_kernel();
+
+       unlock_kernel();
+/* This function gets called when a disk is coming on-line */
+static int twa_slave_configure(struct scsi_device *sdev)
+{
+       /* Force 60 second timeout */
+       blk_queue_rq_timeout(sdev->request_queue, 60 * HZ);
+
+       return 0;
+} /* End twa_slave_configure() */
+
+       .slave_configure        = twa_slave_configure,


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ