Whamcloud - gitweb
git://git.whamcloud.com
/
fs
/
lustre-release.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
Land b_smallfix onto HEAD (20040423_1603)
[fs/lustre-release.git]
/
lustre
/
utils
/
obdiolib.c
diff --git
a/lustre/utils/obdiolib.c
b/lustre/utils/obdiolib.c
index
04dae88
..
b948c45
100644
(file)
--- a/
lustre/utils/obdiolib.c
+++ b/
lustre/utils/obdiolib.c
@@
-38,7
+38,7
@@
obdio_iocinit (struct obdio_conn *conn)
{
memset (&conn->oc_data, 0, sizeof (conn->oc_data));
conn->oc_data.ioc_version = OBD_IOCTL_VERSION;
- conn->oc_data.ioc_
cookie = conn->oc_conn_cooki
e;
+ conn->oc_data.ioc_
dev = conn->oc_devic
e;
conn->oc_data.ioc_len = sizeof (conn->oc_data);
}
@@
-74,7
+74,6
@@
struct obdio_conn *
obdio_connect (int device)
{
struct obdio_conn *conn;
- int rc;
conn = malloc (sizeof (*conn));
if (conn == NULL) {
@@
-90,24
+89,7
@@
obdio_connect (int device)
goto failed;
}
- obdio_iocinit (conn);
- conn->oc_data.ioc_dev = device;
- rc = obdio_ioctl (conn, OBD_IOC_DEVICE);
- if (rc != 0) {
- fprintf (stderr, "obdio_connect: Can't set device %d: %s\n",
- device, strerror (errno));
- goto failed;
- }
-
- obdio_iocinit (conn);
- rc = obdio_ioctl (conn, OBD_IOC_CONNECT);
- if (rc != 0) {
- fprintf(stderr, "obdio_connect: Can't connect to device "
- "%d: %s\n", device, strerror (errno));
- goto failed;
- }
-
- conn->oc_conn_cookie = conn->oc_data.ioc_cookie;
+ conn->oc_device = device;
return (conn);
failed:
@@
-124,40
+106,6
@@
obdio_disconnect (struct obdio_conn *conn, int flags)
}
int
-obdio_open (struct obdio_conn *conn, uint64_t oid, struct lustre_handle *fh)
-{
- int rc;
-
- obdio_iocinit (conn);
-
- conn->oc_data.ioc_obdo1.o_id = oid;
- conn->oc_data.ioc_obdo1.o_mode = S_IFREG;
- conn->oc_data.ioc_obdo1.o_valid = OBD_MD_FLID | OBD_MD_FLTYPE | OBD_MD_FLMODE;
-
- rc = obdio_ioctl (conn, OBD_IOC_OPEN);
-
- if (rc == 0)
- memcpy (fh, obdo_handle(&conn->oc_data.ioc_obdo1), sizeof (*fh));
-
- return (rc);
-}
-
-int
-obdio_close (struct obdio_conn *conn, uint64_t oid, struct lustre_handle *fh)
-{
- obdio_iocinit (conn);
-
-
- conn->oc_data.ioc_obdo1.o_id = oid;
- conn->oc_data.ioc_obdo1.o_mode = S_IFREG;
- memcpy (obdo_handle (&conn->oc_data.ioc_obdo1), fh, sizeof (*fh));
- conn->oc_data.ioc_obdo1.o_valid = OBD_MD_FLID | OBD_MD_FLTYPE |
- OBD_MD_FLMODE | OBD_MD_FLHANDLE;
-
- return (obdio_ioctl (conn, OBD_IOC_CLOSE));
-}
-
-int
obdio_pread (struct obdio_conn *conn, uint64_t oid,
char *buffer, uint32_t count, uint64_t offset)
{
@@
-264,7
+212,6
@@
obdio_new_barrier (uint64_t oid, uint64_t id, int npeers)
int
obdio_setup_barrier (struct obdio_conn *conn, struct obdio_barrier *b)
{
- struct lustre_handle fh;
struct lustre_handle lh;
int rc;
int rc2;
@@
-277,19
+224,11
@@
obdio_setup_barrier (struct obdio_conn *conn, struct obdio_barrier *b)
abort ();
}
- rc = obdio_open (conn, b->ob_oid, &fh);
- if (rc != 0) {
- fprintf (stderr, "obdio_setup_barrier "LPX64": Failed to open object: %s\n",
- b->ob_oid, strerror (errno));
- return (rc);
- }
-
fileb = (struct obdio_barrier *) obdio_alloc_aligned_buffer (&space, getpagesize ());
if (fileb == NULL) {
fprintf (stderr, "obdio_setup_barrier "LPX64": Can't allocate page buffer\n",
b->ob_oid);
- rc = -1;
- goto out_0;
+ return (-1);
}
memset (fileb, 0, getpagesize ());
@@
-299,7
+238,7
@@
obdio_setup_barrier (struct obdio_conn *conn, struct obdio_barrier *b)
if (rc != 0) {
fprintf (stderr, "obdio_setup_barrier "LPX64": Error on enqueue: %s\n",
b->ob_oid, strerror (errno));
- goto out
_1
;
+ goto out;
}
rc = obdio_pwrite (conn, b->ob_oid, (void *)fileb, getpagesize (), 0);
@@
-313,23
+252,14
@@
obdio_setup_barrier (struct obdio_conn *conn, struct obdio_barrier *b)
b->ob_oid, strerror (errno));
rc = rc2;
}
- out
_1
:
+ out:
free (space);
- out_0:
- rc2 = obdio_close (conn, b->ob_oid, &fh);
- if (rc == 0 && rc2 != 0) {
- fprintf (stderr, "obdio_setup_barrier "LPX64": Error on close: %s\n",
- b->ob_oid, strerror (errno));
- rc = rc2;
- }
-
return (rc);
}
int
obdio_barrier (struct obdio_conn *conn, struct obdio_barrier *b)
{
- struct lustre_handle fh;
struct lustre_handle lh;
int rc;
int rc2;
@@
-337,19
+267,11
@@
obdio_barrier (struct obdio_conn *conn, struct obdio_barrier *b)
struct obdio_barrier *fileb;
char *mode;
- rc = obdio_open (conn, b->ob_oid, &fh);
- if (rc != 0) {
- fprintf (stderr, "obdio_barrier "LPX64": Error on open: %s\n",
- b->ob_oid, strerror (errno));
- return (rc);
- }
-
fileb = (struct obdio_barrier *) obdio_alloc_aligned_buffer (&space, getpagesize ());
if (fileb == NULL) {
fprintf (stderr, "obdio_barrier "LPX64": Can't allocate page buffer\n",
b->ob_oid);
- rc = -1;
- goto out_0;
+ return (-1);
}
rc = obdio_enqueue (conn, b->ob_oid, LCK_PW, 0, getpagesize (), &lh);
@@
-450,14
+372,6
@@
obdio_barrier (struct obdio_conn *conn, struct obdio_barrier *b)
}
out_1:
free (space);
- out_0:
- rc2 = obdio_close (conn, b->ob_oid, &fh);
- if (rc == 0 && rc2 != 0) {
- fprintf (stderr, "obdio_barrier "LPX64": Error on close: %s\n",
- b->ob_oid, strerror (errno));
- rc = rc2;
- }
-
return (rc);
}