[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250709181631.GI592765@unreal>
Date: Wed, 9 Jul 2025 21:16:31 +0300
From: Leon Romanovsky <leon@...nel.org>
To: Stephen Rothwell <sfr@...b.auug.org.au>
Cc: Marek Szyprowski <m.szyprowski@...sung.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux Next Mailing List <linux-next@...r.kernel.org>
Subject: Re: linux-next: boot failure after merge of the dma-mapping tree
On Wed, Jul 09, 2025 at 11:39:53PM +1000, Stephen Rothwell wrote:
> Hi all,
>
> After merging the dma-mapping tree, today's linux-next qemu boot test
> (powerpc pseries_le_defconfig) failed like this:
>
> [ 0.219439][ T1] ibmvscsi 71000003: SRP_VERSION: 16.a
> [ 0.219472][ T1] ibmvscsi 71000003: Error -4 opening adapter
> [ 0.219507][ T1] ibmvscsi 71000003: couldn't initialize crq. rc=-1
> [ 0.221963][ T1] ibmvscsi 71000003: probe with driver ibmvscsi failed with error -1
>
> The normal output is:
>
> [ 0.221208][ T1] ibmvscsi 71000003: SRP_VERSION: 16.a
> [ 0.221272][ T1] ibmvscsi 71000003: Maximum ID: 64 Maximum LUN: 32 Maximum Channel: 3
> [ 0.221310][ T1] scsi host0: IBM POWER Virtual SCSI Adapter 1.5.9
> [ 0.221653][ C0] ibmvscsi 71000003: partner initialization complete
> [ 0.221696][ C0] ibmvscsi 71000003: host srp version: 16.a, host partition qemu (0), OS 2, max io 2097152
> [ 0.221752][ C0] ibmvscsi 71000003: sent SRP login
> [ 0.221778][ C0] ibmvscsi 71000003: SRP_LOGIN succeeded
> [ 0.223269][ T1] scsi 0:0:2:0: CD-ROM QEMU QEMU CD-ROM 2.5+ PQ: 0 ANSI: 5
> [ 0.239389][ T28] Freeing initrd memory: 1844K
> [ 0.302192][ C0] sr 0:0:2:0: Power-on or device reset occurred
> [ 0.302411][ T1] sr 0:0:2:0: [sr0] scsi3-mmc drive: 16x/50x cd/rw xa/form2 cdda tray
> [ 0.302450][ T1] cdrom: Uniform CD-ROM driver Revision: 3.20
> [ 0.302800][ T1] sr 0:0:2:0: Attached scsi generic sg0 type 5
>
> Bisectd to commit
>
> ec7352735abf ("dma-mapping: export new dma_*map_phys() interface")
>
> And reverting that commit, and the following one, in today's linux-next
> release, fixes the problem.
I assume that this will fix the issue:
diff --git a/kernel/dma/mapping.c b/kernel/dma/mapping.c
index 29e8594a725a..cb8936e4ffab 100644
--- a/kernel/dma/mapping.c
+++ b/kernel/dma/mapping.c
@@ -157,7 +157,7 @@ dma_addr_t dma_map_phys(struct device *dev, phys_addr_t phys, size_t size,
{
const struct dma_map_ops *ops = get_dma_ops(dev);
struct page *page = phys_to_page(phys);
- size_t offset = offset_in_page(page);
+ size_t offset = offset_in_page(phys);
bool is_pfn_valid = true;
dma_addr_t addr;
>
> --
> Cheers,
> Stephen Rothwell
Powered by blists - more mailing lists