All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kevin Corry <corryk@us.ibm.com>
To: torvalds@transmeta.com
Cc: linux-kernel@vger.kernel.org, evms-devel@lists.sourceforge.net
Subject: [PATCH] EVMS core (5/9) evms_core.h
Date: Thu, 10 Oct 2002 14:37:22 -0500	[thread overview]
Message-ID: <02101014372207.17770@boiler> (raw)
In-Reply-To: <02101014305502.17770@boiler>

Greetings,

Part 5 of the EVMS core driver.

This is a private header file for the various files
that make up the core driver.

Kevin Corry
corryk@us.ibm.com
http://evms.sourceforge.net/



diff -Naur linux-2.5.41/drivers/evms/core/evms_core.h linux-2.5.41-evms/drivers/evms/core/evms_core.h
--- linux-2.5.41/drivers/evms/core/evms_core.h	Wed Dec 31 18:00:00 1969
+++ linux-2.5.41-evms/drivers/evms/core/evms_core.h	Thu Oct 10 11:16:58 2002
@@ -0,0 +1,95 @@
+/*
+ *   Copyright (c) International Business Machines  Corp., 2000 - 2002
+ *
+ *   This program is free software;  you can redistribute it and/or modify
+ *   it under the terms of the GNU General Public License as published by
+ *   the Free Software Foundation; either version 2 of the License, or
+ *   (at your option) any later version.
+ *
+ *   This program 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 this program;  if not, write to the Free Software
+ *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef __EVMS_CORE_H__
+#define __EVMS_CORE_H__
+
+#define LOG_PREFIX
+
+//#define VFS_PATCH_PRESENT
+
+/**
+ * struct evms_io_notify - IO callback hook structure
+ * @rsector:
+ * @b_private:
+ * @private:
+ * @bio:
+ * @callback_function:
+ * @flags:
+ * @bdev:
+ *
+ * IO notification structure used to track each IO callback hook.
+ **/
+struct evms_io_notify {
+	u64 rsector;
+	void *b_private;
+	void *private;
+	struct bio *bio;
+	void (*callback_function)(void *private,
+				  struct bio * bio, int *redrive);
+	unsigned int flags;
+	struct block_device *bdev;
+};
+/**
+ * field evms_io_notify.flags defines
+ **/
+#define EVMS_ORIGINAL_CALLBACK_FLAG	(1<<0)
+
+/**
+ * struct evms_kevent
+ * @uevent
+ * @list
+ */
+struct evms_kevent {
+	struct evms_event uevent;
+	struct list_head list;
+};
+
+/* Global data shared among the core files. */
+extern struct list_head evms_logical_volumes;
+extern struct list_head evms_notify_list;
+extern struct list_head evms_fbottom_list;
+extern struct list_head plugin_head;
+extern spinlock_t plugin_lock;
+extern mempool_t *evms_io_notify_pool;
+extern struct proc_dir_entry *evms_proc_dir;
+extern struct block_device_operations evms_fops;
+extern devfs_handle_t evms_dir_devfs_handle;
+extern int evms_volumes;
+
+/* Functions shared among the core files. */
+extern struct evms_logical_volume * lookup_volume(int minor);
+extern struct evms_logical_volume * find_next_volume(struct evms_logical_volume *lv);
+extern struct evms_logical_volume * find_next_volume_safe(struct evms_logical_volume **next_lv);
+extern int evms_discover_volumes(struct evms_rediscover_pkt *);
+extern void evms_discover_logical_disks(struct list_head *);
+extern int evms_quiesce_volume(struct evms_logical_volume *volume,
+			       int command, int minor, int lock_vfs);
+extern int evms_make_request_fn(request_queue_t * q, struct bio *bio);
+extern int is_busy(kdev_t dev);
+
+/* If the VFS-lock patch has not been applied, need to declare empty
+ * inline functions for fsync_dev_lockfs() and unlockfs().
+ */
+#ifndef VFS_PATCH_PRESENT
+static inline int fsync_dev_lockfs(kdev_t dev) { return 0; }
+static inline void unlockfs(kdev_t dev) { }
+#endif
+
+#endif
+
\b˜\x1f\x10A8qh\b

  parent reply	other threads:[~2002-10-10 20:15 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-10-10 19:30 [PATCH] EVMS core (0/9) Kevin Corry
2002-10-10 19:35 ` [PATCH] EVMS core (1/9) evms.c Kevin Corry
2002-10-10 19:35 ` [PATCH] EVMS core (2/9) services.c Kevin Corry
2002-10-10 19:35 ` [PATCH] EVMS core (3/9) discover.c Kevin Corry
2002-10-10 19:37 ` [PATCH] EVMS core (4/9) passthru.c Kevin Corry
2002-10-10 19:37 ` Kevin Corry [this message]
2002-10-10 19:37 ` [PATCH] EVMS core (6/9) evms.h Kevin Corry
2002-10-10 19:39 ` [PATCH] EVMS core (7/9) evms_ioctl.h Kevin Corry
2002-10-10 19:39 ` [PATCH] EVMS core (8/9) evms_biosplit.h Kevin Corry
2002-10-10 19:39 ` [PATCH] EVMS core (9/9) misc Kevin Corry

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=02101014372207.17770@boiler \
    --to=corryk@us.ibm.com \
    --cc=evms-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.