mirror of https://github.com/xemu-project/xemu.git
9pfs: add cleanup operation for proxy backend driver
In the init operation of proxy backend dirver, it allocates a V9fsProxy struct and some other resources. We should free these resources when the 9pfs device is unrealized. This is what this patch does. Signed-off-by: Li Qiang <liq3ea@gmail.com> Reviewed-by: Greg Kurz <groug@kaod.org> Signed-off-by: Greg Kurz <groug@kaod.org>
This commit is contained in:
parent
971f406b77
commit
898ae90a44
|
@ -1168,9 +1168,22 @@ static int proxy_init(FsContext *ctx)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void proxy_cleanup(FsContext *ctx)
|
||||
{
|
||||
V9fsProxy *proxy = ctx->private;
|
||||
|
||||
g_free(proxy->out_iovec.iov_base);
|
||||
g_free(proxy->in_iovec.iov_base);
|
||||
if (ctx->export_flags & V9FS_PROXY_SOCK_NAME) {
|
||||
close(proxy->sockfd);
|
||||
}
|
||||
g_free(proxy);
|
||||
}
|
||||
|
||||
FileOperations proxy_ops = {
|
||||
.parse_opts = proxy_parse_opts,
|
||||
.init = proxy_init,
|
||||
.cleanup = proxy_cleanup,
|
||||
.lstat = proxy_lstat,
|
||||
.readlink = proxy_readlink,
|
||||
.close = proxy_close,
|
||||
|
|
Loading…
Reference in New Issue