[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ddc0181a-7580-427b-b1e2-c3b1a3d48ff1@nvidia.com>
Date: Wed, 12 Mar 2025 13:23:47 +1100
From: Balbir Singh <balbirs@...dia.com>
To: Bert Karwatzki <spasswolf@....de>
Cc: Ingo Molnar <mingo@...nel.org>, Kees Cook <kees@...nel.org>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Peter Zijlstra <peterz@...radead.org>, Andy Lutomirski <luto@...nel.org>,
linux-kernel@...r.kernel.org
Subject: Re: commit 7ffb791423c7 breaks steam game
On 3/12/25 11:26, Bert Karwatzki wrote:
> The combination
>
> CONFIG_RANDOMIZE_BASE=y
> # CONFIG_RANDOMIZE_MEMORY is not set
> # CONFIG_PCI_P2PDMA is not set
>
> also shows the laggy input when running stellaris
>
Hmm.. my changes do not get compiled when
CONFIG_RANDOMIZE_MEMORY is not set
It sounds like there is an issue on the system which KASLR
was hiding by bringing the region to 0xafe0..
With this patch CONFIG_PCI_P2PDMA exposes the system to the
full direct map and that seems broken on your system.
Please see below
<snip>
> The diff to the other case
> CONFIG_RANDOMIZE_BASE=y
> CONFIG_RANDOMIZE_MEMORY=y
> # CONFIG_PCI_P2PDMA is not set
> is
>
> # diff -u proc_iomme_6.14.0-rc6-norandmemnop2p.txt proc_iomme_6.14.0-rc6-
> nop2pdma.txt
> --- proc_iomme_6.14.0-rc6-norandmemnop2p.txt 2025-03-12 01:18:33.022790613
> +0100
> +++ proc_iomme_6.14.0-rc6-nop2pdma.txt 2025-03-12 01:19:36.000325778 +0100
> @@ -85,10 +85,10 @@
> fee00000-fee00fff : pnp 00:04
> ff000000-ffffffff : pnp 00:04
> 100000000-fee2fffff : System RAM
> - 3a7e00000-3a89d2f56 : Kernel code
> - 3a8a00000-3a8e31fff : Kernel rodata
> - 3a9000000-3a912a5ff : Kernel data
> - 3a969c000-3a97fffff : Kernel bss
> + d32200000-d32dd0f56 : Kernel code
> + d32e00000-d33231fff : Kernel rodata
> + d33400000-d3352a5ff : Kernel data
> + d33a9c000-d33bfffff : Kernel bss
> fee300000-100fffffff : Reserved
> 1010000000-ffffffffff : PCI Bus 0000:00
> fc00000000-fe0fffffff : PCI Bus 0000:01
> @@ -104,4 +104,4 @@
> fe30300000-fe303fffff : 0000:04:00.0
> fe30400000-fe30403fff : 0000:04:00.0
> fe30404000-fe30404fff : 0000:04:00.0
> -3ffe00000000-3fffffffffff : 0000:03:00.0
> +afe00000000-affffffffff : 0000:03:00.0
>
So this is the interesting bit 0000:03:00.0
I assume you'd see the card at 0x3ffe00000000 in the output when
CONFIG_RANDOMIZE_BASE = n
Basically the change is moving the BAR region from
0xafe0... to 0x3ffe0.. and the game does not seem to like that
change. It sounds like everything else is working fine?
Any chance you can try another game to see if there are
issues with just one game?
1. Can you please also share the full lscpu output?
- I am particularly interested in the address bits (physical and virtual)
2. Can you please share the full dmesg in both cases?
Thanks,
Balbir
Powered by blists - more mailing lists