Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: NetBSD Xen guest freezes system + vif MAC address confusion (NetBSD 9.99.97 / Xen 4.15.2)



On Fri, May 27, 2022 at 02:52:55PM +0200, J. Hannken-Illjes wrote:
> > On 27. May 2022, at 14:41, Matthias Petermann <mp%petermann-it.de@localhost> wrote:
> > 
> > Hello Jürgen,
> > 
> > Am 27.05.2022 um 14:14 schrieb J. Hannken-Illjes:
> >> Stack trace of thread vnconfig (1239) and from ddb "call fstrans_dump"
> >> should give even more details.
> > 
> > here is the stacktrace from the vnconfig process (the PID has changed since I restarted):
> > 
> > https://www.petermann-it.de/tmp/p7.jpg
> 
> This is the thread currently suspending the root fs (vrevoke suspends it).
> 
> Looks like it is waiting for I/O to drain on the vnd device ...
> 
> > You can find the output of fstrans_dump here:
> > 
> > https://www.petermann-it.de/tmp/p8.jpg
> 
> The owner is irritating, it should be vnconfig from above.

I can reproduce it:
db{0}> ps
PID    LID S CPU     FLAGS       STRUCT LWP *               NAME WAIT
2419  2419 3   8         0   ffff9000210b9280               tcsh fstchg
2415  2415 3  11         0   ffff90001f66f540           vnconfig fstchg
2416  2416 3  18         0   ffff900020ea3200            dirname fstchg
2417  2417 3  24         0   ffff900020e6c700                 sh fstchg
2414  2414 3  12         0   ffff90001f6d7a00           vnconfig specio
[...]
db{0}> tr/t 0t2415
trace: pid 2415 lid 2415 at 0xffff90008ed3e980
sleepq_block() at netbsd:sleepq_block+0x12c
cv_wait() at netbsd:cv_wait+0x42
fstrans_start() at netbsd:fstrans_start+0x193
VOP_LOCK() at netbsd:VOP_LOCK+0x79
vn_lock() at netbsd:vn_lock+0xae
namei_tryemulroot() at netbsd:namei_tryemulroot+0x1024
namei() at netbsd:namei+0x29
vn_open() at netbsd:vn_open+0x133
do_open() at netbsd:do_open+0xc3
do_sys_openat() at netbsd:do_sys_openat+0x74
sys_open() at netbsd:sys_open+0x24
syscall() at netbsd:syscall+0x18c
--- syscall (number 5) ---
netbsd:syscall+0x18c:
db{0}> tr/t 0t2414
trace: pid 2414 lid 2414 at 0xffff90008c57e6c0
sleepq_block() at netbsd:sleepq_block+0x12c
cv_wait() at netbsd:cv_wait+0x42
spec_io_drain() at netbsd:spec_io_drain+0x84
spec_close() at netbsd:spec_close+0x1c6
VOP_CLOSE() at netbsd:VOP_CLOSE+0x38
spec_node_revoke() at netbsd:spec_node_revoke+0x14d
vcache_reclaim() at netbsd:vcache_reclaim+0x4e7
vgone() at netbsd:vgone+0xcd
vrevoke() at netbsd:vrevoke+0xfa
genfs_revoke() at netbsd:genfs_revoke+0x13
VOP_REVOKE() at netbsd:VOP_REVOKE+0x35
vdevgone() at netbsd:vdevgone+0x64
vnddoclear.part.0() at netbsd:vnddoclear.part.0+0xaa
vndioctl() at netbsd:vndioctl+0x78c
bdev_ioctl() at netbsd:bdev_ioctl+0x91
spec_ioctl() at netbsd:spec_ioctl+0xa5
VOP_IOCTL() at netbsd:VOP_IOCTL+0x41
vn_ioctl() at netbsd:vn_ioctl+0xb3
sys_ioctl() at netbsd:sys_ioctl+0x555
syscall() at netbsd:syscall+0x18c
--- syscall (number 54) ---
netbsd:syscall+0x18c:             
db{0}> call fstrans_dump         
Fstrans locks by lwp:
[ 5691.3454404] 2414.241 (/) shared 2 cow 0 alias 0
[ 5691.3454404] Fstrans state by mount:
[ 5691.3454404] /                owner 0xffff90001f6d7a00 state suspended

In the ps output there is also:
0     2324 3   3       200   ffff90001fe43340               vnd0 vndbp
db{0}> tr/a ffff90001fe43340     
trace: pid 0 lid 2324 at 0xffff90008c806df0
sleepq_block() at netbsd:sleepq_block+0x12c
vndthread() at netbsd:vndthread+0x78c

So it looks like vnconfig waits for the vnd I/O to drain, but the vnd thread
is idle.

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index