Whamcloud - gitweb
LU-18218 llog: catalog lgh_lock refactoring 41/56341/12
authorAlexander Boyko <alexander.boyko@hpe.com>
Thu, 26 Sep 2024 22:40:50 +0000 (18:40 -0400)
committerOleg Drokin <green@whamcloud.com>
Thu, 2 Jan 2025 20:41:41 +0000 (20:41 +0000)
commit8047d75a5b66fbad12255d810ae0a573c52908a7
tree4d30d8e152a2c49f396c00c017dc4bd555681bbd
parent56a9ba02ae1effa0cce2171b23a74422d038fdc0
LU-18218 llog: catalog lgh_lock refactoring

-call down_read for list processing, and don't use it for
 single pointer reading.
-pass catalog flags to plain log.

llog_osd_prev_block() does not read from the end of file to
the beggining, and duplicates llog_osd_next_block.
tail->lrh_len was used without swabbing, it is an error.

Fixes llog_client error processing, according to llog_osd_next_block
EIO -> EBADR change.

It fixes test_135 race where only one record at llog. A cancel
happens before ENOSPC, a llog stays empty at catalog and could not be
deleted.

Fixes: 1a24dcdce121 ("LU-15938 lod: prevent endless retry in recovery thread")
HPE-bug-id: LUS-11970
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I353b3f291f2de65924f90650a400333a747a4f74
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56341
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alexey Lyashkov <alexey.lyashkov@hpe.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/obdclass/llog.c
lustre/obdclass/llog_cat.c
lustre/obdclass/llog_osd.c
lustre/ptlrpc/llog_client.c