ОбновлСниС ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° xfwm4 4.14.3

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° xfwm4 4.14.3, примСняСмого Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Xfce для обСспСчСния отобраТСния ΠΎΠΊΠΎΠ½ Π½Π° экранС, дСкорирования ΠΎΠΊΠΎΠ½ ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΡ… пСрСмСщСния, закрытия ΠΈ измСнСния ΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ€Π°.

Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° X11-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ XRes (X-Resource), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ задСйствовано для запроса Ρƒ X-сСрвСра ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ PID прилоТСния, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ с использованиСм ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² sandbox-изоляции. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° XRes Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ с ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°Π²ΠΈΡΡˆΠΈΡ… клиСнтских процСссов, PID ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· свойство _NET_WM_PID, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ процСсса Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ окруТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π² глобальном пространствС ΠΈΠΌΡ‘Π½.

Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС Ρ‚Π°ΠΊΠΆΠ΅ устранСна ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, которая ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΡŽ ΠΊ ΡƒΠΆΠ΅ освобоТдённой области памяти (use-after-free) ΠΈ записи Π΄Π°Π½Π½Ρ‹Ρ… Π²Π½Π΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ строк с настройками. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² xfwm4 4.14.3 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ошибок XError, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΠ΅ диагностику ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, связанных с запросами XConfigureWindow.

Π£ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ послС обновлСния Π΄ΠΎ вСрсии 4.14.3 стали Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒΡΡ ΠΊΡ€Π°Ρ…ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ запуска Π²ΠΎ FreeBSD, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ судя ΠΏΠΎ всСму ΠΈΠ·-Π·Π° Π½ΠΎΠ²ΠΎΠΉ привязки ΠΊ libXres. Π’Π°ΠΊΠΆΠ΅ Π² xfwm4 всплыла ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚ AMD ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ X11-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ XPresent для синхронизации Π²Ρ‹Π²ΠΎΠ΄Π° с ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹ΠΌ гасящим ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠΌ (vblank). XPresent Π²ΠΊΠ»ΡŽΡ‡Π°Π»ΡΡ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΠΊΠ°Ρ€Ρ‚Ρ‹ маски AMD, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈΠΌΠ΅Π½ΡƒΡŽΡ‚ΡΡ «Radeon» Π±Π΅Π· упоминания слова «AMD» (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «Radeon RX 570»). Для Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠ°Ρ€Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Π»ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ vblank Π½Π° Π±Π°Π·Π΅ «glx», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ отстаёт ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

НапримСр, ΠΏΡ€ΠΈ использовании glx воспроизвСдСниС 4K Π²ΠΈΠ΄Π΅ΠΎ Π² mpv Π½Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ GPU Π½Π° 70% Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ высокого качСства ΠΈ 50% Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ качСства, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΡ€ΠΈ использовании XPresent сниТаСтся Π΄ΠΎ 50% ΠΈ 30% соотвСтствСнно, Ρ‡Ρ‚ΠΎ сущСствСнно влияСт Π½Π° энСргопотрСблСниС ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠΎΠΊΠ° остаётся нСисправлСнной. Для ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ XPresent ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ настройку /general/vblank_mode Π² xfconf:

xfconf-query -c xfwm4 -p /general/vblank_mode -t string -s «xpresent» —create

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ