提交 c3f890bc 编写于 作者: A Andrzej Pietrasiewicz 提交者: Nicholas Bellinger

usb: gadget: f_tcm: remove redundant singleton

The only instance is guaranteed with TPG_INSTANCES defined to 1.
Signed-off-by: NAndrzej Pietrasiewicz <andrzej.p@samsung.com>
Acked-by: NSebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
上级 e5587ea1
......@@ -1371,8 +1371,6 @@ static int usbg_init_nodeacl(struct se_node_acl *se_nacl, const char *name)
return 0;
}
struct usbg_tpg *the_only_tpg_I_currently_have;
static struct se_portal_group *usbg_make_tpg(
struct se_wwn *wwn,
struct config_group *group,
......@@ -1390,11 +1388,6 @@ static struct se_portal_group *usbg_make_tpg(
return ERR_PTR(-EINVAL);
if (kstrtoul(name + 5, 0, &tpgt) || tpgt > UINT_MAX)
return ERR_PTR(-EINVAL);
if (the_only_tpg_I_currently_have) {
pr_err("Until the gadget framework can't handle multiple\n");
pr_err("gadgets, you can't do this here.\n");
return ERR_PTR(-EBUSY);
}
ret = -ENODEV;
mutex_lock(&tpg_instances_lock);
for (i = 0; i < TPG_INSTANCES; ++i)
......@@ -1437,7 +1430,6 @@ static struct se_portal_group *usbg_make_tpg(
tpg->fi = tpg_instances[i].func_inst;
mutex_unlock(&opts->dep_lock);
mutex_unlock(&tpg_instances_lock);
the_only_tpg_I_currently_have = tpg;
return &tpg->se_tpg;
free_workqueue:
......@@ -1481,7 +1473,6 @@ static void usbg_drop_tpg(struct se_portal_group *se_tpg)
mutex_unlock(&tpg_instances_lock);
kfree(tpg);
the_only_tpg_I_currently_have = NULL;
}
static struct se_wwn *usbg_make_tport(
......
......@@ -129,6 +129,4 @@ struct f_uas {
struct usb_request *bot_req_out;
};
extern struct usbg_tpg *the_only_tpg_I_currently_have;
#endif /* __TARGET_USB_GADGET_H__ */
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册