|
@@ -56,8 +56,6 @@ static int gfs2_create(struct inode *dir, struct dentry *dentry,
|
|
int new = 1;
|
|
int new = 1;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
gfs2_holder_init(dip->i_gl, 0, 0, ghs);
|
|
gfs2_holder_init(dip->i_gl, 0, 0, ghs);
|
|
|
|
|
|
for (;;) {
|
|
for (;;) {
|
|
@@ -113,8 +111,6 @@ static struct dentry *gfs2_lookup(struct inode *dir, struct dentry *dentry,
|
|
struct inode *inode = NULL;
|
|
struct inode *inode = NULL;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
if (!sdp->sd_args.ar_localcaching)
|
|
if (!sdp->sd_args.ar_localcaching)
|
|
dentry->d_op = &gfs2_dops;
|
|
dentry->d_op = &gfs2_dops;
|
|
|
|
|
|
@@ -152,8 +148,6 @@ static int gfs2_link(struct dentry *old_dentry, struct inode *dir,
|
|
int alloc_required;
|
|
int alloc_required;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
if (S_ISDIR(ip->i_di.di_mode))
|
|
if (S_ISDIR(ip->i_di.di_mode))
|
|
return -EPERM;
|
|
return -EPERM;
|
|
|
|
|
|
@@ -287,8 +281,6 @@ static int gfs2_unlink(struct inode *dir, struct dentry *dentry)
|
|
struct gfs2_holder ghs[2];
|
|
struct gfs2_holder ghs[2];
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
error = gfs2_unlinked_get(sdp, &ul);
|
|
error = gfs2_unlinked_get(sdp, &ul);
|
|
if (error)
|
|
if (error)
|
|
return error;
|
|
return error;
|
|
@@ -345,8 +337,6 @@ static int gfs2_symlink(struct inode *dir, struct dentry *dentry,
|
|
int size;
|
|
int size;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
/* Must be stuffed with a null terminator for gfs2_follow_link() */
|
|
/* Must be stuffed with a null terminator for gfs2_follow_link() */
|
|
size = strlen(symname);
|
|
size = strlen(symname);
|
|
if (size > sdp->sd_sb.sb_bsize - sizeof(struct gfs2_dinode) - 1)
|
|
if (size > sdp->sd_sb.sb_bsize - sizeof(struct gfs2_dinode) - 1)
|
|
@@ -405,8 +395,6 @@ static int gfs2_mkdir(struct inode *dir, struct dentry *dentry, int mode)
|
|
struct buffer_head *dibh;
|
|
struct buffer_head *dibh;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
gfs2_holder_init(dip->i_gl, 0, 0, ghs);
|
|
gfs2_holder_init(dip->i_gl, 0, 0, ghs);
|
|
|
|
|
|
inode = gfs2_createi(ghs, &dentry->d_name, S_IFDIR | mode);
|
|
inode = gfs2_createi(ghs, &dentry->d_name, S_IFDIR | mode);
|
|
@@ -487,8 +475,6 @@ static int gfs2_rmdir(struct inode *dir, struct dentry *dentry)
|
|
struct gfs2_holder ghs[2];
|
|
struct gfs2_holder ghs[2];
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
error = gfs2_unlinked_get(sdp, &ul);
|
|
error = gfs2_unlinked_get(sdp, &ul);
|
|
if (error)
|
|
if (error)
|
|
return error;
|
|
return error;
|
|
@@ -556,8 +542,6 @@ static int gfs2_mknod(struct inode *dir, struct dentry *dentry, int mode,
|
|
uint32_t major = 0, minor = 0;
|
|
uint32_t major = 0, minor = 0;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
switch (mode & S_IFMT) {
|
|
switch (mode & S_IFMT) {
|
|
case S_IFBLK:
|
|
case S_IFBLK:
|
|
case S_IFCHR:
|
|
case S_IFCHR:
|
|
@@ -631,8 +615,6 @@ static int gfs2_rename(struct inode *odir, struct dentry *odentry,
|
|
unsigned int x;
|
|
unsigned int x;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&sdp->sd_ops_inode);
|
|
|
|
-
|
|
|
|
if (ndentry->d_inode) {
|
|
if (ndentry->d_inode) {
|
|
nip = get_v2ip(ndentry->d_inode);
|
|
nip = get_v2ip(ndentry->d_inode);
|
|
if (ip == nip)
|
|
if (ip == nip)
|
|
@@ -871,8 +853,6 @@ static int gfs2_readlink(struct dentry *dentry, char __user *user_buf,
|
|
unsigned int len = GFS2_FAST_NAME_SIZE;
|
|
unsigned int len = GFS2_FAST_NAME_SIZE;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&ip->i_sbd->sd_ops_inode);
|
|
|
|
-
|
|
|
|
error = gfs2_readlinki(ip, &buf, &len);
|
|
error = gfs2_readlinki(ip, &buf, &len);
|
|
if (error)
|
|
if (error)
|
|
return error;
|
|
return error;
|
|
@@ -909,8 +889,6 @@ static void *gfs2_follow_link(struct dentry *dentry, struct nameidata *nd)
|
|
unsigned int len = GFS2_FAST_NAME_SIZE;
|
|
unsigned int len = GFS2_FAST_NAME_SIZE;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&ip->i_sbd->sd_ops_inode);
|
|
|
|
-
|
|
|
|
error = gfs2_readlinki(ip, &buf, &len);
|
|
error = gfs2_readlinki(ip, &buf, &len);
|
|
if (!error) {
|
|
if (!error) {
|
|
error = vfs_follow_link(nd, buf);
|
|
error = vfs_follow_link(nd, buf);
|
|
@@ -936,8 +914,6 @@ static int gfs2_permission(struct inode *inode, int mask, struct nameidata *nd)
|
|
struct gfs2_holder i_gh;
|
|
struct gfs2_holder i_gh;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&ip->i_sbd->sd_ops_inode);
|
|
|
|
-
|
|
|
|
if (ip->i_vn == ip->i_gl->gl_vn)
|
|
if (ip->i_vn == ip->i_gl->gl_vn)
|
|
return generic_permission(inode, mask, gfs2_check_acl);
|
|
return generic_permission(inode, mask, gfs2_check_acl);
|
|
|
|
|
|
@@ -1053,8 +1029,6 @@ static int gfs2_setattr(struct dentry *dentry, struct iattr *attr)
|
|
struct gfs2_holder i_gh;
|
|
struct gfs2_holder i_gh;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&ip->i_sbd->sd_ops_inode);
|
|
|
|
-
|
|
|
|
error = gfs2_glock_nq_init(ip->i_gl, LM_ST_EXCLUSIVE, 0, &i_gh);
|
|
error = gfs2_glock_nq_init(ip->i_gl, LM_ST_EXCLUSIVE, 0, &i_gh);
|
|
if (error)
|
|
if (error)
|
|
return error;
|
|
return error;
|
|
@@ -1102,8 +1076,6 @@ static int gfs2_getattr(struct vfsmount *mnt, struct dentry *dentry,
|
|
struct gfs2_holder gh;
|
|
struct gfs2_holder gh;
|
|
int error;
|
|
int error;
|
|
|
|
|
|
- atomic_inc(&ip->i_sbd->sd_ops_inode);
|
|
|
|
-
|
|
|
|
error = gfs2_glock_nq_init(ip->i_gl, LM_ST_SHARED, LM_FLAG_ANY, &gh);
|
|
error = gfs2_glock_nq_init(ip->i_gl, LM_ST_SHARED, LM_FLAG_ANY, &gh);
|
|
if (!error) {
|
|
if (!error) {
|
|
generic_fillattr(inode, stat);
|
|
generic_fillattr(inode, stat);
|
|
@@ -1119,8 +1091,6 @@ static int gfs2_setxattr(struct dentry *dentry, const char *name,
|
|
struct gfs2_inode *ip = get_v2ip(dentry->d_inode);
|
|
struct gfs2_inode *ip = get_v2ip(dentry->d_inode);
|
|
struct gfs2_ea_request er;
|
|
struct gfs2_ea_request er;
|
|
|
|
|
|
- atomic_inc(&ip->i_sbd->sd_ops_inode);
|
|
|
|
-
|
|
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
er.er_type = gfs2_ea_name2type(name, &er.er_name);
|
|
er.er_type = gfs2_ea_name2type(name, &er.er_name);
|
|
if (er.er_type == GFS2_EATYPE_UNUSED)
|
|
if (er.er_type == GFS2_EATYPE_UNUSED)
|
|
@@ -1140,8 +1110,6 @@ static ssize_t gfs2_getxattr(struct dentry *dentry, const char *name,
|
|
{
|
|
{
|
|
struct gfs2_ea_request er;
|
|
struct gfs2_ea_request er;
|
|
|
|
|
|
- atomic_inc(&get_v2sdp(dentry->d_inode->i_sb)->sd_ops_inode);
|
|
|
|
-
|
|
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
er.er_type = gfs2_ea_name2type(name, &er.er_name);
|
|
er.er_type = gfs2_ea_name2type(name, &er.er_name);
|
|
if (er.er_type == GFS2_EATYPE_UNUSED)
|
|
if (er.er_type == GFS2_EATYPE_UNUSED)
|
|
@@ -1157,8 +1125,6 @@ static ssize_t gfs2_listxattr(struct dentry *dentry, char *buffer, size_t size)
|
|
{
|
|
{
|
|
struct gfs2_ea_request er;
|
|
struct gfs2_ea_request er;
|
|
|
|
|
|
- atomic_inc(&get_v2sdp(dentry->d_inode->i_sb)->sd_ops_inode);
|
|
|
|
-
|
|
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
er.er_data = (size) ? buffer : NULL;
|
|
er.er_data = (size) ? buffer : NULL;
|
|
er.er_data_len = size;
|
|
er.er_data_len = size;
|
|
@@ -1170,8 +1136,6 @@ static int gfs2_removexattr(struct dentry *dentry, const char *name)
|
|
{
|
|
{
|
|
struct gfs2_ea_request er;
|
|
struct gfs2_ea_request er;
|
|
|
|
|
|
- atomic_inc(&get_v2sdp(dentry->d_inode->i_sb)->sd_ops_inode);
|
|
|
|
-
|
|
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
memset(&er, 0, sizeof(struct gfs2_ea_request));
|
|
er.er_type = gfs2_ea_name2type(name, &er.er_name);
|
|
er.er_type = gfs2_ea_name2type(name, &er.er_name);
|
|
if (er.er_type == GFS2_EATYPE_UNUSED)
|
|
if (er.er_type == GFS2_EATYPE_UNUSED)
|