Whamcloud - gitweb
LU-13305 osc: rid of an invalid assertion 14/56914/2
authorBobi Jam <bobijam@whamcloud.com>
Thu, 7 Nov 2024 17:00:46 +0000 (01:00 +0800)
committerOleg Drokin <green@whamcloud.com>
Mon, 9 Dec 2024 06:14:19 +0000 (06:14 +0000)
When osc_cache_truncate_start() race with ldlm lock blocking ast,
they would access the same extent, and the ext would has oe_hp
set by osc_cache_writeback_range() from the data flush caused by
ldlm lock canceling.

So the EASSERT(!ext->oe_hp && !ext->oe_urgent, ext) is invalid in
this case.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I15514c54af598f2a130c0ac0a3f356468b4cdfce
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56914
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/osc/osc_cache.c

index dafc9d3..a7a97e7 100644 (file)
@@ -2710,7 +2710,6 @@ again:
                                           -ext->oe_nr_pages);
                }
                /* This extent could be on the full extents list, that's OK */
-               EASSERT(!ext->oe_hp && !ext->oe_urgent, ext);
                if (!list_empty(&ext->oe_link))
                        list_move_tail(&ext->oe_link, &list);
                else