* [LTP] [PATCH v2 2/2] [mm] mbind01: move to syscalls directory
2011-04-09 3:24 [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems Caspar Zhang
@ 2011-04-09 3:24 ` Caspar Zhang
2011-04-09 6:18 ` Garrett Cooper
2011-04-09 5:38 ` [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems Garrett Cooper
` (2 subsequent siblings)
3 siblings, 1 reply; 14+ messages in thread
From: Caspar Zhang @ 2011-04-09 3:24 UTC (permalink / raw)
To: LTP List
[-- Attachment #1: Type: text/plain, Size: 834 bytes --]
there are 2 mbind01 tests in different place: syscalls/ and mem/, after
installation, the latter one would cover the former one, and it's not
convenient for maintenance. So I move it to syscalls/ and changed its
name to mbind02.
Signed-off-by: Caspar Zhang <czhang@redhat.com>
---
runtest/mm | 2 -
runtest/syscalls | 11 +-
testcases/kernel/mem/mbind/Makefile | 26 -----
testcases/kernel/mem/mbind/mbind01.c | 146 -----------------------------
testcases/kernel/syscalls/mbind/mbind02.c | 146 +++++++++++++++++++++++++++++
5 files changed, 152 insertions(+), 179 deletions(-)
delete mode 100644 testcases/kernel/mem/mbind/Makefile
delete mode 100644 testcases/kernel/mem/mbind/mbind01.c
create mode 100644 testcases/kernel/syscalls/mbind/mbind02.c
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0002-mm-mbind01-move-to-syscalls-directory.patch --]
[-- Type: text/x-patch; name="0002-mm-mbind01-move-to-syscalls-directory.patch", Size: 11925 bytes --]
diff --git a/runtest/mm b/runtest/mm
index f2d50d6..6382c82 100644
--- a/runtest/mm
+++ b/runtest/mm
@@ -72,8 +72,6 @@ ksm04_1 ksm04 -u 128
cpuset01 cpuset01 -I 3600
-mbind01 mbind01
-
oom01 oom01
oom02 oom02
oom03 oom03
diff --git a/runtest/syscalls b/runtest/syscalls
index 4294d07..265f67a 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -505,6 +505,7 @@ lstat03_64 lstat03_64
mallopt01 mallopt01
mbind01 mbind01
+mbind02 mbind02
memset01 memset01
memcmp01 memcmp01
@@ -573,7 +574,7 @@ mount1234 test_mount
move_pages01 move_pages.sh 01
move_pages02 move_pages.sh 02
-move_pages03 cd $LTPROOT/testcases/bin && chown root move_pages03 && chmod 04755 move_pages03 && move_pages.sh 03
+move_pages03 cd $LTPROOT/testcases/bin && chown root move_pages03 && chmod 04755 move_pages03 && move_pages.sh 03
move_pages04 move_pages.sh 04
move_pages05 move_pages.sh 05
move_pages06 move_pages.sh 06
@@ -675,7 +676,7 @@ open10 open10
openat01 openat01
mincore01 mincore01
-mincore02 mincore02
+mincore02 mincore02
madvise01 madvise01
madvise02 madvise02
@@ -689,8 +690,8 @@ pause01 pause01
pause02 pause02
pause03 pause03
-# The personality() system call is poorly documented
-# and difficult to figure out how to use by looking
+# The personality() system call is poorly documented
+# and difficult to figure out how to use by looking
# at the different architecture specific kernel files.
#personality01 personality01
#personality02 personality02
@@ -1200,7 +1201,7 @@ truncate04_64 truncate04_64
# This syscall is obsolete. The latest glibc does not even
# include the ulimit.h file anymore. The test will fail
# because the error handling has been simplified.
-#
+#
ulimit01 ulimit01
umask01 umask01
diff --git a/testcases/kernel/mem/mbind/Makefile b/testcases/kernel/mem/mbind/Makefile
deleted file mode 100644
index 27208d1..0000000
--- a/testcases/kernel/mem/mbind/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# Copyright (C) 2010 Red Hat, Inc.
-#
-# 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., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-
-top_srcdir ?= ../../../..
-
-include $(top_srcdir)/include/mk/testcases.mk
-
-LDLIBS += $(NUMA_LIBS)
-
-include $(top_srcdir)/include/mk/generic_leaf_target.mk
diff --git a/testcases/kernel/mem/mbind/mbind01.c b/testcases/kernel/mem/mbind/mbind01.c
deleted file mode 100644
index 497df24..0000000
--- a/testcases/kernel/mem/mbind/mbind01.c
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * This is a reproducer from mainline commit
- * 9d8cebd4bcd7c3878462fdfda34bbcdeb4df7ef4:
- *
- * "Strangely, current mbind() doesn't merge vma with neighbor vma
- * although it's possible. Unfortunately, many vma can reduce
- * performance..."
- *
- * Copyright (C) 2010 Red Hat, Inc.
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public
- * License as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it would be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Further, this software is distributed without any warranty that it
- * is free of the rightful claim of any third person regarding
- * infringement or the like. Any license provided herein, whether
- * implied or otherwise, applies only to this software file. Patent
- * licenses, if any, provided herein do not apply to combinations of
- * this program with other software, or any other product whatsoever.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301, USA.
- */
-#include "test.h"
-#include "usctest.h"
-#include "config.h"
-
-char *TCID = "mbind01";
-int TST_TOTAL = 1;
-
-#if HAVE_NUMA_H && HAVE_LINUX_MEMPOLICY_H && HAVE_NUMAIF_H \
- && HAVE_MPOL_CONSTANTS
-#include <numaif.h>
-#include <numa.h>
-#include <sys/mman.h>
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <string.h>
-
-static unsigned long pagesize;
-static int opt_node;
-static char *opt_nodestr;
-static option_t options[] = {
- { "n:", &opt_node, &opt_nodestr},
- { NULL, NULL, NULL}
-};
-
-static void usage(void);
-
-int main(int argc, char** argv)
-{
- FILE *fp;
- void* addr;
- int node, err, lc;
- struct bitmask *nmask = numa_allocate_nodemask();
- char buf[BUFSIZ], start[BUFSIZ], end[BUFSIZ], string[BUFSIZ];
- char *p, *msg;
-
- pagesize = getpagesize();
- msg = parse_opts(argc, argv, options, usage);
- if (msg != NULL)
- tst_brkm(TBROK, NULL, "OPTION PARSING ERROR - %s", msg);
-
-#if __WORDSIZE == 32
- tst_brkm(TCONF, NULL, "test is not designed for 32-bit system.");
-#endif
-
- if (opt_node) {
- node = atoi(optarg);
- if (node < 1)
- tst_brkm(TBROK, NULL,
- "Number of NUMA nodes cannot be less that 1.");
- numa_bitmask_setbit(nmask, node);
- } else
- numa_bitmask_setbit(nmask, 0);
-
- for (lc = 0; TEST_LOOPING(lc); lc++) {
- Tst_count = 0;
- addr = mmap(NULL, pagesize*3, PROT_READ|PROT_WRITE,
- MAP_ANON|MAP_PRIVATE, 0, 0);
- if (addr == MAP_FAILED)
- tst_brkm(TBROK|TERRNO, NULL, "mmap");
-
- tst_resm(TINFO, "pid = %d addr = %p", getpid(), addr);
- /* make page populate */
- memset(addr, 0, pagesize*3);
-
- /* first mbind */
- err = mbind(addr+pagesize, pagesize, MPOL_BIND, nmask->maskp,
- nmask->size, MPOL_MF_MOVE_ALL);
- if (err != 0)
- tst_brkm(TBROK|TERRNO, NULL, "mbind1");
-
- /* second mbind */
- err = mbind(addr, pagesize*3, MPOL_DEFAULT, NULL, 0, 0);
- if (err != 0)
- tst_brkm(TBROK|TERRNO, NULL, "mbind2");
-
- /* /proc/self/maps in the form of
- "00400000-00406000 r-xp 00000000". */
- sprintf(string, "%p", addr);
- fp = fopen("/proc/self/maps", "r");
- if (fp == NULL)
- tst_brkm(TBROK|TERRNO, NULL, "fopen");
-
- while (fgets(buf, BUFSIZ, fp) != NULL) {
- /* Find out the 1st VMAs. */
- if (sscanf(buf, "%s-%s ", start, end) != 2)
- continue;
- /* Remove leading 0x. */
- if (strcmp(string + 2, start) != 0)
- continue;
- /* Find out the second VMA. */
- if (fgets(buf, BUFSIZ, fp) == NULL)
- tst_brkm(TBROK|TERRNO, NULL, "fgets");
- p = strtok(buf, "-");
- if (p == NULL || strcmp(p, end) != 0)
- tst_resm(TPASS, "only 1 VMA.");
- else
- tst_resm(TFAIL, "more than 1 VMA.");
- }
- fclose(fp);
- if (munmap(addr, pagesize*3) == -1)
- tst_brkm(TWARN|TERRNO, NULL, "munmap");
- }
- tst_exit();
-}
-
-void usage(void)
-{
- printf(" -n Number of NUMA nodes\n");
-}
-
-#else /* no NUMA */
-int main(void) {
- tst_resm(TCONF, "no NUMA development packages installed.");
- tst_exit();
-}
-#endif
diff --git a/testcases/kernel/syscalls/mbind/mbind02.c b/testcases/kernel/syscalls/mbind/mbind02.c
new file mode 100644
index 0000000..a2993a8
--- /dev/null
+++ b/testcases/kernel/syscalls/mbind/mbind02.c
@@ -0,0 +1,146 @@
+/*
+ * This is a reproducer from mainline commit
+ * 9d8cebd4bcd7c3878462fdfda34bbcdeb4df7ef4:
+ *
+ * "Strangely, current mbind() doesn't merge vma with neighbor vma
+ * although it's possible. Unfortunately, many vma can reduce
+ * performance..."
+ *
+ * Copyright (C) 2010 Red Hat, Inc.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of version 2 of the GNU General Public
+ * License as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it would be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * Further, this software is distributed without any warranty that it
+ * is free of the rightful claim of any third person regarding
+ * infringement or the like. Any license provided herein, whether
+ * implied or otherwise, applies only to this software file. Patent
+ * licenses, if any, provided herein do not apply to combinations of
+ * this program with other software, or any other product whatsoever.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301, USA.
+ */
+#include "test.h"
+#include "usctest.h"
+#include "config.h"
+
+char *TCID = "mbind02";
+int TST_TOTAL = 1;
+
+#if HAVE_NUMA_H && HAVE_LINUX_MEMPOLICY_H && HAVE_NUMAIF_H \
+ && HAVE_MPOL_CONSTANTS
+#include <numaif.h>
+#include <numa.h>
+#include <sys/mman.h>
+#include <stdio.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+
+static unsigned long pagesize;
+static int opt_node;
+static char *opt_nodestr;
+static option_t options[] = {
+ { "n:", &opt_node, &opt_nodestr},
+ { NULL, NULL, NULL}
+};
+
+static void usage(void);
+
+int main(int argc, char** argv)
+{
+ FILE *fp;
+ void* addr;
+ int node, err, lc;
+ struct bitmask *nmask = numa_allocate_nodemask();
+ char buf[BUFSIZ], start[BUFSIZ], end[BUFSIZ], string[BUFSIZ];
+ char *p, *msg;
+
+ pagesize = getpagesize();
+ msg = parse_opts(argc, argv, options, usage);
+ if (msg != NULL)
+ tst_brkm(TBROK, NULL, "OPTION PARSING ERROR - %s", msg);
+
+#if __WORDSIZE == 32
+ tst_brkm(TCONF, NULL, "test is not designed for 32-bit system.");
+#endif
+
+ if (opt_node) {
+ node = atoi(optarg);
+ if (node < 1)
+ tst_brkm(TBROK, NULL,
+ "Number of NUMA nodes cannot be less that 1.");
+ numa_bitmask_setbit(nmask, node);
+ } else
+ numa_bitmask_setbit(nmask, 0);
+
+ for (lc = 0; TEST_LOOPING(lc); lc++) {
+ Tst_count = 0;
+ addr = mmap(NULL, pagesize*3, PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, 0, 0);
+ if (addr == MAP_FAILED)
+ tst_brkm(TBROK|TERRNO, NULL, "mmap");
+
+ tst_resm(TINFO, "pid = %d addr = %p", getpid(), addr);
+ /* make page populate */
+ memset(addr, 0, pagesize*3);
+
+ /* first mbind */
+ err = mbind(addr+pagesize, pagesize, MPOL_BIND, nmask->maskp,
+ nmask->size, MPOL_MF_MOVE_ALL);
+ if (err != 0)
+ tst_brkm(TBROK|TERRNO, NULL, "mbind1");
+
+ /* second mbind */
+ err = mbind(addr, pagesize*3, MPOL_DEFAULT, NULL, 0, 0);
+ if (err != 0)
+ tst_brkm(TBROK|TERRNO, NULL, "mbind2");
+
+ /* /proc/self/maps in the form of
+ "00400000-00406000 r-xp 00000000". */
+ sprintf(string, "%p", addr);
+ fp = fopen("/proc/self/maps", "r");
+ if (fp == NULL)
+ tst_brkm(TBROK|TERRNO, NULL, "fopen");
+
+ while (fgets(buf, BUFSIZ, fp) != NULL) {
+ /* Find out the 1st VMAs. */
+ if (sscanf(buf, "%s-%s ", start, end) != 2)
+ continue;
+ /* Remove leading 0x. */
+ if (strcmp(string + 2, start) != 0)
+ continue;
+ /* Find out the second VMA. */
+ if (fgets(buf, BUFSIZ, fp) == NULL)
+ tst_brkm(TBROK|TERRNO, NULL, "fgets");
+ p = strtok(buf, "-");
+ if (p == NULL || strcmp(p, end) != 0)
+ tst_resm(TPASS, "only 1 VMA.");
+ else
+ tst_resm(TFAIL, "more than 1 VMA.");
+ }
+ fclose(fp);
+ if (munmap(addr, pagesize*3) == -1)
+ tst_brkm(TWARN|TERRNO, NULL, "munmap");
+ }
+ tst_exit();
+}
+
+void usage(void)
+{
+ printf(" -n Number of NUMA nodes\n");
+}
+
+#else /* no NUMA */
+int main(void) {
+ tst_resm(TCONF, "no NUMA development packages installed.");
+ tst_exit();
+}
+#endif
[-- Attachment #3: Type: text/plain, Size: 250 bytes --]
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
[-- Attachment #4: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [LTP] [PATCH v2 2/2] [mm] mbind01: move to syscalls directory
2011-04-09 3:24 ` [LTP] [PATCH v2 2/2] [mm] mbind01: move to syscalls directory Caspar Zhang
@ 2011-04-09 6:18 ` Garrett Cooper
2011-04-10 5:19 ` Caspar Zhang
0 siblings, 1 reply; 14+ messages in thread
From: Garrett Cooper @ 2011-04-09 6:18 UTC (permalink / raw)
To: Caspar Zhang; +Cc: LTP List
On Fri, Apr 8, 2011 at 8:24 PM, Caspar Zhang <czhang@redhat.com> wrote:
>
> there are 2 mbind01 tests in different place: syscalls/ and mem/, after
> installation, the latter one would cover the former one, and it's not
> convenient for maintenance. So I move it to syscalls/ and changed its
> name to mbind02.
This is getting bikeshed-y -- but does it really matter where this
stuff is located? I mean.. it's not like one is actually testing the
syscall in this application; he/she is testing a corner case of the
syscall to ensure that it doesn't blow out in a way that creates the
issue that prompted the mainline kernel.org fix.
I really didn't care that much when I committed it as either
location is not ideal. Given the number of CVE reproducers in the tree
now, there should be a separate section like regression, or security
to go over these regression tests in more detail, or at least in a way
that's easy to comprehend and deal with.
Thanks,
-Garrett
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread* Re: [LTP] [PATCH v2 2/2] [mm] mbind01: move to syscalls directory
2011-04-09 6:18 ` Garrett Cooper
@ 2011-04-10 5:19 ` Caspar Zhang
0 siblings, 0 replies; 14+ messages in thread
From: Caspar Zhang @ 2011-04-10 5:19 UTC (permalink / raw)
To: Garrett Cooper; +Cc: LTP List
On 04/09/2011 02:18 PM, Garrett Cooper wrote:
> This is getting bikeshed-y -- but does it really matter where this
> stuff is located? I mean.. it's not like one is actually testing the
> syscall in this application; he/she is testing a corner case of the
> syscall to ensure that it doesn't blow out in a way that creates the
> issue that prompted the mainline kernel.org fix.
> I really didn't care that much when I committed it as either
> location is not ideal. Given the number of CVE reproducers in the tree
> now, there should be a separate section like regression, or security
> to go over these regression tests in more detail, or at least in a way
> that's easy to comprehend and deal with.
I agree with that either location is not ideal, but looked at existed
testcases, some similar regression testcases are put together under
syscalls/: mmap10, mmap11, mlock04, etc. At least doing so makes the
maintenance easier and produces less confusions (in mbind case, there
were two mbind01 tests, obviously when you install whole LTP testcases,
there will be only one exist, the other one is covered).
Creating a 'regression' dir under mem/ and moving mmap10, mmap11,
mlock04, mbind01 tests there may be a good choice. But how to name these
testcases? I don't want to see it happens again like two "XXX01" tests
exist in LTP, to avoid so, the new testcase writer should look into all
testcases and then give a different number suffix...
Thanks,
Caspar
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems
2011-04-09 3:24 [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems Caspar Zhang
2011-04-09 3:24 ` [LTP] [PATCH v2 2/2] [mm] mbind01: move to syscalls directory Caspar Zhang
@ 2011-04-09 5:38 ` Garrett Cooper
2011-04-10 4:31 ` Caspar Zhang
2011-04-10 13:00 ` [LTP] [PATCH v3] [mm] mbind01: move to syscalls directory Caspar Zhang
2011-04-10 13:00 ` [LTP] [PATCH v3] [mm] mbind01: not working on some systems Caspar Zhang
3 siblings, 1 reply; 14+ messages in thread
From: Garrett Cooper @ 2011-04-09 5:38 UTC (permalink / raw)
To: Caspar Zhang; +Cc: LTP List
On Fri, Apr 8, 2011 at 8:24 PM, Caspar Zhang <czhang@redhat.com> wrote:
>
> when executing mem/mbind01 testcase under 32bit systems, it returns
> ENOSYS error, indicating that the test is not suitable for running on
> 32bit systems. This patch checks wordsize before executing the actual
> case.
This error doesn't make sense; it's not documented in the manpage [1].
Are you sure your system actually supports mbind(2)?
Thanks,
-Garrett
1. http://www.kernel.org/doc/man-pages/online/pages/man2/mbind.2.html
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread* Re: [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems
2011-04-09 5:38 ` [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems Garrett Cooper
@ 2011-04-10 4:31 ` Caspar Zhang
2011-04-10 9:19 ` Garrett Cooper
0 siblings, 1 reply; 14+ messages in thread
From: Caspar Zhang @ 2011-04-10 4:31 UTC (permalink / raw)
To: Garrett Cooper; +Cc: LTP List
On 04/09/2011 01:38 PM, Garrett Cooper wrote:
>> > when executing mem/mbind01 testcase under 32bit systems, it returns
>> > ENOSYS error, indicating that the test is not suitable for running on
>> > 32bit systems. This patch checks wordsize before executing the actual
>> > case.
> This error doesn't make sense; it's not documented in the manpage [1].
> Are you sure your system actually supports mbind(2)?
Hmmm... Seems CONFIG_NUMA is not set in RHEL6 on x86 systems, so that
all mempolicy related syscalls not work on this platform. I shouldn't
simply check the WORDSIZE but need to check the kernel configuration
option, yet it's kind of difficult from previous discussion[1]...
Thanks,
Caspar
[1] http://thread.gmane.org/gmane.linux.ltp/12234/focus=12255
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems
2011-04-10 4:31 ` Caspar Zhang
@ 2011-04-10 9:19 ` Garrett Cooper
2011-04-10 9:27 ` Caspar Zhang
0 siblings, 1 reply; 14+ messages in thread
From: Garrett Cooper @ 2011-04-10 9:19 UTC (permalink / raw)
To: Caspar Zhang; +Cc: LTP List
On Sat, Apr 9, 2011 at 9:31 PM, Caspar Zhang <czhang@redhat.com> wrote:
> On 04/09/2011 01:38 PM, Garrett Cooper wrote:
>>> > when executing mem/mbind01 testcase under 32bit systems, it returns
>>> > ENOSYS error, indicating that the test is not suitable for running on
>>> > 32bit systems. This patch checks wordsize before executing the actual
>>> > case.
>> This error doesn't make sense; it's not documented in the manpage [1].
>> Are you sure your system actually supports mbind(2)?
>
> Hmmm... Seems CONFIG_NUMA is not set in RHEL6 on x86 systems, so that
> all mempolicy related syscalls not work on this platform. I shouldn't
> simply check the WORDSIZE but need to check the kernel configuration
> option, yet it's kind of difficult from previous discussion[1]...
I wouldn't worry too much about it. If it fails with ENOSYS, I
would just fail with tst_brkm(TCONF, ...).
Thanks,
-Garrett
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread* Re: [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems
2011-04-10 9:19 ` Garrett Cooper
@ 2011-04-10 9:27 ` Caspar Zhang
2011-04-10 9:43 ` Garrett Cooper
0 siblings, 1 reply; 14+ messages in thread
From: Caspar Zhang @ 2011-04-10 9:27 UTC (permalink / raw)
To: Garrett Cooper; +Cc: LTP List
On 04/10/2011 05:19 PM, Garrett Cooper wrote:
> I wouldn't worry too much about it. If it fails with ENOSYS, I
> would just fail with tst_brkm(TCONF, ...).
Would something like this be good:
err = mbind(addr+pagesize, pagesize, MPOL_BIND, nmask->maskp,
nmask->size, MPOL_MF_MOVE_ALL);
if (err != 0)
if (errno == ENOSYS)
tst_brkm(TCONF,...)
else
tst_brkm(TBROK|TERRNO, NULL, "mbind1");
If yes, I'll work out an updated patch soon.
Thanks,
Caspar
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread* Re: [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems
2011-04-10 9:27 ` Caspar Zhang
@ 2011-04-10 9:43 ` Garrett Cooper
0 siblings, 0 replies; 14+ messages in thread
From: Garrett Cooper @ 2011-04-10 9:43 UTC (permalink / raw)
To: Caspar Zhang; +Cc: LTP List
On Sun, Apr 10, 2011 at 2:27 AM, Caspar Zhang <czhang@redhat.com> wrote:
> On 04/10/2011 05:19 PM, Garrett Cooper wrote:
>> I wouldn't worry too much about it. If it fails with ENOSYS, I
>> would just fail with tst_brkm(TCONF, ...).
>
> Would something like this be good:
>
> err = mbind(addr+pagesize, pagesize, MPOL_BIND, nmask->maskp,
> nmask->size, MPOL_MF_MOVE_ALL);
> if (err != 0)
> if (errno == ENOSYS)
> tst_brkm(TCONF,...)
> else
> tst_brkm(TBROK|TERRNO, NULL, "mbind1");
>
> If yes, I'll work out an updated patch soon.
Yes, that's fine. Ideally it should follow what's being done in
testcases/kernel/includes/linux_syscall_numbers.h to achieve feature
parity.
Thanks,
-Garrett
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread
* [LTP] [PATCH v3] [mm] mbind01: move to syscalls directory
2011-04-09 3:24 [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems Caspar Zhang
2011-04-09 3:24 ` [LTP] [PATCH v2 2/2] [mm] mbind01: move to syscalls directory Caspar Zhang
2011-04-09 5:38 ` [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems Garrett Cooper
@ 2011-04-10 13:00 ` Caspar Zhang
2011-04-10 13:00 ` [LTP] [PATCH v3] [mm] mbind01: not working on some systems Caspar Zhang
3 siblings, 0 replies; 14+ messages in thread
From: Caspar Zhang @ 2011-04-10 13:00 UTC (permalink / raw)
To: LTP List
[-- Attachment #1: Type: text/plain, Size: 693 bytes --]
1. avoid same name testcases existing in different places;
2. easier for maintenance.
Signed-off-by: Caspar Zhang <czhang@redhat.com>
---
runtest/mm | 2 -
runtest/syscalls | 11 ++-
testcases/kernel/mem/mbind/Makefile | 26 ------
testcases/kernel/mem/mbind/mbind01.c | 141 -----------------------------
testcases/kernel/syscalls/mbind/mbind02.c | 141 +++++++++++++++++++++++++++++
5 files changed, 147 insertions(+), 174 deletions(-)
delete mode 100644 testcases/kernel/mem/mbind/Makefile
delete mode 100644 testcases/kernel/mem/mbind/mbind01.c
create mode 100644 testcases/kernel/syscalls/mbind/mbind02.c
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-mm-mbind01-move-to-syscalls-directory.patch --]
[-- Type: text/x-patch; name="0001-mm-mbind01-move-to-syscalls-directory.patch", Size: 11749 bytes --]
diff --git a/runtest/mm b/runtest/mm
index f2d50d6..6382c82 100644
--- a/runtest/mm
+++ b/runtest/mm
@@ -72,8 +72,6 @@ ksm04_1 ksm04 -u 128
cpuset01 cpuset01 -I 3600
-mbind01 mbind01
-
oom01 oom01
oom02 oom02
oom03 oom03
diff --git a/runtest/syscalls b/runtest/syscalls
index 4294d07..265f67a 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -505,6 +505,7 @@ lstat03_64 lstat03_64
mallopt01 mallopt01
mbind01 mbind01
+mbind02 mbind02
memset01 memset01
memcmp01 memcmp01
@@ -573,7 +574,7 @@ mount1234 test_mount
move_pages01 move_pages.sh 01
move_pages02 move_pages.sh 02
-move_pages03 cd $LTPROOT/testcases/bin && chown root move_pages03 && chmod 04755 move_pages03 && move_pages.sh 03
+move_pages03 cd $LTPROOT/testcases/bin && chown root move_pages03 && chmod 04755 move_pages03 && move_pages.sh 03
move_pages04 move_pages.sh 04
move_pages05 move_pages.sh 05
move_pages06 move_pages.sh 06
@@ -675,7 +676,7 @@ open10 open10
openat01 openat01
mincore01 mincore01
-mincore02 mincore02
+mincore02 mincore02
madvise01 madvise01
madvise02 madvise02
@@ -689,8 +690,8 @@ pause01 pause01
pause02 pause02
pause03 pause03
-# The personality() system call is poorly documented
-# and difficult to figure out how to use by looking
+# The personality() system call is poorly documented
+# and difficult to figure out how to use by looking
# at the different architecture specific kernel files.
#personality01 personality01
#personality02 personality02
@@ -1200,7 +1201,7 @@ truncate04_64 truncate04_64
# This syscall is obsolete. The latest glibc does not even
# include the ulimit.h file anymore. The test will fail
# because the error handling has been simplified.
-#
+#
ulimit01 ulimit01
umask01 umask01
diff --git a/testcases/kernel/mem/mbind/Makefile b/testcases/kernel/mem/mbind/Makefile
deleted file mode 100644
index 27208d1..0000000
--- a/testcases/kernel/mem/mbind/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# Copyright (C) 2010 Red Hat, Inc.
-#
-# 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., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-
-top_srcdir ?= ../../../..
-
-include $(top_srcdir)/include/mk/testcases.mk
-
-LDLIBS += $(NUMA_LIBS)
-
-include $(top_srcdir)/include/mk/generic_leaf_target.mk
diff --git a/testcases/kernel/mem/mbind/mbind01.c b/testcases/kernel/mem/mbind/mbind01.c
deleted file mode 100644
index 80a56c4..0000000
--- a/testcases/kernel/mem/mbind/mbind01.c
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * This is a reproducer from mainline commit
- * 9d8cebd4bcd7c3878462fdfda34bbcdeb4df7ef4:
- *
- * "Strangely, current mbind() doesn't merge vma with neighbor vma
- * although it's possible. Unfortunately, many vma can reduce
- * performance..."
- *
- * Copyright (C) 2010 Red Hat, Inc.
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public
- * License as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it would be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Further, this software is distributed without any warranty that it
- * is free of the rightful claim of any third person regarding
- * infringement or the like. Any license provided herein, whether
- * implied or otherwise, applies only to this software file. Patent
- * licenses, if any, provided herein do not apply to combinations of
- * this program with other software, or any other product whatsoever.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301, USA.
- */
-#include "test.h"
-#include "usctest.h"
-#include "config.h"
-
-char *TCID = "mbind01";
-int TST_TOTAL = 1;
-
-#if HAVE_NUMA_H && HAVE_LINUX_MEMPOLICY_H && HAVE_NUMAIF_H \
- && HAVE_MPOL_CONSTANTS
-#include <numaif.h>
-#include <numa.h>
-#include <sys/mman.h>
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <string.h>
-
-static unsigned long pagesize;
-static int opt_node;
-static char *opt_nodestr;
-static option_t options[] = {
- { "n:", &opt_node, &opt_nodestr},
- { NULL, NULL, NULL}
-};
-
-static void usage(void);
-
-int main(int argc, char** argv)
-{
- FILE *fp;
- void* addr;
- int node, err, lc;
- struct bitmask *nmask = numa_allocate_nodemask();
- char buf[BUFSIZ], start[BUFSIZ], end[BUFSIZ], string[BUFSIZ];
- char *p, *msg;
-
- pagesize = getpagesize();
- msg = parse_opts(argc, argv, options, usage);
- if (msg != NULL)
- tst_brkm(TBROK, NULL, "OPTION PARSING ERROR - %s", msg);
- if (opt_node) {
- node = atoi(optarg);
- if (node < 1)
- tst_brkm(TBROK, NULL,
- "Number of NUMA nodes cannot be less that 1.");
- numa_bitmask_setbit(nmask, node);
- } else
- numa_bitmask_setbit(nmask, 0);
-
- for (lc = 0; TEST_LOOPING(lc); lc++) {
- Tst_count = 0;
- addr = mmap(NULL, pagesize*3, PROT_READ|PROT_WRITE,
- MAP_ANON|MAP_PRIVATE, 0, 0);
- if (addr == MAP_FAILED)
- tst_brkm(TBROK|TERRNO, NULL, "mmap");
-
- tst_resm(TINFO, "pid = %d addr = %p", getpid(), addr);
- /* make page populate */
- memset(addr, 0, pagesize*3);
-
- /* first mbind */
- err = mbind(addr+pagesize, pagesize, MPOL_BIND, nmask->maskp,
- nmask->size, MPOL_MF_MOVE_ALL);
- if (err != 0)
- tst_brkm(TBROK|TERRNO, NULL, "mbind1");
-
- /* second mbind */
- err = mbind(addr, pagesize*3, MPOL_DEFAULT, NULL, 0, 0);
- if (err != 0)
- tst_brkm(TBROK|TERRNO, NULL, "mbind2");
-
- /* /proc/self/maps in the form of
- "00400000-00406000 r-xp 00000000". */
- sprintf(string, "%p", addr);
- fp = fopen("/proc/self/maps", "r");
- if (fp == NULL)
- tst_brkm(TBROK|TERRNO, NULL, "fopen");
-
- while (fgets(buf, BUFSIZ, fp) != NULL) {
- /* Find out the 1st VMAs. */
- if (sscanf(buf, "%s-%s ", start, end) != 2)
- continue;
- /* Remove leading 0x. */
- if (strcmp(string + 2, start) != 0)
- continue;
- /* Find out the second VMA. */
- if (fgets(buf, BUFSIZ, fp) == NULL)
- tst_brkm(TBROK|TERRNO, NULL, "fgets");
- p = strtok(buf, "-");
- if (p == NULL || strcmp(p, end) != 0)
- tst_resm(TPASS, "only 1 VMA.");
- else
- tst_resm(TFAIL, "more than 1 VMA.");
- }
- fclose(fp);
- if (munmap(addr, pagesize*3) == -1)
- tst_brkm(TWARN|TERRNO, NULL, "munmap");
- }
- tst_exit();
-}
-
-void usage(void)
-{
- printf(" -n Number of NUMA nodes\n");
-}
-
-#else /* no NUMA */
-int main(void) {
- tst_resm(TCONF, "no NUMA development packages installed.");
- tst_exit();
-}
-#endif
\ No newline at end of file
diff --git a/testcases/kernel/syscalls/mbind/mbind02.c b/testcases/kernel/syscalls/mbind/mbind02.c
new file mode 100644
index 0000000..78d4a11
--- /dev/null
+++ b/testcases/kernel/syscalls/mbind/mbind02.c
@@ -0,0 +1,141 @@
+/*
+ * This is a reproducer from mainline commit
+ * 9d8cebd4bcd7c3878462fdfda34bbcdeb4df7ef4:
+ *
+ * "Strangely, current mbind() doesn't merge vma with neighbor vma
+ * although it's possible. Unfortunately, many vma can reduce
+ * performance..."
+ *
+ * Copyright (C) 2010 Red Hat, Inc.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of version 2 of the GNU General Public
+ * License as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it would be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * Further, this software is distributed without any warranty that it
+ * is free of the rightful claim of any third person regarding
+ * infringement or the like. Any license provided herein, whether
+ * implied or otherwise, applies only to this software file. Patent
+ * licenses, if any, provided herein do not apply to combinations of
+ * this program with other software, or any other product whatsoever.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301, USA.
+ */
+#include "test.h"
+#include "usctest.h"
+#include "config.h"
+
+char *TCID = "mbind02";
+int TST_TOTAL = 1;
+
+#if HAVE_NUMA_H && HAVE_LINUX_MEMPOLICY_H && HAVE_NUMAIF_H \
+ && HAVE_MPOL_CONSTANTS
+#include <numaif.h>
+#include <numa.h>
+#include <sys/mman.h>
+#include <stdio.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+
+static unsigned long pagesize;
+static int opt_node;
+static char *opt_nodestr;
+static option_t options[] = {
+ { "n:", &opt_node, &opt_nodestr},
+ { NULL, NULL, NULL}
+};
+
+static void usage(void);
+
+int main(int argc, char** argv)
+{
+ FILE *fp;
+ void* addr;
+ int node, err, lc;
+ struct bitmask *nmask = numa_allocate_nodemask();
+ char buf[BUFSIZ], start[BUFSIZ], end[BUFSIZ], string[BUFSIZ];
+ char *p, *msg;
+
+ pagesize = getpagesize();
+ msg = parse_opts(argc, argv, options, usage);
+ if (msg != NULL)
+ tst_brkm(TBROK, NULL, "OPTION PARSING ERROR - %s", msg);
+ if (opt_node) {
+ node = atoi(optarg);
+ if (node < 1)
+ tst_brkm(TBROK, NULL,
+ "Number of NUMA nodes cannot be less that 1.");
+ numa_bitmask_setbit(nmask, node);
+ } else
+ numa_bitmask_setbit(nmask, 0);
+
+ for (lc = 0; TEST_LOOPING(lc); lc++) {
+ Tst_count = 0;
+ addr = mmap(NULL, pagesize*3, PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, 0, 0);
+ if (addr == MAP_FAILED)
+ tst_brkm(TBROK|TERRNO, NULL, "mmap");
+
+ tst_resm(TINFO, "pid = %d addr = %p", getpid(), addr);
+ /* make page populate */
+ memset(addr, 0, pagesize*3);
+
+ /* first mbind */
+ err = mbind(addr+pagesize, pagesize, MPOL_BIND, nmask->maskp,
+ nmask->size, MPOL_MF_MOVE_ALL);
+ if (err != 0)
+ tst_brkm(TBROK|TERRNO, NULL, "mbind1");
+
+ /* second mbind */
+ err = mbind(addr, pagesize*3, MPOL_DEFAULT, NULL, 0, 0);
+ if (err != 0)
+ tst_brkm(TBROK|TERRNO, NULL, "mbind2");
+
+ /* /proc/self/maps in the form of
+ "00400000-00406000 r-xp 00000000". */
+ sprintf(string, "%p", addr);
+ fp = fopen("/proc/self/maps", "r");
+ if (fp == NULL)
+ tst_brkm(TBROK|TERRNO, NULL, "fopen");
+
+ while (fgets(buf, BUFSIZ, fp) != NULL) {
+ /* Find out the 1st VMAs. */
+ if (sscanf(buf, "%s-%s ", start, end) != 2)
+ continue;
+ /* Remove leading 0x. */
+ if (strcmp(string + 2, start) != 0)
+ continue;
+ /* Find out the second VMA. */
+ if (fgets(buf, BUFSIZ, fp) == NULL)
+ tst_brkm(TBROK|TERRNO, NULL, "fgets");
+ p = strtok(buf, "-");
+ if (p == NULL || strcmp(p, end) != 0)
+ tst_resm(TPASS, "only 1 VMA.");
+ else
+ tst_resm(TFAIL, "more than 1 VMA.");
+ }
+ fclose(fp);
+ if (munmap(addr, pagesize*3) == -1)
+ tst_brkm(TWARN|TERRNO, NULL, "munmap");
+ }
+ tst_exit();
+}
+
+void usage(void)
+{
+ printf(" -n Number of NUMA nodes\n");
+}
+
+#else /* no NUMA */
+int main(void) {
+ tst_resm(TCONF, "no NUMA development packages installed.");
+ tst_exit();
+}
+#endif
[-- Attachment #3: Type: text/plain, Size: 250 bytes --]
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
[-- Attachment #4: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply related [flat|nested] 14+ messages in thread* [LTP] [PATCH v3] [mm] mbind01: not working on some systems
2011-04-09 3:24 [LTP] [PATCH v2 1/2] [mm] mbind01: not working on 32bit systems Caspar Zhang
` (2 preceding siblings ...)
2011-04-10 13:00 ` [LTP] [PATCH v3] [mm] mbind01: move to syscalls directory Caspar Zhang
@ 2011-04-10 13:00 ` Caspar Zhang
2011-04-12 6:46 ` Garrett Cooper
3 siblings, 1 reply; 14+ messages in thread
From: Caspar Zhang @ 2011-04-10 13:00 UTC (permalink / raw)
To: LTP List
[-- Attachment #1: Type: text/plain, Size: 366 bytes --]
when executing mem/mbind01 testcase under some systems, it returns
ENOSYS error, indicating that mbind syscall is not implemented on this
system. This behavior is allowed and should not return error.
Signed-off-by: Caspar Zhang <czhang@redhat.com>
---
testcases/kernel/syscalls/mbind/mbind02.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0002-mm-mbind01-not-working-on-some-systems.patch --]
[-- Type: text/x-patch; name="0002-mm-mbind01-not-working-on-some-systems.patch", Size: 905 bytes --]
diff --git a/testcases/kernel/syscalls/mbind/mbind02.c b/testcases/kernel/syscalls/mbind/mbind02.c
index 78d4a11..c829558 100644
--- a/testcases/kernel/syscalls/mbind/mbind02.c
+++ b/testcases/kernel/syscalls/mbind/mbind02.c
@@ -43,6 +43,7 @@ int TST_TOTAL = 1;
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
+#include <errno.h>
static unsigned long pagesize;
static int opt_node;
@@ -90,8 +91,13 @@ int main(int argc, char** argv)
/* first mbind */
err = mbind(addr+pagesize, pagesize, MPOL_BIND, nmask->maskp,
nmask->size, MPOL_MF_MOVE_ALL);
- if (err != 0)
- tst_brkm(TBROK|TERRNO, NULL, "mbind1");
+ if (err != 0) {
+ if (errno != ENOSYS)
+ tst_brkm(TBROK|TERRNO, NULL, "mbind1");
+ else
+ tst_brkm(TCONF, NULL,
+ "mbind syscall not implemented on this system.");
+ }
/* second mbind */
err = mbind(addr, pagesize*3, MPOL_DEFAULT, NULL, 0, 0);
[-- Attachment #3: Type: text/plain, Size: 250 bytes --]
------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
[-- Attachment #4: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [LTP] [PATCH v3] [mm] mbind01: not working on some systems
2011-04-10 13:00 ` [LTP] [PATCH v3] [mm] mbind01: not working on some systems Caspar Zhang
@ 2011-04-12 6:46 ` Garrett Cooper
2011-04-12 7:19 ` Caspar Zhang
0 siblings, 1 reply; 14+ messages in thread
From: Garrett Cooper @ 2011-04-12 6:46 UTC (permalink / raw)
To: Caspar Zhang; +Cc: LTP List
On Sun, Apr 10, 2011 at 6:00 AM, Caspar Zhang <czhang@redhat.com> wrote:
>
> when executing mem/mbind01 testcase under some systems, it returns
> ENOSYS error, indicating that mbind syscall is not implemented on this
> system. This behavior is allowed and should not return error.
>
> Signed-off-by: Caspar Zhang <czhang@redhat.com>
Committed.
Thanks!
-Garrett
------------------------------------------------------------------------------
Forrester Wave Report - Recovery time is now measured in hours and minutes
not days. Key insights are discussed in the 2010 Forrester Wave Report as
part of an in-depth evaluation of disaster recovery service providers.
Forrester found the best-in-class provider in terms of services and vision.
Read this report now! http://p.sf.net/sfu/ibm-webcastpromo
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [LTP] [PATCH v3] [mm] mbind01: not working on some systems
2011-04-12 6:46 ` Garrett Cooper
@ 2011-04-12 7:19 ` Caspar Zhang
2011-04-15 15:32 ` Caspar Zhang
0 siblings, 1 reply; 14+ messages in thread
From: Caspar Zhang @ 2011-04-12 7:19 UTC (permalink / raw)
To: Garrett Cooper; +Cc: LTP List
On 04/12/2011 02:46 PM, Garrett Cooper wrote:
> On Sun, Apr 10, 2011 at 6:00 AM, Caspar Zhang <czhang@redhat.com> wrote:
>>
>> when executing mem/mbind01 testcase under some systems, it returns
>> ENOSYS error, indicating that mbind syscall is not implemented on this
>> system. This behavior is allowed and should not return error.
>>
>> Signed-off-by: Caspar Zhang <czhang@redhat.com>
>
> Committed.
> Thanks!
> -Garrett
Thanks Garrett! However I still suggest merge the other patch, else
there will be two "mbind01" tests: /kernel/syscalls/mbind/mbind01 and
/kernel/mem/mbind/mbind01, after make install, there will be only one
mbind01 in /opt/ltp/testcases/bin/..
Thanks,
Caspar
------------------------------------------------------------------------------
Forrester Wave Report - Recovery time is now measured in hours and minutes
not days. Key insights are discussed in the 2010 Forrester Wave Report as
part of an in-depth evaluation of disaster recovery service providers.
Forrester found the best-in-class provider in terms of services and vision.
Read this report now! http://p.sf.net/sfu/ibm-webcastpromo
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [LTP] [PATCH v3] [mm] mbind01: not working on some systems
2011-04-12 7:19 ` Caspar Zhang
@ 2011-04-15 15:32 ` Caspar Zhang
0 siblings, 0 replies; 14+ messages in thread
From: Caspar Zhang @ 2011-04-15 15:32 UTC (permalink / raw)
To: Garrett Cooper; +Cc: LTP List
On 04/12/2011 03:19 PM, Caspar Zhang wrote:
> On 04/12/2011 02:46 PM, Garrett Cooper wrote:
>> On Sun, Apr 10, 2011 at 6:00 AM, Caspar Zhang <czhang@redhat.com> wrote:
>>>
>>> when executing mem/mbind01 testcase under some systems, it returns
>>> ENOSYS error, indicating that mbind syscall is not implemented on this
>>> system. This behavior is allowed and should not return error.
>>>
>>> Signed-off-by: Caspar Zhang <czhang@redhat.com>
>>
>> Committed.
>> Thanks!
>> -Garrett
>
> Thanks Garrett! However I still suggest merge the other patch, else
> there will be two "mbind01" tests: /kernel/syscalls/mbind/mbind01 and
> /kernel/mem/mbind/mbind01, after make install, there will be only one
> mbind01 in /opt/ltp/testcases/bin/..
ping Garrett, opinions?
Thanks,
Caspar
------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve
application availability and disaster protection. Learn more about boosting
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 14+ messages in thread