Coder Social home page Coder Social logo

Comments (5)

karliss avatar karliss commented on June 13, 2024

If you scroll at moderate speed do you see a bunch of warnings in the builtin console widget?

from cutter.

praschke avatar praschke commented on June 13, 2024
log:
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '([re][0-9a-z][0-9a-z])\s*(\+|-)\s*((0x)?[0-9a-f]+h?)' failed at 0: bad JIT option
ERROR: Regex compilation for '[[0-9;]*m' failed at 0: bad JIT option
ERROR: Regex compilation for '([[0-9;]*m)(?<number>(0x[a-fA-F0-9]+)|\d+)' failed at 0: bad JIT option
ERROR: Regex compilation for '(^[\d{1,3}mlea[0m.+)' failed at 0: bad JIT option
Oops invalid escape char
Oops invalid escape char
Oops invalid escape char
Oops invalid escape char
[...]

also now i'm not so sure that wayland is related, i'm now getting freezes in X when trying to open the same executable again.

backtrace:
#0  0x000077a4c411897f in write () from /nix/store/1rm6sr6ixxzipv5358x0cmaw8rs84g2j-glibc-2.38-44/lib/libc.so.6
#1  0x000077a4c409a77d in _IO_file_write@@GLIBC_2.2.5 () from /nix/store/1rm6sr6ixxzipv5358x0cmaw8rs84g2j-glibc-2.38-44/lib/libc.so.6
#2  0x000077a4c4098a44 in new_do_write () from /nix/store/1rm6sr6ixxzipv5358x0cmaw8rs84g2j-glibc-2.38-44/lib/libc.so.6
#3  0x000077a4c409a971 in __GI__IO_file_xsputn () from /nix/store/1rm6sr6ixxzipv5358x0cmaw8rs84g2j-glibc-2.38-44/lib/libc.so.6
#4  0x000077a4c408df4b in fputs () from /nix/store/1rm6sr6ixxzipv5358x0cmaw8rs84g2j-glibc-2.38-44/lib/libc.so.6
#5  0x000077a4c6e960af in rz_vlog () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_util.so.0.7
#6  0x000077a4c6e962e7 in rz_log () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_util.so.0.7
#7  0x000077a4c6ea0e45 in print_pcre2_err () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_util.so.0.7
#8  0x000077a4c6ea0f8c in rz_regex_new () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_util.so.0.7
#9  0x000077a4c5f85b5e in filter.isra () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_parse.so.0.7
#10 0x000077a4c5f86ccf in rz_parse_filter () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_parse.so.0.7
#11 0x000077a4c710f569 in ds_build_op_str () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_core.so.0.7
#12 0x000077a4c7117902 in rz_core_print_disasm () from /nix/store/1bwr5a2jinva4m5rzrbbhbzxpdbl1bk8-rizin-0.7.2/lib/librz_core.so.0.7
#13 0x0000000000521392 in CutterCore::disassembleLines(unsigned long long, int) ()
#14 0x00000000006068ec in DisassemblyWidget::refreshDisasm(unsigned long long) ()
#15 0x000077a4c4fddd53 in void doActivate<false>(QObject*, int, void**) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#16 0x00000000004dd04f in RefreshDeferrer::refreshNow(void*) ()
#17 0x0000000000694df7 in QtPrivate::QCallableObject<RefreshDeferrer::registerFor(CutterDockWidget*)::{lambda()#1}, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) ()
#18 0x000077a4c4fddd53 in void doActivate<false>(QObject*, int, void**) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#19 0x00000000005922fa in MainWindow::setViewLayout(Cutter::CutterLayout const&) ()
#20 0x0000000000596720 in MainWindow::finalizeOpen() ()
#21 0x000077a4c4fcda34 in QObject::event(QEvent*) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#22 0x000077a4c6192b41 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Widgets.so.6
#23 0x000077a4c4f7cd28 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#24 0x000077a4c4f80ab7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#25 0x000077a4c523a6f3 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#26 0x000077a4c3112744 in g_main_dispatch () from /nix/store/gkkabfk5kccd5j8fm1hlrb71pmpcbw1p-glib-2.78.4/lib/libglib-2.0.so.0
#27 0x000077a4c3115797 in g_main_context_iterate_unlocked.isra () from /nix/store/gkkabfk5kccd5j8fm1hlrb71pmpcbw1p-glib-2.78.4/lib/libglib-2.0.so.0
#28 0x000077a4c3115d8c in g_main_context_iteration () from /nix/store/gkkabfk5kccd5j8fm1hlrb71pmpcbw1p-glib-2.78.4/lib/libglib-2.0.so.0
#29 0x000077a4c523a0cc in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#30 0x000077a4c4f89cd3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#31 0x000077a4c4f85e56 in QCoreApplication::exec() () from /nix/store/2mcqdmp7kb8pfkibxsm10z3s94j80s6y-qtbase-6.6.3/lib/libQt6Core.so.6
#32 0x00000000004cad5e in main ()
[...]
ERROR: Regex compilation for '\s+' failed at 0: bad JIT option
ERROR: Regex compilation for '\s+' failed at 0: bad JIT option
ERROR: Regex compilation for '\s+' failed at 0: bad JIT option
ERROR: Regex compilation for '\s+' failed at 0: bad JIT option
ERROR: Regex compilation for '\s+' failed at 0: bad JIT option
[x] Analyze all flags starting with sym. and entry0 (aa)
[x] Analyze function calls
[x] Analyze len bytes of instructions for references
[x] Check for classes
[x] Analyze local variables and arguments
[x] Type matching analysis for all functions
[x] Applied 57 FLIRT signatures via sigdb
[x] Propagate noreturn information
[x] Integrate dwarf function information.
[x] Resolve pointers to data sections
[x] Use -AA or aaaa to perform additional experimental analysis.

the application freezes there.

from cutter.

karliss avatar karliss commented on June 13, 2024

Ok this looks like combination of two problems:

  • the old problem of deadlocking on too much console output #2070
  • an issue with pcre2 in rizin -> it shouldn't spew that much errors under normal usage probably same issue as what rizinorg/rizin#4329 attempted to fix

from cutter.

Rot127 avatar Rot127 commented on June 13, 2024

I cannot reproduce it on Debian. And the PCRE2 and NixOS issues don't mention problems with JIT anywhere.
This will need a little time until I have set up a NixOS VM. Also because we want to report this to the PCRE2 folks. But we could just disable JIT for NixOS as well.

from cutter.

Rot127 avatar Rot127 commented on June 13, 2024

@praschke Setting up NixOS takes pretty long for me (installing qt6/5 doesn't work and more). And I don't know unfortunately, when I will find time to take care of it.

So if you are willing, you can test the following patches, which disables JIT for the regex engine.

If they do work, it means NixOS has problems with the PCRE2 JIT as well. We shoud report this in NixOS/nixpkgs#300056 in this case. And than see how they'd like to solve it.

Diffs

They are for rizin. Not for Cutter. So they need to be applied in the rizin submodule.

diff --git a/meson.build b/meson.build
index a8153a2ee5..787cbfae06 100644
--- a/meson.build
+++ b/meson.build
@@ -197,7 +197,7 @@ endif
 
 # Handle PCRE2
 cpu_jit_supported = [ 'aarch64', 'arm', 'mips', 'mips64', 'ppc', 'ppc64', 'riscv32', 'riscv64', 's390x', 'x86', 'x86_64' ]
-pcre2_jit_supported = target_machine.cpu_family() in cpu_jit_supported and cc.get_id() != 'tcc' and target_machine.system() != 'darwin'
+pcre2_jit_supported = false
 if pcre2_jit_supported
   add_project_arguments(['-DSUPPORTS_PCRE2_JIT'], language: 'c')
 endif
diff --git a/subprojects/packagefiles/pcre2/meson.build b/subprojects/packagefiles/pcre2/meson.build
index b40ea85740..f3ee7a02ed 100644
--- a/subprojects/packagefiles/pcre2/meson.build
+++ b/subprojects/packagefiles/pcre2/meson.build
@@ -60,18 +60,6 @@ cpu_jit_supported = [ 'aarch64', 'arm', 'mips', 'mips64', 'ppc', 'ppc64', 'riscv
 # tcc doesn't support the MSVC asm syntax PCRE2 uses (`__asm { ... }`).
 # Darwin kernel not as well, because of forbidden wx memory.
 # It is used in the JIT compiler code.
-if cc.get_id() != 'tcc' and target_machine.cpu_family() in cpu_jit_supported and target_machine.system() != 'darwin'
-  libpcre2_c_args += ['-DSUPPORT_JIT']
-  pcre2_files += ['src/pcre2_jit_compile.c']
-endif
-
-if target_machine.system() == 'openbsd'
-  # jit compilation fails with "no more memory" if wx allocations are allowed.
-  libpcre2_c_args += ['-DSLJIT_WX_EXECUTABLE_ALLOCATOR']
-elif target_machine.system() == 'netbsd'
-  # jit compilation fails with "no more memory" if wx allocations are allowed.
-  libpcre2_c_args += ['-DSLJIT_PROT_EXECUTABLE_ALLOCATOR']
-endif
 
 pcre2_includes = [
   include_directories('.'),

from cutter.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.