Whamcloud - gitweb
some fixes on llog
authorlincent <lincent>
Mon, 10 Oct 2005 13:28:40 +0000 (13:28 +0000)
committerlincent <lincent>
Mon, 10 Oct 2005 13:28:40 +0000 (13:28 +0000)
lustre/ldlm/ldlm_internal.h
lustre/ldlm/ldlm_lock.c
lustre/mgc/mgc_llog.c

index 2967ab8..b0c8cd7 100644 (file)
@@ -49,6 +49,9 @@ int ldlm_process_extent_lock(struct ldlm_lock *lock, int *flags, int first_enq,
 /* ldlm_flock.c */
 int ldlm_process_flock_lock(struct ldlm_lock *lock, int *flags, int first_enq,
                             ldlm_error_t *err);
+/* ldlm_llog.c */
+int ldlm_process_llog_lock(struct ldlm_lock *lock, int *flags, int first_enq,
+                           ldlm_error_t *err);
 
 /* l_lock.c */
 void l_check_ns_lock(struct ldlm_namespace *ns);
index 8749c69..19247fc 100644 (file)
@@ -90,6 +90,7 @@ static ldlm_processing_policy ldlm_processing_policy_table[] = {
         [LDLM_EXTENT] ldlm_process_extent_lock,
 #ifdef __KERNEL__
         [LDLM_FLOCK] ldlm_process_flock_lock,
+        [LDLM_LLOG]  ldlm_process_llog_lock,
 #endif
 };
 
index e69de29..07b05de 100644 (file)
@@ -0,0 +1,49 @@
+/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
+ * vim:expandtab:shiftwidth=8:tabstop=8:
+ *
+ *  Copyright (C) 2001-2005 Cluster File Systems, Inc.
+ *   Author LinSongTao <lincent@clusterfs.com>
+ *
+ *   This file is part of Lustre, http://www.lustre.org
+ *
+ *   Lustre is free software; you can redistribute it and/or
+ *   modify it under the terms of version 2 of the GNU General Public
+ *   License as published by the Free Software Foundation.
+ *
+ *   Lustre is distributed in the hope that it will be useful,
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *   GNU General Public License for more details.
+ *
+ *   You should have received a copy of the GNU General Public License
+ *   along with Lustre; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ *  For testing and management it is treated as an obd_device,
+ *  although * it does not export a full OBD method table (the
+ *  requests are coming * in over the wire, so object target modules
+ *  do not have a full * method table.)
+ */
+#ifndef EXPORT_SYMTAB
+# define EXPORT_SYMTAB
+#endif
+#define DEBUG_SUBSYSTEM S_MGC
+
+#ifdef __KERNEL__
+# include <linux/module.h>
+# include <linux/pagemap.h>
+# include <linux/miscdevice.h>
+# include <linux/init.h>
+#else
+# include <liblustre.h>
+#endif
+
+#include <linux/obd_class.h>
+#include <linux/lustre_dlm.h>
+#include <linux/lustre_log.h>
+#include <linux/lustre_fsfilt.h>
+#include <linux/lustre_disk.h>
+
+#include "mgc_internal.h"
+
+static