Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View agentzh's full-sized avatar

Yichun Zhang agentzh

View GitHub Profile
==== Building LuaJIT 2.1.0-beta3 ====
make -C src
make[1]: Entering directory '/home/agentzh/git/luajit-2.0/src'
HOSTCC host/minilua.o
HOSTCC host/buildvm_asm.o
HOSTCC host/buildvm_peobj.o
HOSTCC host/buildvm_lib.o
HOSTCC host/buildvm_fold.o
CC lj_gc.o
CC lj_char.o
@agentzh
agentzh / default.custom.yaml
Last active May 11, 2019 16:07
Rime 五笔98输入法的配置。将下列文件拷贝到 Rime 配置目录(在 Mac OS X 上为 ~/Library/Rime/),然后点击屏幕右上角输入法的 Rime 图标,在出现的输入法菜单中点击 Deloy(或“布署”)菜单项即可生效。
patch:
schema_list:
- schema: wubi98 # 五笔98
local account = "blah@gmail.com" -- use your own gmail account
local password = "password" -- if you enable 2-phase authentication, you need to
-- generate and use a application-specific password here...
local sender_name = "Jon Snow"
local recipient = "recipient@foo.com"
local recipient_name = "Arya Stark"
--------------------------------------------------------
local find = ngx.re.find
Program received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50 return ret;
(rr) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007f2e1be7a5b9 in __GI_abort () at abort.c:79
#2 0x00007f2e1be7a491 in __assert_fail_base (fmt=0x7f2e1bfdd048 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
assertion=0x7f2e1cb2be68 "!((((o1)->it) - ((~4u)+1)) > ((~13u) - ((~4u)+1))) || ((~((o1)->it) == (((GCobj *)(uintptr_t)((o1)->gcr).gcptr32))->gch.gct) && !(((((GCobj *)(uintptr_t)((o1)->gcr).gcptr32)))->gch.marked & ((((global"...,
file=0x7f2e1cb2be5a "lj_obj.h", line=926, function=<optimized out>) at assert.c:92
#3 0x00007f2e1be88612 in __GI___assert_fail (
agentzh@glass ~/git/luajit-bug-report 0 (master)$ curl http://localhost:8083/set
ok
agentzh@glass ~/git/luajit-bug-report 0 (master)$ while true; do wrk -t4 -c120 -d10 http://localhost:8083/; sleep 0.1; done
Running 10s test @ http://localhost:8083/
4 threads and 120 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 720.03us 452.08us 22.28ms 99.06%
Req/Sec 42.77k 2.21k 58.26k 85.11%
1715219 requests in 10.10s, 294.36MB read
Requests/sec: 169825.77
(rr) reverse-cont
Continuing.
Hardware watchpoint 2: -location J->maxslot
Old value = 88
New value = 10
0x00007f9d56d29331 in rec_varg (J=J@entry=0x7f9d57b16688, dst=dst@entry=10, nresults=78, nresults@entry=-1) at lj_record.c:1777
1777 J->maxslot = dst + (BCReg)nvararg;
nginx: lj_record.c:92: rec_check_slots: Assertion `nslots <= 250' failed.
Program received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50 return ret;
(rr) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007f9d55a425b9 in __GI_abort () at abort.c:79
#2 0x00007f9d55a42491 in __assert_fail_base (fmt=0x7f9d55ba5048 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x7f9d56d7737b "nslots <= 250", file=0x7f9d56d772f4 "lj_record.c", line=92, function=<optimized out>) at assert.c:92
/opt/luajit-arm/bin/luajit-2.1.0-beta3: compare.lua:226: assertion failed!
stack traceback:
[C]: in function 'assert'
compare.lua:226: in main chunk
[C]: at 0x00014cb8
=== test/misc/argcheck.lua
=== test/misc/self.lua
Failed test when running /home/agentzh/git/luajit2-test-suite/arm-luajit compare.lua 1: 256
...
/opt/luajit-arm/bin/luajit-2.1.0-beta3: catch_cpp.lua:2: module 'cpptest' not found:
@agentzh
agentzh / gdb-out.txt
Created October 20, 2018 00:06
stap: staptree.h:1328: virtual update_visitor::~update_visitor(): Assertion `values.empty()' failed.
Core was generated by `stap -p4 -DSTP_OVERLOAD_THRESHOLD=5000000000 -DMAXACTION=200000000 -DMAXSTRINGL'.
Program terminated with signal SIGABRT, Aborted.
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 }
(gdb) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1 0x00007f485b450d31 in __GI_abort () at abort.c:79
#2 0x00007f485b44805a in __assert_fail_base (fmt=0x7f485b598580 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7a4d10 "values.empty()", file=file@entry=0x7a4d05 "staptree.h", line=line@entry=1328,
function=function@entry=0x7a5920 <update_visitor::~update_visitor()::__PRETTY_FUNCTION__> "virtual update_visitor::~update_visitor()") at assert.c:92
#3 0x00007f485b4480d2 in __GI___assert_fail (assertion=0x7a4d10 "values.empty()", file=0x7a4d05 "staptree.h", line=1328, function=0x7a5920 <update_visitor::~update_visitor()::__PRETTY_FUNCTION__> "virtual update_visitor::~update_visitor()") at assert.c:101
commit 78c9a67ec4e487058c215136594d4bbfe6185ca0
Author: Yichun Zhang (agentzh) <yichun@openresty.com>
Date: Wed Oct 3 20:20:26 2018 -0700
bugfix: a NULL deferef crash might happen in const_folder::visit_binary_expression() due to the fact that e->tok might be NULL.
It is still not clear why e->tok would end of being NULL in the first
place. Need investigations by tracing the full stap AST with stap (or
gdb). The core dump can be easily reproduced by running the pyftrace
ylang tool with 'stap -vvv' (and also without this patch).