From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:49667) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TQdOF-0004Xm-GX for qemu-devel@nongnu.org; Tue, 23 Oct 2012 08:15:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TQdOB-0004Zw-EE for qemu-devel@nongnu.org; Tue, 23 Oct 2012 08:15:23 -0400 Received: from mail-bk0-f45.google.com ([209.85.214.45]:53296) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TQdOA-0004YK-US for qemu-devel@nongnu.org; Tue, 23 Oct 2012 08:15:19 -0400 Received: by mail-bk0-f45.google.com with SMTP id jf3so1227876bkc.4 for ; Tue, 23 Oct 2012 05:15:15 -0700 (PDT) Date: Tue, 23 Oct 2012 14:15:12 +0200 From: Stefan Hajnoczi Message-ID: <20121023121512.GD19977@stefanha-thinkpad.redhat.com> References: <1348226255-4226-1-git-send-email-vasilis.liaskovitis@profitbricks.com> <1348226255-4226-12-git-send-email-vasilis.liaskovitis@profitbricks.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1348226255-4226-12-git-send-email-vasilis.liaskovitis@profitbricks.com> Subject: Re: [Qemu-devel] [RFC PATCH v3 11/19] Implement qmp and hmp commands for notification lists List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Vasilis Liaskovitis Cc: kvm@vger.kernel.org, seabios@seabios.org, qemu-devel@nongnu.org, gleb@redhat.com, blauwirbel@gmail.com, kevin@koconnor.net, avi@redhat.com, anthony@codemonkey.ws, imammedo@redhat.com, kraxel@redhat.com On Fri, Sep 21, 2012 at 01:17:27PM +0200, Vasilis Liaskovitis wrote: > +MemHpInfoList *qmp_query_memory_hotplug(Error **errp) > +{ > + DimmBus *bus = main_memory_bus; > + MemHpInfoList *head = NULL, *cur_item = NULL, *info; > + struct dimm_hp_result *item, *nextitem; > + > + QTAILQ_FOREACH_SAFE(item, &bus->dimm_hp_result_queue, next, nextitem) { > + > + info = g_malloc0(sizeof(*info)); > + info->value = g_malloc0(sizeof(*info->value)); > + info->value->dimm = g_malloc0(sizeof(char) * 32); > + info->value->request = g_malloc0(sizeof(char) * 16); > + info->value->result = g_malloc0(sizeof(char) * 16); > + switch (item->ret) { > + case DIMM_REMOVE_SUCCESS: > + strcpy(info->value->request, "hot-remove"); > + strcpy(info->value->result, "success"); > + break; > + case DIMM_REMOVE_FAIL: > + strcpy(info->value->request, "hot-remove"); > + strcpy(info->value->result, "failure"); > + break; > + case DIMM_ADD_SUCCESS: > + strcpy(info->value->request, "hot-add"); > + strcpy(info->value->result, "success"); > + break; > + case DIMM_ADD_FAIL: > + strcpy(info->value->request, "hot-add"); > + strcpy(info->value->result, "failure"); > + break; > + default: > + break; > + } Any reason to use fixed-size malloc + strcpy() instead of just info->value->X = g_strdup("foo")? Stefan