fs/nilfs2: Use the enum req_op and blk_opf_t types
authorBart Van Assche <bvanassche@acm.org>
Thu, 14 Jul 2022 18:07:24 +0000 (11:07 -0700)
committerJens Axboe <axboe@kernel.dk>
Thu, 14 Jul 2022 18:14:33 +0000 (12:14 -0600)
Improve static type checking by using the enum req_op type for variables
that represent a request operation and the new blk_opf_t type for
variables that represent request flags. Combine the 'mode' and
'mode_flags' arguments of nilfs_btnode_submit_block into a single
argument 'opf'.

Reviewed-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Link: https://lore.kernel.org/r/20220714180729.1065367-59-bvanassche@acm.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/nilfs2/btnode.c
fs/nilfs2/btnode.h
fs/nilfs2/btree.c
fs/nilfs2/gcinode.c
fs/nilfs2/mdt.c
include/trace/events/nilfs2.h

index 5c39efbf733fcc0bb5dea47a40e488cdf58b029c..e74fda212620bee36a07316eea4d1fc6d7bf5d53 100644 (file)
@@ -70,7 +70,7 @@ nilfs_btnode_create_block(struct address_space *btnc, __u64 blocknr)
 }
 
 int nilfs_btnode_submit_block(struct address_space *btnc, __u64 blocknr,
-                             sector_t pblocknr, int mode, int mode_flags,
+                             sector_t pblocknr, blk_opf_t opf,
                              struct buffer_head **pbh, sector_t *submit_ptr)
 {
        struct buffer_head *bh;
@@ -103,13 +103,13 @@ int nilfs_btnode_submit_block(struct address_space *btnc, __u64 blocknr,
                }
        }
 
-       if (mode_flags & REQ_RAHEAD) {
+       if (opf & REQ_RAHEAD) {
                if (pblocknr != *submit_ptr + 1 || !trylock_buffer(bh)) {
                        err = -EBUSY; /* internal code */
                        brelse(bh);
                        goto out_locked;
                }
-       } else { /* mode == READ */
+       } else { /* opf == REQ_OP_READ */
                lock_buffer(bh);
        }
        if (buffer_uptodate(bh)) {
@@ -122,7 +122,7 @@ int nilfs_btnode_submit_block(struct address_space *btnc, __u64 blocknr,
        bh->b_blocknr = pblocknr; /* set block address for read */
        bh->b_end_io = end_buffer_read_sync;
        get_bh(bh);
-       submit_bh(mode | mode_flags, bh);
+       submit_bh(opf, bh);
        bh->b_blocknr = blocknr; /* set back to the given block address */
        *submit_ptr = pblocknr;
        err = 0;
index bd5544e63a01dc3876227f210583d4ae94e8df90..4bc5612dff947e47e513a4cf9a7922d4c54b8f72 100644 (file)
@@ -34,8 +34,8 @@ void nilfs_init_btnc_inode(struct inode *btnc_inode);
 void nilfs_btnode_cache_clear(struct address_space *);
 struct buffer_head *nilfs_btnode_create_block(struct address_space *btnc,
                                              __u64 blocknr);
-int nilfs_btnode_submit_block(struct address_space *, __u64, sector_t, int,
-                             int, struct buffer_head **, sector_t *);
+int nilfs_btnode_submit_block(struct address_space *, __u64, sector_t,
+                             blk_opf_t, struct buffer_head **, sector_t *);
 void nilfs_btnode_delete(struct buffer_head *);
 int nilfs_btnode_prepare_change_key(struct address_space *,
                                    struct nilfs_btnode_chkey_ctxt *);
index f544c22fff78b27262e49ac9054097b46caaccaf..9f4d9432d38a196ef4db01996055ee65b1ff3e0f 100644 (file)
@@ -477,7 +477,7 @@ static int __nilfs_btree_get_block(const struct nilfs_bmap *btree, __u64 ptr,
        sector_t submit_ptr = 0;
        int ret;
 
-       ret = nilfs_btnode_submit_block(btnc, ptr, 0, REQ_OP_READ, 0, &bh,
+       ret = nilfs_btnode_submit_block(btnc, ptr, 0, REQ_OP_READ, &bh,
                                        &submit_ptr);
        if (ret) {
                if (ret != -EEXIST)
@@ -495,8 +495,8 @@ static int __nilfs_btree_get_block(const struct nilfs_bmap *btree, __u64 ptr,
                        ptr2 = nilfs_btree_node_get_ptr(ra->node, i, ra->ncmax);
 
                        ret = nilfs_btnode_submit_block(btnc, ptr2, 0,
-                                                       REQ_OP_READ, REQ_RAHEAD,
-                                                       &ra_bh, &submit_ptr);
+                                               REQ_OP_READ | REQ_RAHEAD,
+                                               &ra_bh, &submit_ptr);
                        if (likely(!ret || ret == -EEXIST))
                                brelse(ra_bh);
                        else if (ret != -EBUSY)
index 847def8af315fec839016de03cd5aa3707e4040b..b0d22ff24b674a048ed87810e828278108f639c1 100644 (file)
@@ -129,9 +129,8 @@ int nilfs_gccache_submit_read_node(struct inode *inode, sector_t pbn,
        struct inode *btnc_inode = NILFS_I(inode)->i_assoc_inode;
        int ret;
 
-       ret = nilfs_btnode_submit_block(btnc_inode->i_mapping,
-                                       vbn ? : pbn, pbn, REQ_OP_READ, 0,
-                                       out_bh, &pbn);
+       ret = nilfs_btnode_submit_block(btnc_inode->i_mapping, vbn ? : pbn, pbn,
+                                       REQ_OP_READ, out_bh, &pbn);
        if (ret == -EEXIST) /* internal code (cache hit) */
                ret = 0;
        return ret;
index 66e8811c2528e52a09d1e7da1c80b49bfd37b062..cbf4fa60eea217f44d81ac9ca2832aad2b065057 100644 (file)
@@ -111,8 +111,8 @@ static int nilfs_mdt_create_block(struct inode *inode, unsigned long block,
 }
 
 static int
-nilfs_mdt_submit_block(struct inode *inode, unsigned long blkoff,
-                      int mode, int mode_flags, struct buffer_head **out_bh)
+nilfs_mdt_submit_block(struct inode *inode, unsigned long blkoff, blk_opf_t opf,
+                      struct buffer_head **out_bh)
 {
        struct buffer_head *bh;
        __u64 blknum = 0;
@@ -126,12 +126,12 @@ nilfs_mdt_submit_block(struct inode *inode, unsigned long blkoff,
        if (buffer_uptodate(bh))
                goto out;
 
-       if (mode_flags & REQ_RAHEAD) {
+       if (opf & REQ_RAHEAD) {
                if (!trylock_buffer(bh)) {
                        ret = -EBUSY;
                        goto failed_bh;
                }
-       } else /* mode == READ */
+       } else /* opf == REQ_OP_READ */
                lock_buffer(bh);
 
        if (buffer_uptodate(bh)) {
@@ -148,10 +148,11 @@ nilfs_mdt_submit_block(struct inode *inode, unsigned long blkoff,
 
        bh->b_end_io = end_buffer_read_sync;
        get_bh(bh);
-       submit_bh(mode | mode_flags, bh);
+       submit_bh(opf, bh);
        ret = 0;
 
-       trace_nilfs2_mdt_submit_block(inode, inode->i_ino, blkoff, mode);
+       trace_nilfs2_mdt_submit_block(inode, inode->i_ino, blkoff,
+                                     opf & REQ_OP_MASK);
  out:
        get_bh(bh);
        *out_bh = bh;
@@ -172,7 +173,7 @@ static int nilfs_mdt_read_block(struct inode *inode, unsigned long block,
        int i, nr_ra_blocks = NILFS_MDT_MAX_RA_BLOCKS;
        int err;
 
-       err = nilfs_mdt_submit_block(inode, block, REQ_OP_READ, 0, &first_bh);
+       err = nilfs_mdt_submit_block(inode, block, REQ_OP_READ, &first_bh);
        if (err == -EEXIST) /* internal code */
                goto out;
 
@@ -182,8 +183,8 @@ static int nilfs_mdt_read_block(struct inode *inode, unsigned long block,
        if (readahead) {
                blkoff = block + 1;
                for (i = 0; i < nr_ra_blocks; i++, blkoff++) {
-                       err = nilfs_mdt_submit_block(inode, blkoff, REQ_OP_READ,
-                                                    REQ_RAHEAD, &bh);
+                       err = nilfs_mdt_submit_block(inode, blkoff,
+                                               REQ_OP_READ | REQ_RAHEAD, &bh);
                        if (likely(!err || err == -EEXIST))
                                brelse(bh);
                        else if (err != -EBUSY)
index 84ee31fc04cc77d9f0943ea7c867643105b86849..8efc6236f57c3a470cdd482918ace36a9a9b213b 100644 (file)
@@ -192,7 +192,7 @@ TRACE_EVENT(nilfs2_mdt_submit_block,
            TP_PROTO(struct inode *inode,
                     unsigned long ino,
                     unsigned long blkoff,
-                    int mode),
+                    enum req_op mode),
 
            TP_ARGS(inode, ino, blkoff, mode),
 
@@ -200,7 +200,7 @@ TRACE_EVENT(nilfs2_mdt_submit_block,
                    __field(struct inode *, inode)
                    __field(unsigned long, ino)
                    __field(unsigned long, blkoff)
-                   __field(int, mode)
+                   __field(enum req_op, mode)
            ),
 
            TP_fast_assign(