From 44c545d9505e2fe1a527bfae9c1798862907846c Mon Sep 17 00:00:00 2001 From: zab Date: Tue, 7 Oct 2003 05:11:58 +0000 Subject: [PATCH] b=1948 r=phil Restore the echo_client to working order. We fix up the object creation paths and fix up some bad export refcounting behaviour. - get rid of an extra export put in the lov_disconnect path. This was covering up for an export leak in oscc_init. We put that export reference in osc_disconnect. - add a little helper to transfer the object group number from the obdo to the io obj. - have the echo_client use group 2 for its objects so it doesn't conflict with the group 0 objects used by the filesystem. - get the oid from obd_create from the lsm_obj_id returned instead of the overloaded o_id - get rid of some extra export_puts in the echo_client's brw testing paths - get rid of an extra export_put in echo_client_cleanup - alter quite a bit of the filter object paths to pass the proper group around - fix up some assumptions the filter has about group numbers that are no longer true after the addition of the echo_client's group 2. this is begging for some enums. - stop lbuging when io is attempted in the filter against an object that doesn't exist - only do pre-creation in the filter for group 0 - be sure to set the caller's lsm in all filter_create success paths - pass osc create requests right on to the ost if they aren't in group 0 - in your face, tab! --- lustre/osc/osc_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lustre/osc/osc_internal.h b/lustre/osc/osc_internal.h index c5a1731..ea7f12e 100644 --- a/lustre/osc/osc_internal.h +++ b/lustre/osc/osc_internal.h @@ -2,7 +2,7 @@ int osc_create(struct obd_export *exp, struct obdo *oa, struct lov_stripe_md **ea, struct obd_trans_info *oti); int osc_real_create(struct obd_export *exp, struct obdo *oa, struct lov_stripe_md **ea, struct obd_trans_info *oti); -void oscc_init(struct lustre_handle *exph); +void oscc_init(struct obd_export *exp); int lproc_osc_attach_seqstat(struct obd_device *dev); extern atomic_t osc_max_rpcs_in_flight; -- 1.8.3.1