From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17872 invoked by alias); 14 Aug 2013 15:55:57 -0000 Mailing-List: contact cygwin-xfree-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-xfree-owner@cygwin.com Reply-To: cygwin-xfree@cygwin.com Mail-Followup-To: cygwin-xfree@cygwin.com Received: (qmail 17862 invoked by uid 89); 14 Aug 2013 15:55:56 -0000 X-Spam-SWARE-Status: No, score=-4.5 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_HOSTKARMA_NO,RCVD_IN_HOSTKARMA_YE,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 Received: from limerock01.mail.cornell.edu (HELO limerock01.mail.cornell.edu) (128.84.12.99) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Wed, 14 Aug 2013 15:55:55 +0000 X-CornellRouted: This message has been Routed already. Received: from authusersmtp.mail.cornell.edu (granite4.serverfarm.cornell.edu [10.16.197.9]) by limerock01.mail.cornell.edu (8.14.4/8.14.4_cu) with ESMTP id r7EFtq9S000772 for ; Wed, 14 Aug 2013 11:55:53 -0400 Received: from [192.168.1.4] (cpe-67-249-194-47.twcny.res.rr.com [67.249.194.47]) (authenticated bits=0) by authusersmtp.mail.cornell.edu (8.14.4/8.12.10) with ESMTP id r7EFtq7m002474 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Aug 2013 11:55:52 -0400 Message-ID: <520BA88E.10804@cornell.edu> Date: Wed, 14 Aug 2013 15:55:00 -0000 From: Ken Brown User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: cygwin-xfree@cygwin.com Subject: Re: [ANNOUNCEMENT] Uploads for 12 August References: <520A01DF.1040208@alice.it> <520A21B1.8060503@alice.it> <520A3EF6.80700@cornell.edu> <520A7654.3080207@users.sourceforge.net> <20130813182653.GA4315@calimero.vinschen.de> <520AAC65.1090708@cornell.edu> <20130814091656.GE4315@calimero.vinschen.de> <520B5BC7.4060306@cornell.edu> <20130814105326.GF4315@calimero.vinschen.de> <20130814113351.GG4315@calimero.vinschen.de> <20130814115920.GH4315@calimero.vinschen.de> <520B748A.30302@cornell.edu> In-Reply-To: <520B748A.30302@cornell.edu> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2013-08/txt/msg00036.txt.bz2 On 8/14/2013 8:14 AM, Ken Brown wrote: > On 8/14/2013 7:59 AM, Corinna Vinschen wrote: >> On Aug 14 13:33, Corinna Vinschen wrote: >>> On Aug 14 12:53, Corinna Vinschen wrote: >>>> On Aug 14 06:28, Ken Brown wrote: >>>>> On 8/14/2013 5:16 AM, Corinna Vinschen wrote: >>>>>> On Aug 14 10:10, Corinna Vinschen wrote: >>>>>>> On Aug 13 18:00, Ken Brown wrote: >>>>>>>> On 8/13/2013 2:26 PM, Corinna Vinschen wrote: >>>>>>>>> What function is not implemented? Is that something we can fix, >>>>>>>>> perhaps in the Cygwin DLL? >>>>>>>> >>>>>>>> It's memalign, or at least that's what it was in 2007. See >>>>>>>> >>>>>>>> http://cygwin.com/ml/cygwin/2007-02/msg00678.html >>>>>>> >>>>>>> So it's using its own malloc but we don't support overriding other >>>>>>> functions besides malloc/realloc/calloc/free. >>>>>>> >>>>>>> In theory we could do that in future. We still have room for 10 >>>>>>> (x86) >>>>>>> resp. 12 (x86_64) pointers in the per_process structure, which >>>>>>> could be >>>>>>> used for this purpose. This would only require applications >>>>>>> which need >>>>>>> this feature to be rebuilt with the next Cygwin version providing >>>>>>> these >>>>>>> pointers. >>>>>> >>>>>> More precisely, they have to be rebuild using crt0.o from the next >>>>>> Cygwin release, and they would have to run under the next Cygwin >>>>>> release. If you omit one step, you're back to the current behaviour. >>>>>> >>>>>>> But we shouldn't waste those unused slots either, so the number of >>>>>>> overridable functions should be kept small. In theory we have >>>>>>> mallopt, >>>>>>> mallinfo, posix_memalign, memalign, and valloc. >>>>>>> >>>>>>> I guess we can skip mallopt and mallinfo since they are pretty >>>>>>> seldomly used in user-provided malloc implementations. >>>>>>> >>>>>>> Memalign is an old, deprecated function, so I wonder why it's >>>>>>> used at >>>>>>> all. GSlice should use posix_memalign instead. Yaakov, is there an >>>>>>> option to use posix_memalign rather than memalign? >>>>> >>>>> I just checked the glib source, and it does use posix_memalign if >>>>> it's available. I was quoting a 2007 discussion when I said it was >>>>> memalign that GSlice wanted to use. >>>> >>>> Given that, we should perhaps skip the memalign override. >>> >>> On second (third? fourth?) thought, I think we should do this with >>> posix_memalign only. valloc is just as obsolete as posix_memalign. >> >> I applied the patch to allow overriding posix_memalloc only, and I'm >> building snapshots right now. For testing, this requires to rebuild >> either emacs, or glib, or both, I'm not sure. Make sure to link against >> the new crt0.o/libcygwin.a and use the new Cygwin DLL for testing. > > Thanks. It should only be emacs that needs rebuilding; glib doesn't > supply its own malloc, but emacs does. I'll test it and report back. Success! Thanks very much for the quick fix. I've got new emacs packages ready to go for both 32-bit and 64-bit. Do you expect to release cygwin-1.7.24 soon? If not, I'll upload the new packages as test releases for anyone who wants to install the snapshot. Ken P.S. For anyone (like Angelo) who wants to build the emacs trunk, I need to patch gmalloc.c upstream before the fix will take effect. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/