~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/tools/perf/util/cache.h

Version: ~ [ linux-5.4-rc7 ] ~ [ linux-5.3.11 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.84 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.154 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.201 ] ~ [ linux-4.8.17 ] ~ [ linux-4.7.10 ] ~ [ linux-4.6.7 ] ~ [ linux-4.5.7 ] ~ [ linux-4.4.201 ] ~ [ linux-4.3.6 ] ~ [ linux-4.2.8 ] ~ [ linux-4.1.52 ] ~ [ linux-4.0.9 ] ~ [ linux-3.19.8 ] ~ [ linux-3.18.140 ] ~ [ linux-3.17.8 ] ~ [ linux-3.16.77 ] ~ [ linux-3.15.10 ] ~ [ linux-3.14.79 ] ~ [ linux-3.13.11 ] ~ [ linux-3.12.74 ] ~ [ linux-3.11.10 ] ~ [ linux-3.10.108 ] ~ [ linux-3.9.11 ] ~ [ linux-3.8.13 ] ~ [ linux-3.7.10 ] ~ [ linux-3.6.11 ] ~ [ linux-3.5.7 ] ~ [ linux-3.4.113 ] ~ [ linux-3.3.8 ] ~ [ linux-3.2.102 ] ~ [ linux-3.1.10 ] ~ [ linux-3.0.101 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.5 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 #ifndef __PERF_CACHE_H
  2 #define __PERF_CACHE_H
  3 
  4 #include <stdbool.h>
  5 #include "util.h"
  6 #include "strbuf.h"
  7 #include "../perf.h"
  8 #include "../ui/ui.h"
  9 
 10 #define CMD_EXEC_PATH "--exec-path"
 11 #define CMD_PERF_DIR "--perf-dir="
 12 #define CMD_WORK_TREE "--work-tree="
 13 #define CMD_DEBUGFS_DIR "--debugfs-dir="
 14 
 15 #define PERF_DIR_ENVIRONMENT "PERF_DIR"
 16 #define PERF_WORK_TREE_ENVIRONMENT "PERF_WORK_TREE"
 17 #define EXEC_PATH_ENVIRONMENT "PERF_EXEC_PATH"
 18 #define DEFAULT_PERF_DIR_ENVIRONMENT ".perf"
 19 #define PERF_DEBUGFS_ENVIRONMENT "PERF_DEBUGFS_DIR"
 20 
 21 typedef int (*config_fn_t)(const char *, const char *, void *);
 22 extern int perf_default_config(const char *, const char *, void *);
 23 extern int perf_config(config_fn_t fn, void *);
 24 extern int perf_config_int(const char *, const char *);
 25 extern int perf_config_bool(const char *, const char *);
 26 extern int config_error_nonbool(const char *);
 27 extern const char *perf_config_dirname(const char *, const char *);
 28 
 29 /* pager.c */
 30 extern void setup_pager(void);
 31 extern const char *pager_program;
 32 extern int pager_in_use(void);
 33 extern int pager_use_color;
 34 
 35 char *alias_lookup(const char *alias);
 36 int split_cmdline(char *cmdline, const char ***argv);
 37 
 38 #define alloc_nr(x) (((x)+16)*3/2)
 39 
 40 /*
 41  * Realloc the buffer pointed at by variable 'x' so that it can hold
 42  * at least 'nr' entries; the number of entries currently allocated
 43  * is 'alloc', using the standard growing factor alloc_nr() macro.
 44  *
 45  * DO NOT USE any expression with side-effect for 'x' or 'alloc'.
 46  */
 47 #define ALLOC_GROW(x, nr, alloc) \
 48         do { \
 49                 if ((nr) > alloc) { \
 50                         if (alloc_nr(alloc) < (nr)) \
 51                                 alloc = (nr); \
 52                         else \
 53                                 alloc = alloc_nr(alloc); \
 54                         x = xrealloc((x), alloc * sizeof(*(x))); \
 55                 } \
 56         } while(0)
 57 
 58 
 59 static inline int is_absolute_path(const char *path)
 60 {
 61         return path[0] == '/';
 62 }
 63 
 64 const char *make_nonrelative_path(const char *path);
 65 char *strip_path_suffix(const char *path, const char *suffix);
 66 
 67 extern char *mkpath(const char *fmt, ...) __attribute__((format (printf, 1, 2)));
 68 extern char *perf_path(const char *fmt, ...) __attribute__((format (printf, 1, 2)));
 69 
 70 extern char *perf_pathdup(const char *fmt, ...)
 71         __attribute__((format (printf, 1, 2)));
 72 
 73 #ifndef HAVE_STRLCPY
 74 extern size_t strlcpy(char *dest, const char *src, size_t size);
 75 #endif
 76 
 77 #endif /* __PERF_CACHE_H */
 78 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | Wiki (Japanese) | Wiki (English) | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

osdn.jp