int vfs_getattr(struct path *path, struct kstat *stat) { int retval; retval = security_inode_getattr(path); if (retval) return retval; return vfs_getattr_nosec(path, stat); }
int vfs_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat) { struct inode *inode = dentry->d_inode; int retval; retval = security_inode_getattr(mnt, dentry); if (retval) return retval; if (inode->i_op->getattr) return inode->i_op->getattr(mnt, dentry, stat); generic_fillattr(inode, stat); return 0; }
int vfs_getattr(struct path *path, struct kstat *stat) { struct inode *inode = path->dentry->d_inode; int retval; retval = security_inode_getattr(path->mnt, path->dentry); if (retval) return retval; if (inode->i_op->getattr) return inode->i_op->getattr(path->mnt, path->dentry, stat); generic_fillattr(inode, stat); return 0; }
int vfs_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat) { struct inode *inode = dentry->d_inode; int retval; retval = security_inode_getattr(mnt, dentry); if (retval) return retval; if (inode->i_op->getattr) #ifdef CONFIG_TIVO_CONSDBG { lowpower_audit_file_stat(mnt, dentry); #endif return inode->i_op->getattr(mnt, dentry, stat); #ifdef CONFIG_TIVO_CONSDBG } #endif generic_fillattr(inode, stat); return 0; }
int vfs_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat) { struct inode *inode = dentry->d_inode; int retval; retval = security_inode_getattr(mnt, dentry); if (retval) return retval; if (inode->i_op->getattr) return inode->i_op->getattr(mnt, dentry, stat); generic_fillattr(inode, stat); if (!stat->blksize) { struct super_block *s = inode->i_sb; unsigned blocks; blocks = (stat->size+s->s_blocksize-1) >> s->s_blocksize_bits; stat->blocks = (s->s_blocksize / 512) * blocks; stat->blksize = s->s_blocksize; } return 0; }