Firefox: Beim Anzeigen einer bestimmten SVG-Datei reagiert das System nicht mehr

Firefox: Beim Anzeigen einer bestimmten SVG-Datei reagiert das System nicht mehr

Wichtig:

Mehrere Stammbenutzer von SuperUsern versuchen derzeit, den Umfang und die Ursache dieses Problems einzugrenzen.Wir suchen derzeit freiwillige Helferum das Formular auszufüllenHiernachdem Sie den folgenden Test durchgeführt haben:

  1. Installieren oder starten Sie eine aktuelle Version von Firefox (sagen wir 24.x oder 25.x; eine Beta wäre auch interessant).

  2. Beobachten Sie die Speicher- und CPU-Auslastung mit dem Windows Task-Manager Ihrer Plattform. Sie sollten den entsprechenden Task-Manager geöffnet haben.VorSie öffnen den untenstehenden Link.

  3. Speichern Sie unfertige Arbeiten in Ihrem Firefox-Browser, da dieser abstürzen kann. Wir übernehmen keine Verantwortung für verlorene Informationen.

  4. Öffnen Sie den folgenden Link in einem neuen Tab:http://openclipart.org/people/GR8DAN/showbizframe.svg

  5. Beobachten Sie die Änderungen in der CPU- und Speichernutzung des Firefox-Prozesses vor und nach dem Laden des Bildes. Wenn der Unterschied zwischen der Speichernutzung von Firefoxvorher und nachherdas Öffnen der obigen Registerkarte sehr bedeutsam ist (1 GB oder mehr),oderwenn Firefox einfriert/abstürzt,oderWenn Sie eine dauerhaft hohe CPU-Auslastung feststellen,Ihr System hat den Fehler. Andernfalls liegt der Fehler bei Ihnen nicht vor. Füllen Sie in beiden Fällen das Formular entsprechend aus.

Wir versuchen die Symptome und die Ursache einzugrenzen, um einen Fehler auf derMozilla-Fehlertrackerdamit die Mozilla-Entwickler das Problem lösen können. Wir tun dies speziell, weil dies möglicherweise ein weitreichendes Problem mit hoher Priorität ist. Alle Websites, die das Einbetten von Bildern zulassen, könnten anfällig für einen Denial-of-Service-Angriff auf eine erhebliche Untergruppe der Benutzer sein, die die Seite besuchen, wenn dies böswillig genutzt wird.

Update 29.11.2013: Der Fehler konnte auf Folgendes eingegrenzt werden:

  • Es ist plattformunabhängig. Der Fehler wurde unter Linux, Mac und Windows reproduziert.

  • Das Problem wurde mit AMD-, Intel- und Nvidia-Grafikkarten reproduziert.

  • Es tritt nur bei Firefox und Derivaten auf. Chrome, IE und Opera sind nicht betroffen.

  • Das Problem trat bei Firefox 25.0.1, Firefox 26 Beta, Firefox 27 Alpha und dem Nightly Build des Trunks vom 28.11.2013 auf.

  • Nicht alle Benutzer erleben einen Firefox-Absturz oder eine systemweite Out of Memory (OOM)-Situation. Dieses Verhalten scheint auf GNU/Linux-Systeme mit 4 GB RAM oder weniger beschränkt zu sein.

  • Bei Firefox 27 Alpha und Nightly unterscheidet sich das Verhalten geringfügig von Firefox 25 und 26 Beta: Bei den beiden neueren Versionen beruhigt sich der hohe CPU- und Speicherverbrauch schließlich, wenn Sie das Bild für einen längeren Zeitraum laden lassen (10 bis 20 Sekunden auf den meisten Systemen). Sobald sich dies „beruhigt“ hat, normalisieren sich die Speicher- und CPU-Bedingungen. Bei den beiden älteren Versionen bleiben die CPU- und Speicherbedingungen jedoch bestehen, solange Sie zu der Registerkarte wechseln, auf der das fehlerhafte Bild gerendert wird, oder bis Sie Firefox vollständig beenden oder die Registerkarte schließen.

  • Fast alle Systeme mit aktuellen Grafiktreibern können es reproduzieren. Wir haben nur ein System in unseren Unterlagen, bei dem es nicht auftritt.beliebigSymptome überhaupt nicht und es wird ein extrem alter Grafiktreiber verwendet (ca. 3 Jahre). Dies deutet darauf hin, dass es sich nicht um eine bestimmte Hardware handelt, sondern dass es einen Fehler im sehr alten verwendeten Treiber gibt, der seltsamerweise das fehlerhafte Verhalten verhindert.

Ursprüngliche Frage:

Ich verwende Firefox firefox-25.0-3.fc19.x86_64 auf Fedora 19 (Kernel 3.11.9-200.fc19.x86_64). Wenn ich öffnedieser Linkbei Verwendung von Firefox reagiert mein System nicht mehr. htopAuf einem zweiten Monitor wird ein massiver Anstieg der Speichernutzung angezeigt, meine 3954 MB RAM werden sofort vollständig aufgebraucht, dann wird der Swap langsam gefüllt, die Auslastung eines Prozessors steigt auf 100 %, dann reagiert das System nicht mehr, die Maus wird langsam, das htopAktualisieren dauert Dutzende von Sekunden usw. Wenn ich den FF-Prozess beende, wird alles wieder normal.

Auch wenn FF im abgesicherten Modus mit deaktivierten Plug-ins neu gestartet wird, ist das Verhalten dasselbe. Ich habe es auf dem Rechner meines Kollegen versucht und er hat ~8000 MB RAM, das Gleiche passiert (hohe Speicherauslastung und 1 Prozessor erreicht 100 %), wenn er ~4096 MB Auslastung erreicht, erscheint ein Dialog mit der Aufforderung, Firefox zu beenden (vielleicht ist Firefox so programmiert, dass es nur 4096 MB nutzt?).

Wenn ich ein Plugin (QuickJava) verwende, um JavaScript zu deaktivieren, kann ich den Link ohne Probleme öffnen. Auf dem Computer meines Kollegen funktioniert dies jedoch nicht: Ich habe andere Websites ausprobiert, um sicherzustellen, dass JavaScript deaktiviert ist, aber das Problem besteht weiterhin.

Was ist die Ursache?

AKTUALISIEREN: Das Problem tritt auf beim Betrachtendieses SVG.

Antwort1

  1. Es liegt nicht an JavaScript. Es liegt an der Tatsache, dass über den von Ihnen geposteten Link viele komplexe SVG-Dateien (Scalable Vector Graphics) gerendert werden.
  2. Der hardwarebeschleunigte Grafikstapel von Fedora ist bekanntermaßen fehlerhaft. Daher ist es durchaus möglich, dass die Verwendung des Grafikstapels durch Firefox einen Fehler im Grafikstapel (in Mesa, dem Xorg DDX oder dem Kernel) verursacht.
  3. Es ist auch möglich, dass die SVGs tatsächlich inSoftwareund der Software-Renderer ist immer noch fehlerhaft.

Lasst uns teilen und erobern:

Hardwarebeschleunigung deaktivieren

Gehen Sie in FF zu Bearbeiten -> Einstellungen, klicken Sie auf Erweitert und deaktivieren Sie dann auf der Registerkarte Allgemein im Abschnitt Durchsuchen die Option „Hardwarebeschleunigung verwenden, wenn verfügbar“.

Versuchen Sie es jetzt noch einmal mit derselben Site. Wenn SienichtWenn es zu einer CPU-/Speicherüberlastung kommt, wissen wir, dass das Problem entweder bei der GPU-Beschleunigung des 2D Canvas (entweder bei der Verwendung durch Firefox oder im Grafikstapel des Backends) oder beim SVG-Renderer liegt.

Wenn duTunWenn Sie dieselbe CPU-/Speicherüberlastung bei deaktivierter Hardwarebeschleunigung haben, könnte es sich um einen Fehler im SVG-Parser handeln, der wahrscheinlich rein softwareseitig auftritt. In diesem Fall würden wir das Problem wahrscheinlich auch unter Windows haben, aber das ist nicht der Fall (getestet unter FF 24.1.0 unter Windows und es war langsam, verbrauchte aber nicht die gesamte CPU und den gesamten RAM wie bei Ihnen).

Ich vermute eine Art Speicherleck in Mesa.

Noch ein paar Dinge zum Ausprobieren

  1. Gehen Sie about:supportin Firefox zu „Text in die Zwischenablage kopieren“ und posten Sie ihn hier (Pastebin oder so). Das hilft denjenigen von uns, die mit dem Problembereich vertraut sind, dabei, die Situation mit Ihrer Hardware und Ihrem Grafik-Stack zu bestimmen.
  2. Gehen Sie about:memoryin Firefox zu, aktivieren Sie das Kontrollkästchen "Ausführlich" und klicken Sie dann auf "Messen". Es wäre großartig, wenn Sie dies tun könntendirekt im AnschlussSie gelangen auf die betreffende Seite – sofern Sie FF zu diesem Zeitpunkt dazu veranlassen können, etwas zu unternehmen.
  3. Führen Sie Firefox vom Terminal aus wie folgt aus: LIBGL_DEBUG=verbose firefox -safe-mode. Navigieren Sie direkt zu der Site, die OOMs ausführt. Lassen Sie es nur ein paar Sekunden lang laufen (genug, um das Problem eindeutig zu verursachen, aber lassen Sie es Ihr System nicht überfordern) und beenden Sie es dann. Posten Sie die Ausgabe hier, zusammen mit der Ausgabe von dmesg.

Diese Dinge geben uns mehr Debug-Informationen, um genau zu verstehen, wo das Problem liegt, aber die meisten dieser Schritte basieren auf der Annahme, dass das Problem im Grafikstapel liegt. Wenn das nicht der Fall ist, wird das meiste davon nicht hilfreich sein.

Aktualisieren:Ich habe einRoher GitHub-Linkdas hat kein Javascript oder sonst irgendeinen Blödsinn; es ist nur eine lange Liste von SVGs. Es sollte abstürzen, wenn das fehlerhafte Verhalten auftritt, und es beseitigt alle anderen möglichen Ursachen des Problems.

Aktualisierung 2:Der OP hat das Problem eingegrenzt aufdieses spezielle Bild.

verwandte Informationen