<feed xmlns='http://www.w3.org/2005/Atom'>
<title>blaster4385/linux-IllusionX/drivers/message, branch v6.12.1</title>
<subtitle>Linux kernel with personal config changes for arch linux</subtitle>
<id>https://git.tablaster.dev/blaster4385/linux-IllusionX/atom?h=v6.12.1</id>
<link rel='self' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/atom?h=v6.12.1'/>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/'/>
<updated>2024-09-29T16:22:34Z</updated>
<entry>
<title>Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi</title>
<updated>2024-09-29T16:22:34Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2024-09-29T16:22:34Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:43Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2024-09-27T01:56:11Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:03Z</updated>
<author>
<name>Yan Zhen</name>
<email>yanzhen@vivo.com</email>
</author>
<published>2024-09-02T01:33:03Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:06Z</updated>
<author>
<name>Martin K. Petersen</name>
<email>martin.petersen@oracle.com</email>
</author>
<published>2024-08-23T01:30:06Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:55Z</updated>
<author>
<name>Bart Van Assche</name>
<email>bvanassche@acm.org</email>
</author>
<published>2024-08-22T19:59:06Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:52Z</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:20Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:52Z</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:19Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:52Z</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:18Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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:52Z</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:17Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/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>
<entry>
<title>scsi: message: fusion: struct _CONFIG_PAGE_SAS_IO_UNIT_0: Replace 1-element array with flexible array</title>
<updated>2024-08-03T01:32:52Z</updated>
<author>
<name>Kees Cook</name>
<email>kees@kernel.org</email>
</author>
<published>2024-07-11T17:28:16Z</published>
<link rel='alternate' type='text/html' href='https://git.tablaster.dev/blaster4385/linux-IllusionX/commit/?id=14c1f88c7f625dc12fb4a6f18154bcd6f7cd021f'/>
<id>urn:sha1:14c1f88c7f625dc12fb4a6f18154bcd6f7cd021f</id>
<content type='text'>
Replace the deprecated[1] use of a 1-element array in struct
_CONFIG_PAGE_SAS_IO_UNIT_0 with a modern flexible array.

Additionally add __counted_by annotation since PhyData is only ever
accessed via a loops bounded by NumPhys:

lsi/mpi_cnfg.h:    MPI_SAS_IO_UNIT0_PHY_DATA       PhyData[] __counted_by(NumPhys);    /* 10h */
mptsas.c:       port_info-&gt;num_phys = buffer-&gt;NumPhys;
mptsas.c:       for (i = 0; i &lt; port_info-&gt;num_phys; i++) {
mptsas.c:               mptsas_print_phy_data(ioc, &amp;buffer-&gt;PhyData[i]);
mptsas.c:               port_info-&gt;phy_info[i].phy_id = i;
mptsas.c:               port_info-&gt;phy_info[i].port_id =
mptsas.c:                   buffer-&gt;PhyData[i].Port;
mptsas.c:               port_info-&gt;phy_info[i].negotiated_link_rate =
mptsas.c:                   buffer-&gt;PhyData[i].NegotiatedLinkRate;

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-2-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>
