From: Will Sowerbutts Date: Thu, 12 Feb 2015 13:55:24 +0000 (+0000) Subject: Kernel: readi(): respect u_sysio flag X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=0d8b6aab965b291f5e18818615b14b969cf49f4a;p=FUZIX.git Kernel: readi(): respect u_sysio flag --- diff --git a/Kernel/inode.c b/Kernel/inode.c index d0ae1a83..22e883a1 100644 --- a/Kernel/inode.c +++ b/Kernel/inode.c @@ -56,7 +56,7 @@ void readi(inoptr ino, uint8_t flag) amount = min(toread, BLKSIZE - (udata.u_offset&BLKMASK)); pblk = bmap(ino, udata.u_offset >> BLKSHIFT, 1); - if(!ispipe && amount == BLKSIZE && bfind(dev, pblk) == 0){ + if(!ispipe && amount == BLKSIZE && !udata.u_sysio && bfind(dev, pblk) == 0){ /* we can transfer direct from disk to the userspace buffer */ uostash = udata.u_offset; /* stash file offset */ ucstash = udata.u_count; /* stash byte count */