tangled
alpha
login
or
join now
tjh.dev
/
kernel
1
fork
atom
Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1
fork
atom
overview
issues
pulls
pipelines
Merge branch 'xfs-misc-fixes-for-3.20-1' into for-next
Dave Chinner
11 years ago
efdca7aa
d31a1825
+14
-15
5 changed files
expand all
collapse all
unified
split
fs
xfs
libxfs
xfs_format.h
xfs_buf_item.c
xfs_log.c
xfs_mount.c
xfs_super.c
+5
-5
fs/xfs/libxfs/xfs_format.h
reviewed
···
304
304
#define XFS_SB_ICOUNT XFS_SB_MVAL(ICOUNT)
305
305
#define XFS_SB_IFREE XFS_SB_MVAL(IFREE)
306
306
#define XFS_SB_FDBLOCKS XFS_SB_MVAL(FDBLOCKS)
307
307
-
#define XFS_SB_FEATURES2 XFS_SB_MVAL(FEATURES2)
308
308
-
#define XFS_SB_BAD_FEATURES2 XFS_SB_MVAL(BAD_FEATURES2)
307
307
+
#define XFS_SB_FEATURES2 (XFS_SB_MVAL(FEATURES2) | \
308
308
+
XFS_SB_MVAL(BAD_FEATURES2))
309
309
#define XFS_SB_FEATURES_COMPAT XFS_SB_MVAL(FEATURES_COMPAT)
310
310
#define XFS_SB_FEATURES_RO_COMPAT XFS_SB_MVAL(FEATURES_RO_COMPAT)
311
311
#define XFS_SB_FEATURES_INCOMPAT XFS_SB_MVAL(FEATURES_INCOMPAT)
···
319
319
XFS_SB_VERSIONNUM | XFS_SB_UQUOTINO | XFS_SB_GQUOTINO | \
320
320
XFS_SB_QFLAGS | XFS_SB_SHARED_VN | XFS_SB_UNIT | XFS_SB_WIDTH | \
321
321
XFS_SB_ICOUNT | XFS_SB_IFREE | XFS_SB_FDBLOCKS | XFS_SB_FEATURES2 | \
322
322
-
XFS_SB_BAD_FEATURES2 | XFS_SB_FEATURES_COMPAT | \
323
323
-
XFS_SB_FEATURES_RO_COMPAT | XFS_SB_FEATURES_INCOMPAT | \
324
324
-
XFS_SB_FEATURES_LOG_INCOMPAT | XFS_SB_PQUOTINO)
322
322
+
XFS_SB_FEATURES_COMPAT | XFS_SB_FEATURES_RO_COMPAT | \
323
323
+
XFS_SB_FEATURES_INCOMPAT | XFS_SB_FEATURES_LOG_INCOMPAT | \
324
324
+
XFS_SB_PQUOTINO)
325
325
326
326
327
327
/*
+1
-1
fs/xfs/xfs_buf_item.c
reviewed
···
535
535
if ((bp->b_flags & XBF_WRITE_FAIL) &&
536
536
___ratelimit(&xfs_buf_write_fail_rl_state, "XFS:")) {
537
537
xfs_warn(bp->b_target->bt_mount,
538
538
-
"Detected failing async write on buffer block 0x%llx. Retrying async write.\n",
538
538
+
"Detected failing async write on buffer block 0x%llx. Retrying async write.",
539
539
(long long)bp->b_bn);
540
540
}
541
541
+5
-5
fs/xfs/xfs_log.c
reviewed
···
1395
1395
ASSERT(xfs_buf_islocked(bp));
1396
1396
xfs_buf_unlock(bp);
1397
1397
1398
1398
+
/* use high priority wq for log I/O completion */
1399
1399
+
bp->b_ioend_wq = mp->m_log_workqueue;
1398
1400
bp->b_iodone = xlog_iodone;
1399
1401
log->l_xbuf = bp;
1400
1402
···
1429
1427
ASSERT(xfs_buf_islocked(bp));
1430
1428
xfs_buf_unlock(bp);
1431
1429
1430
1430
+
/* use high priority wq for log I/O completion */
1431
1431
+
bp->b_ioend_wq = mp->m_log_workqueue;
1432
1432
bp->b_iodone = xlog_iodone;
1433
1433
iclog->ic_bp = bp;
1434
1434
iclog->ic_data = bp->b_addr;
···
1810
1806
XFS_BUF_ZEROFLAGS(bp);
1811
1807
XFS_BUF_ASYNC(bp);
1812
1808
bp->b_flags |= XBF_SYNCIO;
1813
1813
-
/* use high priority completion wq */
1814
1814
-
bp->b_ioend_wq = log->l_mp->m_log_workqueue;
1815
1809
1816
1810
if (log->l_mp->m_flags & XFS_MOUNT_BARRIER) {
1817
1811
bp->b_flags |= XBF_FUA;
···
1858
1856
bp->b_flags |= XBF_SYNCIO;
1859
1857
if (log->l_mp->m_flags & XFS_MOUNT_BARRIER)
1860
1858
bp->b_flags |= XBF_FUA;
1861
1861
-
/* use high priority completion wq */
1862
1862
-
bp->b_ioend_wq = log->l_mp->m_log_workqueue;
1863
1859
1864
1860
ASSERT(XFS_BUF_ADDR(bp) <= log->l_logBBsize-1);
1865
1861
ASSERT(XFS_BUF_ADDR(bp) + BTOBB(count) <= log->l_logBBsize);
···
2027
2027
" total reg = %u bytes (o/flow = %u bytes)\n"
2028
2028
" ophdrs = %u (ophdr space = %u bytes)\n"
2029
2029
" ophdr + reg = %u bytes\n"
2030
2030
-
" num regions = %u\n",
2030
2030
+
" num regions = %u",
2031
2031
((ticket->t_trans_type <= 0 ||
2032
2032
ticket->t_trans_type > XFS_TRANS_TYPE_MAX) ?
2033
2033
"bad-trans-type" : trans_type_str[ticket->t_trans_type-1]),
+2
-3
fs/xfs/xfs_mount.c
reviewed
···
678
678
xfs_warn(mp, "correcting sb_features alignment problem");
679
679
sbp->sb_features2 |= sbp->sb_bad_features2;
680
680
sbp->sb_bad_features2 = sbp->sb_features2;
681
681
-
mp->m_update_flags |= XFS_SB_FEATURES2 | XFS_SB_BAD_FEATURES2;
681
681
+
mp->m_update_flags |= XFS_SB_FEATURES2;
682
682
683
683
/*
684
684
* Re-check for ATTR2 in case it was found in bad_features2
···
1436
1436
int error;
1437
1437
1438
1438
ASSERT(fields & (XFS_SB_UNIT | XFS_SB_WIDTH | XFS_SB_UUID |
1439
1439
-
XFS_SB_FEATURES2 | XFS_SB_BAD_FEATURES2 |
1440
1440
-
XFS_SB_VERSIONNUM));
1439
1439
+
XFS_SB_FEATURES2 | XFS_SB_VERSIONNUM));
1441
1440
1442
1441
tp = xfs_trans_alloc(mp, XFS_TRANS_SB_UNIT);
1443
1442
error = xfs_trans_reserve(tp, &M_RES(mp)->tr_sb, 0, 0);
+1
-1
fs/xfs/xfs_super.c
reviewed
···
685
685
mp);
686
686
if (IS_ERR(*bdevp)) {
687
687
error = PTR_ERR(*bdevp);
688
688
-
xfs_warn(mp, "Invalid device [%s], error=%d\n", name, error);
688
688
+
xfs_warn(mp, "Invalid device [%s], error=%d", name, error);
689
689
}
690
690
691
691
return error;