From: TAKAHASHI T. <ta...@mo...> - 2004-03-15 14:28:50
|
高橋全です。 ~/.mlterm/aafont に不適切な ISO8859_x エントリが あると、(たとえば ISO8859_9=Nimbus Mono L-iso10646-1:120 ISO8859_10=Nimbus Mono L-iso10646-1:120 ISO8859_13=Nimbus Mono L-iso10646-1:120 ISO8859_15=Nimbus Mono L-iso10646-1:120 等がどれが一つでもあると、) daemon=blend のときにすべてプロセスを終了しようとしても 画面に現れないプロセスが終了せずに CPU を食っていたり、 それを無理矢理殺すと環境変数らしき文字列を吐いたり するようです。 ISO8859_1=Nimbus Mono L-iso10646-1:120 ISO8859_2=Nimbus Mono L-iso10646-1:120 ISO8859_11=Nimbus Mono L-iso10646-1:120 は aafont に入っていても大丈夫なのです。 なにか追加情報が必要でしたらお申し付けください。 とりあえずトリガが分かったので報告したまでです。 -- tamo |
From: MINAMI H. <mi...@mi...> - 2004-03-19 12:04:31
|
みなみです。 On Mon, 2004-03-15 at 23:28, TAKAHASHI Tamotsu wrote: > 高橋全です。 > > ~/.mlterm/aafont に不適切な ISO8859_x エントリが > あると、 ... > daemon=blend のときにすべてプロセスを終了しようとしても > 画面に現れないプロセスが終了せずに CPU を食っていたり、 > それを無理矢理殺すと環境変数らしき文字列を吐いたり > するようです。 手元では再現できなかったので、終了しなくなった時点での スタックトレースを見せていただけるとありがたいです。 # 「gdb /usr/bin/mlterm [プロセスID] して bt」 とかで # とれるでしょうか。 |
From: Seiichi S. <ss...@sh...> - 2004-03-19 17:19:17
|
佐藤です。 こちらでは再現しませんでした。 On Mon, Mar 15, 2004 at 11:28:59PM +0900, TAKAHASHI Tamotsu wrote: > ~/.mlterm/aafont に不適切な ISO8859_x エントリが > あると、(たとえば > ISO8859_9=Nimbus Mono L-iso10646-1:120 > ISO8859_10=Nimbus Mono L-iso10646-1:120 > ISO8859_13=Nimbus Mono L-iso10646-1:120 > ISO8859_15=Nimbus Mono L-iso10646-1:120 > 等がどれが一つでもあると、) 不適切というのは行末に ';' がないという意味でしょうか? それとも存在しないフォントを指定した場合という意味でしょうか? -- Seiichi |
From: TAKAHASHI T. <ta...@mo...> - 2004-03-20 09:19:42
Attachments:
dameaafont
|
高橋全です。 問題が発生する環境から要素を引いていって発生しなくしましたが 発生しないミニマル環境から問題のある環境を構築してはいなかったので ちょっと変なことを言ってたようです。 以下の 2 ファイルで再現します。(aafont は添付もしてあります) ~/.mlterm/main: use_anti_alias=true not_use_unicode_font=true ~/.mlterm/aafont (in UTF-8): #ISO8859_1=Fモトヤシーダ1等幅-iso8859-1:100 ISO8859_1=Nimbus Mono L-iso10646-1:120 ISO8859_2=Nimbus Mono L-iso10646-1:120 ISO8859_9=Nimbus Mono L-iso10646-1:120 ISO8859_10=Nimbus Mono L-iso10646-1:120 ISO8859_11=Nimbus Mono L-iso10646-1:120 ISO8859_13=Nimbus Mono L-iso10646-1:120 ISO8859_15=Nimbus Mono L-iso10646-1:120 US_ASCII=Fモトヤシーダ1等幅-iso10646-1:100 DEC_SPECIAL=Fモトヤシーダ1等幅-iso10646-1:100 KOI8_R=Nimbus Mono L-iso10646-1:50; JISX0201_ROMAN=Fモトヤシーダ1等幅-iso10646-1:100 JISX0201_KATA=Fモトヤシーダ1等幅-iso10646-1:100 JISX0208_1978=Fモトヤシーダ1等幅-iso10646-1:100 JISX0208_1983=Fモトヤシーダ1等幅-iso10646-1:100 JISX0208_1990=Fモトヤシーダ1等幅-iso10646-1:100 KSX1001_1997=Baekmuk Dotum-iso10646-1:100 aafont からどのエントリを消すと解決するか、は何種類もありました。 必ずしも ISO8859_x が悪いわけではないようでした。 UTF-8 半角カナ (というのが本当にあるのか知りませんが モトヤシーダを fc-cache して fc-list すると出てくる文字です) が本当の原因かもしれません。 JISX... を全部消しても解決しますし KSX... を消しても、ちゃんと終了するようになりました。 ただ、KSX... を消しただけだと、mlterm --daemon=blend と mlclient --aa=false を上げた状態で mlterm の方を exit すると mlclient も死にました。もうよく分かりません。 On Sat, Mar 20, 2004 at 02:19:09AM +0900, Seiichi SATO wrote: > > ~/.mlterm/aafont に不適切な ISO8859_x エントリが > > あると、(たとえば > > ISO8859_9=Nimbus Mono L-iso10646-1:120 > > ISO8859_10=Nimbus Mono L-iso10646-1:120 > > ISO8859_13=Nimbus Mono L-iso10646-1:120 > > ISO8859_15=Nimbus Mono L-iso10646-1:120 > > 等がどれが一つでもあると、) > > 不適切というのは行末に ';' がないという意味でしょうか? > それとも存在しないフォントを指定した場合という意味でしょうか? ISO-8859-x を持たないフォントを指定した場合、 という意味のつもりでした。その根拠は、 「ISO-8859-1 には ';' を付けなくても使えたから」です。 しかし、両方とも関係あるのかもしれません。 On Fri, Mar 19, 2004 at 09:04:05PM +0900, MINAMI Hirokazu wrote: > > ~/.mlterm/aafont に不適切な ISO8859_x エントリが > > あると、 > ... > > daemon=blend のときにすべてプロセスを終了しようとしても > > 画面に現れないプロセスが終了せずに CPU を食っていたり、 > > それを無理矢理殺すと環境変数らしき文字列を吐いたり > > するようです。 > > 手元では再現できなかったので、終了しなくなった時点での > スタックトレースを見せていただけるとありがたいです。 > > # 「gdb /usr/bin/mlterm [プロセスID] して bt」 とかで > # とれるでしょうか。 そうすると malloc_consolidate (av=0x4057b5c0) at malloc.c:4368 4368 malloc.c: そのようなファイルやディレクトリはありません. in malloc.c (gdb) bt #0 malloc_consolidate (av=0x4057b5c0) at malloc.c:4368 #1 0x404c7f90 in _int_free (av=0x4057b5c0, mem=0x80eaf10) at malloc.c:4260 #2 0x404c6d88 in __libc_free (mem=0x80e3b10) at malloc.c:3359 (gdb) となります。mlterm とは関係がないということでしょうか? それとももっと深いデバグ方法が必要なだけ? すみません変な報告で。 -- tamo |
From: MINAMI H. <mi...@mi...> - 2004-03-22 14:52:05
|
みなみです。 On Mon, 2004-03-20 at 18:19, TAKAHASHI Tamotsu wrote: > > 手元では再現できなかったので、終了しなくなった時点での > > スタックトレースを見せていただけるとありがたいです。 ... > malloc_consolidate (av=0x4057b5c0) at malloc.c:4368 > 4368 malloc.c: そのようなファイルやディレクトリはありません. > in malloc.c > (gdb) bt > #0 malloc_consolidate (av=0x4057b5c0) at malloc.c:4368 > #1 0x404c7f90 in _int_free (av=0x4057b5c0, mem=0x80eaf10) at malloc.c:4260 > #2 0x404c6d88 in __libc_free (mem=0x80e3b10) at malloc.c:3359 > (gdb) > > となります。mlterm とは関係がないということでしょうか? どこかで mallocの使う領域を壊してしまって、 free() から帰ってこられなくなているみたいですね。 mlterm のフォントキャッシュまわりが怪しい気がしてますが、 すぐにはわからなさそうです。 ちなみに、mlclient で開く窓は deamon で走っている mlterm のもので、 mlclient のプロセスではありません。(mlclientは実行後すぐ終了します)。 このため、 > ただ、KSX... を消しただけだと、mlterm --daemon=blend > と mlclient --aa=false を上げた状態で mlterm の方を > exit すると mlclient も死にました。もうよく分かりません。 というのは、特におかしなことではないはずです。 |
From: TAKAHASHI T. <ta...@mo...> - 2004-03-29 12:32:26
|
高橋全です。 On Mon, 22 Mar 2004, MINAMI Hirokazu wrote: > > (gdb) bt > > #0 malloc_consolidate (av=0x4057b5c0) at malloc.c:4368 > > #1 0x404c7f90 in _int_free (av=0x4057b5c0, mem=0x80eaf10) at malloc.c:4260 > > #2 0x404c6d88 in __libc_free (mem=0x80e3b10) at malloc.c:3359 > > (gdb) > > > > となります。mlterm とは関係がないということでしょうか? > > どこかで mallocの使う領域を壊してしまって、 > free() から帰ってこられなくなているみたいですね。 > > mlterm のフォントキャッシュまわりが怪しい気がしてますが、 > すぐにはわからなさそうです。 追加情報です。 終了時に segmentation fault になる方法がありました。 同じ病根ではないでしょうか? gdb /usr/X11R6/bin/mlterm core して bt した結果はこうです。 (gdb) bt #0 _int_free (av=0x4059c5c0, mem=0x401533d0) at malloc.c:4192 #1 0x404e7d88 in __libc_free (mem=0x401533d0) at malloc.c:3359 #2 0x08073516 in x_font_config_delete (font_config=0x80bc7e0) at x_font_config.c:522 #3 0x080731b3 in x_release_font_config (font_config=0x80bc7e0) at x_font_config.c:435 #4 0x08067f0d in release_font_config (font_man=0x80bc7b8) at x_font_manager.c:93 #5 0x08068025 in x_font_manager_delete (font_man=0x80bc7b8) at x_font_manager.c:163 #6 0x0807624e in close_screen_intern (screen=0x80c6288) at x_term_manager.c:566 #7 0x08076555 in pty_closed (p=0x0, screen=0x80c6288) at x_term_manager.c:755 #8 0x08064ba7 in pty_closed (p=0x80c6288) at x_screen.c:6557 #9 0x08086371 in ml_term_delete (term=0x809d468) at ml_term.c:124 #10 0x0808a8c7 in ml_close_dead_terms () at ml_term_manager.c:248 #11 0x08077d88 in x_term_manager_event_loop () at x_term_manager.c:1757 #12 0x08075646 in main (argc=4, argv=0xbffff7c4) at main.c:53 #13 0x4048f11c in __libc_start_main (main=0x80755a4 <main>, argc=4, ubp_av=0xbffff7c4, init=0x808eae0 <__libc_csu_init>, fini=0x808eb30 <__libc_csu_fini>, rtld_fini=0x40013020 <_rtld_local>, stack_end=0x90c35b18) at ../sysdeps/generic/libc-start.c:225 このとき実行したのは、 すでに mlterm (daemon=blend) が上がっている状態での /usr/X11R6/bin/mlterm -y xterm --daemon=none というコマンドです。(ただし、 /usr/X11R6/bin/mlterm --daemon=none /usr/X11R6/bin/mlterm も、ともに同じ現象になりました) 起動は問題ないのですが、ここから exit と打つと segmentation fault で終了するのです。 ~/.mlterm/aafont を消すとこの症状が出なくなります。 同ファイルから下のほうのエントリを 4 個消すだけでも 症状が出なくなりました。 (それら AR PL というフォントは存在していませんでしたが、 すべてインストールしてからでも症状は改善しませんでした。) 以下、環境です。 $ mlterm --version [$?=0] mlterm version 2.8.0 post/cvs-1.645 configure オプション: --with-imagelib=gdk-pixbuf2 --enable-anti-alias --enable-fribidi --enable-debug .mlterm/aafont 内容 (上記 core の時は 行末に ";" がない状態でしたが、付けても同じでした): ISO8859_1=Luxi Mono-iso10646-1:120 ISO8859_2=Luxi Mono-iso10646-1:120 ISO8859_11=Luxi Mono-iso10646-1:120 US_ASCII=FMotoyaCedar-iso10646-1:100 DEC_SPECIAL=FMotoyaCedar-iso10646-1:100 KOI8_R=Luxi Mono-iso10646-1:50; JISX0201_ROMAN=FMotoyaCedar-iso10646-1:100 JISX0201_KATA=FMotoyaCedar-iso10646-1:100 JISX0208_1978=FMotoyaCedar-iso10646-1:100 JISX0208_1983=FMotoyaCedar-iso10646-1:100 JISX0208_1990=FMotoyaCedar-iso10646-1:100 KSX1001_1997=Baekmuk Dotum-iso10646-1:100 BIG5=AR PL Mingti2L Big5-iso10646-1:100 GB2312_80=AR PL KaitiM GB-iso10646-1:100 GBK=AR PL KaitiM GB-iso10646-1:100 .mlterm/main 内容: icon_path=/usr/share/pixmaps/mlterm/mlterm-icon-fvwm.png termtype=mlterm use_dynamic_comb=true col_size_of_width_a=2 use_multi_column_char=true fontsize=22 font_size_range=10-40 use_anti_alias=true not_use_unicode_font=true compose_dec_special_font=true use_transbg = true fg_color=white bg_color=black fade_ratio=70 brightness=40 contrast=40 logsize=2000 mod_meta_key=alt bel_mode=none daemon_mode=blend -- tamo |
From: TAKAHASHI T. <ta...@mo...> - 2004-03-29 12:54:48
|
高橋全です。 main ファイルのうち、この現象に関係あるのは use_anti_alias=true だけでした。 その他は消しても関係ありません。 main を消して -A オプションのみで起動しても再現しますし、 その際 -\* xft でも -\* xcore でも同じでした。 ということで要素は aafont のみ、ということに なりそうです。 On Mon, 29 Mar 2004, TAKAHASHI Tamotsu wrote: > gdb /usr/X11R6/bin/mlterm core して bt した結果はこうです。 > > (gdb) bt > #0 _int_free (av=0x4059c5c0, mem=0x401533d0) at malloc.c:4192 > #1 0x404e7d88 in __libc_free (mem=0x401533d0) at malloc.c:3359 > #2 0x08073516 in x_font_config_delete (font_config=0x80bc7e0) > at x_font_config.c:522 > #3 0x080731b3 in x_release_font_config (font_config=0x80bc7e0) > at x_font_config.c:435 > #4 0x08067f0d in release_font_config (font_man=0x80bc7b8) > at x_font_manager.c:93 > #5 0x08068025 in x_font_manager_delete (font_man=0x80bc7b8) > at x_font_manager.c:163 > #6 0x0807624e in close_screen_intern (screen=0x80c6288) > at x_term_manager.c:566 > #7 0x08076555 in pty_closed (p=0x0, screen=0x80c6288) at x_term_manager.c:755 > #8 0x08064ba7 in pty_closed (p=0x80c6288) at x_screen.c:6557 > #9 0x08086371 in ml_term_delete (term=0x809d468) at ml_term.c:124 > #10 0x0808a8c7 in ml_close_dead_terms () at ml_term_manager.c:248 > #11 0x08077d88 in x_term_manager_event_loop () at x_term_manager.c:1757 > #12 0x08075646 in main (argc=4, argv=0xbffff7c4) at main.c:53 > #13 0x4048f11c in __libc_start_main (main=0x80755a4 <main>, argc=4, > ubp_av=0xbffff7c4, init=0x808eae0 <__libc_csu_init>, > fini=0x808eb30 <__libc_csu_fini>, rtld_fini=0x40013020 <_rtld_local>, > stack_end=0x90c35b18) at ../sysdeps/generic/libc-start.c:225 -- tamo |