* [djwong-xfs:vectorized-scrub 140/326] fs/xfs/libxfs/xfs_swapext.c:583:3: warning: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak]
@ 2021-05-01 15:36 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-05-01 15:36 UTC (permalink / raw
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 9249 bytes --]
CC: kbuild-all(a)lists.01.org
CC: "Darrick J. Wong" <darrick.wong@oracle.com>
TO: "Darrick J. Wong" <djwong@kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git vectorized-scrub
head: 69e2e5df9ef7ef56d03034a3558383f8c861c5e5
commit: c4a3a0ec771710fefff8138f254786716cf263a1 [140/326] xfs: create deferred log items for extent swapping
:::::: branch date: 14 hours ago
:::::: commit date: 14 hours ago
compiler: microblaze-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
In file included from fs/xfs/libxfs/xfs_swapext.c:
fs/xfs/libxfs/xfs_format.h:327:2: warning: Non-boolean value returned from function returning bool [returnNonBoolInBooleanFunction]
return (sbp->sb_versionnum & XFS_SB_VERSION_ATTRBIT);
^
fs/xfs/libxfs/xfs_format.h:337:2: warning: Non-boolean value returned from function returning bool [returnNonBoolInBooleanFunction]
return (sbp->sb_versionnum & XFS_SB_VERSION_QUOTABIT);
^
fs/xfs/libxfs/xfs_format.h:353:2: warning: Non-boolean value returned from function returning bool [returnNonBoolInBooleanFunction]
return (sbp->sb_versionnum & XFS_SB_VERSION_DALIGNBIT);
^
fs/xfs/libxfs/xfs_format.h:364:2: warning: Non-boolean value returned from function returning bool [returnNonBoolInBooleanFunction]
return (sbp->sb_versionnum & XFS_SB_VERSION_SECTORBIT);
^
fs/xfs/libxfs/xfs_format.h:369:2: warning: Non-boolean value returned from function returning bool [returnNonBoolInBooleanFunction]
return (sbp->sb_versionnum & XFS_SB_VERSION_BORGBIT);
^
>> fs/xfs/libxfs/xfs_swapext.c:583:3: warning: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak]
break;
^
>> fs/xfs/scrub/ialloc.c:179:27: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
freemask_ok = irec_free ^ !!(dip->di_mode);
^
vim +583 fs/xfs/libxfs/xfs_swapext.c
c4a3a0ec771710 Darrick J. Wong 2021-01-05 508
c4a3a0ec771710 Darrick J. Wong 2021-01-05 509 /* Estimate the effect of a single swap on extent count. */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 510 static inline int
c4a3a0ec771710 Darrick J. Wong 2021-01-05 511 delta_nextents_step(
c4a3a0ec771710 Darrick J. Wong 2021-01-05 512 struct xfs_mount *mp,
c4a3a0ec771710 Darrick J. Wong 2021-01-05 513 const struct xfs_bmbt_irec *left,
c4a3a0ec771710 Darrick J. Wong 2021-01-05 514 const struct xfs_bmbt_irec *curr,
c4a3a0ec771710 Darrick J. Wong 2021-01-05 515 const struct xfs_bmbt_irec *new,
c4a3a0ec771710 Darrick J. Wong 2021-01-05 516 const struct xfs_bmbt_irec *right)
c4a3a0ec771710 Darrick J. Wong 2021-01-05 517 {
c4a3a0ec771710 Darrick J. Wong 2021-01-05 518 bool lhole, rhole, chole, nhole;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 519 unsigned int state = 0;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 520 int ret = 0;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 521
c4a3a0ec771710 Darrick J. Wong 2021-01-05 522 lhole = left->br_blockcount == 0 ||
c4a3a0ec771710 Darrick J. Wong 2021-01-05 523 left->br_startblock == HOLESTARTBLOCK;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 524 rhole = right->br_blockcount == 0 ||
c4a3a0ec771710 Darrick J. Wong 2021-01-05 525 right->br_startblock == HOLESTARTBLOCK;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 526 chole = curr->br_startblock == HOLESTARTBLOCK;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 527 nhole = new->br_startblock == HOLESTARTBLOCK;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 528
c4a3a0ec771710 Darrick J. Wong 2021-01-05 529 if (chole)
c4a3a0ec771710 Darrick J. Wong 2021-01-05 530 state |= CHOLE;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 531 if (!lhole && !chole && can_merge(left, curr))
c4a3a0ec771710 Darrick J. Wong 2021-01-05 532 state |= CLEFT_CONTIG;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 533 if (!rhole && !chole && can_merge(curr, right))
c4a3a0ec771710 Darrick J. Wong 2021-01-05 534 state |= CRIGHT_CONTIG;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 535 if ((state & CBOTH_CONTIG) == CBOTH_CONTIG &&
c4a3a0ec771710 Darrick J. Wong 2021-01-05 536 left->br_startblock + curr->br_startblock +
c4a3a0ec771710 Darrick J. Wong 2021-01-05 537 right->br_startblock > MAXEXTLEN)
c4a3a0ec771710 Darrick J. Wong 2021-01-05 538 state &= ~CRIGHT_CONTIG;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 539
c4a3a0ec771710 Darrick J. Wong 2021-01-05 540 if (nhole)
c4a3a0ec771710 Darrick J. Wong 2021-01-05 541 state |= NHOLE;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 542 if (!lhole && !nhole && can_merge(left, new))
c4a3a0ec771710 Darrick J. Wong 2021-01-05 543 state |= NLEFT_CONTIG;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 544 if (!rhole && !nhole && can_merge(new, right))
c4a3a0ec771710 Darrick J. Wong 2021-01-05 545 state |= NRIGHT_CONTIG;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 546 if ((state & NBOTH_CONTIG) == NBOTH_CONTIG &&
c4a3a0ec771710 Darrick J. Wong 2021-01-05 547 left->br_startblock + new->br_startblock +
c4a3a0ec771710 Darrick J. Wong 2021-01-05 548 right->br_startblock > MAXEXTLEN)
c4a3a0ec771710 Darrick J. Wong 2021-01-05 549 state &= ~NRIGHT_CONTIG;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 550
c4a3a0ec771710 Darrick J. Wong 2021-01-05 551 switch (state & (CLEFT_CONTIG | CRIGHT_CONTIG | CHOLE)) {
c4a3a0ec771710 Darrick J. Wong 2021-01-05 552 case CLEFT_CONTIG | CRIGHT_CONTIG:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 553 /*
c4a3a0ec771710 Darrick J. Wong 2021-01-05 554 * left/curr/right are the same extent, so deleting curr causes
c4a3a0ec771710 Darrick J. Wong 2021-01-05 555 * 2 new extents to be created.
c4a3a0ec771710 Darrick J. Wong 2021-01-05 556 */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 557 ret += 2;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 558 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 559 case 0:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 560 /*
c4a3a0ec771710 Darrick J. Wong 2021-01-05 561 * curr is not contiguous with any extent, so we remove curr
c4a3a0ec771710 Darrick J. Wong 2021-01-05 562 * completely
c4a3a0ec771710 Darrick J. Wong 2021-01-05 563 */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 564 ret--;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 565 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 566 case CHOLE:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 567 /* hole, do nothing */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 568 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 569 case CLEFT_CONTIG:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 570 case CRIGHT_CONTIG:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 571 /* trim either left or right, no change */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 572 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 573 }
c4a3a0ec771710 Darrick J. Wong 2021-01-05 574
c4a3a0ec771710 Darrick J. Wong 2021-01-05 575 switch (state & (NLEFT_CONTIG | NRIGHT_CONTIG | NHOLE)) {
c4a3a0ec771710 Darrick J. Wong 2021-01-05 576 case NLEFT_CONTIG | NRIGHT_CONTIG:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 577 /*
c4a3a0ec771710 Darrick J. Wong 2021-01-05 578 * left/curr/right will become the same extent, so adding
c4a3a0ec771710 Darrick J. Wong 2021-01-05 579 * curr causes the deletion of right.
c4a3a0ec771710 Darrick J. Wong 2021-01-05 580 */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 581 ret--;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 582 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 @583 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 584 case 0:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 585 /* new is not contiguous with any extent */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 586 ret++;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 587 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 588 case NHOLE:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 589 /* hole, do nothing. */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 590 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 591 case NLEFT_CONTIG:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 592 case NRIGHT_CONTIG:
c4a3a0ec771710 Darrick J. Wong 2021-01-05 593 /* new is absorbed into left or right, no change */
c4a3a0ec771710 Darrick J. Wong 2021-01-05 594 break;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 595 }
c4a3a0ec771710 Darrick J. Wong 2021-01-05 596
c4a3a0ec771710 Darrick J. Wong 2021-01-05 597 trace_xfs_swapext_delta_nextents_step(mp, left, curr, new, right, ret,
c4a3a0ec771710 Darrick J. Wong 2021-01-05 598 state);
c4a3a0ec771710 Darrick J. Wong 2021-01-05 599 return ret;
c4a3a0ec771710 Darrick J. Wong 2021-01-05 600 }
c4a3a0ec771710 Darrick J. Wong 2021-01-05 601
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-05-01 15:36 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-05-01 15:36 [djwong-xfs:vectorized-scrub 140/326] fs/xfs/libxfs/xfs_swapext.c:583:3: warning: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.