diff --git a/src/system/kernel/device_manager/IORequest.cpp b/src/system/kernel/device_manager/IORequest.cpp index 1e53f6023d..c7ac21793a 100644 --- a/src/system/kernel/device_manager/IORequest.cpp +++ b/src/system/kernel/device_manager/IORequest.cpp @@ -120,8 +120,8 @@ IOBuffer::SetVecs(size_t firstVecOffset, const iovec* vecs, uint32 count, fVecCount = count; fLength = length; - fUser = IS_USER_ADDRESS(vecs[0].iov_base); fPhysical = (flags & B_PHYSICAL_IO_REQUEST) != 0; + fUser = !fPhysical && IS_USER_ADDRESS(vecs[0].iov_base); }