Unverified Commit b4dbfd86 authored by Mateusz Guzik's avatar Mateusz Guzik Committed by Christian Brauner
Browse files

Coccinelle-based conversion to use ->i_state accessors



All places were patched by coccinelle with the default expecting that
->i_lock is held, afterwards entries got fixed up by hand to use
unlocked variants as needed.

The script:
@@
expression inode, flags;
@@

- inode->i_state & flags
+ inode_state_read(inode) & flags

@@
expression inode, flags;
@@

- inode->i_state &= ~flags
+ inode_state_clear(inode, flags)

@@
expression inode, flag1, flag2;
@@

- inode->i_state &= ~flag1 & ~flag2
+ inode_state_clear(inode, flag1 | flag2)

@@
expression inode, flags;
@@

- inode->i_state |= flags
+ inode_state_set(inode, flags)

@@
expression inode, flags;
@@

- inode->i_state = flags
+ inode_state_assign(inode, flags)

@@
expression inode, flags;
@@

- flags = inode->i_state
+ flags = inode_state_read(inode)

@@
expression inode, flags;
@@

- READ_ONCE(inode->i_state) & flags
+ inode_state_read(inode) & flags

Signed-off-by: default avatarMateusz Guzik <mjguzik@gmail.com>
Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parent d8753f78
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ static void bdev_write_inode(struct block_device *bdev)
	int ret;

	spin_lock(&inode->i_lock);
	while (inode->i_state & I_DIRTY) {
	while (inode_state_read(inode) & I_DIRTY) {
		spin_unlock(&inode->i_lock);
		ret = write_inode_now(inode, true);
		if (ret)
@@ -1265,7 +1265,7 @@ void sync_bdevs(bool wait)
		struct block_device *bdev;

		spin_lock(&inode->i_lock);
		if (inode->i_state & (I_FREEING|I_WILL_FREE|I_NEW) ||
		if (inode_state_read(inode) & (I_FREEING | I_WILL_FREE | I_NEW) ||
		    mapping->nrpages == 0) {
			spin_unlock(&inode->i_lock);
			continue;
+1 −1
Original line number Diff line number Diff line
@@ -433,7 +433,7 @@ static struct dax_device *dax_dev_get(dev_t devt)
		return NULL;

	dax_dev = to_dax_dev(inode);
	if (inode->i_state & I_NEW) {
	if (inode_state_read_once(inode) & I_NEW) {
		set_bit(DAXDEV_ALIVE, &dax_dev->flags);
		inode->i_cdev = &dax_dev->cdev;
		inode->i_mode = S_IFCHR;
+1 −1
Original line number Diff line number Diff line
@@ -422,7 +422,7 @@ static struct inode *v9fs_qid_iget(struct super_block *sb,
	inode = iget5_locked(sb, QID2INO(qid), test, v9fs_set_inode, st);
	if (!inode)
		return ERR_PTR(-ENOMEM);
	if (!(inode->i_state & I_NEW))
	if (!(inode_state_read_once(inode) & I_NEW))
		return inode;
	/*
	 * initialize the inode with the stat info
+1 −1
Original line number Diff line number Diff line
@@ -112,7 +112,7 @@ static struct inode *v9fs_qid_iget_dotl(struct super_block *sb,
	inode = iget5_locked(sb, QID2INO(qid), test, v9fs_set_inode_dotl, st);
	if (!inode)
		return ERR_PTR(-ENOMEM);
	if (!(inode->i_state & I_NEW))
	if (!(inode_state_read_once(inode) & I_NEW))
		return inode;
	/*
	 * initialize the inode with the stat info
+1 −1
Original line number Diff line number Diff line
@@ -29,7 +29,7 @@ struct inode *affs_iget(struct super_block *sb, unsigned long ino)
	inode = iget_locked(sb, ino);
	if (!inode)
		return ERR_PTR(-ENOMEM);
	if (!(inode->i_state & I_NEW))
	if (!(inode_state_read_once(inode) & I_NEW))
		return inode;

	pr_debug("affs_iget(%lu)\n", inode->i_ino);
Loading