[LU-12092] Reduce round trip for PFL component instantiation Created: 20/Mar/19  Updated: 25/Jun/19  Resolved: 25/Jun/19

Status: Resolved
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: Fixed Votes: 0
Labels: None

Rank (Obsolete): 9223372036854775807

 Description   

Currently, when a client sends a write intent to the server to instantiate a new layout component, the server handles the write intent and grants an EX lock on the layout to the client.  The client restarts its i/o and then calls ll_refresh_layout to get the updated layout.  Refresh layout does not look for EX locks, so the client requests a new lock from the server, which cancels its own EX lock before granting the new lock, generating multiple extra round trips.

This is unnecessary - the client can use the EX lock to refresh the layout.  The lock will be cancelled by another client when needed.

A tiny local benchmark of writing 1K in to a new PFL component suggests this reduces the time to instantiate by 50% (comparison is already instantiated file vs PFL instantiation vs PFL instantiation + patch), and overall time for this 1K write by ~10%.



 Comments   
Comment by Gerrit Updater [ 20/Mar/19 ]

Patrick Farrell (pfarrell@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/34475
Subject: LU-12092 llite: Allow EX lock for layout refresh
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 4a57d7601e0d61a1d7dd7376b8fc8092716c0810

Comment by Patrick Farrell (Inactive) [ 25/Jun/19 ]

Fixed in https://review.whamcloud.com/35232 (LU-10070)

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