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: <c7b7e81b14380709c3d63033b0e67ee12b737b55.camel@scientia.net>
Date:   Wed, 08 Jan 2020 02:51:30 +0100
From:   Christoph Anton Mitterer <calestyo@...entia.net>
To:     linux-kernel@...r.kernel.org
Subject: Re: 5.2 to >=5.3 temperature regression [test series]

Hey.


Unfortunately no one seemed to have any idea so far on how to track
this regression down.

Maybe that issue(s) just happen on a certain hardware(and perhaps even
user-land-software) combination.


So I did some more systematic testing between the following:
- kernel 5.2.17
- kernel 5.4.6
each with
- no intel_pstate parameter (which results in active/HWP)
- intel_pstate=disable [0]

For each combination I've recorded:
- average CPU usage for X.org and either cinnamon or gnome-shell
 (running in classic mode) as shown by top
- average temperature of the Package id 0 as shown by sensor

during the following scenarios:
- idle system (i.e. respective desktop environment running with some
  minimal set of applets (like clock, window list, or so), cron
  disabled, no(!) further CPU intensive processes (e.g. firefox) were
  running.
as well as:
- playing a video in h264 (High) (avc1 / 0x31637661), yuv420p, 720x396
- playing a video in h264 (High), yuv420p(tv, bt709, progressive), 1920x1080
with mpv, each in:
- normal resolution (on a HiDPI display)
- fullscreen
- fullscreen using -vo=xv

In the two modes where -vo=xv wasn't given, mpv selected:
VO: [gpu] … vaapi[nv12]

so these were with VAAPI acceleration.


Other versions/etc. were:
- CPU: Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz
- GPU: Intel(R) HD Graphics 620 (Kaby Lake GT2)
- Display: 3840x2160
- Debian sid (and no custom)
- mpv 0.30.0 Copyright © 2000-2019 mpv/MPlayer/mplayer2 projects
  built on UNKNOWN
  ffmpeg library versions:
     libavutil       56.31.100
     libavcodec      58.54.100
     libavformat     58.29.100
     libswscale      5.5.100
     libavfilter     7.57.100
     libswresample   3.5.100
  ffmpeg version: 4.2.1-2+b1
- Xorg 7.7
- cinnamon 4.2.4, (always in hardware rendering mode)
- gnome 3.34.2, (always in the GNOME Classic session mode)
- notebook is a Fujitsu Lifebook U757
- /etc/sysfs.conf has:
  devices/system/cpu/intel_pstate/no_turbo = 1



For the testing, the notebook was placed on a metal surface (which
probably explains why the temperatures are a bit lower than what I've
reported in previous mails).

After each measurement (which often caused high CPU temperatures) I let
the CPU/system cool down for ~5 minutes until it reached the initially
measured "idle temperature" again.
Also for each measurement, I let the system in that state (e.g. being
idle or playing a video) for several minutes.

I've made the "average" values manually, for the temperatures those
should be quite accurate, for the CPU utilisation they should be
regarded more as a guide, since there were often spikes in on or the
other direction.

Of course, I took always the same 2 videos, and started them at the
beginning for each measurement.


Legend:
C = Cinnamon
G = Gnome Shell, classic mode

idl = idle (i.e. just desktop environment running, not interaction or other intensive processes for several minutes)
loV = low-res  video (h264 (High) (avc1 / 0x31637661), yuv420p, 720x396)
hiV = high-res video (h264 (High) yuv420p(tv, bt709, progressive), 1920x1080

no "fs" = no fullscreen
     fs = fullscreen

no "xv" = mpv used [gpu] … vaapi[nv12]
     xv = mpv used xv

CPU temperature / [Cinnamon|Gnome Shell CPU%] / X CPU%

		5.2+a-hwp	5.2+disable	5.4+a-hwp	5.4+disable	
C idl		48/ 5,0/ 1,0	48/ 3,0/ 1,0	59/ 4,0/ 1,0	56/ 2,7/ 0,8
C loV		53/15,0/ 6,0	54/ 9,3/ 4,3	62/14,0/ 6,3	59/ 9,0/ 4,3
C loV-fs	75/26,0/ 7,0	75/17,5/15,0	92/25,0/ 7,0	89/17,3
/ 5,0
C loV-fs-xv	72/28,0/ 8,6	71/15,3/ 5,5	92/27,0/ 8,7	91/15,5/ 5,5
C hiV		63/25,0/12,0	61/15,0/ 8,3	63/24,0/12,2	66/14,5/ 8,5
C hiV-fs       100/45,0/10,0	95/33,0/ 7,6   100/41,0/11,0	97/34,0/ 8,0
C hiV-fs-xv    100/27,0/27,0	95/33,0/ 7,5	97/24,0/18,0	97/22,0/17,0

G idl		46/ 1,5/ 1,5	44/ 1,3/ 0,9	50/ 1,3/ 0,8	49/ 1,2/ 1,1
G loV		49/12,5/ 6,8	48/ 7,3/ 4,3	51/11,0/ 6,6	52/ 7,4/ 4,2
G loV-fs	56/13,2/ 7,0	55/ 8,5/ 4,5	60/13,3/ 6,7	60/
8,3/ 4,3
G loV-fs-xv	54/12,2/ 8,6	54/ 6,6/ 5,3	58/12,0/ 8,1	57/ 6,5/ 4,7
G hiV		53/24,0/12,5	54/13,7/ 7,5	55/23,5/12,5	55/14,7/ 7,5
G hiV-fs	93/28,0/13,4	93/15,0/ 7,3	96/27,0/11,1	95/16,0/ 8,0
G hiV-fs-xv	94/ 9,5/20,0	91/18,5/ 8,8	97/17,0/ 8,7	93/21,0/ 9,0

Conclusions:
- In most cases, not using intel_pstate, results in the same or
  noticeably lower temperature and CPU utilisation for both, Cinnamon
  and Gnome.
  The few ones where this isn't the case,... well for the CPU
  utilisation I've already said that the values may not be that rock
  solid... for temperature no idea...
- Using xv instead of vaapi gives similar or better temperatures for
  both, Cinnamon and GNOME
- Both, Cinnamon and GNOME run at considerably higher temperature when
  using 5.4 rather than 5.2,... for Cinnamon this is much more
  noticeable (it still is for GNOME)...
  E.g. 10°C more in absolute idle... and 15°C more when playing back
  the low res video in full screen.
  Maybe that's a reason why there haven't been much reports about this,
  when e.g. GNOME is not that much affected.
- For the HiRes video, one doesn't seem that much difference between
  5.2 and 5.4, but probably because the CPU gets throttled down after
  reaching 100°C the first time (which I could see especially under 5.4
  in the kernel log).
- Also with both 5.2/5.4 and with both Cinnamon/Gnome playing the high
  res video on the HiDPI screen seems to be killing it (always >90°C).
  Is this expected?

- One can argue that Cinnamon might do a bit more in the background,
  thus resulting in the generally somewhat higher temp/CPU-utilisation
  even when idle... but since it's far more affected whenplaying back
  videos than gnome (even under 5.2)... I'd guess there's also some
  problem on the Cinnamon side.
- But since it gets reproducibly worse from 5.2 to 5.4 (or 5.3),
  there's also something changed in the kernel which strongly affects
  it (and GNOME as well, just not that much)

...that is, at least on my hardware ;-)


Unfortunately all this is not limited to playing back videos...
- on cinnamon, when I just
  - constantly move the mouse (like in circles) on an empty desktop, or
  - a window
  - or scroll up/down in e.g. Thunderbirds mail list
  temperatures reach 69° C or more
- having Firefox open, say around 10 windows, none of them playing any
  video or animated GIF, none of them running any scripts (thanks to
  noscript)... temperatures go to ~85°C on Cinnamon (not the case on
  GNOME, at least not that extreme).

So my suspicion would be something is wrong at the graphics stack
and/or how it's used especially by Cinnamon.


Also (and I've tested the following only in Cinnamon), as previously
noticed, sometimes, but not always:
- CPU temperature stays very high for several minutes, even though I've
  already stopped e.g. video playback or mouse moving 
- maybe, but there's only little indication for this: putting the
  system into suspend2ram and waking it up, seemed to have cured the
  symptoms for "a while".... but this is very vague.


Any help or pointers on how to debug this further would be highly
appreciated... obviously running a notebook at ~80° or not being able
to upgrade the kernel is kind of a showstopper.

Attached are several logs which may be useful.


Thanks,
Chris.


[0] suggestion to try this from https://github.com/linuxmint/cinnamon/issues/9085#issuecomment-570654676


Download attachment "log.tar.xz" of type "application/x-xz-compressed-tar" (37788 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ