<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/message/fusion, branch v6.12.80</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2024-12-05T13:02:10+00:00</updated>
<entry>
<title>scsi: fusion: Remove unused variable 'rc'</title>
<updated>2024-12-05T13:02:10+00:00</updated>
<author>
<name>Zeng Heng</name>
<email>zengheng4@huawei.com</email>
</author>
<published>2024-10-24T08:44:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=85cb213c840e6988873b655af2c96810989f6439'/>
<id>urn:sha1:85cb213c840e6988873b655af2c96810989f6439</id>
<content type='text'>
[ Upstream commit bd65694223f7ad11c790ab63ad1af87a771192ee ]

The return value of scsi_device_reprobe() is currently ignored in
_scsih_reprobe_lun(). Fixing the calling code to deal with the potential
error is non-trivial, so for now just WARN_ON().

The handling of scsi_device_reprobe()'s return value refers to
_scsih_reprobe_lun() and the following link:

https://lore.kernel.org/all/094fdbf57487af4f395238c0525b2a560c8f68f0.1469766027.git.calvinowens@fb.com/

Fixes: f99be43b3024 ("[SCSI] fusion: power pc and miscellaneous bug fixs")
Signed-off-by: Zeng Heng &lt;zengheng4@huawei.com&gt;
Link: https://lore.kernel.org/r/20241024084417.154655-1-zengheng4@huawei.com
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi</title>
<updated>2024-09-29T16:22:34+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2024-09-29T16:22:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3ed7df085225ea8736b80d1e1a247a40d91281c8'/>
<id>urn:sha1:3ed7df085225ea8736b80d1e1a247a40d91281c8</id>
<content type='text'>
Pull more SCSI updates from James Bottomley:
 "These are mostly minor updates.

  There are two drivers (lpfc and mpi3mr) which missed the initial
  pull and a core change to retry a start/stop unit which affect
  suspend/resume"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (32 commits)
  scsi: lpfc: Update lpfc version to 14.4.0.5
  scsi: lpfc: Support loopback tests with VMID enabled
  scsi: lpfc: Revise TRACE_EVENT log flag severities from KERN_ERR to KERN_WARNING
  scsi: lpfc: Ensure DA_ID handling completion before deleting an NPIV instance
  scsi: lpfc: Fix kref imbalance on fabric ndlps from dev_loss_tmo handler
  scsi: lpfc: Restrict support for 32 byte CDBs to specific HBAs
  scsi: lpfc: Update phba link state conditional before sending CMF_SYNC_WQE
  scsi: lpfc: Add ELS_RSP cmd to the list of WQEs to flush in lpfc_els_flush_cmd()
  scsi: mpi3mr: Update driver version to 8.12.0.0.50
  scsi: mpi3mr: Improve wait logic while controller transitions to READY state
  scsi: mpi3mr: Update MPI Headers to revision 34
  scsi: mpi3mr: Use firmware-provided timestamp update interval
  scsi: mpi3mr: Enhance the Enable Controller retry logic
  scsi: sd: Fix off-by-one error in sd_read_block_characteristics()
  scsi: pm8001: Do not overwrite PCI queue mapping
  scsi: scsi_debug: Remove a useless memset()
  scsi: pmcraid: Convert comma to semicolon
  scsi: sd: Retry START STOP UNIT commands
  scsi: mpi3mr: A performance fix
  scsi: ufs: qcom: Update MODE_MAX cfg_bw value
  ...
</content>
</entry>
<entry>
<title>[tree-wide] finally take no_llseek out</title>
<updated>2024-09-27T15:18:43+00:00</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2024-09-27T01:56:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cb787f4ac0c2e439ea8d7e6387b925f74576bdf8'/>
<id>urn:sha1:cb787f4ac0c2e439ea8d7e6387b925f74576bdf8</id>
<content type='text'>
no_llseek had been defined to NULL two years ago, in commit 868941b14441
("fs: remove no_llseek")

To quote that commit,

  At -rc1 we'll need do a mechanical removal of no_llseek -

  git grep -l -w no_llseek | grep -v porting.rst | while read i; do
	sed -i '/\&lt;no_llseek\&gt;/d' $i
  done

  would do it.

Unfortunately, that hadn't been done.  Linus, could you do that now, so
that we could finally put that thing to rest? All instances are of the
form
	.llseek = no_llseek,
so it's obviously safe.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>scsi: fusion: mptctl: Use min() macro</title>
<updated>2024-09-13T00:23:03+00:00</updated>
<author>
<name>Yan Zhen</name>
<email>yanzhen@vivo.com</email>
</author>
<published>2024-09-02T01:33:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e88ed594328900959f8aae72c2e6240703a91f33'/>
<id>urn:sha1:e88ed594328900959f8aae72c2e6240703a91f33</id>
<content type='text'>
Using the real macro is usually more intuitive and readable when the
original file is guaranteed to contain the minmax.h header file and compile
correctly.

Signed-off-by: Yan Zhen &lt;yanzhen@vivo.com&gt;
Link: https://lore.kernel.org/r/20240902013303.909316-1-yanzhen@vivo.com
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>Merge patch series "Simplify multiple create*_workqueue() invocations"</title>
<updated>2024-08-23T01:30:06+00:00</updated>
<author>
<name>Martin K. Petersen</name>
<email>martin.petersen@oracle.com</email>
</author>
<published>2024-08-23T01:30:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=70302fc7adcd29c4c744489cd89e2d3ed08ecd8d'/>
<id>urn:sha1:70302fc7adcd29c4c744489cd89e2d3ed08ecd8d</id>
<content type='text'>
Bart Van Assche &lt;bvanassche@acm.org&gt; says:

Hi Martin,

Multiple SCSI drivers use snprintf() to format a workqueue name before
invoking one of the create*_workqueue() macros. This patch series
simplifies such code by passing the format string and arguments to
alloc_workqueue(). Additionally, the structure members that are only
used as a temporary buffer for formatting workqueue names are
removed. Please consider this patch series for the next merge window.

Thanks,

Bart.

Link: https://lore.kernel.org/r/20240822195944.654691-1-bvanassche@acm.org
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: mptfusion: Simplify the alloc*_workqueue() invocations</title>
<updated>2024-08-23T01:28:55+00:00</updated>
<author>
<name>Bart Van Assche</name>
<email>bvanassche@acm.org</email>
</author>
<published>2024-08-22T19:59:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=dec523975b85e725e2bf786a0b7dcee76b77a64e'/>
<id>urn:sha1:dec523975b85e725e2bf786a0b7dcee76b77a64e</id>
<content type='text'>
Let alloc*_workqueue() format the workqueue names instead of calling
snprintf() explicitly.

Signed-off-by: Bart Van Assche &lt;bvanassche@acm.org&gt;
Link: https://lore.kernel.org/r/20240822195944.654691-3-bvanassche@acm.org
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: message: fusion: struct _CONFIG_PAGE_IOC_4: Replace 1-element array with flexible array</title>
<updated>2024-08-03T01:32:52+00:00</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f296cc1d7f5aeccd0d87ec167e0aea05acb8a022'/>
<id>urn:sha1:f296cc1d7f5aeccd0d87ec167e0aea05acb8a022</id>
<content type='text'>
Replace the deprecated[1] use of a 1-element array in struct
_CONFIG_PAGE_IOC_4 with a modern flexible array.

Additionally add __counted_by annotation since SEP is only ever accessed
after updating ACtiveSEP:

lsi/mpi_cnfg.h:    IOC_4_SEP                   SEP[] __counted_by(ActiveSEP);  /* 08h */
mptsas.c:        ii = IOCPage4Ptr-&gt;ActiveSEP++;
mptsas.c:        IOCPage4Ptr-&gt;SEP[ii].SEPTargetID = id;
mptsas.c:        IOCPage4Ptr-&gt;SEP[ii].SEPBus = channel;

No binary differences are present after this conversion.

Link: https://github.com/KSPP/linux/issues/79 [1]
Signed-off-by: Kees Cook &lt;kees@kernel.org&gt;
Link: https://lore.kernel.org/r/20240711172821.123936-6-kees@kernel.org
Reviewed-by: Gustavo A. R. Silva &lt;gustavoars@kernel.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: message: fusion: struct _CONFIG_PAGE_IOC_3: Replace 1-element array with flexible array</title>
<updated>2024-08-03T01:32:52+00:00</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=70631322dbab5b48f49f142dd9aef768c0fb077c'/>
<id>urn:sha1:70631322dbab5b48f49f142dd9aef768c0fb077c</id>
<content type='text'>
Replace the deprecated[1] use of a 1-element array in struct
_CONFIG_PAGE_IOC_3 with a modern flexible array.

Additionally add __counted_by annotation since PhysDisk is only ever
accessed via a loops bounded by NumPhysDisks:

lsi/mpi_cnfg.h:    IOC_3_PHYS_DISK             PhysDisk[] __counted_by(NumPhysDisks); /* 08h */
mptscsih.c:	for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg3-&gt;NumPhysDisks; i++) {
mptscsih.c:		if ((id == ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskID) &amp;&amp;
mptscsih.c:		    (channel == ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskBus)) {
mptscsih.c:	for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg3-&gt;NumPhysDisks; i++) {
mptscsih.c:		    ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskNum);
mptscsih.c:		    ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskNum,
mptscsih.c:	for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg3-&gt;NumPhysDisks; i++) {
mptscsih.c:		if ((id == ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskID) &amp;&amp;
mptscsih.c:		    (channel == ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskBus)) {
mptscsih.c:			rc = ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskNum;
mptscsih.c:	for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg3-&gt;NumPhysDisks; i++) {
mptscsih.c:		    ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskNum);
mptscsih.c:		    ioc-&gt;raid_data.pIocPg3-&gt;PhysDisk[i].PhysDiskNum,

No binary differences are present after this conversion.

Link: https://github.com/KSPP/linux/issues/79 [1]
Signed-off-by: Kees Cook &lt;kees@kernel.org&gt;
Link: https://lore.kernel.org/r/20240711172821.123936-5-kees@kernel.org
Reviewed-by: Gustavo A. R. Silva &lt;gustavoars@kernel.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: message: fusion: struct _CONFIG_PAGE_IOC_2: Replace 1-element array with flexible array</title>
<updated>2024-08-03T01:32:52+00:00</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=de80fe29ab53dc9efde5c773fadebd3e547ad785'/>
<id>urn:sha1:de80fe29ab53dc9efde5c773fadebd3e547ad785</id>
<content type='text'>
Replace the deprecated[1] use of a 1-element array in struct
_CONFIG_PAGE_IOC_2 with a modern flexible array.

Additionally add __counted_by annotation since RaidVolume is only ever
accessed from loops controlled by NumActiveVolumes:

lsi/mpi_cnfg.h:    CONFIG_PAGE_IOC_2_RAID_VOL  RaidVolume[] __counted_by(NumActiveVolumes); /* 0Ch */
mptbase.c:      for (i = 0; i &lt; pIoc2-&gt;NumActiveVolumes ; i++)
mptbase.c:                  pIoc2-&gt;RaidVolume[i].VolumeBus,
mptbase.c:                  pIoc2-&gt;RaidVolume[i].VolumeID);
mptsas.c:               for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg2-&gt;NumActiveVolumes; i++) {
mptsas.c:                                       RaidVolume[i].VolumeID) {
mptsas.c:                                       RaidVolume[i].VolumeBus;
mptsas.c:       for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg2-&gt;NumActiveVolumes; i++) {
mptsas.c:                   ioc-&gt;raid_data.pIocPg2-&gt;RaidVolume[i].VolumeID, 0);
mptsas.c:                   ioc-&gt;raid_data.pIocPg2-&gt;RaidVolume[i].VolumeID);
mptsas.c:                   ioc-&gt;raid_data.pIocPg2-&gt;RaidVolume[i].VolumeID, 0);
mptsas.c:               for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg2-&gt;NumActiveVolumes; i++) {
mptsas.c:                       if (ioc-&gt;raid_data.pIocPg2-&gt;RaidVolume[i].VolumeID ==
mptsas.c:       for (i = 0; i &lt; ioc-&gt;raid_data.pIocPg2-&gt;NumActiveVolumes; i++)
mptsas.c:               if (ioc-&gt;raid_data.pIocPg2-&gt;RaidVolume[i].VolumeID == id)
mptspi.c:       for (i=0; i &lt; ioc-&gt;raid_data.pIocPg2-&gt;NumActiveVolumes; i++) {
mptspi.c:               if (ioc-&gt;raid_data.pIocPg2-&gt;RaidVolume[i].VolumeID == id) {

No binary differences are present after this conversion.

Link: https://github.com/KSPP/linux/issues/79 [1]
Signed-off-by: Kees Cook &lt;kees@kernel.org&gt;
Link: https://lore.kernel.org/r/20240711172821.123936-4-kees@kernel.org
Reviewed-by: Gustavo A. R. Silva &lt;gustavoars@kernel.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: message: fusion: struct _CONFIG_PAGE_RAID_PHYS_DISK_1: Replace 1-element array with flexible array</title>
<updated>2024-08-03T01:32:52+00:00</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=dc8932fbf6a9cad4cf6dd312d115a26d90facb7e'/>
<id>urn:sha1:dc8932fbf6a9cad4cf6dd312d115a26d90facb7e</id>
<content type='text'>
Replace the deprecated[1] use of a 1-element array in struct
_CONFIG_PAGE_RAID_PHYS_DISK_1 with a modern flexible array.

Additionally add __counted_by annotation since Path is only ever accessed
via a loops bounded by NumPhysDiskPaths:

lsi/mpi_cnfg.h:    RAID_PHYS_DISK1_PATH            Path[] __counted_by(NumPhysDiskPaths);/* 0Ch */
mptbase.c:      phys_disk-&gt;NumPhysDiskPaths = buffer-&gt;NumPhysDiskPaths;
mptbase.c:      for (i = 0; i &lt; phys_disk-&gt;NumPhysDiskPaths; i++) {
mptbase.c:              phys_disk-&gt;Path[i].PhysDiskID = buffer-&gt;Path[i].PhysDiskID;
mptbase.c:              phys_disk-&gt;Path[i].PhysDiskBus = buffer-&gt;Path[i].PhysDiskBus;

No binary differences are present after this conversion.

Link: https://github.com/KSPP/linux/issues/79 [1]
Signed-off-by: Kees Cook &lt;kees@kernel.org&gt;
Link: https://lore.kernel.org/r/20240711172821.123936-3-kees@kernel.org
Reviewed-by: Gustavo A. R. Silva &lt;gustavoars@kernel.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
</feed>
