From: Ravi D'Elia <ravijdelia@gmail.com>
To: 72025@debbugs.gnu.org
Subject: bug#72025: SEGFAULT when using corfu and lsp-mode with clangd
Date: Tue, 9 Jul 2024 19:20:15 -0400 [thread overview]
Message-ID: <4upkl3dutgscohej2smaonb26asvl6cmp24z2jj25myjzhb3qz@vlrqcyiid7cx> (raw)
[-- Attachment #1: Type: text/plain, Size: 6758 bytes --]
At unpredictable times while editing c++ files, emacs will segfault.
I haven't been able to reproduce without lsp-mode, but with how
unpredictable this is I don't think that necessarily means much.
The problem exists with and without native compilation- this
report assumes without.
STEPS TO REPRODUCE:
- Let '~/minimal' contain the attached init file
- Start emacs with 'emacs --init-directory ~/minimal'
- Open a c++ file
- Edit it, taking care to type quickly and go back to edit within
words. I can usually get a crash within 10 minutes, but I haven't
been able to iterate enough to figure out exactly what is
happening. It's always while typing though, I think in response
to a keydown.
Attached is the init file I used to reproduce this, and the backtrace.
I had issues with the .gdbinit, which I will hopefully address when
I get back from vacation.
Below is the information from report-emacs-bug:
In GNU Emacs 29.4 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.42,
cairo version 1.18.0)
Windowing system distributor 'The X.Org Foundation', version 11.0.12101013
System Description: Arch Linux
Configured using:
'configure --sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib
--with-tree-sitter --localstatedir=/var --with-cairo
--disable-build-details --with-harfbuzz --with-libsystemd
--with-modules --with-x-toolkit=gtk3 'CFLAGS=-march=x86-64
-mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3
-Wformat -Werror=format-security -fstack-clash-protection
-fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g
-ffile-prefix-map=/build/emacs/src=/usr/src/debug/emacs -flto=auto'
'LDFLAGS=-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro
-Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto''
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY INOTIFY
PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB
Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: Fundamental
Minor modes in effect:
corfu-echo-mode: t
global-corfu-mode: t
override-global-mode: t
tooltip-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
blink-cursor-mode: t
buffer-read-only: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
/usr/share/emacs/site-lisp/xscheme hides /usr/share/emacs/29.4/lisp/progmodes/xscheme
Features:
(shadow sort mail-extr emacsbug message yank-media dired dired-loaddefs
rfc822 mml mml-sec epa derived gnus-util mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils flymake-cc time-date
flymake-proc flymake warnings lsp-diagnostics lsp-headerline lsp-icons
lsp-modeline lsp-lens view lsp-zig lsp-yang lsp-yaml lsp-xml lsp-wgsl
lsp-volar lsp-vimscript lsp-vhdl lsp-vetur lsp-html lsp-verilog lsp-vala
lsp-v lsp-typeprof lsp-ttcn3 lsp-trunk lsp-toml lsp-tilt lsp-tex
lsp-terraform lsp-svelte lsp-steep lsp-sqls lsp-sql lsp-sorbet
lsp-solidity lsp-solargraph lsp-semgrep lsp-rust lsp-ruff-lsp
lsp-ruby-syntax-tree lsp-ruby-lsp lsp-rubocop lsp-roslyn lsp-rf
lsp-remark lsp-racket lsp-r lsp-qml lsp-pylsp lsp-pyls lsp-pwsh
lsp-purescript lsp-pls lsp-php lsp-perlnavigator lsp-perl lsp-openscad
lsp-ocaml lsp-nushell lsp-nix lsp-nim lsp-nginx lsp-move lsp-mojo
lsp-mint lsp-meson lsp-mdx lsp-marksman lsp-markdown lsp-magik lsp-lua
lsp-lisp lsp-kotlin lsp-json lsp-jq lsp-javascript lsp-idris lsp-haxe
lsp-hack lsp-groovy lsp-graphql lsp-golangci-lint lsp-glsl lsp-gleam
lsp-gdscript lsp-fsharp lsp-fortran lsp-eslint lsp-erlang lsp-emmet
lsp-elm lsp-elixir lsp-earthly lsp-dockerfile lsp-dhall lsp-d lsp-cypher
lsp-cucumber lsp-css lsp-csharp gnutls lsp-crystal lsp-credo lsp-cobol
lsp-cmake lsp-clojure lsp-clangd dom lsp-bufls lsp-go lsp-completion
lsp-beancount lsp-bash lsp-awk lsp-autotools lsp-astro lsp-asm
lsp-ansible lsp-angular lsp-ada lsp-semantic-tokens lsp-actionscript
lsp-mode lsp-protocol xref project tree-widget wid-edit spinner pcase
network-stream puny nsm markdown-mode rx color thingatpt noutline
outline icons lv inline imenu ht filenotify f s ewoc epg rfc6068
epg-config dash compile text-property-search comint ansi-osc ansi-color
ring cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs corfu-echo corfu compat compat-30 cl-extra
help-mode use-package use-package-ensure use-package-delight
use-package-diminish use-package-bind-key bind-key easy-mmode
use-package-core corfu-autoloads compat-autoloads lsp-mode-autoloads
ht-autoloads f-autoloads info dash-autoloads lv-autoloads
markdown-mode-autoloads s-autoloads spinner-autoloads package browse-url
url url-proxy url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x
map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc
iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty
make-network-process emacs)
Memory information:
((conses 16 203184 12765)
(symbols 48 23270 0)
(strings 32 74270 2672)
(string-bytes 1 2204500)
(vectors 16 48780)
(vector-slots 8 757848 20048)
(floats 8 190 29)
(intervals 56 799 0)
(buffers 984 16))
[-- Attachment #2: init.el --]
[-- Type: text/plain, Size: 1160 bytes --]
(setq user-emacs-directory "~/minimal/")
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(require 'use-package)
(use-package lsp-mode
:ensure t
:commands (lsp lsp-deferred)
:init
(setq lsp-keymap-prefix "C-c l") ;; Or 'C-l', 's-l'
:config
(setq lsp-completion-provider :none))
(use-package c-mode
:ensure nil
:hook (((c++-mode c-mode) . lsp-deferred)))
(use-package corfu
:ensure t
:custom
(corfu-auto t)
(corfu-auto-delay 0.2)
(corfu-auto-prefix 1)
(corfu-echo-documentation t)
(corfu-min-width 20)
:config
(global-corfu-mode)
(corfu-echo-mode))
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(package-selected-packages '(use-package)))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
[-- Attachment #3: bt-full --]
[-- Type: text/plain, Size: 3289 bytes --]
#0 0x000055555577722b in ?? ()
No symbol table info available.
#1 0x00005555556cc5f1 in ?? ()
No symbol table info available.
#2 0x00005555556dc468 in ?? ()
No symbol table info available.
#3 0x00005555556d1e6b in ?? ()
No symbol table info available.
#4 0x0000555555795192 in ?? ()
No symbol table info available.
#5 0x00005555557b35cc in ?? ()
No symbol table info available.
#6 0x000055555576c41d in ?? ()
No symbol table info available.
#7 0x0000555555705a72 in ?? ()
No symbol table info available.
#8 0x00005555557b35cc in ?? ()
No symbol table info available.
#9 0x000055555576c41d in ?? ()
No symbol table info available.
#10 0x000055555576ccf0 in ?? ()
No symbol table info available.
#11 0x00005555557b35cc in ?? ()
No symbol table info available.
#12 0x000055555576c41d in ?? ()
No symbol table info available.
#13 0x000055555576cfda in ?? ()
No symbol table info available.
#14 0x00005555557b35cc in ?? ()
No symbol table info available.
#15 0x000055555576c41d in ?? ()
No symbol table info available.
#16 0x000055555576cfda in ?? ()
No symbol table info available.
#17 0x00005555557b35cc in ?? ()
No symbol table info available.
#18 0x000055555576c41d in ?? ()
No symbol table info available.
#19 0x000055555576cfda in ?? ()
No symbol table info available.
#20 0x00005555557b35cc in ?? ()
No symbol table info available.
#21 0x000055555576c41d in ?? ()
No symbol table info available.
#22 0x00005555556c9fb5 in ?? ()
No symbol table info available.
#23 0x00005555556ca58d in ?? ()
No symbol table info available.
#24 0x00005555556d5600 in ?? ()
No symbol table info available.
#25 0x00005555557be323 in ?? ()
No symbol table info available.
#26 0x00005555556cebe7 in ?? ()
No symbol table info available.
#27 0x00005555556d0ec6 in ?? ()
No symbol table info available.
#28 0x00005555556dd163 in ?? ()
No symbol table info available.
#29 0x00005555556c656f in ?? ()
No symbol table info available.
#30 0x000055555575afbe in ?? ()
No symbol table info available.
#31 0x00005555556c3bc6 in ?? ()
No symbol table info available.
#32 0x000055555575af18 in ?? ()
No symbol table info available.
#33 0x00005555556c62eb in ?? ()
No symbol table info available.
#34 0x000055555583e6cf in ?? ()
No symbol table info available.
#35 0x00005555556c841d in ?? ()
No symbol table info available.
#36 0x0000555555588d4d in ?? ()
No symbol table info available.
#37 0x00007ffff5acac88 in __libc_start_call_main (main=main@entry=0x5555555868c0, argc=argc@entry=4,
argv=argv@entry=0x7fffffffe148) at ../sysdeps/nptl/libc_start_call_main.h:58
self = <optimized out>
result = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737488347464, 8312541994804177299, 4, 0, 140737354125312,
93824995730904, 8312541994810468755, 8312519293894912403}, mask_was_saved = 0}}, priv = {pad = {
0x0, 0x0, 0x4, 0x7fffffffe140}, data = {prev = 0x0, cleanup = 0x0, canceltype = 4}}}
not_first_call = <optimized out>
#38 0x00007ffff5acad4c in __libc_start_main_impl (main=0x5555555868c0, argc=4, argv=0x7fffffffe148,
init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe138)
at ../csu/libc-start.c:360
No locals.
#39 0x000055555558a2a5 in ?? ()
No symbol table info available.
next reply other threads:[~2024-07-09 23:20 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-09 23:20 Ravi D'Elia [this message]
2024-07-10 8:06 ` bug#72025: SEGFAULT when using corfu and lsp-mode with clangd Andrea Corallo
2024-07-10 11:57 ` Eli Zaretskii
2024-07-10 14:07 ` Andrea Corallo
2024-07-10 14:37 ` Eli Zaretskii
2024-07-10 15:27 ` Ravi D'Elia
2024-07-11 0:18 ` Ravi D'Elia
2024-07-11 4:55 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4upkl3dutgscohej2smaonb26asvl6cmp24z2jj25myjzhb3qz@vlrqcyiid7cx \
--to=ravijdelia@gmail.com \
--cc=72025@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.