• Home
  • History
  • Annotate
  • only in /external/ltp/testcases/kernel/syscalls/umount2/
History log of /external/ltp/testcases/kernel/syscalls/umount2/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
879d392fa9fe8883e81aac7407c6bb3b021a8905 28-Apr-2016 Cyril Hrubis <chrubis@suse.cz> syscalls/umount2_{02,03}: Retry umount2() on EBUSY

This should be last fix for umount2() testcases failing with unexpected
EBUSY caused by background daemons probing new mounts (gvfs-trash in
this case).

This patch adds umount2.h header that defined inline umount2_retry()
function that retries umount2() only in case of EBUSY.

The umount2_01 does not need to be fixed since it uses MNT_DETACH that
does lazy umount and hence it does not race with background probing.

Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
Acked-by: Jan Stancek <jstancek@redhat.com>
mount2.h
mount2_02.c
mount2_03.c
d9deacfe00fcc7e7423867e67e53bc1a41775f98 28-Apr-2016 Cyril Hrubis <chrubis@suse.cz> syscalls/umount2_03: Fix umount() and EBUSY

We mount and umount the device for each testcase which sometimes fails
with EBUSY, make use of tst_umount() instead.

Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
mount2_03.c
88e316f5825bcdc3547ec486368ec4de0736197d 27-Apr-2016 Cyril Hrubis <chrubis@suse.cz> syscalls/umount2_02: Fix umount() and EBUSY

We have to use tst_umount() that retries the umount() on EBUSY otherwise
the test will rarely fail to umount the device in the main loop. This
umount is not triggered under normal circumstances, it is however used
when something went wrong to make sure the device is umounted.

The test for umount2() MNT_EXPIRED races with background daemons scans
as well and sometimes the last call to umount2() with MNT_EXPIRED fails
unexpectedly with EBUSY as well (since gvfs-trash has accessed the mount
point meanwhile) which causes the SAFE_UMOUNT() to be called in the
main() which fails with TBROK since the umount() continues to fail with
EBUSY as well and the device is finally umounted in cleanup().

So this is more or less cosmetic change so which makes the test exit
with TFAIL instead of TBROK in this case.

Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
mount2_02.c
cd3c33ab193020035420590613997229db9ab713 26-Apr-2016 Cyril Hrubis <chrubis@suse.cz> syscalls/umount2_01: Fix umount()

We have to use tst_umount() that retries the the umount() on EBUSY
otherwise the test will rarely fail with TBROK.

Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
mount2_01.c
bbdb9f78378c7e038f463efa39d2470e1c51ad54 16-Mar-2016 Cyril Hrubis <chrubis@suse.cz> lib: Add new test library API

The main features are:

o The cleanup callback is not passed directly to various library functions but
is set once globally in the structure that describes a test

- this makes the test API easier to use

- also fixes a few common mistakes such as passing cleanup callback
to functions executed from a cleanup

o Most of the boilerplate code is moved to library

- no more copying standard looping code around :)

o Various resources are initialized and freed automatically when requested

- this means much less race conditions and ordering problems in cleanups

o The result reporting functions now use shared memory to propagate
test results from child processes

- writing tests in child processes is now easier than ever

+ The test-writing-guidelines.txt were updated

Many thanks to Jan who reviewed numerous respins of this patches and
provided valuable suggestions and also to Alexey who pointed out some
stupid mistakes of mine.

Reviewed-by: Jan Stancek <jstancek@redhat.com>
Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
mount2_01.c
mount2_02.c
mount2_03.c
d5e1788b647aca13ee89f41c08113d7b5fa1c499 15-Mar-2016 Zorro Lang <zlang@redhat.com> tst_mkfs: add extra_opt parameter to tst_mkfs()

mmap16 always hits ETIMEDOUT error, if the test device is too large
since mkfs on the device will take lots of time. So I want to make ext4
with an appointed size but the [fs_size] parameter is passed after the
device name for ext4, e.g. "mkfs -t ext4 dev [fs_size]".

Due to above reason, add a new extra_opt parameter passed after the
device name of mkfs. Then mmap16 can make ext4 with an appointed (small)
size. And this change can make tst_mkfs() cover one more mkfs usage.

Due to I only find one option is needed after the device name, so I use
extra_opt. If there're more, the extra_opt should be changed to
extra_opts[].

Because of tst_mkfs be changed, all testcases which use tst_mkfs add
NULL parameter for extra_opt.

Signed-off-by: Zorro Lang <zlang@redhat.com>
Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
mount2_01.c
mount2_02.c
mount2_03.c
5d8f3c05460aeee17527f5d79c9e8536ac8d5a0a 19-Aug-2015 Guangwen Feng <fenggw-fnst@cn.fujitsu.com> umount2/umount2_03.c: add UMOUNT_NOFOLLOW flag test

Add new testcase to verify the flag UMOUNT_NOFOLLOW of umount2(2).

Signed-off-by: Guangwen Feng <fenggw-fnst@cn.fujitsu.com>
mount2_03.c
2df37ec39d153598ae7f4262c8422d50a2e3359b 19-Aug-2015 Guangwen Feng <fenggw-fnst@cn.fujitsu.com> umount2/umount2_02.c: add MNT_EXPIRE flag test

Add new testcase to verify the flag MNT_EXPIRE of umount2(2).

Signed-off-by: Guangwen Feng <fenggw-fnst@cn.fujitsu.com>
mount2_02.c
8493486dc674e5467d0cef07b340ca65b2a8fcd0 15-Jul-2015 Guangwen Feng <fenggw-fnst@cn.fujitsu.com> umount2/umount2_01.c: add new test

Add new testcase to verify the flag MNT_DETACH of umount2(2).

Signed-off-by: Guangwen Feng <fenggw-fnst@cn.fujitsu.com>
Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
akefile
mount2_01.c