This flag represents packetized mode for pipes, which only changes how pipe
holds packets, and shouldn't be affected by "odirect_enable" toggle.

Signed-off-by: Stanislav Kinsburskiy <skinsbur...@virtuozzo.com>
---
 fs/fcntl.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/fcntl.c b/fs/fcntl.c
index cfa349c..1df1ffa 100644
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -70,7 +70,7 @@ static int setfl(int fd, struct file * filp, unsigned long 
arg)
        struct inode * inode = file_inode(filp);
        int error = 0;
 
-       if (!may_use_odirect())
+       if (!S_ISFIFO(filp->f_mode) && !may_use_odirect(filp))
                arg &= ~O_DIRECT;
        if (ve_fsync_behavior() == FSYNC_NEVER)
                arg &= ~O_SYNC;

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to