Subject: Re: linux-next: manual merge of the libata tree with the origin tree

From: Niklas Cassel <[email-masked]>
Date: Mon, 9 Mar 2026 17:56:37 +0100

On Mon, Mar 09, 2026 at 03:57:58PM +0000, Mark Brown wrote:

(snip)

> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging.  You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
> 
> diff --cc drivers/ata/libata-scsi.c
> index ad798e5246b49,4225c6d7ff359..0000000000000
> --- a/drivers/ata/libata-scsi.c
> +++ b/drivers/ata/libata-scsi.c
> @@@ -1694,15 -1697,10 +1697,11 @@@ void ata_scsi_requeue_deferred_qc(struc
>   	 * do not try to be smart about what to do with this deferred command
>   	 * and simply retry it by completing it with DID_SOFT_ERROR.
>   	 */
> - 	if (!qc)
> - 		return;
> - 
> - 	scmd = qc->scsicmd;
> - 	ap->deferred_qc = NULL;
> - 	cancel_work(&ap->deferred_qc_work);
> - 	ata_qc_free(qc);
> - 	scmd->result = (DID_SOFT_ERROR << 16);
> - 	scsi_done(scmd);
> + 	if (qc) {
> + 		ap->deferred_qc = NULL;
> ++		cancel_work(&ap->deferred_qc_work);
> + 		ata_scsi_qc_done(qc, true, DID_SOFT_ERROR << 16);
> + 	}
>   }
>   
>   static void ata_scsi_schedule_deferred_qc(struct ata_port *ap)

Hello Mark,

Your conflict resolution looks correct.

I decided to merge for-7.0-fixes branch into for-7.1 / for-next,
for simplicity.

This way, no need to bother Linus with a conflict resolution once
the merge window opens.

Thank you for the heads-up!

Kind regards,
Niklas