]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 6 Dec 2013 16:30:18 +0000 (08:30 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 6 Dec 2013 16:30:18 +0000 (08:30 -0800)
Pull SCSI fixes from James Bottomley:
 "This is a set of nine fixes (and one author update).

  The libsas one should fix discovery in eSATA devices, the WRITE_SAME
  one is the largest, but it should fix a lot of problems we've been
  getting with the emulated RAID devices (they've been effectively lying
  about support and then firmware has been choking on the commands).

  The rest are various crash, hang or warn driver fixes"

* tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
  [SCSI] bfa: Fix crash when symb name set for offline vport
  [SCSI] enclosure: fix WARN_ON in dual path device removing
  [SCSI] pm80xx: Tasklets synchronization fix.
  [SCSI] pm80xx: Resetting the phy state.
  [SCSI] pm80xx: Fix for direct attached device.
  [SCSI] pm80xx: Module author addition
  [SCSI] hpsa: return 0 from driver probe function on success, not 1
  [SCSI] hpsa: do not discard scsi status on aborted commands
  [SCSI] Disable WRITE SAME for RAID and virtual host adapter drivers
  [SCSI] libsas: fix usage of ata_tf_to_fis

1  2 
drivers/scsi/pmcraid.c

diff --combined drivers/scsi/pmcraid.c
index 892ea6161376ef5ee66e45d4a14ba6272f68da7a,f413ef796b4305d337f8bd77be12c5ffe6bf0d82..be8ce54f99b247bcba427a16c2f4873b987329c8
@@@ -1404,22 -1404,11 +1404,22 @@@ enum 
  };
  #define PMCRAID_AEN_CMD_MAX (__PMCRAID_AEN_CMD_MAX - 1)
  
 +static struct genl_multicast_group pmcraid_mcgrps[] = {
 +      { .name = "events", /* not really used - see ID discussion below */ },
 +};
 +
  static struct genl_family pmcraid_event_family = {
 -      .id = GENL_ID_GENERATE,
 +      /*
 +       * Due to prior multicast group abuse (the code having assumed that
 +       * the family ID can be used as a multicast group ID) we need to
 +       * statically allocate a family (and thus group) ID.
 +       */
 +      .id = GENL_ID_PMCRAID,
        .name = "pmcraid",
        .version = 1,
 -      .maxattr = PMCRAID_AEN_ATTR_MAX
 +      .maxattr = PMCRAID_AEN_ATTR_MAX,
 +      .mcgrps = pmcraid_mcgrps,
 +      .n_mcgrps = ARRAY_SIZE(pmcraid_mcgrps),
  };
  
  /**
@@@ -1522,8 -1511,9 +1522,8 @@@ static int pmcraid_notify_aen
                return result;
        }
  
 -      result =
 -              genlmsg_multicast(&pmcraid_event_family, skb, 0,
 -                                pmcraid_event_family.id, GFP_ATOMIC);
 +      result = genlmsg_multicast(&pmcraid_event_family, skb,
 +                                 0, 0, GFP_ATOMIC);
  
        /* If there are no listeners, genlmsg_multicast may return non-zero
         * value.
@@@ -4325,6 -4315,7 +4325,7 @@@ static struct scsi_host_template pmcrai
        .this_id = -1,
        .sg_tablesize = PMCRAID_MAX_IOADLS,
        .max_sectors = PMCRAID_IOA_MAX_SECTORS,
+       .no_write_same = 1,
        .cmd_per_lun = PMCRAID_MAX_CMD_PER_LUN,
        .use_clustering = ENABLE_CLUSTERING,
        .shost_attrs = pmcraid_host_attrs,