From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NHGqY-0002VO-6H for qemu-devel@nongnu.org; Sun, 06 Dec 2009 08:08:18 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NHGqT-0002Qp-Fk for qemu-devel@nongnu.org; Sun, 06 Dec 2009 08:08:17 -0500 Received: from [199.232.76.173] (port=48306 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NHGqT-0002QT-AX for qemu-devel@nongnu.org; Sun, 06 Dec 2009 08:08:13 -0500 Received: from mx1.redhat.com ([209.132.183.28]:57802) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NHGqS-0002kJ-8P for qemu-devel@nongnu.org; Sun, 06 Dec 2009 08:08:12 -0500 Message-ID: <4B1BACAF.5050203@redhat.com> Date: Sun, 06 Dec 2009 15:07:59 +0200 From: Avi Kivity MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH] Permit zero-sized qemu_malloc() & friends References: <4B193DA5.6040507@codemonkey.ws> <4B1A9359.8080305@redhat.com> <4B1A9BF4.2090909@redhat.com> <4B1AE7E3.9000905@collabora.co.uk> <4B1AE8BA.7050207@redhat.com> <4B1AEBE0.4060204@collabora.co.uk> In-Reply-To: <4B1AEBE0.4060204@collabora.co.uk> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Ian Molton Cc: Blue Swirl , Paul Brook , Markus Armbruster , qemu-devel@nongnu.org On 12/06/2009 01:25 AM, Ian Molton wrote: > Avi Kivity wrote: > > >> It's not that it doesn't have a way to report failure, it's that it >> doesn't fail. Do you prefer functions that fail and report it to >> functions that don't fail? >> > You have a way of allocating memory that will _never_ fail? > > Sort of. Did you look at the code? >>> Seriously, who does that anyway? why call malloc when you dont want the >>> space? so you can use realloc? 99.99% of the time realloc() is the Wrong >>> Solution(tm). >>> >>> >> Read the beginning of the thread. Basically it's for arrays, malloc(n * >> sizeof(x)). >> > well, make sure n is not 0. Its not that hard. I dont think I've *ever* > had a situation where I wanted to pass 0 to malloc. > There are multiple such cases in the code. >>> stick to what people know, and LART them for misuse of it if necessary. >>> >> The LART is a crash, great. >> > No, the LART would be a 'your patch does this wrong, try this:' > What about existing usage? Will you audit all the existing calls? -- error compiling committee.c: too many arguments to function