From 5eadbbfca6232710036ccb9f5cf1481be537c0e7 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 28 Apr 2022 09:22:18 -0700 Subject: semihosting: Split out semihost_sys_close Split out the non-ARM specific portions of SYS_CLOSE to a reusable function. This handles all GuestFD. Note that gdb_do_syscall %x reads target_ulong, not int. Reviewed-by: Luc Michel Signed-off-by: Richard Henderson --- semihosting/guestfd.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'semihosting/guestfd.c') diff --git a/semihosting/guestfd.c b/semihosting/guestfd.c index 7ac2e147a8..e3122ebba9 100644 --- a/semihosting/guestfd.c +++ b/semihosting/guestfd.c @@ -49,6 +49,11 @@ int alloc_guestfd(void) return i; } +static void do_dealloc_guestfd(GuestFD *gf) +{ + gf->type = GuestFDUnused; +} + /* * Look up the guestfd in the data structure; return NULL * for out of bounds, but don't check whether the slot is unused. @@ -119,5 +124,5 @@ void dealloc_guestfd(int guestfd) GuestFD *gf = do_get_guestfd(guestfd); assert(gf); - gf->type = GuestFDUnused; + do_dealloc_guestfd(gf); } -- cgit v1.2.3