Why B_FROM_POSIX_ERROR in fat's kernel_interface.cpp is causing general protection fault

I attempted to work around FAT kdl issue. I got into this line:

status = B_FROM_POSIX_ERROR(deget(fatVolume, dirClust, dirOffset, LK_EXCLUSIVE, &fatNode));
Consulting to stack trace deget() isnt called or worked OK

It is not B_FROM_POSIX_ERROR it was brelse from vfs_bio.c

B_FROM_POSIX_ERROR is a no-op in kernel-land anyway, it isn’t needed for drivers and does nothing. So it certainly isn’t causing KDLs.