lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ