#include <linux/errno.h>
#include <linux/kernel.h>
#include <linux/major.h>
-#include <linux/kmod.h> /* for request_module() */
#include <linux/sched.h>
#include <linux/lp.h>
#include <linux/slab.h>
for (i = 0 ; i < MAX_OBD_DEVICES ; i++) {
int l;
+ char *status;
struct obd_device *obd = &obd_dev[i];
if (!obd->obd_type)
continue;
- l = snprintf(buf2, remains, "%2d %s %s %s\n",
- i, obd->obd_type->typ_name,
+ if (obd->obd_flags & OBD_SET_UP)
+ status = "*";
+ else
+ status = " ";
+ l = snprintf(buf2, remains, "%2d %s %s %s %s\n",
+ i, status, obd->obd_type->typ_name,
obd->obd_name, obd->obd_uuid);
buf2 +=l;
remains -=l;
obd->obd_minor, data->ioc_inlbuf1);
if (data->ioc_inlbuf2) {
int len = strlen(data->ioc_inlbuf2) + 1;
- OBD_ALLOC(obd->obd_name, len + 1);
+ OBD_ALLOC(obd->obd_name, len);
if (!obd->obd_name) {
CERROR("no memory\n");
LBUG();
}
- memcpy(obd->obd_name, data->ioc_inlbuf2, len + 1);
- obd->obd_proc_entry =
- proc_lustre_register_obd_device(obd);
+ memcpy(obd->obd_name, data->ioc_inlbuf2, len);
+ //obd->obd_proc_entry =
+ // proc_lustre_register_obd_device(obd);
} else {
CERROR("WARNING: unnamed obd device\n");
obd->obd_proc_entry = NULL;
}
if (obd->obd_name) {
- OBD_FREE(obd->obd_name, strlen(obd->obd_name)+ 1);
+ OBD_FREE(obd->obd_name, strlen(obd->obd_name)+1);
obd->obd_name = NULL;
}
- if (obd->obd_proc_entry)
- proc_lustre_release_obd_device(obd);
+ //if (obd->obd_proc_entry)
+ // proc_lustre_release_obd_device(obd);
obd->obd_flags &= ~OBD_ATTACHED;
obd->obd_type->typ_refcnt--;
*/
#define DEBUG_SUBSYSTEM S_CLASS
+#include <linux/kmod.h> /* for request_module() */
#include <linux/module.h>
#include <linux/obd_class.h>
#include <linux/random.h>
int res = -1;
int i;
+ if (!name)
+ return -1;
+
for (i=0; i < MAX_OBD_DEVICES; i++) {
struct obd_device *obd = &obd_dev[i];
if (obd->obd_name && strcmp(name, obd->obd_name) == 0) {
static int filter_connect(struct lustre_handle *conn, struct obd_device *obd)
{
int rc;
-
+ ENTRY;
MOD_INC_USE_COUNT;
rc = class_connect(conn, obd);
if (rc)
MOD_DEC_USE_COUNT;
-
- return rc;
+ RETURN(rc);
}
static int filter_disconnect(struct lustre_handle *conn)
{
int rc;
+ ENTRY;
rc = class_disconnect(conn);
if (!rc)
MOD_DEC_USE_COUNT;
/* XXX cleanup preallocated inodes */
- return rc;
+ RETURN(rc);
}
/* mount the file system (secretly) */
}
setup_server() {
- setup_mds $1 && setup_mds_lov $1 && setup_ost $1
+ #setup_mds $1 && setup_mds_lov $1 && setup_ost $1
+ setup_mds $1 && setup_ost $1
}
setup_osc() {
}
setup_client() {
- setup_osc && setup_mdc && setup_lov && setup_mount
+ # setup_osc && setup_mdc && setup_lov && setup_mount
+ setup_osc && setup_mdc && setup_mount
}
DEBUG_ON="echo 0xffffffff > /proc/sys/portals/debug"