rpms/kernel/F-9 linux-2.6-blk-cciss-fix-regression-sysfs-symlink-missing.patch, NONE, 1.1 linux-2.6-usb-storage-unusual-devs-jmicron-ata-bridge.patch, NONE, 1.1 kernel.spec, 1.820, 1.821

Chuck Ebbert cebbert at fedoraproject.org
Thu Oct 30 08:27:56 UTC 2008


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv14755

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-blk-cciss-fix-regression-sysfs-symlink-missing.patch 
	linux-2.6-usb-storage-unusual-devs-jmicron-ata-bridge.patch 
Log Message:
Two patches for storage devices:
    Fix Jmicron USB/SATA bridge.
    Fix sysfs symlinks in cciss driver.

linux-2.6-blk-cciss-fix-regression-sysfs-symlink-missing.patch:

--- NEW FILE linux-2.6-blk-cciss-fix-regression-sysfs-symlink-missing.patch ---
This patch fixes a regression where the device symlink to the pci address is
not created. Offending commit 6ae5ce8e8d4de666f31286808d2285aa6a50fa40,
cciss: remove redundant code.

This patch obsoletes the one I sent yesterday. It fixes a broken symlink in
sysfs. The previous patch appeared to work but was wrong as reported by Alan
Brunelle.
Please consider this for inclusion.

Signed-off-by: Mike Miller <mike.miller at hp.com>

diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
index 1e1f915..0f367b1 100644
--- a/drivers/block/cciss.c
+++ b/drivers/block/cciss.c
@@ -1365,6 +1365,7 @@ static void cciss_add_disk(ctlr_info_t *h, struct gendisk *disk,
 	disk->first_minor = drv_index << NWD_SHIFT;
 	disk->fops = &cciss_fops;
 	disk->private_data = &h->drv[drv_index];
+	disk->driverfs_dev = &h->pdev->dev;
 
 	/* Set up queue information */
 	blk_queue_bounce_limit(disk->queue, h->pdev->dma_mask);

linux-2.6-usb-storage-unusual-devs-jmicron-ata-bridge.patch:

--- NEW FILE linux-2.6-usb-storage-unusual-devs-jmicron-ata-bridge.patch ---
From: Phil Dibowitz <phil at ipom.com>
Date: Sun, 19 Oct 2008 06:17:54 +0000 (+0200)
Subject: USB: storage: Avoid I/O errors when issuing SCSI ioctls to JMicron USB/ATA bridge
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=3030ca4cf4abbdd2dd850a14d20e9fca5937ffb5

USB: storage: Avoid I/O errors when issuing SCSI ioctls to JMicron USB/ATA bridge

Here's the patch that implements the fix you suggested to avoid the
I/O errors that I was running into with my new USB enclosure with a
JMicron USB/ATA bridge, while issuing scsi-io USN or other such
queries used by Fedora's mkinitrd.
http://bugzilla.kernel.org/show_bug.cgi?id=9638#c85


/proc/bus/usb/devices:
T:  Bus=01 Lev=01 Prnt=01 Port=07 Cnt=04 Dev#=  5 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=152d ProdID=2329 Rev= 1.00
S:  Manufacturer=JMicron
S:  Product=USB to ATA/ATAPI Bridge
S:  SerialNumber=DE5088854FFF
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=  2mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

(patch applied and retested on a modified 2.6.27.2-libre.24.rc1.fc10)

Signed-off-by: Phil Dibowitz <phil at ipom.com>
Cc: Alexandre Oliva <oliva at lsd.ic.unicamp.br>
Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
---

diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h
index cd15547..061df9b 100644
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
@@ -1745,6 +1745,15 @@ UNUSUAL_DEV(  0x14cd, 0x6600, 0x0201, 0x0201,
 		US_SC_DEVICE, US_PR_DEVICE, NULL,
 		US_FL_IGNORE_RESIDUE ),
 
+/* Reported by Alexandre Oliva <oliva at lsd.ic.unicamp.br>
+ * JMicron responds to USN and several other SCSI ioctls with a
+ * residue that causes subsequent I/O requests to fail.  */
+UNUSUAL_DEV(  0x152d, 0x2329, 0x0100, 0x0100,
+	        "JMicron",
+	        "USB to ATA/ATAPI Bridge",
+	        US_SC_DEVICE, US_PR_DEVICE, NULL,
+	        US_FL_IGNORE_RESIDUE ),
+
 /* Reported by Robert Schedel <r.schedel at yahoo.de>
  * Note: this is a 'super top' device like the above 14cd/6600 device */
 UNUSUAL_DEV(  0x1652, 0x6600, 0x0201, 0x0201,


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-9/kernel.spec,v
retrieving revision 1.820
retrieving revision 1.821
diff -u -r1.820 -r1.821
--- kernel.spec	30 Oct 2008 08:07:50 -0000	1.820
+++ kernel.spec	30 Oct 2008 08:27:25 -0000	1.821
@@ -686,6 +686,8 @@
 
 # make USB EHCI driver respect "nousb" parameter
 Patch2300: linux-2.6-usb-ehci-hcd-respect-nousb.patch
+# fix jmicron usb/sata bridge
+Patch2310: linux-2.6-usb-storage-unusual-devs-jmicron-ata-bridge.patch
 
 # get rid of imacfb and make efifb work everywhere it was used
 Patch2600: linux-2.6-merge-efifb-imacfb.patch
@@ -701,6 +703,9 @@
 Patch2902: linux-2.6.27-ext-dir-corruption-fix.patch
 Patch2903: linux-2.6.27-delay-ext4-free-block-cap-check.patch
 
+# cciss sysfs links are broken
+Patch3000: linux-2.6-blk-cciss-fix-regression-sysfs-symlink-missing.patch
+
 # Sony Vaio suspend fix
 Patch3100: linux-2.6.27-sony-laptop-suspend-fix.patch
 
@@ -1101,6 +1106,8 @@
 # USB
 # actually honor the nousb parameter
 ApplyPatch linux-2.6-usb-ehci-hcd-respect-nousb.patch
+# fix jmicron usb/sata bridge
+ApplyPatch linux-2.6-usb-storage-unusual-devs-jmicron-ata-bridge.patch
 
 # ACPI
 
@@ -1184,6 +1191,9 @@
 # disable swncq on sata_nv
 ApplyPatch linux-2.6-libata-sata_nv-disable-swncq.patch
 
+# cciss sysfs links are broken
+ApplyPatch linux-2.6-blk-cciss-fix-regression-sysfs-symlink-missing.patch
+
 # Add misc wireless bits from upstream wireless tree
 ApplyPatch linux-2.6-at76.patch
 
@@ -1836,6 +1846,11 @@
 %kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
 
 %changelog
+* Thu Oct 30 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.27.4-8
+- Two patches for storage devices:
+    Fix Jmicron USB/SATA bridge.
+    Fix sysfs symlinks in cciss driver.
+
 * Thu Oct 30 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.27.4-7
 - Add scheduler patches approved for -stable.
 




More information about the fedora-extras-commits mailing list