netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] vsock: fix missing cleanup when misc_register failed
@ 2015-10-18 13:53 Gao feng
  2015-10-18 14:24 ` kbuild test robot
  0 siblings, 1 reply; 2+ messages in thread
From: Gao feng @ 2015-10-18 13:53 UTC (permalink / raw)
  To: netdev; +Cc: Gao feng

reset transport and unlock if misc_register failed.

Signed-off-by: Gao feng <omarapazanadi@gmail.com>
---
 net/vmw_vsock/af_vsock.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c
index df5fc6b..5f5fbed 100644
--- a/net/vmw_vsock/af_vsock.c
+++ b/net/vmw_vsock/af_vsock.c
@@ -1948,7 +1948,7 @@ int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
 	err = misc_register(&vsock_device);
 	if (err) {
 		pr_err("Failed to register misc device\n");
-		return -ENOENT;
+		goto err_reset_transport;
 	}
 
 	err = proto_register(&vsock_proto, 1);	/* we want our slab */
@@ -1969,8 +1969,9 @@ int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
 
 err_unregister_proto:
 	proto_unregister(&vsock_proto);
-err_misc_deregister:
+err_unregister_misc:
 	misc_deregister(&vsock_device);
+err_reset_transport:
 	transport = NULL;
 err_busy:
 	mutex_unlock(&vsock_register_mutex);
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] vsock: fix missing cleanup when misc_register failed
  2015-10-18 13:53 [PATCH] vsock: fix missing cleanup when misc_register failed Gao feng
@ 2015-10-18 14:24 ` kbuild test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kbuild test robot @ 2015-10-18 14:24 UTC (permalink / raw)
  To: Gao feng; +Cc: kbuild-all, netdev, Gao feng

[-- Attachment #1: Type: text/plain, Size: 2716 bytes --]

Hi Gao,

[auto build test ERROR on net/master -- if it's inappropriate base, please suggest rules for selecting the more suitable base]

url:    https://github.com/0day-ci/linux/commits/Gao-feng/vsock-fix-missing-cleanup-when-misc_register-failed/20151018-215542
config: x86_64-rhel (attached as .config)
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All error/warnings (new ones prefixed by >>):

   net/vmw_vsock/af_vsock.c: In function '__vsock_core_init':
>> net/vmw_vsock/af_vsock.c:1972:1: warning: label 'err_unregister_misc' defined but not used [-Wunused-label]
    err_unregister_misc:
    ^
>> net/vmw_vsock/af_vsock.c:1957:3: error: label 'err_misc_deregister' used but not defined
      goto err_misc_deregister;
      ^

vim +/err_misc_deregister +1957 net/vmw_vsock/af_vsock.c

1ef231d1 Gao feng  2015-10-18  1951  		goto err_reset_transport;
d021c344 Andy King 2013-02-06  1952  	}
d021c344 Andy King 2013-02-06  1953  
d021c344 Andy King 2013-02-06  1954  	err = proto_register(&vsock_proto, 1);	/* we want our slab */
d021c344 Andy King 2013-02-06  1955  	if (err) {
d021c344 Andy King 2013-02-06  1956  		pr_err("Cannot register vsock protocol\n");
d021c344 Andy King 2013-02-06 @1957  		goto err_misc_deregister;
d021c344 Andy King 2013-02-06  1958  	}
d021c344 Andy King 2013-02-06  1959  
d021c344 Andy King 2013-02-06  1960  	err = sock_register(&vsock_family_ops);
d021c344 Andy King 2013-02-06  1961  	if (err) {
d021c344 Andy King 2013-02-06  1962  		pr_err("could not register af_vsock (%d) address family: %d\n",
d021c344 Andy King 2013-02-06  1963  		       AF_VSOCK, err);
d021c344 Andy King 2013-02-06  1964  		goto err_unregister_proto;
d021c344 Andy King 2013-02-06  1965  	}
d021c344 Andy King 2013-02-06  1966  
2c4a336e Andy King 2014-05-01  1967  	mutex_unlock(&vsock_register_mutex);
d021c344 Andy King 2013-02-06  1968  	return 0;
d021c344 Andy King 2013-02-06  1969  
d021c344 Andy King 2013-02-06  1970  err_unregister_proto:
d021c344 Andy King 2013-02-06  1971  	proto_unregister(&vsock_proto);
1ef231d1 Gao feng  2015-10-18 @1972  err_unregister_misc:
d021c344 Andy King 2013-02-06  1973  	misc_deregister(&vsock_device);
1ef231d1 Gao feng  2015-10-18  1974  err_reset_transport:
d021c344 Andy King 2013-02-06  1975  	transport = NULL;

:::::: The code at line 1957 was first introduced by commit
:::::: d021c344051af91f42c5ba9fdedc176740cbd238 VSOCK: Introduce VM Sockets

:::::: TO: Andy King <acking@vmware.com>
:::::: CC: David S. Miller <davem@davemloft.net>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 35272 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-10-18 14:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-18 13:53 [PATCH] vsock: fix missing cleanup when misc_register failed Gao feng
2015-10-18 14:24 ` kbuild test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).