[kernel] r21821 - in dists/sid/linux/debian: . patches patches/bugfix/all

Ben Hutchings benh at moszumanska.debian.org
Fri Sep 12 13:38:53 UTC 2014


Author: benh
Date: Fri Sep 12 13:38:52 2014
New Revision: 21821

Log:
SCSI: aic94xx: Remove broken fallback for missing Ctrl-A user settings

Added:
   dists/sid/linux/debian/patches/bugfix/all/aic94xx-remove-broken-fallback-for-missing-ctrl-a.patch
Modified:
   dists/sid/linux/debian/changelog
   dists/sid/linux/debian/patches/series

Modified: dists/sid/linux/debian/changelog
==============================================================================
--- dists/sid/linux/debian/changelog	Fri Sep 12 13:32:22 2014	(r21820)
+++ dists/sid/linux/debian/changelog	Fri Sep 12 13:38:52 2014	(r21821)
@@ -56,6 +56,7 @@
   * [!x86] staging: Enable R8712U, R8188EU as modules (Closes: #742055, #760859)
   * i2o: Disable I2O_EXT_ADAPTEC on 64-bit, as it assumes 32-bit virtual
     addresses
+  * SCSI: aic94xx: Remove broken fallback for missing 'Ctrl-A' user settings
 
   [ Ian Campbell ]
   * [armel/orion5x] udeb: Include mvmdio in nic-modules udeb.

Added: dists/sid/linux/debian/patches/bugfix/all/aic94xx-remove-broken-fallback-for-missing-ctrl-a.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/bugfix/all/aic94xx-remove-broken-fallback-for-missing-ctrl-a.patch	Fri Sep 12 13:38:52 2014	(r21821)
@@ -0,0 +1,57 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Sun, 08 Jun 2014 23:37:44 +0100
+Subject: [SCSI] aic94xx: Remove broken fallback for missing 'Ctrl-A' user settings
+Forwarded: http://mid.gmane.org/1402267064.23860.42.camel@deadeye.wl.decadent.org.uk
+
+asd_process_ctrl_a_user() attempts to find user settings in flash, and
+if they are missing it prepares a substitute structure containing
+default values for PHY settings.  But having done so, it will still
+try to read user settings - from some random address in flash, as the
+local variable 'offs' has not been initialised.
+
+Since asd_common_setup() already sets default PHY settings, there
+seems to be no need to repeat them here, and we can just return 0.
+
+Compile-tested only.
+
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/scsi/aic94xx/aic94xx_sds.c | 18 ++----------------
+ 1 file changed, 2 insertions(+), 16 deletions(-)
+
+diff --git a/drivers/scsi/aic94xx/aic94xx_sds.c b/drivers/scsi/aic94xx/aic94xx_sds.c
+index edb43fd..f5d51d2 100644
+--- a/drivers/scsi/aic94xx/aic94xx_sds.c
++++ b/drivers/scsi/aic94xx/aic94xx_sds.c
+@@ -981,29 +981,15 @@ static int asd_process_ctrla_phy_settings(struct asd_ha_struct *asd_ha,
+ static int asd_process_ctrl_a_user(struct asd_ha_struct *asd_ha,
+ 				   struct asd_flash_dir *flash_dir)
+ {
+-	int err, i;
++	int err;
+ 	u32 offs, size;
+ 	struct asd_ll_el *el;
+ 	struct asd_ctrla_phy_settings *ps;
+-	struct asd_ctrla_phy_settings dflt_ps;
+ 
+ 	err = asd_find_flash_de(flash_dir, FLASH_DE_CTRL_A_USER, &offs, &size);
+ 	if (err) {
+ 		ASD_DPRINTK("couldn't find CTRL-A user settings section\n");
+-		ASD_DPRINTK("Creating default CTRL-A user settings section\n");
+-
+-		dflt_ps.id0 = 'h';
+-		dflt_ps.num_phys = 8;
+-		for (i =0; i < ASD_MAX_PHYS; i++) {
+-			memcpy(dflt_ps.phy_ent[i].sas_addr,
+-			       asd_ha->hw_prof.sas_addr, SAS_ADDR_SIZE);
+-			dflt_ps.phy_ent[i].sas_link_rates = 0x98;
+-			dflt_ps.phy_ent[i].flags = 0x0;
+-			dflt_ps.phy_ent[i].sata_link_rates = 0x0;
+-		}
+-
+-		size = sizeof(struct asd_ctrla_phy_settings);
+-		ps = &dflt_ps;
++		return 0;
+ 	}
+ 
+ 	if (size == 0)

Modified: dists/sid/linux/debian/patches/series
==============================================================================
--- dists/sid/linux/debian/patches/series	Fri Sep 12 13:32:22 2014	(r21820)
+++ dists/sid/linux/debian/patches/series	Fri Sep 12 13:38:52 2014	(r21821)
@@ -111,3 +111,4 @@
 features/all/virtio-scsi-Implement-change_queue_depth-for-virtscs.patch
 debian/revert-staging-sm7xxfb-remove-driver.patch
 debian/i2o-disable-i2o_ext_adaptec-on-64bit.patch
+bugfix/all/aic94xx-remove-broken-fallback-for-missing-ctrl-a.patch



More information about the Kernel-svn-changes mailing list