mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Mario Limonciello <mario.limonciello@amd.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
	Damien Le Moal <dlemoal@kernel.org>,
	Niklas Cassel <cassel@kernel.org>,
	Thomas Gleixner <tglx@kernel.org>, Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)"
	<x86@kernel.org>, "H . Peter Anvin" <hpa@zytor.com>,
	"open list:PCI SUBSYSTEM" <linux-pci@vger.kernel.org>,
	"open list:X86 ARCHITECTURE (32-BIT AND 64-BIT)"
	<linux-kernel@vger.kernel.org>,
	"open list:LIBATA SUBSYSTEM (Serial and Parallel ATA drivers)"
	<linux-ide@vger.kernel.org>, Arthur Husband <artmoty@gmail.com>,
	Roland Waltersson <roland.waltersson@netinsight.net>,
	snoep <snoepke@live.nl>
Subject: Re: [PATCH v2 2/2] Revert "ata: ahci: force 32-bit DMA for JMicron JMB582/JMB585"
Date: Fri, 25 Sep 2026 14:42:08 -0500	[thread overview]
Message-ID: <20260925194208.GA2072993@bhelgaas> (raw)
In-Reply-To: <20260908190600.226485-3-mario.limonciello@amd.com>

[+cc Roland, snoep]

On Tue, Sep 08, 2026 at 02:06:00PM -0500, Mario Limonciello wrote:
> This reverts commit 105c42566a550e2d05fc14f763216a8765ee5d0e.
> 
> The issue is actually a problem with BIOS configuaration of PCIe
> root ports, enabling a feature that causes problems with 64-bit
> DMA.  It is fixed by adjusting the kernel adjusting the
> configuration of those root ports.

I'm a little concerned about doing this revert for v7.3:

  - The AMD issue should affect any SATA controller, but 105c42566a55
    ("ata: ahci: force 32-bit DMA for JMicron JMB582/JMB585") is very
    specific about JMicron JMB582/JMB585.

  - The BIOS configuration change only affects AMD NBIO 7.7 and 7.11
    but the original posting [1] of 105c42566a55 ("ata: ahci: force
    32-bit DMA for JMicron JMB582/JMB585") mentions Raspberry Pi,
    which isn't AMD (the Raspberry Pi mention was removed before
    105c42566a55 was merged).

  - There are reports of problems on Raspberry Pi 5 JMB585 [2], [3]
    that don't seem completely resolved.

  - The revert doesn't seem like it fixes a problem, so I don't know
    that I can justify it as post-rc1 material for v7.3; maybe the ATA
    folks should take it for v7.4?

What if I just merge patch [1/2] ("x86/PCI: Disable enhanced atomics
on AMD NBIO 7.7 and 7.11") for v7.3?  Would that leave anything
broken?

[1] https://lore.kernel.org/all/20260403050225.50186-1-artmoty@gmail.com/t/#u)
[2] https://forum.radxa.com/t/repeated-ext4-metadata-corruption-on-raspberry-pi-5-with-penta-sata-hat-jmb585-despite-healthy-ssds-and-raid1/31393/10
[3] https://forums.raspberrypi.com/viewtopic.php?p=2386959#p2386959

> Cc: Arthur Husband <artmoty@gmail.com>
> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
> ---
>  drivers/ata/ahci.c | 18 ------------------
>  1 file changed, 18 deletions(-)
> 
> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
> index 9b8c0935001cb..bffe50a109b88 100644
> --- a/drivers/ata/ahci.c
> +++ b/drivers/ata/ahci.c
> @@ -68,7 +68,6 @@ enum board_ids {
>  	/* board IDs for specific chipsets in alphabetical order */
>  	board_ahci_al,
>  	board_ahci_avn,
> -	board_ahci_jmb585,
>  	board_ahci_mcp65,
>  	board_ahci_mcp77,
>  	board_ahci_mcp89,
> @@ -213,15 +212,6 @@ static const struct ata_port_info ahci_port_info[] = {
>  		.udma_mask	= ATA_UDMA6,
>  		.port_ops	= &ahci_avn_ops,
>  	},
> -	/* JMicron JMB582/585: 64-bit DMA is broken, force 32-bit */
> -	[board_ahci_jmb585] = {
> -		AHCI_HFLAGS	(AHCI_HFLAG_IGN_IRQ_IF_ERR |
> -				 AHCI_HFLAG_32BIT_ONLY),
> -		.flags		= AHCI_FLAG_COMMON,
> -		.pio_mask	= ATA_PIO4,
> -		.udma_mask	= ATA_UDMA6,
> -		.port_ops	= &ahci_ops,
> -	},
>  	[board_ahci_mcp65] = {
>  		AHCI_HFLAGS	(AHCI_HFLAG_NO_FPDMA_AA | AHCI_HFLAG_NO_PMP |
>  				 AHCI_HFLAG_YES_NCQ),
> @@ -954,14 +944,6 @@ static const struct pci_device_id ahci_pci_tbl[] = {
>  		/* Elkhart Lake AHCI */
>  		PCI_VDEVICE(INTEL, 0x4b63),
>  		.driver_data = board_ahci_pcs_quirk,
> -	}, {
> -		/* JMicron JMB582/585: force 32-bit DMA (broken 64-bit implementation) */
> -		PCI_VDEVICE(JMICRON, 0x0582),
> -		.driver_data = board_ahci_jmb585,
> -
> -	}, {
> -		PCI_VDEVICE(JMICRON, 0x0585),
> -		.driver_data = board_ahci_jmb585,
>  	}, {
>  		/* JMicron 360/1/3/5/6, match class to avoid IDE function */
>  		PCI_DEVICE(PCI_VENDOR_ID_JMICRON, PCI_ANY_ID),
> -- 
> 2.43.0
> 

  parent reply	other threads:[~2026-09-25 19:42 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-08 19:05 [PATCH v2 0/2] Fix for storage corruption w/ AMD IOMMU on 64-bit addressing Mario Limonciello
2026-09-08 19:05 ` [PATCH v2 1/2] x86/PCI: Disable enhanced atomics on some AMD PCIe ports Mario Limonciello
2026-09-14 16:57   ` Mario Limonciello
2026-09-22 15:35     ` Mario Limonciello
2026-09-23 17:12   ` Bjorn Helgaas
2026-09-23 17:30     ` Mario Limonciello
2026-09-23 18:05       ` Bjorn Helgaas
2026-09-23 18:25         ` Mario Limonciello
2026-09-08 19:06 ` [PATCH v2 2/2] Revert "ata: ahci: force 32-bit DMA for JMicron JMB582/JMB585" Mario Limonciello
2026-09-22 12:52   ` Niklas Cassel
2026-09-25 19:42   ` Bjorn Helgaas [this message]
2026-09-25 20:01     ` Mario Limonciello
2026-09-21  4:52 ` [PATCH v2 0/2] Fix for storage corruption w/ AMD IOMMU on 64-bit addressing Mario Limonciello
2026-09-22  9:49   ` Niklas Cassel
2026-09-22 10:44     ` Mario Limonciello
2026-09-22 15:46   ` Mario Limonciello
2026-09-23 18:36 ` Bjorn Helgaas
2026-09-23 18:39   ` Mario Limonciello
2026-09-23 18:46     ` Bjorn Helgaas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260925194208.GA2072993@bhelgaas \
    --to=helgaas@kernel.org \
    --cc=artmoty@gmail.com \
    --cc=bhelgaas@google.com \
    --cc=bp@alien8.de \
    --cc=cassel@kernel.org \
    --cc=dave.hansen@linux.intel.com \
    --cc=dlemoal@kernel.org \
    --cc=hpa@zytor.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=mingo@redhat.com \
    --cc=roland.waltersson@netinsight.net \
    --cc=snoepke@live.nl \
    --cc=tglx@kernel.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®