[Vm-dev] instability

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Mon Aug 8 09:51:03 UTC 2016


Hi Eliot,
the VMMaker changes relative to LLP64 are so far really tiny: just the
change of CCodeGenerator for >> and the memcpy.
I think it's easy enough to revert and test if it changes anything to
stability.

One bad side of this kind of CCodeGenerator change is that it generates
thousands of diff preventing any manual review of generated source code
changes.
IMO, this should be separated in own commit so that we can bissect.
More generally, we should generate source in a more atomic fashion (for
each feature/fix).
The infrastructure progress (automated tests), and the way to declare a VM
stable (whatever it is) are there to enable this process.

One possibility would be to use VMMaker branches coupled to git branches
like I did for LLP64.
Once we have VM smoke tests + VM simulator tests to improve confidence
level, you could merge the VMMaker branch with MC, merge the necessary
platforms changes with git (resolve all *src conflicts as using COG
branch), regenerate the sources, and commit. I'm pretty sure that a pair of
MC+git gurus could script that procedure.

If we use such process for each feature, we could integrate several
features at once, with so called "octopus" merge.
This would be the process nearest to current one: the integrator (you)
assemble several features for the next "release" (understand HEAD commit).
This may raise several questions about rebasing or merging changes, but
it's worth thinking about it.


2016-08-06 11:00 GMT+02:00 Tobias Pape <Das.Linux at gmx.de>:

>
>
> On 06.08.2016, at 08:46, Tim Felgentreff <timfelgentreff at gmail.com> wrote:
>
> > Hi,
> >
> > I agree that only reasonably stable code should go into the Cog branch.
> But  how do we ensure that? I'm against going with someone's "gut feeling"
> for this, instead I think we really do need some tests. Right now the only
> "test" we run is that the VM compiles in different configurations on
> different platforms. We really need proper stress tests, in-Image as well
> as out-of-Image. There are many tests in Squeak, for example, that have
> nothing to do with the system and only test VM specifics (that are subject
> to change anyway, like testing that Floats are boxed). Personally I would
> think we should move these into the VM project and run them on Travis.
> Additionally we need an easy way to add a test when a new crash is
> discovered to guard ourselves against regressions.
> >
> > I believe that with more people making contributions (which was one of
> the reasons for the github move) it just becomes infeasible to always test
> branches manually.
>
> Nothing to add, just what he says.
>
> Best regards
>         -Tobias
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20160808/1ea723bb/attachment.htm


More information about the Vm-dev mailing list