From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45956) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1afHYh-0000yZ-Sk for qemu-devel@nongnu.org; Sun, 13 Mar 2016 21:44:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1afHYc-0001gh-TY for qemu-devel@nongnu.org; Sun, 13 Mar 2016 21:44:35 -0400 Received: from [59.151.112.132] (port=60304 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1afHYc-0001gX-HJ for qemu-devel@nongnu.org; Sun, 13 Mar 2016 21:44:30 -0400 References: <1457771973-23208-1-git-send-email-dhannawatpooja1@gmail.com> From: Li Zhijian Message-ID: <56E61779.1060702@cn.fujitsu.com> Date: Mon, 14 Mar 2016 09:44:25 +0800 MIME-Version: 1.0 In-Reply-To: <1457771973-23208-1-git-send-email-dhannawatpooja1@gmail.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [Patch 1/1] net/net: Allocating Large sized arrays to heap List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Pooja Dhannawat , qemu-devel@nongnu.org could you explain why we need this change ? On 03/12/2016 04:39 PM, Pooja Dhannawat wrote: > Signed-off-by: Pooja Dhannawat > --- > net/net.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/net/net.c b/net/net.c > index b0c832e..5399758 100644 > --- a/net/net.c > +++ b/net/net.c > @@ -709,16 +709,18 @@ ssize_t qemu_send_packet_raw(NetClientState *nc, const uint8_t *buf, int size) > static ssize_t nc_sendv_compat(NetClientState *nc, const struct iovec *iov, > int iovcnt, unsigned flags) > { > - uint8_t buf[NET_BUFSIZE]; > + uint8_t *buf; > uint8_t *buffer; > size_t offset; > > + buf = g_new(uint8_t, 1); > + > if (iovcnt == 1) { > buffer = iov[0].iov_base; > offset = iov[0].iov_len; > } else { > buffer = buf; > - offset = iov_to_buf(iov, iovcnt, 0, buf, sizeof(buf)); > + offset = iov_to_buf(iov, iovcnt, 0, (uint8_t *)buf, sizeof(uint8_t)); > } > > if (flags & QEMU_NET_PACKET_FLAG_RAW && nc->info->receive_raw) { > @@ -726,6 +728,8 @@ static ssize_t nc_sendv_compat(NetClientState *nc, const struct iovec *iov, > } else { forget to release 'buf' > return nc->info->receive(nc, buffer, offset); > } > + > + g_free(buf); > } > > ssize_t qemu_deliver_packet_iov(NetClientState *sender, > -- Best regards. Li Zhijian