Skip to content

Commit 4588e65

Browse files
suganathprabu0512martinkpetersen
authored andcommitted
scsi: mpi3mr: Prevent duplicate SAS/SATA device entries in channel 1
Avoid scanning SAS/SATA devices in channel 1 when SAS transport is enabled, as the SAS/SATA devices are exposed through channel 0. Signed-off-by: Suganath Prabu S <suganath-prabu.subramani@broadcom.com> Signed-off-by: Ranjan Kumar <ranjan.kumar@broadcom.com> Link: https://lore.kernel.org/stable/20251120071955.463475-1-suganath-prabu.subramani%40broadcom.com Link: https://patch.msgid.link/20251120071955.463475-1-suganath-prabu.subramani@broadcom.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 5053eab commit 4588e65

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

drivers/scsi/mpi3mr/mpi3mr.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ extern struct list_head mrioc_list;
5656
extern int prot_mask;
5757
extern atomic64_t event_counter;
5858

59-
#define MPI3MR_DRIVER_VERSION "8.15.0.5.50"
60-
#define MPI3MR_DRIVER_RELDATE "12-August-2025"
59+
#define MPI3MR_DRIVER_VERSION "8.15.0.5.51"
60+
#define MPI3MR_DRIVER_RELDATE "18-November-2025"
6161

6262
#define MPI3MR_DRIVER_NAME "mpi3mr"
6363
#define MPI3MR_DRIVER_LICENSE "GPL"

drivers/scsi/mpi3mr/mpi3mr_os.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1184,6 +1184,8 @@ static void mpi3mr_update_tgtdev(struct mpi3mr_ioc *mrioc,
11841184
if (is_added == true)
11851185
tgtdev->io_throttle_enabled =
11861186
(flags & MPI3_DEVICE0_FLAGS_IO_THROTTLING_REQUIRED) ? 1 : 0;
1187+
if (!mrioc->sas_transport_enabled)
1188+
tgtdev->non_stl = 1;
11871189

11881190
switch (flags & MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_MASK) {
11891191
case MPI3_DEVICE0_FLAGS_MAX_WRITE_SAME_256_LB:
@@ -4844,7 +4846,7 @@ static int mpi3mr_target_alloc(struct scsi_target *starget)
48444846
spin_lock_irqsave(&mrioc->tgtdev_lock, flags);
48454847
if (starget->channel == mrioc->scsi_device_channel) {
48464848
tgt_dev = __mpi3mr_get_tgtdev_by_perst_id(mrioc, starget->id);
4847-
if (tgt_dev && !tgt_dev->is_hidden) {
4849+
if (tgt_dev && !tgt_dev->is_hidden && tgt_dev->non_stl) {
48484850
scsi_tgt_priv_data->starget = starget;
48494851
scsi_tgt_priv_data->dev_handle = tgt_dev->dev_handle;
48504852
scsi_tgt_priv_data->perst_id = tgt_dev->perst_id;

0 commit comments

Comments
 (0)