Firefox: Перегляд певного файлу SVG перетворює систему у відповідь


7

Важливо:

Наразі кілька постійних керівників SuperUser намагаються звузити сферу застосування та причину цієї проблеми. Зараз ми шукаємо бажаючих добровольців заповнити форму тут після проведення наступного тесту:

  1. Встановіть або запустіть останню версію Firefox (скажімо, 24.x або 25.x; бета також буде цікава).

  2. Перегляньте пам'ять та використання процесора, використовуючи еквівалент вашої платформи Windows Manager. Перед відкриттям посилання нижче ви повинні мати відповідний менеджер завдань .

  3. Збережіть незакінчену роботу у своєму браузері Firefox, оскільки вона може вийти з ладу. Ми не несемо відповідальності за будь-яку втрачену інформацію.

  4. Відкрийте наступне посилання на новій вкладці: http://openclipart.org/people/GR8DAN/showbizframe.svg

  5. Дотримуйтесь змін у процесорі та використанні пам'яті процесу Firefox до та після завантаження зображення. Якщо різниця між використанням пам'яті Firefox до та після відкриття вищевказаної вкладки дуже значна (1 Гб або більше), або якщо Firefox заморожується / виходить з ладу, або якщо ви бачите стабільне високе використання процесора, у вашій системі є помилка . В іншому випадку у вас немає помилки. У будь-якому випадку заповніть форму відповідно.

Ми намагаємось звузити симптоми та причини, щоб оновити помилку на трекері помилок Mozilla, щоб розробники Mozilla могли вирішити проблему. Ми робимо це саме тому, що це потенційно широке та пріоритетне питання; будь-які веб-сайти, які дозволяють вбудовувати зображення, можуть бути вразливими до нападу відмови в сервісі проти значного набору користувачів, які відвідують сторінку, якщо це почне використовуватися зловмисно.

Оновлення 29.11.2013: Помилку було виділено до таких:

  • Це незалежно від платформи. Помилка відтворена в Linux, Mac та Windows.

  • Проблема була відтворена за допомогою графічних карт AMD, Intel та Nvidia.

  • Він зустрічається лише на Firefox та його похідних. Chrome, IE, Opera не впливають.

  • Проблема створена на Firefox 25.0.1, Firefox 26 Beta, Firefox 27 Alpha та нічному складі магістралі станом на 28.11.2013.

  • Не всі користувачі стикаються з аварією Firefox або загальносистемною ситуацією без пам'яті (OOM). Така поведінка обмежується системами GNU / Linux з 4 ГБ оперативної пам’яті або менше.

  • У Firefox 27 Alpha та Nightly поведінка дещо відрізняється від Firefox 25 та 26 Beta: у нових нових версіях високе споживання процесора та пам’яті з часом вщухне, якщо дозволити завантаженню зображення протягом тривалого періоду часу (10–20 секунд на більшості систем). Після того, як він "залагоджений", умови пам'яті та процесора повертаються до нормальних умов. Але на старих двох випусках умови процесора та пам’яті зберігаються до тих пір, поки ви перейдете на вкладку, коли відображатиметься образливе зображення, або поки ви повністю не вб'єте Firefox або закриєте вкладку.

  • Практично всі системи із останніми графічними драйверами можуть відтворювати його. У нас є лише одна система, яка не відчуває жодних симптомів і використовує надзвичайно старий графічний драйвер (близько 3 років). Це вказує на те, що це не якесь конкретне обладнання, а, скоріше, є помилка у тому самому старому драйвері, який використовувався, що, як не дивно, запобігає виникненню дефектної поведінки.

Оригінальне запитання:

Я використовую Firefox firefox-25.0-3.fc19.x86_64 на Fedora 19 (ядро 3.11.9-200.fc19.x86_64). Якщо я відкрию це посилання за допомогою firefox, моя система не відповідає. Запуск htopна другому моніторі показує величезний сплеск використання пам’яті, мої 3954 Мб оперативної пам’яті швидко використовуються, потім поміняється повільно заповнюється, одне використання процесора збільшується до 100%, потім система стає невідповідною, миша стає повільним, htopдля оновлення потрібні десятки секунд і т. д. Якщо я вбиваю процес FF, все повернеться до норми.

Навіть якщо перезапуск FF у безпечному режимі з відключеними плагінами, поведінка однакова. Я спробував машину своєї колеги, і вона має ~ 8000 МБ оперативної пам’яті, те ж саме відбувається (велике використання пам’яті та 1 процесор досягає 100%), коли вона досягає ~ 4096 МБ, з’являється діалогове вікно з проханням вбити firefox (можливо, Firefox важко кодується використовувати лише 4096 МБ?).

Якщо я використовую плагін (quickjava) для відключення JavaScript, я можу відкрити посилання без проблеми. Однак на машині мого колеги це не спрацює: я спробував інші сайти, щоб переконатися, що JS був відключений, але проблема зберігається.

Що це викликає?

ОНОВЛЕННЯ : Проблема виникає під час перегляду цього SVG .


IMO це Firefox. Ви пробували Chrome / Chromium?
Austin T French

Мій процесор - процесор AMD Phenom (tm) II X2 550, мій друг - Intel Core i7
той бразильський хлопець


У мене є AMD 965 BE при 4,0 ГГц, 12 ГБ оперативної пам’яті, а деякі сайти погано блокуються у Firefox (новіші випуски FF гірші, ніж скажімо, 11 чи старші), а Chrome або IE 10 - це фінал.
Austin T French

це заморозило мій ФФ. Машина - це Asus x54hr, основна i3 / 4GB RAm / 2 ГБ спеціалізована відеокарта / процесор піднімається на 1 ядро ​​до 100% / використання оперативної пам'яті збільшується до 80% використання. довелося killall firefox. ОС - Manjaro Linux.
Лоренцо Фон Маттерхорн

Відповіді:


3
  1. Це не JavaScript; Справа в тому, що існує багато складних файлів SVG (Масштабована векторна графіка), які надаються за посиланням, яке ви опублікували.
  2. Графічний стек Fedora, прискорений апаратним забезпеченням, є суттєвою помилкою, тому цілком можливо, що використання графічного стеку Firefox викликає помилку у графічному стеку (у Mesa, Xorg DDX або ядрі).
  3. Можливо також, що SVG-файли відображаються фактично в програмному забезпеченні, а рендеринг програмного забезпечення все ще є помилковим.

Давайте розділимо і підкоримо:

Вимкнути прискорення обладнання

У FF перейдіть до меню Правка -> Налаштування, натисніть кнопку Додатково, потім на вкладці Загальні в розділі Перегляд зніміть прапорець "Використовувати апаратне прискорення, коли воно доступне".

Тепер спробуйте той же сайт ще раз. Якщо у вас не виникає перевантаження процесора / пам'яті, ми знаємо, що проблема полягає або в прискоренні графічного процесора 2D Canvas (або використання його Firefox, або в резервному графічному стеку), або в рендері SVG.

Якщо ви робите отримати той же перевантаження CPU / пам'яті з апаратними засобами розгону відключена, то це може бути помилка в SVG синтаксичного аналізу, який, ймовірно , зроблено в чистому програмному забезпеченні. Хоча в такому випадку ми, мабуть, відчули б проблему і в Windows, але ми цього не робимо (протестували на FF 24.1.0 в Windows, і це було повільно, але не споживало всіх процесора та оперативної пам’яті, як і ваша).

Я підозрюю, що в Месі витік пам'яті.

Ще кілька речей, які слід спробувати

  1. Перейдіть about:supportу Firefox, натисніть "Копіювати текст у буфер обміну" та опублікуйте це (пастбін чи так). Це допоможе тим, хто нас знайомий з проблемним простором, визначити, яка ситуація з вашим обладнанням та графічним стеком.
  2. Перейдіть about:memoryу Firefox, поставте прапорець "Докладний", після чого натисніть "Виміряти". Було б дивовижно, якби ви могли це зробити відразу після того, як перейдете на сторінку, яка ображає вас, - якщо вам вдасться змусити ФФ робити що-небудь на той час.
  3. Запуск Firefox з терміналу наступним чином : LIBGL_DEBUG=verbose firefox -safe-mode. Перейдіть прямо на сайт, на якому OOMs. Нехай вона працює протягом декількох секунд (достатньо, щоб чітко запустити проблему, але не дозволяйте їй завалити вашу систему), а потім вбийте її. Опублікуйте вихід тут, разом з виходом dmesg.

Ці речі дадуть нам більше інформації про налагодження, щоб зрозуміти, де саме проблема, але більшість цих кроків зосереджена на припущенні, що проблема полягає у графічному стеку. Якщо це не так, велика частина цього не буде корисною.

Оновлення: я створив необроблене посилання github, яке не має javascript або жодної tomfoolery; це лише список білизни SVG. Він має вийти з ладу, якщо у вас є несправна поведінка, і це усуне всі інші можливі джерела проблеми.

Оновлення 2: ОП виділила проблему саме на цей конкретний образ .


Якщо я відключу апаратне прискорення, воно все-таки споживає всю пам'ять і процесор. about:supportВихід pastebin.com/JTDRzZXG. Клацнути «міряти» неможливо, пам’ять з’їдається занадто швидко. Налагодження envvar не видає жодного повідомлення (з або без hw accell), а dmesg не отримує нових повідомлень.
Той бразильський хлопець

@allquixotic Я можу завантажувати та чудово переглядати зображення проблем із Kubuntu, Debian, Arch Linux, Mac OS. Тож виглядає цілком ймовірним, що це щось особливе для Fedora.
MariusMatutiae

@MariusMatutiae Ви можете, будь ласка, повідомити нам, що таке ваша модель відеокарти та модель? Дякую! приходьте до Root Access, якщо хочете допомогти більше.
allquixotic

@MariusMatutiae Це, безумовно, не специфічно для Fedora. Різні постійні користувачі чату повідомили про помилку в Windows та різних дистрибутивах Linux. Будь ласка, допоможіть нам, заповнивши форму тут, щоб допомогти відслідковувати помилку, дякую!
Той бразильський хлопець

k, я використовую хром, ось чому
MariusMatutiae
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.