From: Sage Weil Date: Wed, 4 Jun 2008 20:59:16 +0000 (-0700) Subject: Merge branch 'nested' into unstable X-Git-Tag: v0.3~170 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=1e66d16bac58b76e525edc41228758f7239e5a3f;p=ceph.git Merge branch 'nested' into unstable --- 1e66d16bac58b76e525edc41228758f7239e5a3f diff --cc src/kernel/ktcp.c index 70ecc50245fd,e7040ea7cf78..5f7e4c036098 --- a/src/kernel/ktcp.c +++ b/src/kernel/ktcp.c @@@ -31,25 -31,27 +31,25 @@@ struct kobj_type ceph_socket_type = .release = ceph_socket_destroy, }; - struct ceph_socket *ceph_socket_create() + static struct ceph_socket *ceph_socket_create(void) { struct ceph_socket *s; - int err; - + int err = -ENOMEM; + s = kzalloc(sizeof(*s), GFP_NOFS); - if (!s) { - derr(10, "ENOMEM creating ceph_socket\n"); - return ERR_PTR(-ENOMEM); - } + if (!s) + goto out; err = sock_create_kern(AF_INET, SOCK_STREAM, IPPROTO_TCP, &s->sock); - if (err) { - derr(10, "sock_create_kern error %d\n", err); - return ERR_PTR(err); - } + if (err) + goto out_free; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25) - kobject_init_and_add(&s->kobj, &ceph_socket_type, - ceph_sockets_kobj, - "socket %p", s); + err = kobject_init_and_add(&s->kobj, &ceph_socket_type, + ceph_sockets_kobj, + "socket %p", s); + if (err) + goto out_release; #else kobject_init(&s->kobj); kobject_set_name(&s->kobj, "socket %p", s); diff --cc src/kernel/ktcp.h index 59314f37255e,ef6650391d09..bbe577cbfd85 --- a/src/kernel/ktcp.h +++ b/src/kernel/ktcp.h @@@ -22,9 -22,8 +22,8 @@@ void ceph_cancel_sock_callbacks(struct int ceph_workqueue_init(void); void ceph_workqueue_shutdown(void); - extern struct ceph_socket *ceph_socket_create(void); extern void ceph_socket_get(struct ceph_socket *s); -extern void ceph_socket_put(struct ceph_socket *s, int die); +extern void ceph_socket_put(struct ceph_socket *s); /* Max number of outstanding connections in listener queueu */ #define NUM_BACKUP 10