NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/60180: radeon* is problematically slow



>Number:         60180
>Category:       kern
>Synopsis:       radeon* is problematically slow
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Apr 07 01:50:00 +0000 2026
>Originator:     John Klos
>Release:        NetBSD 11.0_RC3
>Organization:
	
>Environment:
	
	
System: NetBSD beaver.zia.io 11.0_RC3 NetBSD 11.0_RC3 (GENERIC) #0: Mon Apr 6 23:59:22 UTC 2026 john%beaver.zia.io@localhost:/usr/obj-amd64/sys/arch/amd64/compile/GENERIC amd64
Architecture: x86_64
Machine: amd64
>Description:
	
On a system with Radeon graphics built in to the CPU, framebuffer operations 
significantly slow the whole system. cat'ing a 250 meg text file:

time cat amd64_24-march-2026.log > /dev/null
        0.06 real         0.00 user         0.06 sys

The same over ssh to a local (fast) machine:

time cat amd64_24-march-2026.log
       24.31 real         0.04 user         2.87 sys

Running it on radeondrmkmsfb0 console:

time cat amd64_24-march-2026.log
      315.82 real         0.04 user       173.28 sys

While the cat is running on the Radeon console, the whole system becomes significantly
slower:

load averages:  1.08,  0.37,  0.25;               up 0+00:36:52                    22:56:28
28 processes: 23 sleeping, 5 on CPU
CPU states:  0.0% user,  0.0% nice, 44.8% system, 31.9% interrupt, 23.1% idle
Memory: 330M Act, 24M Wired, 17M Exec, 292M File, 30G Free
Swap: 64G Total, 64G Free / Pools: 43M Used / Network: 1K In, 4K Out

  PID USERNAME PRI NICE   SIZE   RES STATE       TIME   WCPU    CPU COMMAND
  426 root      28    0    11M 1564K CPU/0       0:26   102% 72.66% cat
 2679 root      28    0    13M 2892K CPU/1       0:18 49.07% 49.07% sysstat
 2175 john      28    0    29M   11M CPU/2       0:28 45.56% 45.56% sshd-session
    0 root     223    0     0K  328M CPU/1       1:30 16.94% 16.94% [system]
 1878 john      85    0    24M 6356K poll/2      0:03  6.15%  6.15% sshd-session
 1958 john      40    0    13M 2452K CPU/3       0:02  2.83%  2.83% top
 1455 root      85    0    20M   19M pause/3     0:00  0.10%  0.10% ntpd
 2289 root      85    0    12M 2340K wait/3      0:02  0.00%  0.00% sh
 2361 john      85    0    12M 2340K wait/2      0:02  0.00%  0.00% sh
 2356 root      82    0    24M 8984K poll/1      0:02  0.00%  0.00% sshd-session
 2036 root      85    0    24M 8932K poll/0      0:00  0.00%  0.00% sshd-session
 2227 root      85    0    21M 6944K wait/1      0:00  0.00%  0.00% login
 2084 postfix   85    0    23M 5476K kqueue/1    0:00  0.00%  0.00% qmgr
 2005 postfix   85    0    23M 5412K kqueue/2    0:00  0.00%  0.00% pickup
 1570 root      85    0    19M 4696K poll/0      0:00  0.00%  0.00% sshd
 1853 root      85    0    23M 2888K kqueue/1    0:00  0.00%  0.00% master
  677 root      85    0    20M 2564K kqueue/3    0:00  0.00%  0.00% syslogd
 1243 root      85    0    12M 2356K wait/0      0:00  0.00%  0.00% sh
 1845 john      85    0    12M 2340K wait/0      0:00  0.00%  0.00% sh
  552 _dhcpcd   85    0    13M 2100K poll/1      0:00  0.00%  0.00% dhcpcd
    1 root      85    0    12M 1808K wait/0      0:00  0.00%  0.00% init
 2221 root      85    0    12M 1752K nanosl/2    0:00  0.00%  0.00% cron
  551 root      85    0    14M 1728K poll/1      0:00  0.00%  0.00% dhcpcd
  555 _dhcpcd   85    0    12M 1580K poll/2      0:00  0.00%  0.00% dhcpcd
 2232 root      85    0    11M 1580K wait/1      0:00  0.00%  0.00% time


systat vmstat takes multiple seconds to update itself:

    3 users    Load  1.62  0.54  0.31                  Mon Apr  6 22:56:49

Proc:r  d  s        Csw  Traps SysCal  Intr   Soft  Fault     PAGING   SWAPPING
     1     7         31           145     7     43            in  out   in  out
                                                        ops
  47.8% Sy   0.0% Us   0.0% Ni  38.5% In  24.2% Id    pages
|    |    |    |    |    |    |    |    |    |    |
===================%%%%%%%%%%%%%%%%%%%                                    forks
                                                                          fkppw
Anon        45356    %   zero                106 Interrupts               fksvm
Exec        17788    %   wired   24072           TLB shootdown            pwait
File       299244    %   inact               100 cpu0 timer               relck
Meta         9757    %   bufs      722           ioapic0 pin 4            rlkok
 (kB)        real   swaponly      free           msi0 vec 0               noram
Active     338316             31351580         4 msix1 vec 0              ndcpy
Namei         Sys-cache     Proc-cache         2 msi3 vec 0               fltcp
    Calls     hits    %     hits     %           ioapic0 pin 18           zfod
        6        6  100                          ioapic0 pin 17           cow
                                                 msi4 vec 0          1024 fmin
  Disks:   seeks   xfers   bytes   %busy                             1365 ftarg
     wd0               7  143238    19.0                                  itarg
     dk0                                                                  flnan
     dk1               6  125333    30.2                                  pdfre
     dk2                                                                  pdscn
     wd1               7  143238    19.0
     dk3
     dk4               6  125333    30.2
     dk5
   raid0               6  122775    43.9
     dk6               6  122775    57.1

>How-To-Repeat:
	
Print a lot of stuff to the Radeon framebuffer console.

>Fix:
	
One option is to disable radeon*, which gives much better performance and 
doesn't slow the whole system when printing to the console.

>Unformatted:
 	
 	



Home | Main Index | Thread Index | Old Index