From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Maxime Devos Newsgroups: gmane.lisp.guile.devel Subject: Re: GC + Java finalization Date: Fri, 19 Nov 2021 14:14:44 +0000 Message-ID: References: <9ce77d5e08d50456eddc575179b68ac17afc9bf6.camel@hahnjo.de> <1cc3648e5196bf23023ec7a0ab95a9ad46f8554c.camel@telenet.be> <497caf03e995dd3cad9df748a2e5e7e5e8a245eb.camel@telenet.be> <5f9eec1969de97273cb0c335587ba98080225f6e.camel@hahnjo.de> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="9307"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Evolution 3.38.3-1 To: Jonas Hahnfeld , guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Fri Nov 19 15:15:16 2021 Return-path: Envelope-to: guile-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mo4fb-00029F-3v for guile-devel@m.gmane-mx.org; Fri, 19 Nov 2021 15:15:15 +0100 Original-Received: from localhost ([::1]:52984 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mo4fZ-0001iX-8D for guile-devel@m.gmane-mx.org; Fri, 19 Nov 2021 09:15:13 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:39138) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mo4fB-0001f0-GQ for guile-devel@gnu.org; Fri, 19 Nov 2021 09:14:49 -0500 Original-Received: from [2a02:1800:110:4::f00:1a] (port=36782 helo=albert.telenet-ops.be) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mo4f9-0006MA-H6 for guile-devel@gnu.org; Fri, 19 Nov 2021 09:14:49 -0500 Original-Received: from ptr-bvsjgyhxw7psv60dyze.18120a2.ip6.access.telenet.be ([IPv6:2a02:1811:8c09:9d00:3c5f:2eff:feb0:ba5a]) by albert.telenet-ops.be with bizsmtp id LEEk2600d4UW6Th06EElEX; Fri, 19 Nov 2021 15:14:45 +0100 In-Reply-To: <5f9eec1969de97273cb0c335587ba98080225f6e.camel@hahnjo.de> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r21; t=1637331285; bh=LR49pZyuZ8mCadRvnujapwDyjwrPZR/zYl/0eanuC80=; h=Subject:From:To:Date:In-Reply-To:References; b=nzP0KSghjO9hes3rAKyRgnb3OJTNczGEM9JER6abUJqqPoYWkYGifFVRj8b/kTXiN XCk7nQFw5FY80KKKpDfVLWG+UOoMmV/bEapXwMAdGU/Ka/CYaEYAWzXSrgOBNnibqu bSuQ19lAP17q6sUbVo5FZSjrOQ+uqyaE2kI9nn+uW5+BEXZlR818h5ZRv1rgkyBQdZ PARLKFiwOURw06J6XoIOwu/yjsIe3w3kUtSrMPREZb5tA44NY6GMKqHeqM/lCfVkOm QhT60Ndtvi729i7RCkpCOnFVEJZ1pEdrSaJ49y8KHOPhymjrh27IXNSw7IhXMrXpKK sghjVE+Q9Xm5Q== X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a02:1800:110:4::f00:1a (failed) Received-SPF: pass client-ip=2a02:1800:110:4::f00:1a; envelope-from=maximedevos@telenet.be; helo=albert.telenet-ops.be X-Spam_score_int: -19 X-Spam_score: -2.0 X-Spam_bar: -- X-Spam_report: (-2.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.io gmane.lisp.guile.devel:20970 Archived-At: Jonas Hahnfeld schreef op vr 19-11-2021 om 14:55 [+0100]: > Am Freitag, dem 19.11.2021 um 13:48 +0000 schrieb Maxime Devos: > > Jonas Hahnfeld schreef op vr 19-11-2021 om 14:32 [+0100]: > > > > > -  rx = scm_gc_malloc_pointerless (sizeof (regex_t), > > > > > "regex"); > > > > > +  rx = scm_malloc (sizeof (regex_t)); > > > > > > > > If the regex why scm_gc_malloc_pointerless -> scm_malloc? > > > > Is rx not pointerless? > > > > > > Not sure I understand the question. We don't know what contents > > > libc > > > will write into regex_t. It could be pointers which would be bad > > > for > > > the garbage collector. > > > > OK, if that's the case, seems like a bug in the original code, not > > related to Java-style finalisation, so I would do that in a > > separate > > patch. >From your other responses, I now know it is actually related to (non- )Java style finalisation, but my comment about ‘separate patch’ still seems to apply: > > Again, as replied in July to the same comment, it *is* a separate > patch > for exactly this reason. More concretely, it is in the same patch as that modified libguile/random.c. The patch to libguile/random.c doesn't seem to be for non-Java finalization reasons. Going by the commit message, the only possible reason I could find is: ‘There is no point in registering memory with the garbage collector if it doesn't need to do its job’ But I don't see any ‘registering memory’, only replacing scm_gc_calloc+scm_gc_free by scm_calloc+free, and without any finalisation in sight. Unless you mean with ‘registering memory’ the "random bignum chunks" argument. But that still seems unrelated to non-Java finalization. Greetings, Maxime