X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flustre_osc.h;h=df36985741486943c4284adc876ab340beb2b7c5;hb=70f092a0587866662735e1a6eaf27701a576370d;hp=f32f7a422de6c4e74340efa3ce41e356a5ed2b8a;hpb=6a369b59f3729513dd8e81c4964dc6183287b601;p=fs%2Flustre-release.git diff --git a/lustre/include/lustre_osc.h b/lustre/include/lustre_osc.h index f32f7a4..df36985 100644 --- a/lustre/include/lustre_osc.h +++ b/lustre/include/lustre_osc.h @@ -390,7 +390,16 @@ struct osc_lock { /** * For async glimpse lock. */ - ols_agl:1; + ols_agl:1, + /** + * for speculative locks - asynchronous glimpse locks and ladvise + * lockahead manual lock requests + * + * Used to tell osc layer to not wait for the ldlm reply from the + * server, so the osc lock will be short lived - It only exists to + * create the ldlm request and is not updated on request completion. + */ + ols_speculative:1; }; @@ -436,6 +445,18 @@ struct osc_page { cfs_time_t ops_submit_time; }; +struct osc_brw_async_args { + struct obdo *aa_oa; + int aa_requested_nob; + int aa_nio_count; + u32 aa_page_count; + int aa_resends; + struct brw_page **aa_ppga; + struct client_obd *aa_cli; + struct list_head aa_oaps; + struct list_head aa_exts; +}; + extern struct kmem_cache *osc_lock_kmem; extern struct kmem_cache *osc_object_kmem; extern struct kmem_cache *osc_thread_kmem;