tree:   https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git 
rough-fixes
head:   ae1c25db15def1677727ab5cf7d212229ea75599
commit: f14d4e66d5f8f9c3318e1ef1360176664cbd6f24 [6/105] xfs: clear BAD_SUMMARY 
if unmounting an unhealthy filesystem

smatch warnings:
fs/xfs/xfs_health.c:44 xfs_health_unmount() error: uninitialized symbol 'sick'.

# 
https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/commit/?id=f14d4e66d5f8f9c3318e1ef1360176664cbd6f24
git remote add djwong-xfs 
https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git
git remote update djwong-xfs
git checkout f14d4e66d5f8f9c3318e1ef1360176664cbd6f24
vim +/sick +44 fs/xfs/xfs_health.c

f3b8d0c9 Darrick J. Wong 2019-03-17  21  
f14d4e66 Darrick J. Wong 2019-03-20  22  /*
f14d4e66 Darrick J. Wong 2019-03-20  23   * Warn about metadata corruption that 
we detected but haven't fixed, and
f14d4e66 Darrick J. Wong 2019-03-20  24   * make sure we're not sitting on 
anything that would get in the way of
f14d4e66 Darrick J. Wong 2019-03-20  25   * recovery.
f14d4e66 Darrick J. Wong 2019-03-20  26   */
f14d4e66 Darrick J. Wong 2019-03-20  27  void
f14d4e66 Darrick J. Wong 2019-03-20  28  xfs_health_unmount(
f14d4e66 Darrick J. Wong 2019-03-20  29         struct xfs_mount        *mp)
f14d4e66 Darrick J. Wong 2019-03-20  30  {
f14d4e66 Darrick J. Wong 2019-03-20  31         struct xfs_perag        *pag;
f14d4e66 Darrick J. Wong 2019-03-20  32         xfs_agnumber_t          agno;
f14d4e66 Darrick J. Wong 2019-03-20  33         unsigned int            sick;
                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

f14d4e66 Darrick J. Wong 2019-03-20  34         bool                    warn = 
false;
f14d4e66 Darrick J. Wong 2019-03-20  35  
f14d4e66 Darrick J. Wong 2019-03-20  36         if (XFS_FORCED_SHUTDOWN(mp))
f14d4e66 Darrick J. Wong 2019-03-20  37                 return;
f14d4e66 Darrick J. Wong 2019-03-20  38  
f14d4e66 Darrick J. Wong 2019-03-20  39         /* Measure AG corruption 
levels. */
f14d4e66 Darrick J. Wong 2019-03-20  40         for (agno = 0; agno < 
mp->m_sb.sb_agcount; agno++) {
f14d4e66 Darrick J. Wong 2019-03-20  41                 pag = xfs_perag_get(mp, 
agno);
f14d4e66 Darrick J. Wong 2019-03-20  42                 
spin_lock(&pag->pag_state_lock);
f14d4e66 Darrick J. Wong 2019-03-20  43                 if (pag->pag_sick) {
f14d4e66 Darrick J. Wong 2019-03-20 @44                         
trace_xfs_ag_unfixed_corruption(mp, agno, sick);
                                                                                
                          ^^^^

f14d4e66 Darrick J. Wong 2019-03-20  45                         warn = true;
f14d4e66 Darrick J. Wong 2019-03-20  46                 }
f14d4e66 Darrick J. Wong 2019-03-20  47                 
spin_unlock(&pag->pag_state_lock);
f14d4e66 Darrick J. Wong 2019-03-20  48                 xfs_perag_put(pag);
f14d4e66 Darrick J. Wong 2019-03-20  49         }
f14d4e66 Darrick J. Wong 2019-03-20  50  
f14d4e66 Darrick J. Wong 2019-03-20  51         /* Measure realtime volume 
corruption levels. */
f14d4e66 Darrick J. Wong 2019-03-20  52         sick = 
xfs_rt_measure_sickness(mp);
                                                
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

f14d4e66 Darrick J. Wong 2019-03-20  53         if (sick) {
f14d4e66 Darrick J. Wong 2019-03-20  54                 
trace_xfs_rt_unfixed_corruption(mp, sick);
f14d4e66 Darrick J. Wong 2019-03-20  55                 warn = true;
f14d4e66 Darrick J. Wong 2019-03-20  56         }
f14d4e66 Darrick J. Wong 2019-03-20  57  
f14d4e66 Darrick J. Wong 2019-03-20  58         /* Measure fs corruption and 
keep the sample around for the warning. */
f14d4e66 Darrick J. Wong 2019-03-20  59         sick = 
xfs_fs_measure_sickness(mp);

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
_______________________________________________
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild

Reply via email to