Ticket #2732: workaround.patch

File workaround.patch, 1.5 kB (added by mstone, 13 months ago)
  • fs/jffs2/acl.c

    diff --git a/fs/jffs2/acl.c b/fs/jffs2/acl.c
    index a46101e..6f7b7cc 100644
    a b  
    2121#include <linux/mtd/mtd.h> 
    2222#include "nodelist.h" 
    2323 
     24static int jffs2_acl_set_i_mode(struct inode *inode) 
     25{ 
     26        struct iattr iattr; 
     27 
     28        iattr.ia_valid = ATTR_MODE; 
     29        iattr.ia_mode = inode->i_mode; 
     30 
     31        return jffs2_do_setattr(inode, &iattr); 
     32} 
     33 
    2434static size_t jffs2_acl_size(int count) 
    2535{ 
    2636        if (count <= 4) { 
     
    248258                                return rc; 
    249259                        if (inode->i_mode != mode) { 
    250260                                inode->i_mode = mode; 
    251                                 jffs2_dirty_inode(inode); 
     261                                jffs2_acl_set_i_mode(inode); 
    252262                        } 
    253263                        if (rc == 0) 
    254264                                acl = NULL; 
     
    320330                acl = jffs2_get_acl(dir, ACL_TYPE_DEFAULT); 
    321331                if (IS_ERR(acl)) 
    322332                        return PTR_ERR(acl); 
    323                 if (!acl) 
     333                if (!acl) { 
    324334                        inode->i_mode &= ~current->fs->umask; 
     335                        jffs2_acl_set_i_mode(inode); 
     336                } 
    325337        } 
    326338        if (acl) { 
    327339                if (S_ISDIR(inode->i_mode)) { 
  • fs/jffs2/fs.c

    diff --git a/fs/jffs2/fs.c b/fs/jffs2/fs.c
    index 1d3b7a9..dd50a25 100644
    a b  
    2424 
    2525static int jffs2_flash_setup(struct jffs2_sb_info *c); 
    2626 
    27 static int jffs2_do_setattr (struct inode *inode, struct iattr *iattr) 
     27int jffs2_do_setattr (struct inode *inode, struct iattr *iattr) 
    2828{ 
    2929        struct jffs2_full_dnode *old_metadata, *new_metadata; 
    3030        struct jffs2_inode_info *f = JFFS2_INODE_INFO(inode);