Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-32460

libqt4-script: please provide a way to disable Javascript JIT at runtime

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: P4: Low P4: Low
    • None
    • 4.8.5
    • Qt Script
    • None
    • Debian GNU/Linux, x86-64

      There are 2 embedded copies of JavascriptCore:
      src/3rdparty/javascriptcore/
      src/3rdparty/webkit/Source/JavascriptCore/

      For some reason they are not in sync, and the former is missing some features.

      In particular the latter would allow disabling the JIT via an environment variable (JavaScriptCoreDumpJIT), but the former doesn't.

      Since the javascript usage in Qt4-Script is not performance critical (most Qt applications aren't web browsers), it would be nice if this could be disabled on a per-application basis (rather than only at compile-time of Qt, like now).

      Then you could also run Qt-script-using applications without execmem, and have additional security.

      Major examples are KDE's window manager and the Plasma desktop, for both of which the JIT has caused only troubles (see bugreport about memory usage and overcommit), and it'd make sense to disable the JIT for them.

      Proposed solution:
      1. Do not embed JavascriptCore twice, decide on which one to keep, and use only that.
      2. Either choose the JavascriptCore that allows disabling JIT, or backport that functionality to the other javascriptcore

      See Debian bugreport about execmem here:
      http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=647470

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Unassigned Unassigned
            edwin Török Edwin
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes