LINUX.ORG.RU

Firefox залипает если заряд батареи ниже 50%

 , ,


0

2

В общем, купил я себе новый ляптоп, и вот какая оказия: в какой-то момент, когда батарея близка к половине (причем не важно, заряжаемся мы или разряжаемся), firefox начинает странным образом лагать. То есть у него полностью отваливается ввесь ввод/вывод/отрисовка где-то секунд на 3-5, а потом все ивенты, что произошли за это время, резко отрисовываются. В urxvt такого нет. В других гуевых программах (вроде бы) не ловил, но mpv иногда подозрительно замедляет (без артефактов, просто FPS как будто бы падает) видео не самого высокого разрешения, хотя переваривает 4k без проблем. Ребут помогает. Температура процессора не поднимается выше 65. Я грешу на powersaving, но не очень представляю, какой конкретно.

Никто не сталкивался? Если сталкивались, куда копать?

HW: Huawei MateBook X Pro 2018

SW: Gentoo, X11, i3wm

$ uname -a
Linux hi-lor 5.4.13 #1 SMP PREEMPT Sat Jan 18 07:32:59 -00 2020 x86_64 Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz GenuineIntel GNU/Linux
$ grep VIDEO /etc/portage/make.conf 
VIDEO_CARDS="intel i965"
$ grep i915 /var/log/Xorg.0.log
	915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
[    50.244] (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20190822
$ lspci   
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers (rev 08)
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 (rev 07)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 08)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
00:15.1 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1 (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #1 (rev f1)
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #9 (rev f1)
00:1d.2 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #11 (rev f1)
00:1e.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO UART Controller #0 (rev 21)
00:1e.3 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO SPI Controller #1 (rev 21)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point LPC Controller/eSPI Controller (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
01:00.0 3D controller: NVIDIA Corporation GP108M [GeForce MX150] (rev a1)
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983
3c:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78)

У меня на ноутбуке нечто похожее происходит, когда заряда остается около 10 процентов - поизводительность в разы падает, и начинается слайдшоу (но не конкретно в Firefox, а в целом). Правда, я не знаю, встроеная ли эта функциональность в BIOS ноутбука, либо же в ядро Linux. Никакие менеджеры энергопотребления типа TLP у меня не установлены.

В BIOS заглядывал? Может быть, там есть что-нибудь относящееся к этой проблеме. Ну и плюс можно какую-нибудь другую версию ядра попробовать (например, 4.19 или 5.5).

Kron4ek ★★★ ()
Последнее исправление: Kron4ek (всего исправлений: 1)

Ну, а в dmesg в это время что-то есть?

Запусти atop в режиме демона, пускай каждую секунду статистику собирает (когда заряд батареи будет близок к 50%), посмотри, что в системе меняется. Ну или зри в htop самостоятельно в это время.

tiandrey ★★★★★ ()
Ответ на: комментарий от tiandrey

Ну, а в dmesg в это время что-то есть?

Неа.

Запусти atop в режиме демона, пускай каждую секунду статистику собирает (когда заряд батареи будет близок к 50%), посмотри, что в системе меняется. Ну или зри в htop самостоятельно в это время.

Ничего не нашел, никто не крутит 100% ядра, например. Я пытался strace’ом смотреть, что в этот момент творится, но с обилием ерунды, который firefox занимает, без чтения сырцов это слегка бессмысленно.

kirk_johnson ★☆ ()
Ответ на: комментарий от roof

Хм… да, у меня была мысль посмотреть на дисковую. Ща зоценю 5.5.

P.S. Я с утра обновлялся с 5.4.12 (воспроизводилось) на 5.4.13 (не проверял толком). И вот на 5.4.13 больше не ловлю. Мб бекпортировали?

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 2)
Ответ на: комментарий от anonymous

Посмотреть в powertop е (в консоли). У меня настроен режим экономии заряда - отключаются три из четерех ядер ядра - поэтому тормозит.

У меня ядра не отключаются, только понижается частота.

kirk_johnson ★☆ ()
Ответ на: комментарий от kurlovitsch

Мониторил уже, у меня окно 400 - 1800. Даже если я принудительно сделаю 400-500MHz, таких приколов не будет. Страницы долго грузятся, это да, но вот чтобы просто блокировался весь ввод – такого нет.

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 1)
Ответ на: комментарий от kurlovitsch

Ничего, я просто делаю powertop –auto-tune. Он по сути просто говорит модулям «powersave». В принципе, это стоит просто в modprobe.d прописать, но не сегодня :D

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 1)