X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Fobdclass%2Fcl_internal.h;h=0c1276deb37bc953b991a7e67bcea5933c2616df;hb=ccabce23bd9e366c345c852f565766a799f61238;hp=578fdc798384e63acf38a63f96c951934155128f;hpb=fbf5870b9848929d352460f1f005b79c0b5ccc5a;p=fs%2Flustre-release.git diff --git a/lustre/obdclass/cl_internal.h b/lustre/obdclass/cl_internal.h index 578fdc7..0c1276d 100644 --- a/lustre/obdclass/cl_internal.h +++ b/lustre/obdclass/cl_internal.h @@ -1,6 +1,4 @@ -/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*- - * vim:expandtab:shiftwidth=8:tabstop=8: - * +/* * GPL HEADER START * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. @@ -17,17 +15,15 @@ * * You should have received a copy of the GNU General Public License * version 2 along with this program; If not, see - * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf - * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. + * http://www.gnu.org/licenses/gpl-2.0.html * * GPL HEADER END */ /* - * Copyright 2008 Sun Microsystems, Inc. All rights reserved + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. + * + * Copyright (c) 2012, 2017, Intel Corporation. */ /* * This file is part of Lustre, http://www.lustre.org/ @@ -40,58 +36,18 @@ #ifndef _CL_INTERNAL_H #define _CL_INTERNAL_H -#define CLT_PVEC_SIZE (14) - /** * Thread local state internal for generic cl-code. */ struct cl_thread_info { - /* - * Common fields. - */ - struct cl_io clt_io; - struct cl_2queue clt_queue; - - /* - * Fields used by cl_lock.c - */ - struct cl_lock_descr clt_descr; - struct cl_page_list clt_list; - /** - * \name debugging. - * - * Counters used to check correctness of cl_lock interface usage. - * @{ - */ - /** - * Number of outstanding calls to cl_lock_mutex_get() made by the - * current thread. For debugging. - */ - int clt_nr_locks_locked; - /** List of locked locks. */ - struct lu_ref clt_locks_locked; - /** Number of outstanding holds on the top-level locks. */ - int clt_nr_held; - /** Number of outstanding uses on the top-level locks. */ - int clt_nr_used; - /** Number of held top-level extent locks. */ - int clt_nr_locks_acquired; - /** @} debugging */ - - /* - * Fields used by cl_page.c - */ - struct cl_page *clt_pvec[CLT_PVEC_SIZE]; - - /* - * Fields used by cl_io.c - */ - /** - * Pointer to the topmost ongoing IO in this thread. - */ - struct cl_io *clt_current_io; + /** + * Used for submitting a sync I/O. + */ + struct cl_sync_io clt_anchor; }; struct cl_thread_info *cl_env_info(const struct lu_env *env); +void cl_page_disown0(const struct lu_env *env, + struct cl_io *io, struct cl_page *pg); #endif /* _CL_INTERNAL_H */