The Linux Test Project AUGUST 2008 Release Announcement

1) Log Message:
Compile error message occured on ia64 box. You should get a gcc warning on x86: "PAGE_SIZE" redefined. We can avoid the warning:
#ifndef PAGE_SIZE
#define PAGE_SIZE getpagesize()
#endif
But normally upper-case macros means constants, but the above macro is not a constant. Shi Weihua <shiwh@cn.fujitsu.com> & Li Zefan <lizf@cn.fujitsu.com>.

Modified File(s):
ltp/testcases/kernel/controllers/io-throttle/iobw.c

2) Log Message:
This patch fixes the fs_inod script. On error-condition it was not setting up proper error values and used to throw up error. Also, it was referring to a non-existent function 'error()'. Now it returns 0 on Success or non-zero value on Failure. I have verified this script on ReadWrite dir and ReadOnly-dir where the tests fail. Signed-Off-By
: Veerendra Chandrappa <vechandr@in.ibm.com>.

Modified File(s):
ltp/testcases/kernel/fs/fs_inod/fs_inod

3) Log Message:
Addition of setgid16 syscall tests. I've tried this task. Please put compat_16.h to testcases/kernel/syscalls/setgid. And apply following patch before rebuilding tests. In addition I removed one getgid() invocation in testcases/kernel/syscalls/setgid/setgid02.c because the returned value is not used anywhere in the program. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.

Modified Files:
ltp/runtest/syscalls
ltp/testcases/kernel/syscalls/setgid/Makefile
ltp/testcases/kernel/syscalls/setgid/setgid01.c
ltp/testcases/kernel/syscalls/setgid/setgid02.c
ltp/testcases/kernel/syscalls/setgid/setgid03.c

Added Files:
ltp/testcases/kernel/syscalls/setgid/compat_16.h

4) Log Message:
As reported by Li Zefan, normally upper-case macros means constants, but the above macros are not constants: Use lower-case names instead. Signed-off-by: Andrea Righi <righi.andrea@gmail.com>. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>.

Modified File(s):
ltp/testcases/kernel/controllers/io-throttle/iobw.c

5) Log Message:
It is surely better to support the old blockio.bandwidth and the new blockio.bandwidth-max interface for now. So, just ignore the previous patch. Support both blockio.bandwidth and the new interface blockio.bandwidth-max, to set i/o limiting rules according to the new userspace->kernel interface (io-throttle v8). In perspective we would like to have also blockio.bandwidth-min and implement a mechanism to guarantee minimum performance levels as well. Signed-off-by: Andrea Righi <righi.andrea@gmail.com>.

Modified File(s):
ltp/testcases/kernel/controllers/io-throttle/run_io_throttle_test.sh

6) Log Message:
utimensat01 give a build error when __NR_utimensat is not set because test.h is not included. It also gives a link error because TCID is not defined. This patch fixes these issues. Signed-off-by: Martin Habets <errandir_news@mph.eclipse.co.uk>.

Modified File(s):
ltp/testcases/kernel/syscalls/utimensat/utimensat01.c

7) Log Message:
Addition of ftruncate64 syscall test support. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.

Modified File(s)
ltp/runtest/syscalls
ltp/testcases/kernel/syscalls/ftruncate/Makefile

8) Log Message:
Addition of truncate64 syscall test support. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.

Modified File(s):
ltp/runtest/syscalls
ltp/testcases/kernel/syscalls/truncate/Makefile

9) Log Message:
Here is the RO Bind mount updated testcase. This script consists of 3 files.
test_robind.sh - This is the basis testcase which setups the infrastructure for the ROBind mount
fs_ro_test - Which has the different tests to be executed.
Readme_ROBind - Explains the different testcases executed.

This testcase addresses the earlier comments and has been made more generic. Also will be adding few ioctl syscalls testcases to the fs_ro_test flatfile. As we can append more tests to the flat file fs_ro_test. Signed-Off-By: Veerendra <veeren@linux.vnet.ibm.com>.

Added Files:
ltp/runtest/fs_readonly
ltp/testscripts/Readme_ROBind
ltp/testscripts/fs_ro_tests
ltp/testscripts/test_robind.sh

10) Log Message:
Added basic testcases for eventfd() syscall. Signed-off-by: Vijay Kumar <vijaykumar@bravegnu.org>.

Modified Files:
ltp/runtest/syscalls ltp/testcases/kernel/include/i386.in
ltp/testcases/kernel/include/ia64.in
ltp/testcases/kernel/include/powerpc.in
ltp/testcases/kernel/include/powerpc64.in
ltp/testcases/kernel/include/s390.in
ltp/testcases/kernel/include/s390x.in
ltp/testcases/kernel/include/sparc.in
ltp/testcases/kernel/include/sparc64.in
ltp/testcases/kernel/include/stub-list
ltp/testcases/kernel/include/x86_64.in

Added Files:
ltp/testcases/kernel/syscalls/eventfd/Makefile
ltp/testcases/kernel/syscalls/eventfd/eventfd01.c

11) Log Message:
Addition of get_robust_list() & set_robust_list() syscalls. Signed-Off-By: Ramon de Carvalho Valle <rcvalle@linux.vnet.ibm.com>.

Modified Files:
ltp/runtest/syscalls

Added Files:
ltp/testcases/kernel/syscalls/get_robust_list/Makefile
ltp/testcases/kernel/syscalls/get_robust_list/get_robust_list01.c
ltp/testcases/kernel/syscalls/set_robust_list/Makefile
ltp/testcases/kernel/syscalls/set_robust_list/set_robust_list01.c

12) Log Message:
In hugemmap01, huge page size was defined as a macro-definition.
#define page_sz ((1UL) << 24) /* Huge page size */
However different architecture may has different huge page size in kernel. Such as :
1. http://lxr.linux.no/linux/include/asm-i386/page.h#L122
#define HPAGE_SHIFT 22
#define HPAGE_SIZE ((1UL) << HPAGE_SHIFT) // the size is 4M

2. http://lxr.linux.no/linux/include/asm-parisc/page.h#L160
#define HPAGE_SHIFT 22 /* 4MB (is this fixed?) */
#define HPAGE_SIZE ((1UL) << HPAGE_SHIFT)

3. PPC: 16M

So read the huge page size for the kernel parameters is reasonable. The solution is to get the huge page size from the /proc/meminfo. Signed-off-by: Jin Bing Guo <guojb@cn.ibm.com>.

Modified File(s):
ltp/testcases/kernel/mem/hugetlb/hugemmap/hugemmap01.c
ltp/testcases/kernel/mem/hugetlb/hugemmap/hugemmap04.c

13) Log Message:
Now this script returns proper exit code , in the event of failure/success. I have verified this. Signed-Off-By: Veerendra <veeren@linux.vnet.ibm.com>.

Modified File(s):
ltp/testscripts/test_robind.sh

14) Log Message:
In message_queue_test_05, it planned to allocate 100 message queues for stress testing. But if the system resource of message queue couldn't meet it, it would exit without deleting the allocated message queues. In addition, other test cases couldn't allocate a new message queue any more. This patch addresses this by:
1> Add a cleanup() to remove the created message queues at premature exit.
2> Change the default number of message queues from 100 to 10. Because the maxmum on RHEL/SLES/Ubuntu is 16.
Signed-Off-By: Jin Bing Guo <guojb@cn.ibm.com>.

Modified File(s):
ltp/testcases/kernel/ipc/ipc_stress/message_queue_test_05.c

15) Log Message:
gcov-kernel: updated patch for 2.6.16 to include CONSTRUCTORS for ppc

Modified File(s):
ltp/utils/analysis/gcov-kernel/linux-2.6.16-gcov.patch

16) Log Message:
When compiling hackbench.c , I got the warning message:
---------------
$ ./testcases/kernel/sched/cfs-scheduler$ make
cc -I../../../../include -Wall hackbench.c -L../../../../lib -lltp -lpthread -o hackbench
hackbench.c: In function ‘main’:
hackbench.c:350: warning: control reaches end of non-void function
--------------
That means the hackbench would return a random number. I tested it on some different versions of GCC and got the non-zero return value. This simple patch can avoid this problem. Signed-off-by: Jin Bing Guo <guojb@cn.ibm.com>.

Modified File(s):
ltp/testcases/kernel/sched/cfs-scheduler/hackbench.c

17) Log Message:
gcov-kernel: updated 2.6.26 patch to exclude arch/x86/kernel from profiling

Modified File(s):
ltp/utils/analysis/gcov-kernel/linux-2.6.26-gcov.patch

18) Log Message:
gcov-kernel: updated 2.6.25 and 2.6.24 patch to exclude arch/x86/kernel from profiling

Modified File(s):
ltp/utils/analysis/gcov-kernel/linux-2.6.24-gcov.patch
ltp/utils/analysis/gcov-kernel/linux-2.6.25-gcov.patch

19) Log Message:
gcov-kernel: forgot to update comment

Modified File(s):
ltp/utils/analysis/gcov-kernel/linux-2.6.24-gcov.patch

20) Log Message:
lcov: integrated function coverage patch by Tom Zoernen + sorting function

Modified File(s):
ltp/utils/analysis/lcov/bin/genhtml
ltp/utils/analysis/lcov/bin/geninfo
ltp/utils/analysis/lcov/bin/lcov
ltp/utils/analysis/lcov/man/genhtml.1
ltp/utils/analysis/lcov/man/geninfo.1
ltp/utils/analysis/lcov/man/lcov.1
ltp/utils/analysis/lcov/man/lcovrc.5
ltp/utils/analysis/lcov/CHANGES
ltp/utils/analysis/lcov/Makefile
ltp/utils/analysis/lcov/lcovrc

21) Log Message:
lcov: updated rpm description + summary and version strings

Modified File(s):
ltp/utils/analysis/lcov/rpm/lcov.spec
ltp/utils/analysis/lcov/bin/gendesc
ltp/utils/analysis/lcov/bin/genhtml
ltp/utils/analysis/lcov/bin/geninfo
ltp/utils/analysis/lcov/bin/genpng
ltp/utils/analysis/lcov/bin/lcov
ltp/utils/analysis/lcov/Makefile

22) Log Message:
lcov: updated versioning mechanism + fixed some man page bugs

Modified File(s):
ltp/utils/analysis/lcov/man/gendesc.1
ltp/utils/analysis/lcov/man/genhtml.1
ltp/utils/analysis/lcov/man/geninfo.1
ltp/utils/analysis/lcov/man/genpng.1
ltp/utils/analysis/lcov/man/lcov.1
ltp/utils/analysis/lcov/man/lcovrc.5
ltp/utils/analysis/lcov/bin/updateversion.pl
ltp/utils/analysis/lcov/Makefile

23) Log Message:
lcov: fix function view page creation when --no-func is specified

Modified File(s):
ltp/utils/analysis/lcov/bin/genhtml

24) Log Message:
In semaphore_test_01 case, it wanted to create a semaphore and printed out the semaphore ID for comparison with the output of the 'ipcs -s' command. So it didn't remove the semaphore when exited. Since the resource of semaphore is limited. It's better to write a shell script to perform the comparison and remove the semaphore. I wrote the bash script "testcases/kernel/ipc/ipc_stress/run_semaphore_test_01.sh", and patched the "Makefile" and "runtest/ipc" to run the script. Please clean the semaphore up post patching and before executing tests. Signed-Off-By: Jin Bing Guo <guojb@cn.ibm.com>.

Modified Files:
ltp/runtest/ipc
ltp/testcases/kernel/ipc/ipc_stress/Makefile
ltp/testcases/kernel/ipc/ipc_stress/semaphore_test_01.c

Added Files:
ltp/testcases/kernel/ipc/ipc_stress/run_semaphore_test_01.sh

25) Log Message:
lcov: several changes
- update download link
- unify webpage links
- provide --sort and --function-coverage switch + documentation

Modified File(s):
ltp/utils/analysis/lcov/bin/gendesc
ltp/utils/analysis/lcov/bin/genhtml
ltp/utils/analysis/lcov/bin/geninfo
ltp/utils/analysis/lcov/bin/genpng
ltp/utils/analysis/lcov/bin/lcov
ltp/utils/analysis/lcov/rpm/lcov.spec
ltp/utils/analysis/lcov/man/genhtml.1

26) Log Message:
lcov: change sorting order to low-to-high coverage

Modified File(s):
ltp/utils/analysis/lcov/bin/genhtml

27) Log Message:
Intial Addition of sync_file_range() syscall test to LTP. I have developed test cases for sync_file_range() system call which will do the basic sanity (error) checking for the system call. These tests have to be run on 2.6.17 kernel and above. The test cases have been currently tested only on x86 and x86_64 architecture. Also, I have hard coded the system call number in the test case for review purposes and will be later on moving it to linux_syscall_numbers.h file in the LTP framework. The support for PowerPC was provided from 2.6.22 kernel onwards. I had not taken care of it in my previous patch. Now this is addressed. Signed-Off-By: "B. N. Poornima" <poornima@in.ibm.com>.

Modified Files:
ltp/runtest/syscalls

Added Files:
ltp/include/linux_syscall_numbers.h
ltp/testcases/kernel/syscalls/sync_file_range/Makefile
ltp/testcases/kernel/syscalls/sync_file_range/sync_file_range01.c

28) Log Message:
Changed the way by which message_queue_test_02 should be run properly. Signed-Off-By: Jin Bing Guo <guojb@cn.ibm.com>.

Modified File(s):
ltp/runtest/ipc

29) Log Message:
This is a patch from John, written a few months back. I have fixed up a few cosmetic whitespace bits, and have refreshed it so it should apply cleanly to LTP today. Will Schmidt <will_schmidt@vnet.ibm.com>.

Comments originally by John Stultz:

So I've been trying to go through and review our test cases to make sure we're getting sane data and the tests are really testing what we want. Looking at gtod_latency and gtod_infinite, I was always struck that gtod_infinite always came up with much larger latencies while gtod_latency usually seemed to miss them. Main issues:
1) gtod_latency was not running for long enough, I've upped the iterations by 10x to make sure we get more solid results.
2) gtod_latency was doing too much computation between gtod calls. This means it could miss latencies that occur while it was running. I reworked the data collection loop so the un-measured window is smaller.
3) gtod_infinite was accidentally measuring its own computation in its delay, inflating its values. I cut that logic out.
4) both gtod_latency and gtod_infinite were not running mlocked. this caused background SCHED_OTHER disk access to inject delays, making the results less reliable.

Those four issues have been fixed, and I also converted gtod_latency to use clock_gettime() just to be consistent and to give slightly better resolution.
Signed-off-by: John Stultz <johnstul@us.ibm.com>
Acked-by: Darren Hart <dvhltc@us.ibm.com>
Acked-by: Will Schmidt <will_schmidt@vnet.ibm.com>

Modified File(s):
ltp/testcases/realtime/func/gtod_latency/gtod_infinite.c
ltp/testcases/realtime/func/gtod_latency/gtod_latency.c

30) Log Message:
How about introducing TCID_DEFINE? I'm not sure puttint TCID_DEFINE macro to test.h. I'm not sure using a symbol as an argument for TCID_DEFINE macro is better than using a string. (I had strong lisp backgroud:-). If this acceptable, I'll update related documents and test cases I worked. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.

Modified File(s):
ltp/include/test.h
ltp/testcases/kernel/syscalls/setgid/Makefile
ltp/testcases/kernel/syscalls/setgid/compat_16.h
ltp/testcases/kernel/syscalls/setgid/setgid01.c

31) Log Message:
I propose this new test setuid04 for the setuid syscall. The goal if this test is to check the fsuid is correctly handled by the setuid syscall. To do so, the test create a testfile as root with permission 0644, then do a setuid and try to open the file RDWR. This last open must fail since the process with new UID is not allowed to open the file on write. In a second step, the test does a fork to check the fsuid is correctly passed to a son and the son behaves correctly regarding files, i.e. it cannot open on write the test file.
I propose this new test setfsuid04 for the setfsuid syscall. The goal if this test is to check the fsuid is correctly handled by the setfsuid syscall. To do so, the test creates a testfile as root with permission 0644, then do a setuid and try to open the file RDWR. This last open must fail since the process with new UID is not allowed to open the file on write. In a second step, the test does a fork to check the fsuid is correctly passed to a son and the son behaves correctly regarding files, i.e. it cannot open on write the test file. Finally, the test falls back to the initial UID and try to open the file on write. This open must succeed.
I propose this new test setreuid07 for the setreuid syscall. The goal if this test is to check the fsuid is correctly handled by the setreuid syscall. To do so, the test creates a testfile as root with permission 0644, then do a setreuid and try to open the file RDWR. This last open must fail since the process with new UID is not allowed to open the file on write. In a second step, the test does a fork to check the fsuid is correctly passed to a son and the son behaves correctly regarding files, i.e. it cannot open on write the test file. Finally, the test falls back to the initial UID and try to open the file on write. This open must succeed.
I also propose this new test setresuid04 for the setresuid syscall. The goal if this test is to check the fsuid is correctly handled by the setresuid syscall. To do so, the test creates a testfile as root with permission 0644, then do a setresuid and try to open the file RDWR. This last open must fail since the process with new UID is not allowed to open the file on write. In a second step, the test does a fork to check the fsuid is correctly passed to a son and the son behaves correctly regarding files, i.e. it cannot open on write the test file. Finally, the test falls back to the initial UID and try to open the file on write. This open must succeed.
Signed-Off-By: Renaud Lottiaux <Renaud.Lottiaux@kerlabs.com>,
Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>.

Modified Files:
ltp/runtest/ltplite
ltp/runtest/stress.part3
ltp/runtest/syscalls

Added Files:
ltp/testcases/kernel/syscalls/setfsuid/setfsuid04.c
ltp/testcases/kernel/syscalls/setresuid/setresuid04.c
ltp/testcases/kernel/syscalls/setreuid/setreuid07.c
ltp/testcases/kernel/syscalls/setuid/setuid04.c

32) Log Message:
I was experimenting with using runltp along with disk stress (-D option). It does not parse the arguments properly. It only uses the last parameter in the comma separated list. With this patch it properly parses the arguments to the -D option. Signed-off-by: Doug Chapman <doug.chapman@hp.com>.

Modified File(s):
ltp/runltp

33) Log Message:
I've done on the other test cases. In addition, I've cleaned up Makefiles related to _64 and _16 testcases as suggested by Garrett Cooper <yanegomi@gmail.com>. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.
Garret suggested:
You can avoid situations like the above by doing something like this in your Makefiles:
SRC := $(patsubst %.c,%,$(wildcard *.c))
MAKE_TARGETS := $(SRCS) $(addsuffix _16,$(SRCS))
all: $(MAKE_TARGETS)
%_16: %.c
%_16: CFLAGS += -DUSE_COMPAT16_SYSCALL=1 -DTST_USE_COMPAT16_SYSCALL=1

Modified File(s):
ltp/testcases/kernel/syscalls/fadvise/Makefile
ltp/testcases/kernel/syscalls/fadvise/posix_fadvise01.c
ltp/testcases/kernel/syscalls/fadvise/posix_fadvise02.c
ltp/testcases/kernel/syscalls/fadvise/posix_fadvise03.c
ltp/testcases/kernel/syscalls/fadvise/posix_fadvise04.c
ltp/testcases/kernel/syscalls/ftruncate/Makefile
ltp/testcases/kernel/syscalls/ftruncate/ftruncate01.c
ltp/testcases/kernel/syscalls/ftruncate/ftruncate02.c
ltp/testcases/kernel/syscalls/ftruncate/ftruncate03.c
ltp/testcases/kernel/syscalls/ftruncate/ftruncate04.c
ltp/testcases/kernel/syscalls/sendfile/Makefile
ltp/testcases/kernel/syscalls/sendfile/sendfile02.c
ltp/testcases/kernel/syscalls/sendfile/sendfile03.c
ltp/testcases/kernel/syscalls/sendfile/sendfile04.c
ltp/testcases/kernel/syscalls/sendfile/sendfile05.c
ltp/testcases/kernel/syscalls/sendfile/sendfile06.c
ltp/testcases/kernel/syscalls/sendfile/sendfile07.c
ltp/testcases/kernel/syscalls/setgid/Makefile
ltp/testcases/kernel/syscalls/setgid/setgid02.c
ltp/testcases/kernel/syscalls/setgid/setgid03.c
ltp/testcases/kernel/syscalls/truncate/Makefile
ltp/testcases/kernel/syscalls/truncate/truncate01.c
ltp/testcases/kernel/syscalls/truncate/truncate02.c
ltp/testcases/kernel/syscalls/truncate/truncate03.c
ltp/testcases/kernel/syscalls/truncate/truncate04.c

34) Log Message:
This patch adds eventfd counter overflow test cases. I have cleaned up this patch - separated the test cases into its own functions and fixed a few typos. Please ignore the previous patch, and use this cleaned up patch. After the patch is applied, a "make clean" and a "make" should result in a clean build. It works perfectly for me. Anyways I am providing an updated patch with the other linux_syscall_numbers.h removed. As noted in my previous mail, there are two instances of the generated file in the CVS repo now, "include/linux_syscall_numbers.h" and "testcases/kernel/include/linux_syscall_numbers.h". The first is supposed to be a link to the second, and both are generated during the build process, and should be removed. The new patch removes both the files. Signed-off-by: Vijay Kumar <vijaykumar@bravegnu.org>.

Modified Files:
ltp/testcases/kernel/include/Makefile
ltp/testcases/kernel/syscalls/eventfd/Makefile
ltp/testcases/kernel/syscalls/eventfd/eventfd01.c

Removed Files:
ltp/include/linux_syscall_numbers.h
ltp/testcases/kernel/include/linux_syscall_numbers.h

35) Log Message:
Integrating build/install of ...security/seclvl (BSD Secure Levels LSM) to default LTP build environment. Was just browsing through and found that this piece of code is not built/installed by default. I did not find any issue to do so. So, just added up to the Makefile(s). I am however investigating the best possible way to run them. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>.

Modified File(s):
ltp/testcases/kernel/security/Makefile
ltp/testcases/kernel/security/seclvl/Makefile

36) Log Message:
I am attaching a patch fs.patch for fixing some testcases failing on arm. fs.patch:- For arm architecture some system calls has been removed like time, utime etc. Since fs testcases include time system call, it should be replaced with gettimeofday system call. It wouldn't effect other architectures and thus works for arm also. Also testcases like utime should be made architecture specific. sasa sasa <sasak.1983@gmail.com>.

Modified File(s):
ltp/testcases/kernel/fs/doio/doio.c
ltp/testcases/kernel/fs/doio/growfiles.c
ltp/testcases/kernel/fs/doio/iogen.c
ltp/testcases/kernel/fs/doio/rwtest.sh

37) Log Message:
The LTP numa testcases were initially designed for libnuma API in version 1. Building latest LTP (intermediate 20080820) against latest version of libnuma (2.0.2) requires -DNUMA_VERSION1_COMPATIBILITY in the CFLAGS - to switch to to the compatibility interface of libnuma API version 1. There are no libnuma testcases for API version 2 in ltp yet. Currently -DNUMA_VERSION1_COMPATIBILITY will not help for the LTP numa testcase, since the compability interface is missing some interface from version 1: Fix for the VERSION1 compatibility interface got already send to linux-numa list. I hope the libnuma fix got accepted and attached can be applied to LTP soon to fix the build of the LTP numa testcases, when building against libnuma 2.0.2 or greater. Signed-off-by: Daniel Gollub <dgollub@suse.de>.

Modified File(s):
ltp/testcases/kernel/numa/Makefile

38) Log Message:
Was just browsing through and found that this piece of code is not built/installed by default. I did not find any issue to do so. So, just added up to the Makefile(s). I am however investigating the best possible way to run them. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. Heh, seclvl hasn't been in the kernel in quite some time. Should it be dropped? BTW, Mike, I'd expect you to consider re-implementing some of seclvl using capability bounding sets. "Serge E. Hallyn" <serue@us.ibm.com>. I do not anticipate that anyone will ever try to get seclvl back into the kernel, so I vote that the test be dropped from LTP. Michael Halcrow <mhalcrow@us.ibm.com>.

Modified Files:
ltp/testcases/kernel/security/Makefile

Removed Files:
ltp/testcases/kernel/security/seclvl/Makefile
ltp/testcases/kernel/security/seclvl/README
ltp/testcases/kernel/security/seclvl/create_guid_file.c
ltp/testcases/kernel/security/seclvl/create_guid_node.c
ltp/testcases/kernel/security/seclvl/create_suid_file.c
ltp/testcases/kernel/security/seclvl/create_suid_node.c
ltp/testcases/kernel/security/seclvl/ioperm.c
ltp/testcases/kernel/security/seclvl/iopl.c
ltp/testcases/kernel/security/seclvl/verify_seclvl.sh

39) Log Message:
Addition of getcpu() syscall to LTP. I have fixed the problem noticed earlier. Hope it will be fine this time. More over I wanted to mention that I have dropped getcpu2.c as it was found to be less relevant for getcpu() testing. Andi had made some suggestions to improve the test, I am submitting this before making all those changes. If possible I will sit and work on Andi's suggestion. Signed-Off-By: Sharyathi Nagesh <sharyath@in.ibm.com>.

Modified Files:
ltp/runtest/syscalls

Added Files:
ltp/testcases/kernel/syscalls/getcpu/Makefile
ltp/testcases/kernel/syscalls/getcpu/getcpu01.c

40) Log Message:
Build Error fix. I too had prepared the same patch, but there were some more issues on a different kernel. Hence, have put more checks in the newly attached patch. Subrata, I have tested it on ppc64 and x86_64 and is working fine. Please test and let me know. Signed-Off-By: "B. N. Poornima" <poornima@in.ibm.com>, Signed-Off-By: Jin Bing Guo <guojb@cn.ibm.com>.

Modified File(s):
ltp/testcases/kernel/syscalls/sync_file_range/sync_file_range01.c

41) Log Message:
inotify01 build error fix for x86_64. Signed-Off-By: Andrew Vagin <avagin@parallels.com>.

Modified File(s):
ltp/testcases/kernel/syscalls/inotify/inotify01.c
ltp/testcases/kernel/syscalls/inotify/inotify02.c

42) Log Message:
move_pages() failed to compile on the following machine. Subrata Modak <subrata@linux.vnet.ibm.com>. Jin Bing Guo <guojb@cn.ibm.com> wrote: I also met this problem on ppc machine with SLES 10.2. I checked the numactl package and found the problem was due to the unmatch of the version of numa. The numa_move_pages was supported from numactl-2.0.0. See the change log of it. Vijay Kumar <vijaykumar@bravegnu.org> wrote: Hi Subrata, as pointed out by Jin Bing Guo, only recent versions of libnuma have support for move_pages(). It is necessary to check if move_pages() support is available before compiling the test cases. Check if move_pages() support is available in libnuma. Signed-off-by: Vijay Kumar <vijaykumar@bravegnu.org>.

Modified File(s):
ltp/testcases/kernel/syscalls/move_pages/Makefile

43) Log Message:
I've rearranged Makefile for setgid test case. I've put _16 related macros to compat_16.mk file. The original Makefile includes it. So when I work on more _16 test cases, I just have to do the same. I'll do the same on _64. I choose utils as its directory name. Please put attached files compat_16.mk and newer_64.mk to ltp/testcases/kernel/syscalls/utils. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.

Modified Files:
ltp/testcases/kernel/syscalls/fadvise/Makefile
ltp/testcases/kernel/syscalls/ftruncate/Makefile
ltp/testcases/kernel/syscalls/sendfile/Makefile
ltp/testcases/kernel/syscalls/setgid/Makefile
ltp/testcases/kernel/syscalls/truncate/Makefile

Added Files:
ltp/testcases/kernel/syscalls/utils/compat_16.mk
ltp/testcases/kernel/syscalls/utils/newer_64.mk

44) Log Message:
The following patch adds two known issues seen on some versions of Kernels, and also modifies the copyright information. Signed-off-by: CAI Qian <caiqian@redhat.com>.

Modified File(s):
ltp/testcases/kernel/fs/proc/proc01.c

45) Log Message:
Conformance/interfaces/timer_getoverrun/2-2 has failed on tests with some distros running on ppc64 machines. As far as I could realize, it happens due to these machines are running kernel with timer frequency configured to 100 Hz, which represents a clock precision smaller than the defined INTERVALNSEC. This patch sets the interval equals to the clock precision (retrieved via function clock_getres()), in order to avoid to use a interval smaller than the resolution of the clock. However, with these changes, this testcase becomes very similar to the test 2-3. Is this a valid modification? If not, any thought what should be done in this case?. Signed-off-by: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>.

Modified File(s):
ltp/testcases/open_posix_testsuite/conformance/interfaces/timer_getoverrun/2-2.c

46) Log Message:
Find attached patchset which address some serious compiler warning fixes spotted by GCC4.1 (SLES10 SP2) and GCC4.3 (openSUSE Factory). Fix potential overflow in umount01.c, spotted by _FORTIFY_SOURCE=2. Unintended truncating of string length could cause potential overflow, which got spotted by GCC with _FORTIFY_SOURCE=2. Note the difference: malloc(strlen(fstype + 1)) != malloc(strlen(fstype) + 1). I guess this was not intended? Also valgrind detected this issue. Replaced wrong use of malloc/strncpy with simplestrdup(). Signed-off-by: Daniel Gollub <dgollub@suse.de>.

Modified File(s):
ltp/testcases/kernel/syscalls/umount/umount01.c

47) Log Message:
Find attached patchset which address some serious compiler warning fixes spotted by GCC4.1 (SLES10 SP2) and GCC4.3 (openSUSE Factory). Fix warning about _is_ unused variable (note the difference between "may" and "is" unused!). Unintended mixup with *pwd and *path. *path never gets set.
execve02.c: In function 'setup':
execve02.c:217: warning: 'path' is used uninitialized in this function
Signed-off-by: Daniel Gollub <dgollub@suse.de>.

Modified File(s):
ltp/testcases/kernel/syscalls/execve/execve02.c

48) Log Message:
Find attached patchset which address some serious compiler warning fixes spotted by GCC4.1 (SLES10 SP2) and GCC4.3 (openSUSE Factory). ftest08.c calls close() with uninitialized file descriptor variable. Fix warning about _is_ unused variable (note the difference between "may" and "is" unused!). Only child opens the file descriptor, once forked.
ftest08.c: In function 'runtest':
ftest08.c:192: warning: 'fd' is used uninitialized in this function
Valgrind spot this issue aswell:
==21058== Syscall param close(fd) contains uninitialised byte(s)
==21058== at 0x4BD70A0: __close_nocancel (in /lib64/libc-2.4.so)
==21058== by 0x401D0E: runtest (ftest08.c:192)
==21058== by 0x401B10: main (ftest08.c:119)
Signed-off-by: Daniel Gollub <dgollub@suse.de>.

Modified File(s):
ltp/testcases/kernel/fs/ftest/ftest08.c

49) Log Message:
Find attached patchset which address some serious compiler warning fixes spotted by GCC4.1 (SLES10 SP2) and GCC4.3 (openSUSE Factory). ftest04.c calls close() with uninitialized file descriptor variable. Fix warning about _is_ unused variable (note the difference between "may" and "is" unused!). Only child opens the file descriptor, once forked.
ftest04.c: In function 'runtest':
ftest04.c:188: warning: 'fd' is used uninitialized in this function

Valgrind spot this issue as well:
==15263== Syscall param close(fd) contains uninitialised byte(s)
==15263== at 0x4BD70A0: __close_nocancel (in /lib64/libc-2.4.so)
==15263== by 0x401CD6: runtest (ftest04.c:188)
==15263== by 0x401AD0: main (ftest04.c:111)
Signed-off-by: Daniel Gollub <dgollub@suse.de>.

Modified File(s):
ltp/testcases/kernel/fs/ftest/ftest04.c

50) Log Message:
When packaging LTP with rpmlinit, rpmlinit complains about several scripts which don't have Shebang on the head of the file. Some files didn't have a Shebang at all. Signed-off-by: Daniel Gollub <dgollub@suse.de>.

Modified File(s):
ltp/ltpmenu
ltp/testcases/commands/ade/file/file_test.sh
ltp/testcases/commands/cpio/cpio_tests.sh
ltp/testcases/commands/eject/eject-tests.sh
ltp/testcases/commands/fileutils/cp/cp_tests.sh
ltp/testcases/commands/fileutils/ln/ln_tests.sh
ltp/testcases/commands/fileutils/mkdir/mkdir_tests.sh
ltp/testcases/commands/fileutils/mv/mv_tests.sh
ltp/testcases/commands/gzip/gzip_tests.sh
ltp/testcases/commands/logrotate/logrotate_tests.sh
ltp/testcases/commands/mail/mail_tests.sh
ltp/testcases/commands/tar/tar_tests.sh
ltp/testcases/kernel/containers/pidns/runpidnstest.sh
ltp/testcases/kernel/ipc/ipc_stress/run_semaphore_test_01.sh
ltp/testcases/kernel/numa/numa01.sh
ltp/testcases/kernel/security/filecaps/Makefile
ltp/testcases/network/dhcpd/dhcpd_tests.sh
ltp/testcases/network/iptables/iptables_tests.sh
ltp/testcases/network/traceroute/traceroute_tests.sh
ltp/testcases/network/xinetd/xinetd_tests.sh

51) Log Message:
I've extended setgroup test cases can test setgroups16 old system calls. To test, please put attached compat_16.h to ltp/testcases/kernel/syscalls/setgroups; and apply the patch. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.

Modified Files:
ltp/runtest/syscalls
ltp/testcases/kernel/syscalls/setgroups/Makefile
ltp/testcases/kernel/syscalls/setgroups/setgroups01.c
ltp/testcases/kernel/syscalls/setgroups/setgroups02.c
ltp/testcases/kernel/syscalls/setgroups/setgroups03.c
ltp/testcases/kernel/syscalls/setgroups/setgroups04.c

Added Files:
ltp/testcases/kernel/syscalls/setgroups/compat_16.h

52) Log Message:
In testcases/kernel/sched/tool/time-schedule, it used kill(0, SIGTERM) to terminate the all the processes in the group. However, the progress group leader might be different regarding the different call methods. In interactive call such as pan, it called time-schedule by exec() and setpgrp() as a child process. The time-schedule process would be the process group leader and all the child processes created by it had the same PGID. So the SIGTERM was sent to process group and the exit code got by pan was 0. In non-inactive call such as STAF/STAX, one shell script called the time-schedule directly. The shell script would be the process group leader. So the SIGTERM was also sent to the shell script and the exit code got by STAF/STAX was 143 (128+15). This patch can resolve this problem.
Signed-off-by: Lin Feng Shen <shenlinf@cn.ibm.com>,
Signed-off-by: Jin Bing Guo <guojb@cn.ibm.com>.

Modified File(s):
ltp/testcases/kernel/sched/tool/time-schedule.c

53) Log Message:
Sorry, I found one typo in my code. Please apply following patch. Signed-off-by: Masatake YAMATO <yamato@redhat.com>.

Modified File(s):
ltp/testcases/kernel/syscalls/utils/newer_64.mk

54) Log Message:
I tried to run runltp with the arguments suggested in the script's help and I get the error:
./runltp: 783: arith: syntax error: "2,4,10240,1"
I have checked out the latest intermediate (August 20th) and noticed there was a change that fixed one of the sources of this error but still one remained. I am attaching the patch (to July stable version) which fixed the issue in my case. I am running Ubuntu 7.04 (Feisty) on a Core 2 Duo based machine. Also may I suggest you update the maintainers info in the script too? :) I hope this can be helpful. Signed-Off-By: "elder.costa" <elder.costa@terra.com.br>.

Modified File(s):
ltp/runltp

55) Log Message:
I didn't see the oom-killer in my test machines. But I found large memory leak of the Hackbench with valgrind tool. From that we can get that it will lose 73,800 bytes with running "hackbench 150 process 1000" once. This patch fixed the memory leak problem.

Modified File(s):
ltp/testcases/kernel/sched/cfs-scheduler/hackbench.c

56) Log Message:
While the synchronization in the sched_football testcase under the realtime test suite is not erroneous, it can be enahnced and made more reliable by making use of pthread_barriers, like in other testcases. This patch adds the same. Testing done: Infinite iterations of the testcase run with this patch.
Signed-off-by: Ankita Garg <ankita@in.ibm.com>,
Acked-by: Vernon Mauery <vernux@us.ibm.com>.

Modified File(s):
ltp/testcases/realtime/func/sched_football/sched_football.c

57) Log Message:
We can add a check for the header in the Makefile, so that we don't break builds. I think test should report fail in this case if a version of kernel more then 2.6.13. The Patch is for the reason that we don't break builds. Signed-Off-By: Andrew Vagin <avagin@gmail.com>.

Modified File(s):
ltp/testcases/kernel/syscalls/inotify/Makefile
ltp/testcases/kernel/syscalls/inotify/inotify01.c
ltp/testcases/kernel/syscalls/inotify/inotify02.c

58) Log Message:
On centos-5 2.6.18 kernel, I get a failure with shmat01. In the setup() function at the end:
/* some architectures (e.g. parisc) are strange, so better always align to * * next SHMLBA address. */
base_addr = (void *)( ((unsigned long)(base_addr) & ~(SHMLBA-1)) + SHMLBA );
This bumps up the address if it's already aligned. Signed-off-by: Bob Hepple <bhepple@promptu.com>.

Modified File(s):
ltp/testcases/kernel/syscalls/ipc/shmat/shmat01.c

59) Log Message:
Reverting back CAI Qian´s patch applied on Wed Aug 27 10:24:19 2008 UTC, with following log: The following patch adds two known issues seen on some versions of Kernels, and also modifies the copyright information. Signed-off-by: CAI Qian <caiqian@redhat.com>.

Modified File(s):
ltp/testcases/kernel/fs/proc/proc01.c

60) Log Message:
Under Ubuntu (tested with both 7.04 and 8.04) IDCheck shows the message [: 100: 0: unexpected operator]. That happens because the variable EUID is not defined. I guess dash (Ubuntu's sh) is not as tolerant as Fedora's (which shows no message). Bellow a small patch for it. Signed-Off-By: Elder <elder.costa@terra.com.br>.

Modified File(s):
ltp/IDcheck.sh

Posted by Subrata Modak 2008-09-01