(一緒にいるかもしれませんLight-Locker ロック解除後、ロック時間に正比例して画面が空白のままになります。)
xscreensaver 6.00へのアップグレード中に面倒なエラーが発生し、最近xscreensaverからlight-lockerに切り替えました。
次の問題を除いて、スイッチに非常に満足しています。セッションで再度ロックを解除すると、ブラウザが何らかの方法で一時停止しているように見えるか、次の理由でネットワークがハングアップしているようです。
- Electronアプリが再接続中であることを示します(実際には問題ではありません)。
- Firefoxは約2分間(夜間ロックのために)CPU集約的なタスクを実行しているように見え、その間は使用できません。逃したすべてに追いついているようですが?
Firefoxが2分間動作しないのは本当に面倒です。
範囲を狭めるべき事項:
- 継続的なネットワークアクセスが可能なデスクトップボックスにあります。 (蓋を閉めてもノートパソコンのワイヤレス接続が切断されるわけではありません。)
- セッションがロックされている間、他のアプリケーション(ロックの前にコマンドラインで実行された)がネットワークにアクセスすることが観察されました。 (引き続きデータを提供しています。)
- 私はロック中にボックスに入り、ps / topを使用し、Firefoxに "kill -STOPed"がないことを確認しました。
したがって、私の推測では、セッションがロックされたときにブラウザにネットワークの使用を停止するように指示することがあります。それは何か知っていますか?おそらくsystemdと関係がありますか?
セッションがロックされている間にブラウザを一時停止することは恐ろしい考えのようには聞こえませんが、その2分間にFirefoxが何をしているのかを理解する方法はありますか? (about:performance
Firefoxが忙しくて質問に答えることができないので、そうしようとしても役に立ちません。)
更新(2021年10月10日):
それはlight-locker
呼び出しのように見え、loginctl lock-session ...
それがブラウザの動作を主導するものだと思います。この回答@user1686はloginctl
すべてのアプリケーションに「ロック」シグナルを送信することを提案したので、今やるべきことはFirefoxがこれにどのように反応し、なぜ停止するのかを調べることです。
主なアップデート(2021年10月16日):
いくつかの-ingと実験により、strace
ハードウェアアクセラレーションの可能性が低い場所にさらに絞り込みました。
Firefoxは忙しい数分間のループの間にかなり多くのシステムコールを行いましたが、これは私の注目を集めました。
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_BUSY, 0x7f16e5c96220) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_MADVISE, 0x7f16e5c96220) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_PWRITE, 0x7f16e5c96260) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_BUSY, 0x7f16e5c96220) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_MADVISE, 0x7f16e5c96220) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_PWRITE, 0x7f16e5c96260) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_BUSY, 0x7f16e5c96220) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_MADVISE, 0x7f16e5c96220) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_PWRITE, 0x7f16e5c96260) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_BUSY, 0x7f16e5c96220) = 0
[pid 165855] 13:07:06 ioctl(35</dev/dri/card0>, DRM_IOCTL_I915_GEM_MADVISE, 0x7f16e5c96220) = 0
(上記のパターンと正確に一致せずに複数回繰り返されます)
まず、「Google Inc. の Widevine コンテンツ復号化モジュール」を無効にしました。はめ込む。それは役に立ちません。
その後、パフォーマンス→設定で「利用可能な場合はハードウェアアクセラレーションを有効にする」を無効にしようとしましたが、うまくいきました。翌日ロックを解除した後、Firefoxをすぐに使用できました!
当面の問題は解決されましたが、まだ多くの質問が残っています。
- このハードウェアアクセラレータボックスは、私が思ったよりも多くの制御を備えた、やや薄暗くて不透明なスイッチのように見えます(DRM?!?)。正確にどんな役割を果たしますか?
- 私はまだloginctlがブラウザとどのように通信しているかわかりません。 Dバスメッセージ?
- 2つはどのように接続されていますか?出力よりも理解しやすい内部ログを取得する方法はありますか
strace
?
マイナーアップデート(2021年10月17日):
DRM(Digital Rights Management)コンテンツの選択を解除→DRM制御コンテンツを再生しても問題は解決しません(ハードウェアアクセラレーションを再びオンにすることはできません)
マイナーアップデート(2021年10月18日):
「パフォーマンス」→「推奨パフォーマンス設定を使用」を選択しても正しい操作は行われません。
これでこのバグレポートを送信する準備が整ったようです。