From 50330091b046e924c28354e1634dc07ff476a7c5 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Thu, 29 Jun 2023 20:50:48 -0400 Subject: [PATCH] bfs: Disable asynchronous IO routine when KDEBUG_RW_LOCK_DEBUG is enabled. See inline comment: it relies on behavior that the assertions cannot track. --- src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp index 86a590e88e..a1b79d2ddf 100644 --- a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp +++ b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp @@ -497,6 +497,11 @@ bfs_write_pages(fs_volume* _volume, fs_vnode* _node, void* _cookie, static status_t bfs_io(fs_volume* _volume, fs_vnode* _node, void* _cookie, io_request* request) { +#if KDEBUG_RW_LOCK_DEBUG + // bfs_io depends on read-locks being implicitly transferrable across threads. + return B_UNSUPPORTED; +#endif + Volume* volume = (Volume*)_volume->private_volume; Inode* inode = (Inode*)_node->private_node;