public inbox for oe-kbuild@lists.linux.dev
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com, Dan Carpenter <error27@gmail.com>
Subject: [usb:usb-testing 61/66] drivers/usb/gadget/function/f_hid.c:1291 hidg_bind() warn: missing error code 'status'
Date: Fri, 03 Apr 2026 16:40:13 +0800	[thread overview]
Message-ID: <202604022131.fEHaGZ7Q-lkp@intel.com> (raw)

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-usb@vger.kernel.org
TO: Michael Zimmermann <sigmaepsilon92@gmail.com>
CC: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
head:   74a2287209a858470d15e2996ead2337bd293ff4
commit: 81ebd43cc0d6d106ce7b6ccbf7b5e40ca7f5503d [61/66] usb: gadget: f_hid: don't call cdev_init while cdev in use
:::::: branch date: 5 hours ago
:::::: commit date: 3 days ago
config: i386-randconfig-141-20260402 (https://download.01.org/0day-ci/archive/20260402/202604022131.fEHaGZ7Q-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
smatch: v0.5.0-9004-gb810ac53

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202604022131.fEHaGZ7Q-lkp@intel.com/

smatch warnings:
drivers/usb/gadget/function/f_hid.c:1291 hidg_bind() warn: missing error code 'status'

vim +/status +1291 drivers/usb/gadget/function/f_hid.c

71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1146  
cb382536052fcc drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1147  static int hidg_bind(struct usb_configuration *c, struct usb_function *f)
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1148  {
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1149  	struct usb_ep		*ep;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1150  	struct f_hidg		*hidg = func_to_hidg(f);
5ca8d3ec9970f4 drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1151  	struct usb_string	*us;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1152  	int			status;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1153  
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1154  	hidg->get_req = usb_ep_alloc_request(c->cdev->gadget->ep0, GFP_ATOMIC);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1155  	if (!hidg->get_req)
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1156  		return -ENOMEM;
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1157  
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1158  	hidg->get_req->zero = 0;
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1159  	hidg->get_req->complete = hidg_get_report_complete;
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1160  	hidg->get_req->context = hidg;
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1161  	hidg->get_report_returned = true;
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1162  
cb382536052fcc drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1163  	/* maybe allocate device-global string IDs, and patch descriptors */
5ca8d3ec9970f4 drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1164  	us = usb_gstrings_attach(c->cdev, ct_func_strings,
5ca8d3ec9970f4 drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1165  				 ARRAY_SIZE(ct_func_string_defs));
5ca8d3ec9970f4 drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1166  	if (IS_ERR(us))
5ca8d3ec9970f4 drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1167  		return PTR_ERR(us);
5ca8d3ec9970f4 drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1168  	hidg_interface_desc.iInterface = us[CT_FUNC_HID_IDX].id;
cb382536052fcc drivers/usb/gadget/function/f_hid.c Andrzej Pietrasiewicz     2014-11-06  1169  
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1170  	/* allocate instance-specific interface IDs, and patch descriptors */
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1171  	status = usb_interface_id(c, f);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1172  	if (status < 0)
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1173  		goto fail;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1174  	hidg_interface_desc.bInterfaceNumber = status;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1175  
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1176  	/* allocate instance-specific endpoints */
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1177  	status = -ENODEV;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1178  	ep = usb_ep_autoconfig(c->cdev->gadget, &hidg_fs_in_ep_desc);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1179  	if (!ep)
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1180  		goto fail;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1181  	hidg->in_ep = ep;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1182  
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1183  	hidg->out_ep = NULL;
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1184  	if (hidg->use_out_ep) {
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1185  		ep = usb_ep_autoconfig(c->cdev->gadget, &hidg_fs_out_ep_desc);
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1186  		if (!ep)
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1187  			goto fail;
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1188  		hidg->out_ep = ep;
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1189  	}
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1190  
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1191  	/* used only if use_out_ep == 1 */
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1192  	hidg->set_report_buf = NULL;
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1193  
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1194  	/* set descriptor dynamic values */
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1195  	hidg_interface_desc.bInterfaceSubClass = hidg->bInterfaceSubClass;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1196  	hidg_interface_desc.bInterfaceProtocol = hidg->bInterfaceProtocol;
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1197  	hidg_interface_desc.bNumEndpoints = hidg->use_out_ep ? 2 : 1;
b3c4ec71ec413c drivers/usb/gadget/function/f_hid.c Abdulhadi Mohamed         2017-07-19  1198  	hidg->protocol = HID_REPORT_PROTOCOL;
afcff6dc690e24 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-07-21  1199  	hidg->idle = 1;
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1200  	hidg_ss_in_ep_desc.wMaxPacketSize = cpu_to_le16(hidg->report_length);
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1201  	hidg_ss_in_comp_desc.wBytesPerInterval =
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1202  				cpu_to_le16(hidg->report_length);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1203  	hidg_hs_in_ep_desc.wMaxPacketSize = cpu_to_le16(hidg->report_length);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1204  	hidg_fs_in_ep_desc.wMaxPacketSize = cpu_to_le16(hidg->report_length);
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1205  	hidg_ss_out_ep_desc.wMaxPacketSize = cpu_to_le16(hidg->report_length);
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1206  
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1207  	/* IN endpoints: FS default=10ms, HS default=4µ-frame; user override if set */
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1208  	if (!hidg->interval_user_set) {
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1209  		hidg_fs_in_ep_desc.bInterval = 10;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1210  		hidg_hs_in_ep_desc.bInterval = 4;
7f58b4148ef5d8 drivers/usb/gadget/function/f_hid.c John Keeping              2026-02-27  1211  		hidg_ss_in_ep_desc.bInterval = 4;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1212  	} else {
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1213  		hidg_fs_in_ep_desc.bInterval = hidg->interval;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1214  		hidg_hs_in_ep_desc.bInterval = hidg->interval;
7f58b4148ef5d8 drivers/usb/gadget/function/f_hid.c John Keeping              2026-02-27  1215  		hidg_ss_in_ep_desc.bInterval = hidg->interval;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1216  	}
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1217  
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1218  	hidg_ss_out_comp_desc.wBytesPerInterval =
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1219  				cpu_to_le16(hidg->report_length);
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1220  	hidg_hs_out_ep_desc.wMaxPacketSize = cpu_to_le16(hidg->report_length);
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1221  	hidg_fs_out_ep_desc.wMaxPacketSize = cpu_to_le16(hidg->report_length);
f286d487e9283a drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2015-03-27  1222  	/*
f286d487e9283a drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2015-03-27  1223  	 * We can use hidg_desc struct here but we should not relay
f286d487e9283a drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2015-03-27  1224  	 * that its content won't change after returning from this function.
f286d487e9283a drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2015-03-27  1225  	 */
fe7f7ac8e0c708 drivers/usb/gadget/function/f_hid.c Terry Junge               2025-03-12  1226  	hidg_desc.rpt_desc.bDescriptorType = HID_DT_REPORT;
fe7f7ac8e0c708 drivers/usb/gadget/function/f_hid.c Terry Junge               2025-03-12  1227  	hidg_desc.rpt_desc.wDescriptorLength =
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1228  		cpu_to_le16(hidg->report_desc_length);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1229  
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1230  	hidg_hs_in_ep_desc.bEndpointAddress =
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1231  		hidg_fs_in_ep_desc.bEndpointAddress;
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1232  	hidg_hs_out_ep_desc.bEndpointAddress =
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1233  		hidg_fs_out_ep_desc.bEndpointAddress;
10287baec761d3 drivers/usb/gadget/f_hid.c          Sebastian Andrzej Siewior 2012-10-22  1234  
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1235  	hidg_ss_in_ep_desc.bEndpointAddress =
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1236  		hidg_fs_in_ep_desc.bEndpointAddress;
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1237  	hidg_ss_out_ep_desc.bEndpointAddress =
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1238  		hidg_fs_out_ep_desc.bEndpointAddress;
dbf499cf720a00 drivers/usb/gadget/function/f_hid.c Janusz Dziedzic           2016-11-03  1239  
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1240  	if (hidg->use_out_ep) {
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1241  		/* OUT endpoints: same defaults (FS=10, HS=4) unless user set */
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1242  		if (!hidg->interval_user_set) {
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1243  			hidg_fs_out_ep_desc.bInterval = 10;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1244  			hidg_hs_out_ep_desc.bInterval = 4;
7f58b4148ef5d8 drivers/usb/gadget/function/f_hid.c John Keeping              2026-02-27  1245  			hidg_ss_out_ep_desc.bInterval = 4;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1246  		} else {
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1247  			hidg_fs_out_ep_desc.bInterval = hidg->interval;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1248  			hidg_hs_out_ep_desc.bInterval = hidg->interval;
7f58b4148ef5d8 drivers/usb/gadget/function/f_hid.c John Keeping              2026-02-27  1249  			hidg_ss_out_ep_desc.bInterval = hidg->interval;
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1250  		}
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1251  		status = usb_assign_descriptors(f,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1252  			    hidg_fs_descriptors_intout,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1253  			    hidg_hs_descriptors_intout,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1254  			    hidg_ss_descriptors_intout,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1255  			    hidg_ss_descriptors_intout);
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1256  	} else {
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1257  		status = usb_assign_descriptors(f,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1258  			hidg_fs_descriptors_ssreport,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1259  			hidg_hs_descriptors_ssreport,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1260  			hidg_ss_descriptors_ssreport,
d7428bc26fc767 drivers/usb/gadget/function/f_hid.c Maxim Devaev              2021-08-21  1261  			hidg_ss_descriptors_ssreport);
ea34925f5b2ee4 drivers/usb/gadget/function/f_hid.c Ben Hoff                  2025-04-29  1262  	}
10287baec761d3 drivers/usb/gadget/f_hid.c          Sebastian Andrzej Siewior 2012-10-22  1263  	if (status)
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1264  		goto fail;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1265  
33e4c1a9987a1f drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2017-01-19  1266  	spin_lock_init(&hidg->write_spinlock);
749494b6bdbbaf drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2017-01-24  1267  	hidg->write_pending = 1;
749494b6bdbbaf drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2017-01-24  1268  	hidg->req = NULL;
33e4c1a9987a1f drivers/usb/gadget/function/f_hid.c Krzysztof Opasiak         2017-01-19  1269  	spin_lock_init(&hidg->read_spinlock);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1270  	spin_lock_init(&hidg->get_report_spinlock);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1271  	init_waitqueue_head(&hidg->write_queue);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1272  	init_waitqueue_head(&hidg->read_queue);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1273  	init_waitqueue_head(&hidg->get_queue);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1274  	init_waitqueue_head(&hidg->get_id_queue);
99c515005857ff drivers/usb/gadget/f_hid.c          Daniel Mack               2012-06-13  1275  	INIT_LIST_HEAD(&hidg->completed_out_req);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1276  	INIT_LIST_HEAD(&hidg->report_list);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1277  
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1278  	INIT_WORK(&hidg->work, get_report_workqueue_handler);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1279  	hidg->workqueue = alloc_workqueue("report_work",
e91bbe082878c9 drivers/usb/gadget/function/f_hid.c Marco Crivellari          2025-11-07  1280  					  WQ_FREEZABLE | WQ_MEM_RECLAIM | WQ_PERCPU,
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1281  					  1);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1282  
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1283  	if (!hidg->workqueue) {
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1284  		status = -ENOMEM;
62783c30d78aec drivers/usb/gadget/function/f_hid.c Yuhao Jiang               2025-06-23  1285  		goto fail_free_descs;
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1286  	}
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1287  
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1288  	/* create char device */
81ebd43cc0d6d1 drivers/usb/gadget/function/f_hid.c Michael Zimmermann        2026-03-27  1289  	hidg->cdev = cdev_alloc();
81ebd43cc0d6d1 drivers/usb/gadget/function/f_hid.c Michael Zimmermann        2026-03-27  1290  	if (!hidg->cdev)
81ebd43cc0d6d1 drivers/usb/gadget/function/f_hid.c Michael Zimmermann        2026-03-27 @1291  		goto fail_free_all;
81ebd43cc0d6d1 drivers/usb/gadget/function/f_hid.c Michael Zimmermann        2026-03-27  1292  	hidg->cdev->ops = &f_hidg_fops;
81ebd43cc0d6d1 drivers/usb/gadget/function/f_hid.c Michael Zimmermann        2026-03-27  1293  
81ebd43cc0d6d1 drivers/usb/gadget/function/f_hid.c Michael Zimmermann        2026-03-27  1294  	status = cdev_device_add(hidg->cdev, &hidg->dev);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1295  	if (status)
62783c30d78aec drivers/usb/gadget/function/f_hid.c Yuhao Jiang               2025-06-23  1296  		goto fail_free_all;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1297  
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1298  	return 0;
62783c30d78aec drivers/usb/gadget/function/f_hid.c Yuhao Jiang               2025-06-23  1299  fail_free_all:
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1300  	destroy_workqueue(hidg->workqueue);
62783c30d78aec drivers/usb/gadget/function/f_hid.c Yuhao Jiang               2025-06-23  1301  fail_free_descs:
d12a8727171c77 drivers/usb/gadget/function/f_hid.c Pavitrakumar Managutte    2014-10-22  1302  	usb_free_all_descriptors(f);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1303  fail:
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1304  	ERROR(f->config->cdev, "hidg_bind FAILED\n");
14794d7133d0f1 drivers/usb/gadget/function/f_hid.c Felipe F. Tonello         2016-08-23  1305  	if (hidg->req != NULL)
14794d7133d0f1 drivers/usb/gadget/function/f_hid.c Felipe F. Tonello         2016-08-23  1306  		free_ep_req(hidg->in_ep, hidg->req);
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1307  
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1308  	usb_ep_free_request(c->cdev->gadget->ep0, hidg->get_req);
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1309  	hidg->get_req = NULL;
a139c98f760efa drivers/usb/gadget/function/f_hid.c Chris Wulff               2024-08-17  1310  
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1311  	return status;
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1312  }
71adf118946957 drivers/usb/gadget/f_hid.c          Fabien Chouteau           2010-04-08  1313  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2026-04-03  8:41 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202604022131.fEHaGZ7Q-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=error27@gmail.com \
    --cc=oe-kbuild@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox