Commit 809e905c authored by Akinobu Mita's avatar Akinobu Mita Committed by Stefan Richter
Browse files

ieee1394: eth1394: fix error path in module_init



This patch fixes some error handlings in eth1394:

- check return value of kmem_cache_create()
- cleanup resources if hpsb_register_protocol() fails

Signed-off-by: default avatarAkinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (whitespace)
parent fdc0092b
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -1669,12 +1669,21 @@ static struct ethtool_ops ethtool_ops = {

static int __init ether1394_init_module(void)
{
	int err;

	packet_task_cache = kmem_cache_create("packet_task",
					      sizeof(struct packet_task),
					      0, 0, NULL, NULL);
	if (!packet_task_cache)
		return -ENOMEM;

	hpsb_register_highlevel(&eth1394_highlevel);
	return hpsb_register_protocol(&eth1394_proto_driver);
	err = hpsb_register_protocol(&eth1394_proto_driver);
	if (err) {
		hpsb_unregister_highlevel(&eth1394_highlevel);
		kmem_cache_destroy(packet_task_cache);
	}
	return err;
}

static void __exit ether1394_exit_module(void)