bsd-user: Implement getrusage(2).
Signed-off-by: Stacey Son <sson@FreeBSD.org> Signed-off-by: Karim Taha <kariem.taha2.7@gmail.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Warner Losh <imp@bsdimp.com> Message-Id: <20230925182425.3163-14-kariem.taha2.7@gmail.com>
This commit is contained in:
		
							parent
							
								
									82fe5f3a34
								
							
						
					
					
						commit
						59e801efdf
					
				@ -124,4 +124,17 @@ static inline abi_long do_bsd_getlogin(abi_long arg1, abi_long arg2)
 | 
				
			|||||||
    return ret;
 | 
					    return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* getrusage(2) */
 | 
				
			||||||
 | 
					static inline abi_long do_bsd_getrusage(abi_long who, abi_ulong target_addr)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    abi_long ret;
 | 
				
			||||||
 | 
					    struct rusage rusage;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ret = get_errno(getrusage(who, &rusage));
 | 
				
			||||||
 | 
					    if (!is_error(ret)) {
 | 
				
			||||||
 | 
					        host_to_target_rusage(target_addr, &rusage);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return ret;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* !BSD_PROC_H_ */
 | 
					#endif /* !BSD_PROC_H_ */
 | 
				
			||||||
 | 
				
			|||||||
@ -243,6 +243,10 @@ static abi_long freebsd_syscall(void *cpu_env, int num, abi_long arg1,
 | 
				
			|||||||
        ret = do_bsd_getlogin(arg1, arg2);
 | 
					        ret = do_bsd_getlogin(arg1, arg2);
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    case TARGET_FREEBSD_NR_getrusage: /* getrusage(2) */
 | 
				
			||||||
 | 
					        ret = do_bsd_getrusage(arg1, arg2);
 | 
				
			||||||
 | 
					        break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /*
 | 
					        /*
 | 
				
			||||||
         * File system calls.
 | 
					         * File system calls.
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user