Summary: | kernel panic when a few vnode backed md devices are created | ||
---|---|---|---|
Product: | Base System | Reporter: | nvass |
Component: | kern | Assignee: | Konstantin Belousov <kib> |
Status: | Closed FIXED | ||
Severity: | Affects Some People | CC: | emaste, kib, markj, pho |
Priority: | --- | ||
Version: | CURRENT | ||
Hardware: | amd64 | ||
OS: | Any |
Description
nvass
2021-04-16 11:47:28 UTC
Reproduced this with: cp /bin/sleep $mntpoint $mntpoint/sleep 60 & sleep .2 mdconfig -f $mntpoint/sleep -u $md2 (In reply to Peter Holm from comment #1) Peter, could you please show the ususal debugging info? (In reply to Konstantin Belousov from comment #2) Sure: https://people.freebsd.org/~pho/stress/log/log0096.txt A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=54f98c4dbf9b1203a4e3e1b13fd0738441226991 commit 54f98c4dbf9b1203a4e3e1b13fd0738441226991 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2021-04-19 10:25:30 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2021-04-21 15:06:51 +0000 vn_open_vnode(): handle error when fp == NULL If VOP_ADD_WRITECOUNT() or adv locking failed, so VOP_CLOSE() needs to be called, we cannot use fp fo_close() when there is no fp. This occurs when e.g. kernel code directly calls vn_open() instead of the open(2) syscall. In this case, VOP_CLOSE() can be called directly, after possible lock upgrade. Reported by: nvass@gmx.com PR: 255119 Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D29830 sys/kern/vfs_vnops.c | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) A commit in branch stable/13 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=3df91ba10f31942067c55edd2f493daac19a81e4 commit 3df91ba10f31942067c55edd2f493daac19a81e4 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2021-04-19 10:25:30 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2021-04-23 11:14:10 +0000 vn_open_vnode(): handle error when fp == NULL PR: 255119 (cherry picked from commit 54f98c4dbf9b1203a4e3e1b13fd0738441226991) sys/kern/vfs_vnops.c | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) A commit in branch stable/12 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=9102ba040a6faf1badf950d6af104440b667f89f commit 9102ba040a6faf1badf950d6af104440b667f89f Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2021-04-19 10:25:30 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2021-05-01 00:38:30 +0000 vn_open_vnode(): handle error when fp == NULL PR: 255119 (cherry picked from commit 54f98c4dbf9b1203a4e3e1b13fd0738441226991) sys/kern/vfs_vnops.c | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) |