tools lib fs: Adopt filename__read_int from tools/perf/
Will be useful for new helpers to read sysctl values. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Borislav Petkov <bp@suse.de> Cc: David Ahern <dsahern@gmail.com> Cc: Don Zickus <dzickus@redhat.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
		
					parent
					
						
							
								99d348a84c
							
						
					
				
			
			
				commit
				
					
						3a351127cb
					
				
			
		
					 4 changed files with 23 additions and 18 deletions
				
			
		| 
						 | 
					@ -7,6 +7,10 @@
 | 
				
			||||||
#include <stdlib.h>
 | 
					#include <stdlib.h>
 | 
				
			||||||
#include <string.h>
 | 
					#include <string.h>
 | 
				
			||||||
#include <sys/vfs.h>
 | 
					#include <sys/vfs.h>
 | 
				
			||||||
 | 
					#include <sys/types.h>
 | 
				
			||||||
 | 
					#include <sys/stat.h>
 | 
				
			||||||
 | 
					#include <fcntl.h>
 | 
				
			||||||
 | 
					#include <unistd.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "debugfs.h"
 | 
					#include "debugfs.h"
 | 
				
			||||||
#include "fs.h"
 | 
					#include "fs.h"
 | 
				
			||||||
| 
						 | 
					@ -163,3 +167,20 @@ const char *name##__mountpoint(void)	\
 | 
				
			||||||
 | 
					
 | 
				
			||||||
FS__MOUNTPOINT(sysfs,  FS__SYSFS);
 | 
					FS__MOUNTPOINT(sysfs,  FS__SYSFS);
 | 
				
			||||||
FS__MOUNTPOINT(procfs, FS__PROCFS);
 | 
					FS__MOUNTPOINT(procfs, FS__PROCFS);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int filename__read_int(const char *filename, int *value)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						char line[64];
 | 
				
			||||||
 | 
						int fd = open(filename, O_RDONLY), err = -1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (fd < 0)
 | 
				
			||||||
 | 
							return -1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (read(fd, line, sizeof(line)) > 0) {
 | 
				
			||||||
 | 
							*value = atoi(line);
 | 
				
			||||||
 | 
							err = 0;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						close(fd);
 | 
				
			||||||
 | 
						return err;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,4 +11,6 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const char *sysfs__mountpoint(void);
 | 
					const char *sysfs__mountpoint(void);
 | 
				
			||||||
const char *procfs__mountpoint(void);
 | 
					const char *procfs__mountpoint(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					int filename__read_int(const char *filename, int *value);
 | 
				
			||||||
#endif /* __API_FS__ */
 | 
					#endif /* __API_FS__ */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -442,23 +442,6 @@ unsigned long parse_tag_value(const char *str, struct parse_tag *tags)
 | 
				
			||||||
	return (unsigned long) -1;
 | 
						return (unsigned long) -1;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int filename__read_int(const char *filename, int *value)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	char line[64];
 | 
					 | 
				
			||||||
	int fd = open(filename, O_RDONLY), err = -1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (fd < 0)
 | 
					 | 
				
			||||||
		return -1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (read(fd, line, sizeof(line)) > 0) {
 | 
					 | 
				
			||||||
		*value = atoi(line);
 | 
					 | 
				
			||||||
		err = 0;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	close(fd);
 | 
					 | 
				
			||||||
	return err;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int filename__read_str(const char *filename, char **buf, size_t *sizep)
 | 
					int filename__read_str(const char *filename, char **buf, size_t *sizep)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	size_t size = 0, alloc_size = 0;
 | 
						size_t size = 0, alloc_size = 0;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -343,7 +343,6 @@ char *get_srcline(struct dso *dso, unsigned long addr, struct symbol *sym,
 | 
				
			||||||
		  bool show_sym);
 | 
							  bool show_sym);
 | 
				
			||||||
void free_srcline(char *srcline);
 | 
					void free_srcline(char *srcline);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int filename__read_int(const char *filename, int *value);
 | 
					 | 
				
			||||||
int filename__read_str(const char *filename, char **buf, size_t *sizep);
 | 
					int filename__read_str(const char *filename, char **buf, size_t *sizep);
 | 
				
			||||||
int perf_event_paranoid(void);
 | 
					int perf_event_paranoid(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue