Skip to content

Commit a103375

Browse files
dgchinnerdchinner
authored andcommitted
xfs: convert inode lock flags to unsigned.
5.18 w/ std=gnu11 compiled with gcc-5 wants flags stored in unsigned fields to be unsigned. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Chandan Babu R <chandan.babu@oracle.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
1 parent 22d53f4 commit a103375

3 files changed

Lines changed: 30 additions & 27 deletions

File tree

fs/xfs/xfs_file.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -310,7 +310,7 @@ STATIC ssize_t
310310
xfs_file_write_checks(
311311
struct kiocb *iocb,
312312
struct iov_iter *from,
313-
int *iolock)
313+
unsigned int *iolock)
314314
{
315315
struct file *file = iocb->ki_filp;
316316
struct inode *inode = file->f_mapping->host;
@@ -513,7 +513,7 @@ xfs_file_dio_write_aligned(
513513
struct kiocb *iocb,
514514
struct iov_iter *from)
515515
{
516-
int iolock = XFS_IOLOCK_SHARED;
516+
unsigned int iolock = XFS_IOLOCK_SHARED;
517517
ssize_t ret;
518518

519519
ret = xfs_ilock_iocb(iocb, iolock);
@@ -566,7 +566,7 @@ xfs_file_dio_write_unaligned(
566566
{
567567
size_t isize = i_size_read(VFS_I(ip));
568568
size_t count = iov_iter_count(from);
569-
int iolock = XFS_IOLOCK_SHARED;
569+
unsigned int iolock = XFS_IOLOCK_SHARED;
570570
unsigned int flags = IOMAP_DIO_OVERWRITE_ONLY;
571571
ssize_t ret;
572572

@@ -655,7 +655,7 @@ xfs_file_dax_write(
655655
{
656656
struct inode *inode = iocb->ki_filp->f_mapping->host;
657657
struct xfs_inode *ip = XFS_I(inode);
658-
int iolock = XFS_IOLOCK_EXCL;
658+
unsigned int iolock = XFS_IOLOCK_EXCL;
659659
ssize_t ret, error = 0;
660660
loff_t pos;
661661

@@ -700,7 +700,7 @@ xfs_file_buffered_write(
700700
struct xfs_inode *ip = XFS_I(inode);
701701
ssize_t ret;
702702
bool cleared_space = false;
703-
int iolock;
703+
unsigned int iolock;
704704

705705
if (iocb->ki_flags & IOCB_NOWAIT)
706706
return -EOPNOTSUPP;
@@ -1181,7 +1181,7 @@ xfs_dir_open(
11811181
struct file *file)
11821182
{
11831183
struct xfs_inode *ip = XFS_I(inode);
1184-
int mode;
1184+
unsigned int mode;
11851185
int error;
11861186

11871187
error = xfs_file_open(inode, file);

fs/xfs/xfs_inode.c

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -416,10 +416,12 @@ xfs_lockdep_subclass_ok(
416416
* parent locking. Care must be taken to ensure we don't overrun the subclass
417417
* storage fields in the class mask we build.
418418
*/
419-
static inline int
420-
xfs_lock_inumorder(int lock_mode, int subclass)
419+
static inline uint
420+
xfs_lock_inumorder(
421+
uint lock_mode,
422+
uint subclass)
421423
{
422-
int class = 0;
424+
uint class = 0;
423425

424426
ASSERT(!(lock_mode & (XFS_ILOCK_PARENT | XFS_ILOCK_RTBITMAP |
425427
XFS_ILOCK_RTSUM)));
@@ -464,7 +466,10 @@ xfs_lock_inodes(
464466
int inodes,
465467
uint lock_mode)
466468
{
467-
int attempts = 0, i, j, try_lock;
469+
int attempts = 0;
470+
uint i;
471+
int j;
472+
bool try_lock;
468473
struct xfs_log_item *lp;
469474

470475
/*
@@ -489,9 +494,9 @@ xfs_lock_inodes(
489494
} else if (lock_mode & XFS_MMAPLOCK_EXCL)
490495
ASSERT(!(lock_mode & XFS_ILOCK_EXCL));
491496

492-
try_lock = 0;
493-
i = 0;
494497
again:
498+
try_lock = false;
499+
i = 0;
495500
for (; i < inodes; i++) {
496501
ASSERT(ips[i]);
497502

@@ -506,7 +511,7 @@ xfs_lock_inodes(
506511
for (j = (i - 1); j >= 0 && !try_lock; j--) {
507512
lp = &ips[j]->i_itemp->ili_item;
508513
if (lp && test_bit(XFS_LI_IN_AIL, &lp->li_flags))
509-
try_lock++;
514+
try_lock = true;
510515
}
511516
}
512517

@@ -546,8 +551,6 @@ xfs_lock_inodes(
546551
if ((attempts % 5) == 0) {
547552
delay(1); /* Don't just spin the CPU */
548553
}
549-
i = 0;
550-
try_lock = 0;
551554
goto again;
552555
}
553556
}

fs/xfs/xfs_inode.h

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -278,12 +278,12 @@ static inline bool xfs_inode_has_bigtime(struct xfs_inode *ip)
278278
* Bit ranges: 1<<1 - 1<<16-1 -- iolock/ilock modes (bitfield)
279279
* 1<<16 - 1<<32-1 -- lockdep annotation (integers)
280280
*/
281-
#define XFS_IOLOCK_EXCL (1<<0)
282-
#define XFS_IOLOCK_SHARED (1<<1)
283-
#define XFS_ILOCK_EXCL (1<<2)
284-
#define XFS_ILOCK_SHARED (1<<3)
285-
#define XFS_MMAPLOCK_EXCL (1<<4)
286-
#define XFS_MMAPLOCK_SHARED (1<<5)
281+
#define XFS_IOLOCK_EXCL (1u << 0)
282+
#define XFS_IOLOCK_SHARED (1u << 1)
283+
#define XFS_ILOCK_EXCL (1u << 2)
284+
#define XFS_ILOCK_SHARED (1u << 3)
285+
#define XFS_MMAPLOCK_EXCL (1u << 4)
286+
#define XFS_MMAPLOCK_SHARED (1u << 5)
287287

288288
#define XFS_LOCK_MASK (XFS_IOLOCK_EXCL | XFS_IOLOCK_SHARED \
289289
| XFS_ILOCK_EXCL | XFS_ILOCK_SHARED \
@@ -350,19 +350,19 @@ static inline bool xfs_inode_has_bigtime(struct xfs_inode *ip)
350350
*/
351351
#define XFS_IOLOCK_SHIFT 16
352352
#define XFS_IOLOCK_MAX_SUBCLASS 3
353-
#define XFS_IOLOCK_DEP_MASK 0x000f0000
353+
#define XFS_IOLOCK_DEP_MASK 0x000f0000u
354354

355355
#define XFS_MMAPLOCK_SHIFT 20
356356
#define XFS_MMAPLOCK_NUMORDER 0
357357
#define XFS_MMAPLOCK_MAX_SUBCLASS 3
358-
#define XFS_MMAPLOCK_DEP_MASK 0x00f00000
358+
#define XFS_MMAPLOCK_DEP_MASK 0x00f00000u
359359

360360
#define XFS_ILOCK_SHIFT 24
361-
#define XFS_ILOCK_PARENT_VAL 5
361+
#define XFS_ILOCK_PARENT_VAL 5u
362362
#define XFS_ILOCK_MAX_SUBCLASS (XFS_ILOCK_PARENT_VAL - 1)
363-
#define XFS_ILOCK_RTBITMAP_VAL 6
364-
#define XFS_ILOCK_RTSUM_VAL 7
365-
#define XFS_ILOCK_DEP_MASK 0xff000000
363+
#define XFS_ILOCK_RTBITMAP_VAL 6u
364+
#define XFS_ILOCK_RTSUM_VAL 7u
365+
#define XFS_ILOCK_DEP_MASK 0xff000000u
366366
#define XFS_ILOCK_PARENT (XFS_ILOCK_PARENT_VAL << XFS_ILOCK_SHIFT)
367367
#define XFS_ILOCK_RTBITMAP (XFS_ILOCK_RTBITMAP_VAL << XFS_ILOCK_SHIFT)
368368
#define XFS_ILOCK_RTSUM (XFS_ILOCK_RTSUM_VAL << XFS_ILOCK_SHIFT)

0 commit comments

Comments
 (0)