From: compudj@krystal.dyndns.org (Mathieu Desnoyers)
Subject: [ltt-dev] [PATCH] Changes malloc to zmalloc
Date: Tue, 17 Aug 2010 17:00:17 -0400 [thread overview]
Message-ID: <20100817210017.GD25723@Krystal> (raw)
In-Reply-To: <1282078213-8398-1-git-send-email-david.goulet@polymtl.ca>
* David Goulet (david.goulet at polymtl.ca) wrote:
> For libustcomm, libustd, ustctl and ustd.
>
> Signed-off-by: David Goulet <david.goulet at polymtl.ca>
> ---
> libustcomm/multipoll.c | 4 ++--
> libustcomm/ustcomm.c | 22 +++++++++++-----------
> libustd/libustd.c | 6 +++---
> ustctl/ustctl.c | 2 +-
> ustd/ustd.c | 7 +++----
> 5 files changed, 20 insertions(+), 21 deletions(-)
>
> diff --git a/libustcomm/multipoll.c b/libustcomm/multipoll.c
> index 1210b93..80426e3 100644
> --- a/libustcomm/multipoll.c
> +++ b/libustcomm/multipoll.c
> @@ -39,8 +39,8 @@ int multipoll_init(struct mpentries *ent)
> ent->n_used = 0;
> ent->n_avail = INITIAL_N_AVAIL;
>
> - ent->pollfds = (struct pollfd *) malloc(sizeof(struct pollfd) * INITIAL_N_AVAIL);
> - ent->extras = (struct pollfd_extra *) malloc(sizeof(struct pollfd_extra) * INITIAL_N_AVAIL);
> + ent->pollfds = (struct pollfd *) zmalloc(sizeof(struct pollfd) * INITIAL_N_AVAIL);
> + ent->extras = (struct pollfd_extra *) zmalloc(sizeof(struct pollfd_extra) * INITIAL_N_AVAIL);
>
> return 0;
> }
> diff --git a/libustcomm/ustcomm.c b/libustcomm/ustcomm.c
> index fe29977..798dd4a 100644
> --- a/libustcomm/ustcomm.c
> +++ b/libustcomm/ustcomm.c
> @@ -48,7 +48,7 @@ static int mkdir_p(const char *path, mode_t mode)
> int result;
> mode_t old_umask;
>
> - tmp = malloc(strlen(path) + 1);
> + tmp = zmalloc(strlen(path) + 1);
> if (tmp == NULL)
> return -1;
>
> @@ -230,7 +230,7 @@ static int recv_message_fd(int fd, char **recv_buf, int *recv_buf_size, int *rec
> *msg = strndup(*recv_buf, i);
>
> /* Remove processed message from buffer */
> - newbuf = (char *) malloc(*recv_buf_size - (i+1));
> + newbuf = (char *) zmalloc(*recv_buf_size - (i+1));
> memcpy(newbuf, *recv_buf + (i+1), *recv_buf_size - (i+1));
Here we have a memcpy just below, so here we should probably leave a simple malloc.
The rest looks fine.
Thanks,
Mathieu
> free(*recv_buf);
> *recv_buf = newbuf;
> @@ -332,15 +332,15 @@ int ustcomm_recv_message(struct ustcomm_server *server, char **msg, struct ustco
> n_fds++;
> }
>
> - fds = (struct pollfd *) malloc(n_fds * sizeof(struct pollfd));
> + fds = (struct pollfd *) zmalloc(n_fds * sizeof(struct pollfd));
> if(fds == NULL) {
> - ERR("malloc returned NULL");
> + ERR("zmalloc returned NULL");
> return -1;
> }
>
> - conn_table = (struct ustcomm_connection **) malloc(n_fds * sizeof(struct ustcomm_connection *));
> + conn_table = (struct ustcomm_connection **) zmalloc(n_fds * sizeof(struct ustcomm_connection *));
> if(conn_table == NULL) {
> - ERR("malloc returned NULL");
> + ERR("zmalloc returned NULL");
> retval = -1;
> goto free_fds_return;
> }
> @@ -384,9 +384,9 @@ int ustcomm_recv_message(struct ustcomm_server *server, char **msg, struct ustco
> goto free_conn_table_return;
> }
>
> - newconn = (struct ustcomm_connection *) malloc(sizeof(struct ustcomm_connection));
> + newconn = (struct ustcomm_connection *) zmalloc(sizeof(struct ustcomm_connection));
> if(newconn == NULL) {
> - ERR("malloc returned NULL");
> + ERR("zmalloc returned NULL");
> return -1;
> }
>
> @@ -886,9 +886,9 @@ static int process_mp_incoming_conn(void *priv, int fd, short events)
> return -1;
> }
>
> - newconn = (struct ustcomm_connection *) malloc(sizeof(struct ustcomm_connection));
> + newconn = (struct ustcomm_connection *) zmalloc(sizeof(struct ustcomm_connection));
> if(newconn == NULL) {
> - ERR("malloc returned NULL");
> + ERR("zmalloc returned NULL");
> return -1;
> }
>
> @@ -948,7 +948,7 @@ void ustcomm_mp_add_app_clients(struct mpentries *ent, struct ustcomm_app *app,
> multipoll_add(ent, app->server.listen_fd, POLLIN, process_mp_incoming_conn, &app->server, NULL);
>
> list_for_each_entry(conn, &app->server.connections, list) {
> - struct ustcomm_multipoll_conn_info *mpinfo = (struct ustcomm_multipoll_conn_info *) malloc(sizeof(struct ustcomm_multipoll_conn_info));
> + struct ustcomm_multipoll_conn_info *mpinfo = (struct ustcomm_multipoll_conn_info *) zmalloc(sizeof(struct ustcomm_multipoll_conn_info));
> mpinfo->conn = conn;
> mpinfo->cb = cb;
> multipoll_add(ent, conn->fd, POLLIN, process_mp_conn_msg, mpinfo, free_ustcomm_client_poll);
> diff --git a/libustd/libustd.c b/libustd/libustd.c
> index e0d48b5..e3c2802 100644
> --- a/libustd/libustd.c
> +++ b/libustd/libustd.c
> @@ -192,7 +192,7 @@ struct buffer_info *connect_buffer(struct libustd_instance *instance, pid_t pid,
> int fd;
> struct shmid_ds shmds;
>
> - buf = (struct buffer_info *) malloc(sizeof(struct buffer_info));
> + buf = (struct buffer_info *) zmalloc(sizeof(struct buffer_info));
> if(buf == NULL) {
> ERR("add_buffer: insufficient memory");
> return NULL;
> @@ -488,7 +488,7 @@ int start_consuming_buffer(
>
> DBG("beginning of start_consuming_buffer: args: pid %d bufname %s", pid, bufname);
>
> - args = (struct consumer_thread_args *) malloc(sizeof(struct consumer_thread_args));
> + args = (struct consumer_thread_args *) zmalloc(sizeof(struct consumer_thread_args));
>
> args->pid = pid;
> args->bufname = strdup(bufname);
> @@ -640,7 +640,7 @@ struct libustd_instance *libustd_new_instance(
> struct libustd_callbacks *callbacks, char *sock_path)
> {
> struct libustd_instance *instance =
> - malloc(sizeof(struct libustd_instance));
> + zmalloc(sizeof(struct libustd_instance));
> if(!instance)
> return NULL;
>
> diff --git a/ustctl/ustctl.c b/ustctl/ustctl.c
> index b9f2dce..b38d58a 100644
> --- a/ustctl/ustctl.c
> +++ b/ustctl/ustctl.c
> @@ -148,7 +148,7 @@ int parse_opts_long(int argc, char **argv, struct ust_opts *opts)
> if (argc - optind > 0 && opts->cmd != GET_ONLINE_PIDS) {
> int i;
> int pididx=0;
> - opts->pids = malloc((argc-optind+1) * sizeof(pid_t));
> + opts->pids = zmalloc((argc-optind+1) * sizeof(pid_t));
>
> for(i=optind; i<argc; i++) {
> /* don't take any chances, use a long long */
> diff --git a/ustd/ustd.c b/ustd/ustd.c
> index cca9520..bb64f70 100644
> --- a/ustd/ustd.c
> +++ b/ustd/ustd.c
> @@ -150,8 +150,7 @@ int on_read_partial_subbuffer(struct libustd_callbacks *data, struct buffer_info
> /* pad with empty bytes */
> pad_size = PAGE_ALIGN(valid_length)-valid_length;
> if(pad_size) {
> - tmp = malloc(pad_size);
> - memset(tmp, 0, pad_size);
> + tmp = zmalloc(pad_size);
> result = patient_write(buf_local->file_fd, tmp, pad_size);
> if(result == -1) {
> ERR("Error writing to buffer file");
> @@ -168,7 +167,7 @@ int on_open_buffer(struct libustd_callbacks *data, struct buffer_info *buf)
> int result;
> int fd;
> struct buffer_info_local *buf_local =
> - malloc(sizeof(struct buffer_info_local));
> + zmalloc(sizeof(struct buffer_info_local));
>
> if(!buf_local) {
> ERR("could not allocate buffer_info_local struct");
> @@ -233,7 +232,7 @@ int on_put_error(struct libustd_callbacks *data, struct buffer_info *buf)
> struct libustd_callbacks *new_callbacks()
> {
> struct libustd_callbacks *callbacks =
> - malloc(sizeof(struct libustd_callbacks));
> + zmalloc(sizeof(struct libustd_callbacks));
>
> if(!callbacks)
> return NULL;
> --
> 1.7.0.4
>
>
> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
>
--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
next prev parent reply other threads:[~2010-08-17 21:00 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-17 20:50 David Goulet
2010-08-17 21:00 ` Mathieu Desnoyers [this message]
2010-08-18 17:10 David Goulet
2010-08-18 17:36 ` Mathieu Desnoyers
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=20100817210017.GD25723@Krystal \
--to=compudj@krystal.dyndns.org \
/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