XFS already does it's own validity checks here.
Signed-off-by: Christoph Hellwig <hch@lst.de>
op |= REQ_RAHEAD;
}
- return op | REQ_META;
+ /*
+ * The XFS self-describing metadata contains a crc32, an either
+ * explicitly or implicitly encoded disk address and the log sequence
+ * number for each metadata block. Generating and verifying integrity
+ * metadata in the kernel adds no significant value, but adds additional
+ * memory allocations, context switches and on-the-wire traffic.
+ */
+ return op | REQ_META | REQ_NOINTEGRITY;
}
static void
*/
bio_init(&iclog->ic_bio, log->l_targ->bt_bdev, iclog->ic_bvec,
howmany(count, PAGE_SIZE),
- REQ_OP_WRITE | REQ_META | REQ_SYNC | REQ_IDLE);
+ REQ_OP_WRITE | REQ_META | REQ_SYNC | REQ_IDLE |
+ REQ_NOINTEGRITY);
iclog->ic_bio.bi_iter.bi_sector = log->l_logBBstart + bno;
iclog->ic_bio.bi_end_io = xlog_bio_end_io;
iclog->ic_bio.bi_private = iclog;
ASSERT(nbblks > 0);
error = xfs_rw_bdev(log->l_targ->bt_bdev, log->l_logBBstart + blk_no,
- BBTOB(nbblks), data, op);
+ BBTOB(nbblks), data, op | REQ_NOINTEGRITY);
if (error && !xlog_is_shutdown(log)) {
xfs_alert(log->l_mp,
"log recovery %s I/O error at daddr 0x%llx len %d error %d",