Commit graph

1391 commits

Author SHA1 Message Date
Cyrill Gorcunov
7dad6fcfdf zdtm: Cleanup sockets00
Don't mix various types of sockets in a single
test case, in case of problems it become harder
to fins which kind of socket failed.

The removed test cases will be addressed in
further patches.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-31 15:11:54 +04:00
Pavel Emelyanov
eeabd33219 show: Beautify fdinfos showing
Shifd fd and type left and print ID with %#x

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-17 10:57:06 +04:00
Pavel Emelyanov
03b06a8b65 unix: Beautify the unixsk image show output
Print IDs with %#x to get rid of spaces between 0x and numbers.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-17 10:56:29 +04:00
Kinsbursky Stanislav
e4a41e8c48 make: prepare crtools build for submake calls
The reason for this patch is that only phony goal can depend on phony targets.
But with protobuf we will have to execute phony targets prior to main target
build.
So, this patch set add few new goals and dependences:

1) "all" become default goal.
2) new goals "deps" and "preq" introduced.
3) "all" depends on "deps" and "crtools".
4) All global goals like "zdtm" and "test-legacy" now depends on "all".

Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 15:11:46 +04:00
Kinsbursky Stanislav
c2e699982c make: echo deps build
Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 15:11:04 +04:00
Kinsbursky Stanislav
4f9b66f074 make: specify DEPS implicitly
Instead of using wildcard expressions like "*.c" lets implicitely specify
desired dependence files.

Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 15:09:45 +04:00
Kinsbursky Stanislav
ba824193ec make: make "all" as phony target
Also, .PHONY have to be specified prior to desired goals,
And it's better to have one line for all goals instead on one line per goal.

Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 15:09:17 +04:00
Kinsbursky Stanislav
9f7b6189b9 make: simplify OBJ on BLOBS dependence
Replace dances with "|" by simple dependence rule both for DEPS and OBJS.

Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 15:09:00 +04:00
Cyrill Gorcunov
424a4adb6f sockets, inet: Use general machnism for checkpoint/restore v2
Use fdtype_ops facility to c/r inet sockets.

v2:
 - Use BUG_ON if socket is attempted to be dumped
   several times

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:56:04 +04:00
Cyrill Gorcunov
c26b68dce8 sockets, unix: Use general machnism for checkpoint/restore v2
Use fdtype_ops facility to c/r unix sockets.

v2
 - BUG_ON added in dump_one_unix_fd if socket
   is already dumped since we never should dump
   same socket several times
 - The order of restore remains as it was before,
   the lookup is done via socket inode numbers

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:54:31 +04:00
Stanislav Kinsbursky
41195598cf parasite: remove excessive header deps from parasite.h and friends
The task is not complete - this is just a part of what have to be done. I.e.
looks like a lot of excessive deps can be fixed.

Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:50:18 +04:00
Kinsbursky Stanislav
df7dd55e10 make: Highlight Makefile.inc absence
Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:48:18 +04:00
Victor Konyashkin
a72fd71e7f zdtm: Need increase buffer in msgque.c to avoid overflow
Need increase buffer in msgque.c to avoid overflow via memcpy,
because now mtext[20] less than ANOTHER_TEST_STRING "Yet another test sysv5 msg".

Signed-off-by: Victor Konyashkin <vkonyashkin@parallels.com>
Acked-by: Andrey Vagin <avagin@parallels.com>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:47:12 +04:00
Victor Konyashkin
fc8c66c629 zdtm: Need add -Wno-unused-result option lib and static Makefile
It's need to add -Wno-unused-result option to lib and
static Makefile to avoid errors like:
msg.c:58:8: error: ignoring return value of 'write', declared with
attribute warn_unused_result [-Werror=unused-result]

Signed-off-by: Victor Konyashkin <vkonyashkin@parallels.com>
Acked-by: Andrey Vagin <avagin@parallels.com>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:46:23 +04:00
Viktor Konyashkin
66a7f1a3df zdtm: open with O_CREAT in second argument needs 3 arguments
The mode argument must be supplied when O_CREAT is specified in flags.
Otherwise it will cause compile error due to -Werror is specified.

Signed-off-by: Viktor Konyashkin <vkonyashkin@parallels.com>
Acked-by: Andrew Vagin <avagin@parallels.com>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:45:19 +04:00
Andrey Vagin
168b7ca7a2 zdtm: remove extra code from file_fown
The testcase is buggy -- the signal is delivered _before_ we checkpoint
and restore it, thus it checks nothing. But after the fix test fails,
due to bug in fowners restore. Will fix it later.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:43:38 +04:00
Andrey Vagin
b026e59c43 zdtm: initialize shared memory before fork
Otherwise this memory are initialized from parent and child,
but parent may initialize, when a child has written a useful data.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:41:16 +04:00
Andrey Vagin
ba61f94646 zdtm: set SA_RESTART for SIGIO in file_fown
Otherwise waitpid returns -EINTR and the test case fails.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:40:55 +04:00
Kinsbursky Stanislav
fa43c2f2cd parasite: remove unused headers
Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:39:37 +04:00
Kinsbursky Stanislav
c0d40c764a syscall: remove unused headers
Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:39:18 +04:00
Cyrill Gorcunov
63000f5bb2 dump: Don't dump file params with on-stack values
Otherwise I see output like

 | Dumping path for 1536412160 fd via self 27 [/usr/bin/screen]

where fd is taken from stack and what is worse -- we work
with root privilegues, thus dumping _anything_ from stack
is very bad idea.

With explicitly cleared stack data and FD_DESC_INVALID the
log file will have an entry like

 | Dumping path for -3 fd via self 27 [/usr/bin/screen]

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:36:17 +04:00
Cyrill Gorcunov
9b2546576c dump: Use switch in dump_chrdev
This will allow to implement tty dumping
in future.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:30:53 +04:00
Cyrill Gorcunov
301b2fe2ce log: Open logc files with O_TRUNC
It's really confusing when one use -o option
and didn't see update on top of log file.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-30 12:29:50 +04:00
Cyrill Gorcunov
eb12c976a3 pipes: Add test that pipe data is restored without errors
This eliminates the warning below as well

 | pipes.c: In function ‘open_pipe’:
 | pipes.c:252:6: error: variable ‘ret’ set but not used [-Werror=unused-but-set-variable]

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-25 10:34:28 +04:00
Andrey Vagin
fc4768f4a2 headers: mark functions as inline
to fix warning "error: ‘XXXXXX’ defined but not used"

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-18 19:01:44 +04:00
Andrey Vagin
066ec066a0 crtools: remove unused variables (v3)
Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-18 19:01:21 +04:00
Andrey Vagin
7454ab1cd5 make: remove -Wno-unused
We want to know about this warnings

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-18 19:01:02 +04:00
Cyrill Gorcunov
f1690ee0b5 Beautify include/sockets.h
Make it more readable.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-16 00:44:07 +04:00
Andrey Vagin
a411c8f21c restore: don't use an uninitialized variable
The global variable me isn't initialized, when we tried to use it.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-15 18:25:36 +04:00
Pavel Emelyanov
3b21f72766 mount: Full parse of proc mountinfo file
The proc_parse file turns into a strange pile of homebrew
scanf/fgets/strtok/strchr/etc. combination. I don't like it :(

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-13 08:34:31 +04:00
Pavel Emelyanov
f986994272 proc: Move proc string parse into separate fn
We'll have to parse it all and the format is not scanf
friendly, so it's simpler to have it in a separate fn.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-13 08:34:26 +04:00
Pavel Emelyanov
5e593e9b57 proc: Sanitize mountinfo parsing
Make the proc_mountinfo obtaned after parse form a single linked list.
That's much easier to handle and doesn't have an artificial limitation
of 64 items...

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-13 08:34:16 +04:00
Andrey Vagin
f9d1f2b275 utsns: use pr_msg for showing content
Otherwise it shows nothing without the verbose option

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-15 13:35:55 +04:00
Andrey Vagin
8a1337641f namespaces: include namespaces.h
to be sure that all declarations consistent.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-15 13:35:36 +04:00
Pavel Emelyanov
90d0a6a0de mount: Collect mount root as well when parsing proc
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 03:45:47 +04:00
Pavel Emelyanov
79da538469 mount: Rename proc_mountinfo mnt_root to mountpoint
What is stored there is the path to mountpoint. The root
is the field previously named "parent root".

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 03:40:08 +04:00
Pavel Emelyanov
db297a0f97 mnt: Preparations for mountpoints dumping
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 03:30:10 +04:00
Pavel Emelyanov
3d64f9d140 crtools: Remove explicit FMT_FNAME_ macros
Just put names right into desc template array. Nobody uses
these individually.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 03:17:48 +04:00
Pavel Emelyanov
21075911cc image: Shorted fdset template description
Introduce a helper, that will declare one tmpl entry
with one line.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 03:12:12 +04:00
Pavel Emelyanov
5cfa8a6de1 crtools: Remove unused flags arg from parse_ns_string
Opts are now global and flags are just assigned on it.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 02:34:22 +04:00
Andrey Vagin
6fd82bf702 zdtm.sh: check that a pid is valid
A test process should be alive.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 16:25:39 +04:00
Andrey Vagin
ef1c6035f1 zdtm: don't show a wrong path to log files
It showed old pathes.

Dump log   : /root/crtools/test/dump/inotify00/15673/dump.log
Restore log: /root/crtools/test/dump/inotify00/15673/restore.log
Output file: /root/crtools/test/zdtm/live/static/utsname.out
make: *** [test] Error 1

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 16:25:18 +04:00
Cyrill Gorcunov
0196d30a52 eventpoll, inotify: Don't fail on watchees absence
In case if eventpoll or inotify just created but
not watchee added we should not fail.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 16:23:33 +04:00
Andrey Vagin
a67d0cb25a zdtm: add gitignore
Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 16:21:47 +04:00
Andrey Vagin
9fc24621d5 zdtm: delete an unused file
Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-12 16:17:12 +04:00
Cyrill Gorcunov
62ee701c89 Use /proc/pid/smaps for VMA parsing v2
This allows us to detect nonlinear mappings.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-11 17:41:05 +04:00
Cyrill Gorcunov
32e07745cc sockets: Print error message on unexpected socket state
While been playing with sockets dumping I found a case where
we exit without descriptive error message. Fix it.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-11 17:39:45 +04:00
Andrey Vagin
f53888480e zdtm: open log files with O_APPEND
I'm a paranoiac.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-11 17:39:02 +04:00
Pavel Emelyanov
33051cd3b3 sockopt: Add basic options dump/restore
Only snd and rcv bufs and timeouts. Just as an example, others will be adder
sequentially.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-10 14:29:57 +04:00
Pavel Emelyanov
7f82ae1133 sockets: Prepare for dumping/restoring/showing socket options
Those sitting on the SOL_SOCKET level are common to different
socket families and will be handled in a generic code.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-05-10 14:29:57 +04:00