net: Trivial cleanups around g_malloc()
cover net: Trivial cleanups around g_malloc()
Markus Armbruster (2):
net: Fuse g_malloc(); memset() into g_new0()
net: Use g_new() & friends where that makes obvious sense
net/l2tpv3.c | 9 ++++----- net/queue.c | 2 +- net/slirp.c | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-)
Signature · 1 line
1.9.3
PATCH 1/2 net: Fuse g_malloc(); memset() into g_new0()
--- net/l2tpv3.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
net/l2tpv3.c +1 -2
@@ -695,8 +695,7 @@ int net_init_l2tpv3(const NetClientOptions *opts, goto outerr; } - s->dgram_dst =g_malloc (sizeof (struct sockaddr_storage )); -memset (s->dgram_dst,'\0' ,sizeof (struct sockaddr_storage )); + s->dgram_dst = g_new0(struct sockaddr_storage, 1);memcpy (s->dgram_dst, result->ai_addr, result->ai_addrlen); s->dst_size = result->ai_addrlen;
Signature · 1 line
1.9.3
PATCH 2/2 net: Use g_new() & friends where that makes obvious sense
In reply to Markus Armbrusterg_new(T, n) is neater than g_malloc(sizeof(T) * n). It's also safer, for two reasons. One, it catches multiplication overflowing size_t. Two, it returns T * rather than void *, which lets the compiler catch more type errors.
This commit only touches allocations with size arguments of the form sizeof(T).
--- net/l2tpv3.c | 6 +++--- net/queue.c | 2 +- net/slirp.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-)
net/l2tpv3.c +3 -3
@@ -489,12 +489,12 @@ static struct mmsghdr *build_l2tpv3_vector(NetL2TPV3State *s, int count)struct iovec *iov;struct mmsghdr *msgvec, *result; - msgvec =g_malloc (sizeof (struct mmsghdr ) * count); + msgvec = g_new(struct mmsghdr, count); result = msgvec;for (i =0 ; i < count ; i++) { msgvec->msg_hdr.msg_name =NULL ; msgvec->msg_hdr.msg_namelen =0 ; - iov =g_malloc (sizeof (struct iovec ) *IOVSIZE ); + iov = g_new(struct iovec, IOVSIZE); msgvec->msg_hdr.msg_iov = iov; iov->iov_base =g_malloc (s->header_size); iov->iov_len = s->header_size;
@@ -729,7 +729,7 @@ int net_init_l2tpv3(const NetClientOptions *opts, } s->msgvec =build_l2tpv3_vector (s,MAX_L2TPV3_MSGCNT ); - s->vec =g_malloc (sizeof (struct iovec ) *MAX_L2TPV3_IOVCNT ); + s->vec = g_new(struct iovec, MAX_L2TPV3_IOVCNT); s->header_buf =g_malloc (s->header_size);qemu_set_nonblock (fd);
net/queue.c +1 -1
@@ -62,7 +62,7 @@ NetQueue *qemu_new_net_queue(void *opaque) {NetQueue *queue; - queue =g_malloc0 (sizeof (NetQueue)); + queue =g_new0 (NetQueue,1 ); queue->opaque = opaque; queue->nq_maxlen =10000 ;
net/slirp.c +1 -1
@@ -652,7 +652,7 @@ static int slirp_guestfwd(SlirpState *s, const char *config_str,return -1 ; } }else { - fwd =g_malloc (sizeof (struct GuestFwd )); + fwd = g_new(struct GuestFwd, 1); fwd->hd =qemu_chr_new (buf, p,NULL );if (!fwd->hd) {error_report ("could not open guest forwarding device '%s'" , buf);
Signature · 1 line
1.9.3
Quoted 3 lines · Markus Armbruster
Markus Armbruster (2):
net: Fuseg_malloc();memset()intog_new0()
net: Useg_new()& friends where that makes obvious sense
Quoted 6 lines
net/l2tpv3.c | 9 ++++----- net/queue.c | 2 +- net/slirp.c | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-)
Signature · 2 lines
Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Stefan Hajnoczi
AppliedQuoted 4 lines · Markus Armbruster
Markus Armbruster (2):
net: Fuseg_malloc();memset()intog_new0()
net: Useg_new()& friends where that makes obvious sense
Quoted 9 lines
net/l2tpv3.c | 9 ++++----- net/queue.c | 2 +- net/slirp.c | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-)Signature · 1 line
1.9.3
Thanks, applied to my net tree:
https://github.com/stefanha/qemu/commits/net
Stefan