X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=linux-2.6-255-vserver-delta-cow-fix23.diff;fp=linux-2.6-255-vserver-delta-cow-fix23.diff;h=dc5b7245eb855b3bef7620faeb85bbc99a869fb2;hb=df3e168a40be1339f6a47bb551c49edefb761b3f;hp=0000000000000000000000000000000000000000;hpb=16060820397c95b0d8034a031494036dc4e177ee;p=linux-2.6.git diff --git a/linux-2.6-255-vserver-delta-cow-fix23.diff b/linux-2.6-255-vserver-delta-cow-fix23.diff new file mode 100644 index 000000000..dc5b7245e --- /dev/null +++ b/linux-2.6-255-vserver-delta-cow-fix23.diff @@ -0,0 +1,13 @@ +diff -NurpP linux-2.6.38.7-vs2.3.0.37-rc15/fs/namei.c linux-2.6.38.7-vs2.3.0.37-rc15.1/fs/namei.c +--- linux-2.6.38.7-vs2.3.0.37-rc15/fs/namei.c 2011-04-23 22:33:35.000000000 +0200 ++++ linux-2.6.38.7-vs2.3.0.37-rc15.1/fs/namei.c 2011-05-29 22:41:46.000000000 +0200 +@@ -2220,7 +2220,8 @@ int may_open(struct path *path, int acc_ + } + + #ifdef CONFIG_VSERVER_COWBL +- if (IS_COW(inode) && (flag & FMODE_WRITE)) { ++ if (IS_COW(inode) && ++ ((flag & O_ACCMODE) != O_RDONLY)) { + if (IS_COW_LINK(inode)) + return -EMLINK; + inode->i_flags &= ~(S_IXUNLINK|S_IMMUTABLE);