linux-next: build failure after merge of the scsi-mkp tree

Mark Brown posted 1 patch 2 days ago
drivers/ata/libata-scsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
linux-next: build failure after merge of the scsi-mkp tree
Posted by Mark Brown 2 days ago
Hi all,

After merging the scsi-mkp tree, today's linux-next build
(arm64 defconfig) failed like this:

/tmp/next/build/drivers/ata/libata-scsi.c: In function 'ata_scsi_pass_thru':
/tmp/next/build/drivers/ata/libata-scsi.c:3575:25: error: too many arguments to function 'ata_scsi_set_sense'
 3575 |                         ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
      |                         ^~~~~~~~~~~~~~~~~~
/tmp/next/build/drivers/ata/libata-scsi.c:206:6: note: declared here
  206 | void ata_scsi_set_sense(struct ata_device *dev, struct scsi_cmnd *cmd,
      |      ^~~~~~~~~~~~~~~~~~

Caused by commit

   c44f095a9d176 (scsi: ata: libata: Use combined sense codes)

interacting with commit

   3bab8c7e0c6ba (ata: libata-scsi: abort multi-sector pass-through commands when multi_count is 0)

from the libata tree,  I have fixed this up with the patch below and can
carry as needed:

From 900934c48a431c99de39a6b2976368408e7d2c83 Mon Sep 17 00:00:00 2001
From: Mark Brown <broonie@kernel.org>
Date: Tue, 22 Sep 2026 14:07:31 +0200
Subject: [PATCH] libata: Fix up semantic conflict in ata_scsi_set_sense()

/tmp/next/build/drivers/ata/libata-scsi.c: In function 'ata_scsi_pass_thru':
/tmp/next/build/drivers/ata/libata-scsi.c:3575:25: error: too many arguments to function 'ata_scsi_set_sense'
 3575 |                         ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
      |                         ^~~~~~~~~~~~~~~~~~
/tmp/next/build/drivers/ata/libata-scsi.c:206:6: note: declared here
  206 | void ata_scsi_set_sense(struct ata_device *dev, struct scsi_cmnd *cmd,
      |      ^~~~~~~~~~~~~~~~~~

Signed-off-by: Mark Brown <broonie@kernel.org>
---
 drivers/ata/libata-scsi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
index afc2bad677bb9..e380d1b68101a 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
@@ -3572,7 +3572,7 @@ static unsigned int ata_scsi_pass_thru(struct ata_queued_cmd *qc)
 		unsigned int multi_count = 1 << (cdb[1] >> 5);
 
 		if (!dev->multi_count) {
-			ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
+			ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0);
 			return 1;
 		}
 
-- 
2.47.3

Re: linux-next: build failure after merge of the scsi-mkp tree
Posted by Damien Le Moal 1 day, 8 hours ago
On 9/22/26 22:36, Mark Brown wrote:
> Hi all,
> 
> After merging the scsi-mkp tree, today's linux-next build
> (arm64 defconfig) failed like this:
> 
> /tmp/next/build/drivers/ata/libata-scsi.c: In function 'ata_scsi_pass_thru':
> /tmp/next/build/drivers/ata/libata-scsi.c:3575:25: error: too many arguments to function 'ata_scsi_set_sense'
>  3575 |                         ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
>       |                         ^~~~~~~~~~~~~~~~~~
> /tmp/next/build/drivers/ata/libata-scsi.c:206:6: note: declared here
>   206 | void ata_scsi_set_sense(struct ata_device *dev, struct scsi_cmnd *cmd,
>       |      ^~~~~~~~~~~~~~~~~~
> 
> Caused by commit
> 
>    c44f095a9d176 (scsi: ata: libata: Use combined sense codes)
> 
> interacting with commit
> 
>    3bab8c7e0c6ba (ata: libata-scsi: abort multi-sector pass-through commands when multi_count is 0)
> 
> from the libata tree,  I have fixed this up with the patch below and can
> carry as needed:
> 
> From 900934c48a431c99de39a6b2976368408e7d2c83 Mon Sep 17 00:00:00 2001
> From: Mark Brown <broonie@kernel.org>
> Date: Tue, 22 Sep 2026 14:07:31 +0200
> Subject: [PATCH] libata: Fix up semantic conflict in ata_scsi_set_sense()
> 
> /tmp/next/build/drivers/ata/libata-scsi.c: In function 'ata_scsi_pass_thru':
> /tmp/next/build/drivers/ata/libata-scsi.c:3575:25: error: too many arguments to function 'ata_scsi_set_sense'
>  3575 |                         ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
>       |                         ^~~~~~~~~~~~~~~~~~
> /tmp/next/build/drivers/ata/libata-scsi.c:206:6: note: declared here
>   206 | void ata_scsi_set_sense(struct ata_device *dev, struct scsi_cmnd *cmd,
>       |      ^~~~~~~~~~~~~~~~~~
> 
> Signed-off-by: Mark Brown <broonie@kernel.org>
> ---
>  drivers/ata/libata-scsi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
> index afc2bad677bb9..e380d1b68101a 100644
> --- a/drivers/ata/libata-scsi.c
> +++ b/drivers/ata/libata-scsi.c
> @@ -3572,7 +3572,7 @@ static unsigned int ata_scsi_pass_thru(struct ata_queued_cmd *qc)
>  		unsigned int multi_count = 1 << (cdb[1] >> 5);
>  
>  		if (!dev->multi_count) {
> -			ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
> +			ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0);

Mark,

This should be:
			ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND,
					   NO_ADDITIONAL_SENSE_INFORMATION);

Thanks!
			

>  			return 1;
>  		}
>  


-- 
Damien Le Moal
Western Digital Research
Re: linux-next: build failure after merge of the scsi-mkp tree
Posted by Niklas Cassel 2 days ago
Hello Mark,

On Tue, Sep 22, 2026 at 03:36:14PM +0200, Mark Brown wrote:
> From: Mark Brown <broonie@kernel.org>
> Date: Tue, 22 Sep 2026 14:07:31 +0200
> Subject: [PATCH] libata: Fix up semantic conflict in ata_scsi_set_sense()
> 
> /tmp/next/build/drivers/ata/libata-scsi.c: In function 'ata_scsi_pass_thru':
> /tmp/next/build/drivers/ata/libata-scsi.c:3575:25: error: too many arguments to function 'ata_scsi_set_sense'
>  3575 |                         ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
>       |                         ^~~~~~~~~~~~~~~~~~
> /tmp/next/build/drivers/ata/libata-scsi.c:206:6: note: declared here
>   206 | void ata_scsi_set_sense(struct ata_device *dev, struct scsi_cmnd *cmd,
>       |      ^~~~~~~~~~~~~~~~~~
> 
> Signed-off-by: Mark Brown <broonie@kernel.org>
> ---
>  drivers/ata/libata-scsi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
> index afc2bad677bb9..e380d1b68101a 100644
> --- a/drivers/ata/libata-scsi.c
> +++ b/drivers/ata/libata-scsi.c
> @@ -3572,7 +3572,7 @@ static unsigned int ata_scsi_pass_thru(struct ata_queued_cmd *qc)
>  		unsigned int multi_count = 1 << (cdb[1] >> 5);
>  
>  		if (!dev->multi_count) {
> -			ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0, 0);
> +			ata_scsi_set_sense(dev, scmd, ABORTED_COMMAND, 0);
>  			return 1;
>  		}

Your resolution looks correct.

This is the second conflict.

The previous conflict can be fixed by SCSI maintainers rebasing
15de2788c91cc407f7e6fc6a07be27b10048cbce on top of v7.3-rc2.

I think that would be nice, such that SCSI maintainers will not
need to report a conflict resolution when sending their PR
(as the conflict is against v7.3-rc2 which is already on master).



This second conflict is trivial.

I can intentionally wait until the second week of the merge window to send
the libata pull request (assuming that SCSI sends it the first week).

That way this simple conflict (the one reported by Mark in this email)
resolution will only need to be reported in the libata pull request, and
not in the SCSI pull request.


Kind regards,
Niklas