[LU-6180] Fix page cache flushing when group lock is cancelled Created: 29/Jan/15  Updated: 21/Jan/22  Resolved: 21/Jan/22

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.1.6, Lustre 2.5.3
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Richard Henwood (Inactive) Assignee: WC Triage
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Related
is related to LU-6148 Strided lock proposal - Feature propo... Resolved
Severity: 3
Rank (Obsolete): 17292

 Description   

When a group lock is cancelled, it does not drop page cache entries on the client. This has the possibility of causing memory corruption if a file is using both a group lock and regular extent lock to do IO.



 Comments   
Comment by Patrick Farrell (Inactive) [ 02/Sep/15 ]

Looking at LU-6318, I wonder why pages are not flushed when a group lock is cancelled. I thought the patch there addressed the reason, but I see it's a no-op.

So, does anyone know why we're not flushing pages when a group lock is cancelled?

Comment by Andreas Dilger [ 21/Jan/22 ]

Patrick, is this still a going concern?

Comment by Patrick Farrell [ 21/Jan/22 ]

I’m almost certain not - we make much more use of them now than we used to and this would be a pretty severe bug.

I wonder in retrospect if I was mistaken when I filed this as well - not flushing pages on cancellation of an exclusive lock is a really serious bug that would break all kinds of things.  (My memory suggests I didn’t fully realize that in 2015…)

Comment by Patrick Farrell [ 21/Jan/22 ]

This issue is almost certainly not present in current versions.  We now use group locks for several things, and if this were present, we’d see data corruption much of the time we used a group lock.

Presumed resolved.

Generated at Sat Feb 10 01:57:57 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.