Whamcloud - gitweb
If you free a string ... it can cost a lot of time.
authorbraam <braam>
Mon, 5 Nov 2001 22:20:52 +0000 (22:20 +0000)
committerbraam <braam>
Mon, 5 Nov 2001 22:20:52 +0000 (22:20 +0000)
lustre/demos/config.sh
lustre/include/linux/obdfs.h
lustre/include/linux/obdo.h
lustre/obdclass/class_obd.c
lustre/obdclass/obdcontrol

index 57c713d..5a5140d 100644 (file)
@@ -25,6 +25,7 @@ OBDMAJ=186
 
 # If LOOPDEV is empty, then it is assumed that BASEDEV is a real block device
 # that doesn't mind being overwritten - don't use a partition with data on it!!
+LOOPDEV=""
 BASEDEV="/dev/hda5"
 
 # The following are mount points for the filesystems during the test.
index cd0b10e..ff959e2 100644 (file)
@@ -221,6 +221,7 @@ static void inline obdfs_set_size (struct inode *inode, obd_size size)
 } /* obdfs_set_size */
 
 
+
 #define obd_down(mutex) {                                               \
         /* CDEBUG(D_INFO, "get lock\n"); */                             \
         obdfs_mutex_start = jiffies;                                    \
index 1b456e9..c410354 100644 (file)
@@ -83,15 +83,6 @@ static void inline obdfs_to_inode(struct inode *inode, struct obdo *oa)
         }
 } /* obdfs_to_inode */
 
-static void inline obdfs_set_size (struct inode *inode, obd_size size)
-{
-       inode->i_size = size;
-       inode->i_blocks = (inode->i_size + inode->i_sb->s_blocksize - 1) >>
-               inode->i_sb->s_blocksize_bits;
-       inode->i_bytes = inode->i_size &
-               ((1 << inode->i_sb->s_blocksize_bits) - 1);
-} /* obdfs_set_size */
-
 #define NOLOCK 0
 #define LOCKED 1
 
index 02518e1..bf57215 100644 (file)
@@ -336,7 +336,6 @@ static int obd_class_ioctl (struct inode * inode, struct file * filp,
                        int setup_rdev;
                         void *setup_data;
                 } *setup;
-               char *user_path;
 
                 setup = tmp_buf;
 
@@ -363,7 +362,6 @@ static int obd_class_ioctl (struct inode * inode, struct file * filp,
                  EXIT;
                  return err;
                }
-               user_path = setup->setup_data;
 
                 /* get the attach data */
                 err = getdata(setup->setup_datalen, &setup->setup_data);
@@ -372,11 +370,9 @@ static int obd_class_ioctl (struct inode * inode, struct file * filp,
                         return err;
                 }
                obddev->obd_rdev = setup->setup_rdev;
-               obddev->obd_user_name = user_path;
+               obddev->obd_user_name = (char *)setup->setup_data;
 
                 /* do the setup */
-                CDEBUG(D_PSDEV, "Setup %d, type %s device %x\n", dev, 
-                       obddev->obd_type->typ_name, setup->setup_rdev);
                 if ( !OBT(obddev) || !OBP(obddev, setup) ) {
                         obddev->obd_type->typ_refcnt++;
                         CDEBUG(D_PSDEV, "Dev %d refcount now %d\n",
@@ -389,6 +385,10 @@ static int obd_class_ioctl (struct inode * inode, struct file * filp,
                         return 0;
                 }
 
+                CDEBUG(D_PSDEV, "Setup %d, type %s device %x, %s, len %d\n", dev, 
+                       obddev->obd_type->typ_name, setup->setup_rdev,
+                      obddev->obd_user_name, setup->setup_datalen);
+
                 err = OBP(obddev, setup)(obddev, 0, NULL);
                           
                 if ( err )  {
@@ -401,7 +401,7 @@ static int obd_class_ioctl (struct inode * inode, struct file * filp,
                         obddev->obd_flags |= OBD_SET_UP;
                         EXIT;
                 }
-               OBD_FREE(setup->setup_data, setup->setup_datalen);
+               // OBD_FREE(setup->setup_data, setup->setup_datalen);
                 return err;
         }
         case OBD_IOC_CLEANUP: {
index 2087f2e..f12a212 100755 (executable)
@@ -272,7 +272,6 @@ my $term, $attribs;
 
 # Get going....
 
-# $::device = "/dev/obd0" unless defined $::device;
 Device($::device);
 
 sub readl {
@@ -1116,7 +1115,7 @@ sub Setup {
     printf "setting up %s, device %x\n", $arg, $::st->rdev();
     if ( $arg ) {
         $data = $arg;
-        $datalen = 4 + length($arg)+1; # need null character also
+        $datalen = length($arg)+1; # need null character also
     }
 
     my $packed = pack("iip", $datalen, $::st->rdev(), $data);