mirror of
https://github.com/checkpoint-restore/criu
synced 2025-08-31 14:25:49 +00:00
Move error reporting to inside open_proc and friends
...and make it correctly print the file name we were unable to open. Also, error from fdopen[dir]() is now reported with file name as well. Note that open_proc() and friends need to be macros in order for pr_perror() to show actual file name and line number where error occured. Historical note: the original version of this patch was way more radical, changing openat() to open() and thus removing pid_dir (replacing with pid when needed) and open_proc_dir(), changing openat() to open(). The word from Pavel is he wants to keep the openat/pid_dir optimization because it saves two dentry lookups in kernel code for each open(). Because of this optimization (and desire to print correct file name in case of error) we have to carry both pid and pid_dir everywhere. Signed-off-by: Kir Kolyshkin <kir@openvz.org> Acked-by: Pavel Emelyanov <xemul@parallels.com> Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
This commit is contained in:
committed by
Cyrill Gorcunov
parent
5434d99e9f
commit
5661d806cb
@@ -80,6 +80,6 @@ struct proc_status_creds {
|
||||
extern int parse_pid_stat(pid_t pid, int pid_dir, struct proc_pid_stat *s);
|
||||
extern int parse_pid_stat_small(pid_t pid, int pid_dir, struct proc_pid_stat_small *s);
|
||||
extern int parse_maps(pid_t pid, int pid_dir, struct list_head *vma_area_list, bool use_map_files);
|
||||
extern int parse_pid_status(int pid_dir, struct proc_status_creds *);
|
||||
extern int parse_pid_status(pid_t pid, int pid_dir, struct proc_status_creds *);
|
||||
|
||||
#endif /* PROC_PARSE_H__ */
|
||||
|
Reference in New Issue
Block a user