[LU-9254] Add administrator only drop caches command to ladvise Created: 24/Mar/17  Updated: 30/Jan/22

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Minor
Reporter: Patrick Farrell (Inactive) Assignee: Patrick Farrell (Inactive)
Resolution: Unresolved Votes: 0
Labels: patch

Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

An eternally recurring request from our benchmark team at Cray is an easy way from the client side to force the server to drop its cache. This is purely for benchmarking purposes, and of course must be limited to elevated users only.

I've written a small patch to add this functionality to ladvise, using an upcall on the server side. As it is currently, it is a pretty blunt instrument, in that it will cause all the OSSes where the file resides (i.e. which host any of the OSTs for the file) to call drop caches. However, this is by design, because the benchmarkers want to clean out everything on the server. (Again, this is not intended to be used during normal use of a system, but only by elevated users in specific circumstances.)

As it stands, this patch is RFC. I've tested it and verified it works, but there are a number of open questions/things to resolve.

1. Is ladvise the right place for this, even when requiring evelated permission?
2. Is the "call this on a file, and it will act on all OSSes responsible for parts of that file" the right interface? There is a clear opportunity to accept a striping pattern into the command, and then create a special hidden file (similar to migrate and some of the HSM functionality) and call the ioctl on that file. I chose not to do this because it seems like too much to bring the interface required to describe a setstripe operation into the ladvise interface
3. Details of how the script is packaged, named, etc.



 Comments   
Comment by Gerrit Updater [ 24/Mar/17 ]

Patrick Farrell (paf@cray.com) uploaded a new patch: https://review.whamcloud.com/26181
Subject: LU-9254 llite: Add ladvise dropcaches
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 69c958fd847f8f147ccdfd7a1a2fe628cb81ba96

Comment by Patrick Farrell (Inactive) [ 24/Mar/17 ]

One key piece of information I left out: Because servers are often on different networks, it can be very difficult to integrate sending this sort of command in to testing scripts, etc. Hence the need for this command.

Generated at Sat Feb 10 02:24:33 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.