diff --git a/Kernel/ProcFileSystem.cpp b/Kernel/ProcFileSystem.cpp index b636a68bed7..75c2c6c0482 100644 --- a/Kernel/ProcFileSystem.cpp +++ b/Kernel/ProcFileSystem.cpp @@ -368,7 +368,10 @@ ByteBuffer procfs$vnodes() path = static_cast(dev)->tty_name(); } } - ptr += ksprintf(ptr, "vnode %03u: %02u:%08u (%u) %s\n", i, vnode.inode.fsid(), vnode.inode.index(), vnode.retain_count(), path.characters()); + ptr += ksprintf(ptr, "vnode %03u: %02u:%08u (%u) %s", i, vnode.inode.fsid(), vnode.inode.index(), vnode.retain_count(), path.characters()); + if (vnode.characterDevice()) + ptr += ksprintf(ptr, " (chardev: %p)", vnode.characterDevice()); + ptr += ksprintf(ptr, "\n"); } *ptr = '\0'; buffer.trim(ptr - (char*)buffer.pointer()); diff --git a/VirtualFileSystem/VirtualFileSystem.cpp b/VirtualFileSystem/VirtualFileSystem.cpp index 30677464d06..4ec9829b545 100644 --- a/VirtualFileSystem/VirtualFileSystem.cpp +++ b/VirtualFileSystem/VirtualFileSystem.cpp @@ -198,6 +198,7 @@ void VFS::freeNode(Vnode* node) m_inode2vnode.remove(node->inode); node->inode.fs()->release(); node->inode = InodeIdentifier(); + node->m_core_inode = nullptr; } if (node->m_characterDevice) { m_device2vnode.remove(encodedDevice(node->m_characterDevice->major(), node->m_characterDevice->minor()));