unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Guile 1.8.9 release
@ 2021-01-12  8:20 Han-Wen Nienhuys
  2021-01-16 23:07 ` Thien-Thi Nguyen
  0 siblings, 1 reply; 7+ messages in thread
From: Han-Wen Nienhuys @ 2021-01-12  8:20 UTC (permalink / raw)
  To: ttn, Guile Devel

Hi Thien-Thi,

your timing is fortuitous. I just spent the christmas holidays delving
into GUILE 1.8's heap expansion strategy and found and fixed a bug
with it.

See

https://github.com/hanwen/guile/commit/9b32504780e0b604196be866b8c36079891e3cd6

How does code review for proposed patches work these days?

I'd be happy to polish it up (ie. add a proper test) for inclusion in
GUILE 1.8.9,

cheers,

-- 
Han-Wen Nienhuys - hanwenn@gmail.com - http://www.xs4all.nl/~hanwen



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guile 1.8.9 release
  2021-01-12  8:20 Guile 1.8.9 release Han-Wen Nienhuys
@ 2021-01-16 23:07 ` Thien-Thi Nguyen
  2021-01-17 18:37   ` Han-Wen Nienhuys
  0 siblings, 1 reply; 7+ messages in thread
From: Thien-Thi Nguyen @ 2021-01-16 23:07 UTC (permalink / raw)
  To: Han-Wen Nienhuys; +Cc: Guile Devel

[-- Attachment #1: Type: text/plain, Size: 1247 bytes --]


() Han-Wen Nienhuys <hanwenn@gmail.com>
() Tue, 12 Jan 2021 09:20:55 +0100

   your timing is fortuitous. I just spent the christmas
   holidays delving into GUILE 1.8's heap expansion strategy and
   found and fixed a bug with it.

   https://github.com/hanwen/guile/commit/9b32504780e0b604196be866b8c36079891e3cd6

   How does code review for proposed patches work these days?

I don't know.  I think what you did is fine.  I invite experts
to review and comment.  They will surely be quicker than me (i
will require a week or two just to read/understand the patch).

   I'd be happy to polish it up (ie. add a proper test) for
   inclusion in GUILE 1.8.9,

Sounds good.  I think the general approach for 1.8.x releases
will be bugfixes and documentation changes primarily, so your
change would be most welcome (once i wrap my head around it).

-- 
Thien-Thi Nguyen -----------------------------------------------
 (defun responsep (query)               ; (2021) Software Libero
   (pcase (context query)               ;       = Dissenso Etico
     (`(technical ,ml) (correctp ml))
     ...))                              748E A0E8 1CB8 A748 9BFA
--------------------------------------- 6CE4 6703 2224 4C80 7502


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 219 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guile 1.8.9 release
  2021-01-16 23:07 ` Thien-Thi Nguyen
@ 2021-01-17 18:37   ` Han-Wen Nienhuys
  2021-02-09  8:59     ` Han-Wen Nienhuys
  0 siblings, 1 reply; 7+ messages in thread
From: Han-Wen Nienhuys @ 2021-01-17 18:37 UTC (permalink / raw)
  To: Thien-Thi Nguyen; +Cc: Guile Devel

On Sun, Jan 17, 2021 at 12:10 AM Thien-Thi Nguyen <ttn@gnuvola.org> wrote:
>
>
> () Han-Wen Nienhuys <hanwenn@gmail.com>
> () Tue, 12 Jan 2021 09:20:55 +0100
>
>    your timing is fortuitous. I just spent the christmas
>    holidays delving into GUILE 1.8's heap expansion strategy and
>    found and fixed a bug with it.
>
>    https://github.com/hanwen/guile/commit/9b32504780e0b604196be866b8c36079891e3cd6
>
>    How does code review for proposed patches work these days?
>
> I don't know.  I think what you did is fine.  I invite experts
> to review and comment.  They will surely be quicker than me (i
> will require a week or two just to read/understand the patch).
>
>    I'd be happy to polish it up (ie. add a proper test) for
>    inclusion in GUILE 1.8.9,
>
> Sounds good.  I think the general approach for 1.8.x releases
> will be bugfixes and documentation changes primarily, so your
> change would be most welcome (once i wrap my head around it).

Thanks. It turns out my previous fix introduced ABI breakage, so I
reworked it to not change function signatures or struct sizes. It's
also split up in more parts, so it becomes easier to understand.
Please see here:

https://github.com/hanwen/guile/commit/8fbe3222cac4b4e9b39a6a3570ac43f160faa516

-- 
Han-Wen Nienhuys - hanwenn@gmail.com - http://www.xs4all.nl/~hanwen



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guile 1.8.9 release
  2021-01-17 18:37   ` Han-Wen Nienhuys
@ 2021-02-09  8:59     ` Han-Wen Nienhuys
  2021-02-10 22:17       ` Thien-Thi Nguyen
  0 siblings, 1 reply; 7+ messages in thread
From: Han-Wen Nienhuys @ 2021-02-09  8:59 UTC (permalink / raw)
  To: Thien-Thi Nguyen; +Cc: Guile Devel

[-- Attachment #1: Type: text/plain, Size: 1517 bytes --]

On Sun, Jan 17, 2021 at 7:37 PM Han-Wen Nienhuys <hanwenn@gmail.com> wrote:

> On Sun, Jan 17, 2021 at 12:10 AM Thien-Thi Nguyen <ttn@gnuvola.org> wrote:
> >    your timing is fortuitous. I just spent the christmas
> >    holidays delving into GUILE 1.8's heap expansion strategy and
> >    found and fixed a bug with it.
> >
> >
> https://github.com/hanwen/guile/commit/9b32504780e0b604196be866b8c36079891e3cd6
> >
> >    How does code review for proposed patches work these days?
> >
> > I don't know.  I think what you did is fine.  I invite experts
> > to review and comment.  They will surely be quicker than me (i
> > will require a week or two just to read/understand the patch).
> >
> >    I'd be happy to polish it up (ie. add a proper test) for
> >    inclusion in GUILE 1.8.9,
> >
> > Sounds good.  I think the general approach for 1.8.x releases
> > will be bugfixes and documentation changes primarily, so your
> > change would be most welcome (once i wrap my head around it).
>
> Thanks. It turns out my previous fix introduced ABI breakage, so I
> reworked it to not change function signatures or struct sizes. It's
> also split up in more parts, so it becomes easier to understand.
> Please see here:
>
>
> https://gcithub.com/hanwen/guile/commit/8fbe3222cac4b4e9b39a6a3570ac43f160faa516
> <https://github.com/hanwen/guile/commit/8fbe3222cac4b4e9b39a6a3570ac43f160faa516>



Any news here? Can I do anything to get this fix in?

-- 
Han-Wen Nienhuys - hanwenn@gmail.com - http://www.xs4all.nl/~hanwen

[-- Attachment #2: Type: text/html, Size: 2423 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guile 1.8.9 release
  2021-02-09  8:59     ` Han-Wen Nienhuys
@ 2021-02-10 22:17       ` Thien-Thi Nguyen
  2021-02-14 10:35         ` Han-Wen Nienhuys
  0 siblings, 1 reply; 7+ messages in thread
From: Thien-Thi Nguyen @ 2021-02-10 22:17 UTC (permalink / raw)
  To: Han-Wen Nienhuys; +Cc: Guile Devel

[-- Attachment #1: Type: text/plain, Size: 1533 bytes --]


() Han-Wen Nienhuys <hanwenn@gmail.com>
() Tue, 9 Feb 2021 09:59:07 +0100

   > Thanks. It turns out my previous fix introduced ABI
   > breakage, so I reworked it to not change function
   > signatures or struct sizes. It's also split up in more
   > parts, so it becomes easier to understand.  Please see
   > here: [...]

   Any news here? Can I do anything to get this fix in?

IIUC, the second iteration achieves the same goals as the first
one (i.e., reducing unnecessary allocation by refining the heap
monitoring machinery).  Is that correct?  (What am i missing?)

I would be happy to commit the second patch, if you could refine
it to add the extensive explanation of the first.  (You could
even mention the first approach, as an interesting but misguided
dead end.)  That way, we have a full record.

I would be extremely happy to commit a test along w/ the change,
if we can figure that out.  But it's not critical (we can do it
later).

Re testing, i don't know how to go about setting up a test to
avoid regressions.  (IIUC, this is a performance-related change
and not a functionality-related one.)  Any ideas?

-- 
Thien-Thi Nguyen -----------------------------------------------
 (defun responsep (query)               ; (2021) Software Libero
   (pcase (context query)               ;       = Dissenso Etico
     (`(technical ,ml) (correctp ml))
     ...))                              748E A0E8 1CB8 A748 9BFA
--------------------------------------- 6CE4 6703 2224 4C80 7502


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 219 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guile 1.8.9 release
  2021-02-10 22:17       ` Thien-Thi Nguyen
@ 2021-02-14 10:35         ` Han-Wen Nienhuys
  2021-03-14  9:34           ` Han-Wen Nienhuys
  0 siblings, 1 reply; 7+ messages in thread
From: Han-Wen Nienhuys @ 2021-02-14 10:35 UTC (permalink / raw)
  To: Thien-Thi Nguyen; +Cc: Guile Devel

On Wed, Feb 10, 2021 at 11:18 PM Thien-Thi Nguyen <ttn@gnuvola.org> wrote:
>
>
> () Han-Wen Nienhuys <hanwenn@gmail.com>
> () Tue, 9 Feb 2021 09:59:07 +0100
>
>    > Thanks. It turns out my previous fix introduced ABI
>    > breakage, so I reworked it to not change function
>    > signatures or struct sizes. It's also split up in more
>    > parts, so it becomes easier to understand.  Please see
>    > here: [...]
>
>    Any news here? Can I do anything to get this fix in?
>
> IIUC, the second iteration achieves the same goals as the first
> one (i.e., reducing unnecessary allocation by refining the heap
> monitoring machinery).  Is that correct?  (What am i missing?)


the first iteration broke ABI compatibility. The second patch doesn't

>
> I would be happy to commit the second patch, if you could refine
> it to add the extensive explanation of the first.  (You could
> even mention the first approach, as an interesting but misguided
> dead end.)  That way, we have a full record.


Maybe this wasn't clear, but the second patch is actually a sequence
of patches, and in aggregate they have more detailed explanation of
what is going on.

The following are cosmetic changes.  While they don't have to be
merged, per se, the formatting fixes are the basis of the bugfix
changes:

701f6e2cae88883dfc1e280711345fb5a75b0aae gc: cleanup DEBUGINFO printfs.
ce503b481e7486a7fb5152d3075c2d475fd33e06 gc: fix formatting inconsistencies
925edffc2d4efd19333582ca588e0aebb1c7adf8 gc-segment: clarify comments
on segment initialization

these are the real bug fixes:

2511e1fa97558e1d0f0620489cdd7550e7d77195 gc: reinterpret
scm_gc_cells_collected as garbage counter
594783b15b00133d73aed00bb7f3304a56725497 gc: use normal sweep for pre-mark sweep

the following are minor follow-on cleanups:

923c41cb94462140fa07120632f5736680a0c76e gc: calculate min_yield statelessly
e2d04fdd4d8a3d9cebd0d9289c5b8f9528e47d34 gc: simplify statistic keeping

> I would be extremely happy to commit a test along w/ the change,
> if we can figure that out.  But it's not critical (we can do it
> later).
>
> Re testing, i don't know how to go about setting up a test to
> avoid regressions.  (IIUC, this is a performance-related change
> and not a functionality-related one.)  Any ideas?

I can add a test, but it requires adding several fields to the
(gc-stats) output, which might surprise callers not expecting them.
Also, as it is a performance test, it is hard to construct a test that
always works.

--
Han-Wen Nienhuys - hanwenn@gmail.com - http://www.xs4all.nl/~hanwen



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Guile 1.8.9 release
  2021-02-14 10:35         ` Han-Wen Nienhuys
@ 2021-03-14  9:34           ` Han-Wen Nienhuys
  0 siblings, 0 replies; 7+ messages in thread
From: Han-Wen Nienhuys @ 2021-03-14  9:34 UTC (permalink / raw)
  To: Thien-Thi Nguyen; +Cc: Guile Devel

On Sun, Feb 14, 2021 at 11:35 AM Han-Wen Nienhuys <hanwenn@gmail.com> wrote:
> >    > Thanks. It turns out my previous fix introduced ABI
> >    > breakage, so I reworked it to not change function
> >    > signatures or struct sizes. It's also split up in more
> >    > parts, so it becomes easier to understand.  Please see
> >    > here: [...]
> >
> >    Any news here? Can I do anything to get this fix in?

ping?

-- 
Han-Wen Nienhuys - hanwenn@gmail.com - http://www.xs4all.nl/~hanwen



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-03-14  9:34 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-12  8:20 Guile 1.8.9 release Han-Wen Nienhuys
2021-01-16 23:07 ` Thien-Thi Nguyen
2021-01-17 18:37   ` Han-Wen Nienhuys
2021-02-09  8:59     ` Han-Wen Nienhuys
2021-02-10 22:17       ` Thien-Thi Nguyen
2021-02-14 10:35         ` Han-Wen Nienhuys
2021-03-14  9:34           ` Han-Wen Nienhuys

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).