All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ramesh <rameshyr@linux.vnet.ibm.com>
To: gaowanlong@cn.fujitsu.com
Cc: ltp-list@lists.sourceforge.net
Subject: Re: [LTP] [PATCH] runltp: syscalls/mount0* and inotify03 tests are getting skipped from runltp's execution
Date: Tue, 09 Apr 2013 12:31:32 +0530	[thread overview]
Message-ID: <5163BCCC.90909@linux.vnet.ibm.com> (raw)
In-Reply-To: <51621625.6000507@cn.fujitsu.com>

On 04/08/2013 06:28 AM, Wanlong Gao wrote:
> On 04/05/2013 06:18 PM, Ramesh wrote:
>> Some of the tests which require a block device for their execution are
>> skipped
>> when runltp is run without any block device being specified on
>> commandline.Most
>> of such tests are from syscalls group and as a work around to make these
>> tests
>> run even when no block device is specified,I have made use of loopback
>> device
>> to create a block device with ext4 filesystem. So,runltp is modified to
>> create
>> a block device and set the values for DEVICE and DEVICE_FS_TYPE accordingly.
>
> I like this change, but seems that your email client wrapped the lines,
> please take care of this issue when you respin the patch.
>
> Thanks,
> Wanlong Gao
>
>>
>> Following are the skipped tests,
>> ----
>> inotify03 inotify03 -D DEVICE -T DEVICE_FS_TYPE
>> mount01 mount01 -D DEVICE -T DEVICE_FS_TYPE
>> mount02 mount02 -D DEVICE -T DEVICE_FS_TYPE
>> mount03 mount03 -D DEVICE -T DEVICE_FS_TYPE
>> mount04 mount04 -D DEVICE -T DEVICE_FS_TYPE
>> umount01 umount01 -D DEVICE -T DEVICE_FS_TYPE
>> umount02 umount02 -D DEVICE -T DEVICE_FS_TYPE
>> umount03 umount03 -D DEVICE -T DEVICE_FS_TYPE
>> ----
>>
>> Please review the patch and let me know if any more changes are needed.
>>
>>
>> Signed-off-by: Ramesh YR<rameshyr@linux.vnet.ibm.com>
>> ---
>>    runltp |   52 +++++++++++++++++++++++++++++++++++++++++++++++-----
>>    1 files changed, 47 insertions(+), 5 deletions(-)
>>
>> diff --git a/runltp b/runltp
>> index 04cc690..d7e3f0d 100755
>> --- a/runltp
>> +++ b/runltp
>> @@ -681,14 +681,22 @@ main()
>>
>>        if [ -n "$DEVICE" ]; then
>>            sed -i "s|DEVICE|$DEVICE|"  ${TMP}/alltests
>> +    RC=$?
>>        else
>> -        echo "remove test cases which require the block device."
>> -        echo "You can specify it with option -b"
>> -        sed -i "/DEVICE/d"  ${TMP}/alltests
>> +    create_block
>> +    if [ $? -eq 0 ]; then
>> +        sed -i "s|DEVICE|$DEVICE|"  ${TMP}/alltests
>> +        RC=$?
>> +    else
>> +        echo -e "no block device was specified on commandline.\n Block
>> device could not be created using loopback device"
>> +        echo -e "Tests which require block device are disabled.\n You
>> can specify it with option -b"
>> +        sed -i "/DEVICE/d"  ${TMP}/alltests
>> +        RC=$?
>> +    fi
>>        fi
>>
>> -    if [ $? -ne 0 ]; then
>> -            echo "FATAL: error during prcessing alltests file by sed"
>> +    if [ $RC -ne 0 ]; then
>> +            echo "FATAL: error during processing alltests file by sed"
>>                exit 1
>>        fi
>>
>> @@ -971,8 +979,42 @@ main()
>>        exit $VALUE
>>    }
>>
>> +create_block()
>> +{
>> +    #create a block device with ext4 filesystem.
>> +    dd if=/dev/zero of=${TMP}/test.img bs=1kB count=10240&>/dev/null
>> +    if [ $? -ne 0 ]; then
>> +        echo "Failed to create loopback device image,please check disk
>> space and re-run"
>> +        return 1
>> +    else
>> +        ##search for an unused loop dev
>> +        LOOP_DEV=$(losetup -f)
>> +        if [ $? -ne 0 ]; then
>> +            echo "no unused loop device is found"
>> +            return 1
>> +        else
>> +            ##attach the created file to loop dev.
>> +            losetup $LOOP_DEV ${TMP}/test.img&>/dev/null
>> +            if [ $? -ne 0 ]; then
>> +                echo "losetup failed to create block device"
>> +                return 1
>> +            else
>> +                mkfs.ext4 $LOOP_DEV&>/dev/null
>> +                [ $? -ne 0 ]&&  (echo "creating a ext4 block device
>> failed"&&  return 1)
>> +                #set the values in alltests which require block device.
>> +                DEVICE=$LOOP_DEV
>> +                DEVICE_FS_TYPE="ext4"
>> +                return 0
>> +            fi
>> +        fi
>> +    fi
>> +}
>> +
>> +
>>    cleanup()
>>    {
>> +    [ -e "${TEMP}/test.img" ]&&  rm -f ${TEMP}/test.img
>> +    [ "$LOOP_DEV" ]&&  losetup -d $LOOP_DEV
>>        rm -rf ${TMP}
>>    }
>>
>
Hi,

I have corrected few indentation flaws and I think this patch should be 
fine to commit.
Please let me know if you are still facing any issues in extracting this 
patch for commit.


Signed-off-by: Ramesh YR <rameshyr@linux.vnet.ibm.com>
---
  runltp |   51 ++++++++++++++++++++++++++++++++++++++++++++++-----
  1 files changed, 46 insertions(+), 5 deletions(-)

diff --git a/runltp b/runltp
index 04cc690..5562b9c 100755
--- a/runltp
+++ b/runltp
@@ -681,14 +681,22 @@ main()

      if [ -n "$DEVICE" ]; then
          sed -i "s|DEVICE|$DEVICE|"  ${TMP}/alltests
+        RC=$?
      else
-        echo "remove test cases which require the block device."
-        echo "You can specify it with option -b"
-        sed -i "/DEVICE/d"  ${TMP}/alltests
+        create_block
+        if [ $? -eq 0 ]; then
+            sed -i "s|DEVICE|$DEVICE|"  ${TMP}/alltests
+            RC=$?
+        else
+            echo -e "no block device was specified on commandline.\n 
Block device could not be created using loopback device"
+            echo -e "Tests which require block device are disabled.\n 
You can specify it with option -b"
+            sed -i "/DEVICE/d"  ${TMP}/alltests
+            RC=$?
+        fi
      fi

-    if [ $? -ne 0 ]; then
-            echo "FATAL: error during prcessing alltests file by sed"
+    if [ $RC -ne 0 ]; then
+            echo "FATAL: error during processing alltests file by sed"
              exit 1
      fi

@@ -971,8 +979,41 @@ main()
      exit $VALUE
  }

+create_block()
+{
+    #create a block device with ext4 filesystem.
+    dd if=/dev/zero of=${TMP}/test.img bs=1kB count=10240 &>/dev/null
+    if [ $? -ne 0 ]; then
+        echo "Failed to create loopback device image,please check disk 
space and re-run"
+        return 1
+    else
+        ##search for an unused loop dev
+        LOOP_DEV=$(losetup -f)
+        if [ $? -ne 0 ]; then
+            echo "no unused loop device is found"
+            return 1
+        else
+            ##attach the created file to loop dev.
+            losetup $LOOP_DEV ${TMP}/test.img &>/dev/null
+            if [ $? -ne 0 ]; then
+                echo "losetup failed to create block device"
+                return 1
+            else
+                mkfs.ext4 $LOOP_DEV &>/dev/null
+                [ $? -ne 0 ] && (echo "creating a ext4 block device 
failed" && return 1)
+                #set the values in alltests which require block device.
+                DEVICE=$LOOP_DEV
+                DEVICE_FS_TYPE="ext4"
+                return 0
+            fi
+        fi
+    fi
+}
+
  cleanup()
  {
+    [ "$LOOP_DEV" ] && losetup -d $LOOP_DEV
+    [ -e "${TEMP}/test.img" ] && rm -f ${TEMP}/test.img
      rm -rf ${TMP}
  }

-- 

Regards,
Ramesh







------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

  reply	other threads:[~2013-04-09  7:02 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-05 10:18 [LTP] [PATCH] runltp: syscalls/mount0* and inotify03 tests are getting skipped from runltp's execution Ramesh
2013-04-08  0:58 ` Wanlong Gao
2013-04-09  7:01   ` Ramesh [this message]
2013-04-15  3:16     ` Wanlong Gao
2013-04-15 13:24       ` chrubis
2013-04-16  1:40     ` Wanlong Gao
2013-04-22  8:44       ` Ramesh
2013-04-22  9:05         ` Wanlong Gao
2013-04-22 10:01         ` chrubis

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=5163BCCC.90909@linux.vnet.ibm.com \
    --to=rameshyr@linux.vnet.ibm.com \
    --cc=gaowanlong@cn.fujitsu.com \
    --cc=ltp-list@lists.sourceforge.net \
    /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.