On Fri, Apr 08, 2022 at 10:16:01AM +0200, Sebastien Marie wrote:
On Fri, Apr 08, 2022 at 06:38:47AM +0200, Sebastien Marie wrote:
On Thu, Apr 07, 2022 at 02:53:07PM +0200, Alexander Bluhm wrote:
I have a diff for adding some stacktrace history for vnode (keeping track of
lasts vref/vrele/vget/vput). but I am not sure it would be efficient to found
the underline problem.
let's try it.
the following diffs adds a stacktrace keeping inside vnode. each vnode will save
the stacktrace on v_usecount change (vget/vput/vref/vrele operation).
the stacktraces are kept in a ring (9 slots, to avoid too big vnode struct). if
powerpc has different stack limitation than amd64/i386, see VH_MAXST inside
sys/vnode.h to adjust the size of the ring.
ddb "show vnode /f" and vprint() will call vnode_history_print() function.
I also added a more strict vn_lock() function. before, I was only checking if
the vnode was in freelist. now I am checking that v_usecount != 0 (with a
special case, as vrele() is volontary calling vn_lock() with v_usecount==0).
due to vn_lock change, the powerpc release(8) build should panic(9) early.
the purpose is too look at the stacktrace history to know the functions to
review. the problem could be a race, an unmanaged sleeping-point, or a missing
lock inside some function.
please report the panic() backtrace with the vprint() output or, if no vprint,
ddb "show vnode /f 0xXYZ"
Andrew, if you write the output by hand, you could send to me some photos if it
is more simple for you: the stacktrace history could be somehow unpleasant to
manual transcribe.
The diff belows applies on top of -current (please discard previous diff).
I am running it on i386 without problem for now.
Thanks.
--
Sebastien Marie
Unfortunately, I didn't have a chance to get to my home computer last
week and provide you with the information you need. My apologies.
could you get the filename of the vnode ?
$ find -x /home/ -inum 19627621 -ls
19627621 740096 -rw-r--r-- 1 _qbittorrent noiseless 378860088 Feb 16
2021 /home/torrents/downloads/Manowar 1982-2014/Studio Albums/2002 Warriors Of
The World/2002 Warriors Of The World [2002 Japan ZACB-1058 Zain]/Manowar -
Warriors Of The World (ZACB-1058).flac
$
So, it is an ordinary file that qbittorrent distributes over
the network.
Again, I apologize for the delay.
--
Wbr, Andrew Krasavin