strace/swapon.c
Dmitry V. Levin fcb94cded0 Fix decoding of swapon flags
* swapon.c (SYS_FUNC(swapon)): Print priority regardless
of SWAP_FLAG_PREFER flag being set.
* tests/swap.c (error_msg): Handle EINVAL.
(main): Check decoding of swapon flags.
2016-04-07 01:15:58 +00:00

25 lines
421 B
C

#include "defs.h"
#include <sys/swap.h>
#include "xlat/swap_flags.h"
SYS_FUNC(swapon)
{
unsigned int flags = tcp->u_arg[1];
unsigned int prio = flags & SWAP_FLAG_PRIO_MASK;
flags &= ~SWAP_FLAG_PRIO_MASK;
printpath(tcp, tcp->u_arg[0]);
tprints(", ");
if (flags) {
printflags(swap_flags, flags, "SWAP_FLAG_???");
if (prio)
tprintf("|%u", prio);
} else {
tprintf("%u", prio);
}
return RVAL_DECODED;
}