Skip to content

Upgrade jemalloc, re-enable Windows GNU #31030

Closed
@alexcrichton

Description

@alexcrichton

As of the time of this writing, we are running jemalloc at the revision rust-lang/jemalloc@91010a9 which I believe is the 4.0.4 release of jemalloc. Previously we were running rust-lang/jemalloc@e24a1a0 which I believe is somewhere in the 3.6 series. We attempted to upgrade jemalloc many times between these two commits eventually reaching the conclusion that the previous behavior of --enable-lazy-lock on Windows is fundamentally racy in jemalloc right now unfortunately. This led to a successful upgrade of jemalloc to where we are today.

Unfortunately, however, there is a deadlock in jemalloc 4.0.4 so we are attempting to downgrade back to 3.6. There were no known problems other than some Windows issues with jemalloc 3.6, so we believe it'll be fine for awhile. In this downgrade, however, it appears that the implementation of --disable-lazy-lock is somewhat broken as well, causing the initial downgrade to fail to land.

As a result, the downgrade attempt will disable jemalloc on Windows entirely. This issue will track re-enabling it on Windows as well as re-upgrading once the deadlock bug is fixed. As far as I know the only reason to not enable Windows is that lots of locking support was improved in 4.0.*, and the only reason to not upgrade immediately is the deadlock bugs we've encountered.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions