17 enum perf_target_errno
{
18 PERF_ERRNO_TARGET__SUCCESS
= 0,
21 * Choose an arbitrary negative big number not to clash with standard
22 * errno since SUS requires the errno has distinct positive values.
23 * See 'Issue 6' in the link below.
25 * http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html
27 __PERF_ERRNO_TARGET__START
= -10000,
30 /* for perf_target__validate() */
31 PERF_ERRNO_TARGET__PID_OVERRIDE_CPU
= __PERF_ERRNO_TARGET__START
,
32 PERF_ERRNO_TARGET__PID_OVERRIDE_UID
,
33 PERF_ERRNO_TARGET__UID_OVERRIDE_CPU
,
34 PERF_ERRNO_TARGET__PID_OVERRIDE_SYSTEM
,
35 PERF_ERRNO_TARGET__UID_OVERRIDE_SYSTEM
,
37 /* for perf_target__parse_uid() */
38 PERF_ERRNO_TARGET__INVALID_UID
,
39 PERF_ERRNO_TARGET__USER_NOT_FOUND
,
41 __PERF_ERRNO_TARGET__END
,
44 enum perf_target_errno
perf_target__validate(struct perf_target
*target
);
45 enum perf_target_errno
perf_target__parse_uid(struct perf_target
*target
);
47 int perf_target__strerror(struct perf_target
*target
, int errnum
, char *buf
,
50 static inline bool perf_target__has_task(struct perf_target
*target
)
52 return target
->tid
|| target
->pid
|| target
->uid_str
;
55 static inline bool perf_target__has_cpu(struct perf_target
*target
)
57 return target
->system_wide
|| target
->cpu_list
;
60 static inline bool perf_target__none(struct perf_target
*target
)
62 return !perf_target__has_task(target
) && !perf_target__has_cpu(target
);
65 #endif /* _PERF_TARGET_H */