static int io_grab_files(struct io_kiocb *req)
{
	struct io_ring_ctx *ctx = req->ctx;

	io_req_init_async(req);

	if (req->work.files || (req->flags & REQ_F_NO_FILE_TABLE))
		return 0;

	req->work.files = get_files_struct(current);
	req->flags |= REQ_F_INFLIGHT;

	spin_lock_irq(&ctx->inflight_lock);
	list_add(&req->inflight_entry, &ctx->inflight_list);
	spin_unlock_irq(&ctx->inflight_lock);
	return 0;
}
static int io_grab_files(struct io_kiocb *req)
{
	struct io_ring_ctx *ctx = req->ctx;

	io_req_init_async(req);

	if (req->work.files || (req->flags & REQ_F_NO_FILE_TABLE))
		return 0;

	req->work.files = get_files_struct(current);
	req->flags |= REQ_F_INFLIGHT;

	spin_lock_irq(&ctx->inflight_lock);
	list_add(&req->inflight_entry, &ctx->inflight_list);
	spin_unlock_irq(&ctx->inflight_lock);
	return 0;
}