On 10/11/2016 18:12, Henri Hennebert wrote:> On 11/10/2016 16:54, Andriy Gapon wrote:
>> On 10/11/2016 17:20, Henri Hennebert wrote:
>>> On 11/10/2016 15:00, Andriy Gapon wrote:
>>>> Interesting. I can not spot any suspicious thread that would
hold the vnode
>>>> lock. Could you please run kgdb (just like that, no
arguments), then execute
>>>> 'bt' command and then select a frame when _vn_lock is
called with 'fr N'
>>>> command. Then please 'print *vp' and share the result.
>>>>
>>> I Think I miss something in your request:
>>
>> Oh, sorry! The very first step should be 'tid 101112' to
switch to the correct
>> context.
>>
>
> (kgdb) fr 7
> #7 0xffffffff8063c5b3 in _vn_lock (vp=<value optimized out>,
flags=2121728,
"value optimized out" - not good
> file=<value optimized out>,
> line=<value optimized out>) at vnode_if.h:859
> 859 vnode_if.h: No such file or directory.
> in vnode_if.h
> (kgdb) print *vp
I am not sure if this output is valid, because of the message above.
Could you please try to navigate to nearby frames and see if vp itself has a
valid value there. If you can find such a frame please do *vp there.
> $1 = {v_tag = 0xffffffff80faeb78 "?~\231\200????", v_op =
0xfffff80009a41000,
> v_data = 0x0, v_mount = 0xfffff80009a41010,
> v_nmntvnodes = {tqe_next = 0x0, tqe_prev = 0xffffffff80edc088}, v_un >
{vu_mount = 0x0, vu_socket = 0x0, vu_cdev = 0x0,
> vu_fifoinfo = 0x0}, v_hashlist = {le_next = 0xfffff80009466e90, le_prev
> 0x0}, v_cache_src = {lh_first = 0xfffffe010186d768},
> v_cache_dst = {tqh_first = 0x0, tqh_last = 0xfffffe0000b8a7c0},
v_cache_dd > 0xfffff8000284f000, v_lock = {lock_object = {
> lo_name = 0xfffff8002c00ee80 "", lo_flags = 0, lo_data = 0,
lo_witness > 0xfffff800068bd480},
> lk_lock = 18446735277770268056, lk_exslpfail = 153715840, lk_timo =
-2048,
> lk_pri = 0}, v_interlock = {lock_object = {
> lo_name = 0x18af8ffffffff <Error reading address 0x18af8ffffffff:
Bad
> address>, lo_flags = 0, lo_data = 0,
> lo_witness = 0x0}, mtx_lock = 0}, v_vnlock = 0x0, v_actfreelist >
{tqe_next = 0x0, tqe_prev = 0xfffff80009ba05c0},
> v_bufobj = {bo_lock = {lock_object = {lo_name = 0xfffff80009a41000
"",
> lo_flags = 1, lo_data = 0, lo_witness = 0x4000000ff},
> rw_lock = 2}, bo_ops = 0x100000000, bo_object = 0xfffff80049c2c068,
> bo_synclist = {le_next = 0xffffffff813be535,
> le_prev = 0x1000000000000}, bo_private = 0x0, __bo_vnode = 0x0,
bo_clean > {bv_hd = {tqh_first = 0x0, tqh_last = 0x0},
> bv_root = {pt_root = 0}, bv_cnt = 0}, bo_dirty = {bv_hd = {tqh_first
> 0xfffff80088ac8d00, tqh_last = 0xfffff8003cc5b600},
> bv_root = {pt_root = 2553161591}, bv_cnt = -1741805705}, bo_numoutput
> 31, bo_flag = 0, bo_bsize = 0}, v_pollinfo = 0x0,
> v_label = 0x0, v_lockf = 0x0, v_rl = {rl_waiters = {tqh_first = 0xf88,
> tqh_last = 0x19cc}, rl_currdep = 0x3f8},
> v_cstart = 16256, v_lasta = 679, v_lastw = 0, v_clen = 0, v_holdcnt = 0,
> v_usecount = 2369, v_iflag = 0, v_vflag = 0,
> v_writecount = 0, v_hash = 0, v_type = VNON}
> (kgdb)
>
> Thanks for your time
>
> Henri
--
Andriy Gapon