|
Message-ID: <20191022174051.GA24726@brightrain.aerifal.cx> Date: Tue, 22 Oct 2019 13:40:51 -0400 From: Rich Felker <dalias@...c.org> To: musl@...ts.openwall.com Subject: New malloc - intro, motivation & design goals document Alongside time64 and other enhancements, over the next few months I'll be working on a major project to replace musl's malloc, which has known fundamental problems that can't really be fixed without significant redesign. The early stages of this, in progress now, involve preparing tests that can identify pitfalls into pathological fragmentation, some of which may be avoidable and others of which may be fundamental, for use in assessing possible allocation strategies and other existing malloc implementations. I'm attaching a document describing motivations and goals for the project, and a dead simple minimal test to demonstrate the unbounded heap expansion problem that's the core motivation. The latter produces no output but can be watched via top(1) or similar. I'll follow up soon with some thoughts/findings so far on designs that might work for us, or that don't work but have interesting properties that suggest they may lead to workable designs. I'm not going to try to do development of this inside the musl tree; getting the ability to experiment with and do this out-of-tree, then integrate it later, was one of the motivations for supporting malloc replacement which musl 1.1.20 introduced. View attachment "newmalloc.txt" of type "text/plain" (3042 bytes) View attachment "expand_race.c" of type "text/plain" (260 bytes)
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.