-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mlock return -1 #2
Comments
Can you get the errno for this? import core.stdc.errno;
logError("Could not mlock " ~ to!string(pool_size) ~ " bytes: " ~ errno()); I forgot to log it. The -1 is return value for error, I get this often in the travis docker |
12 think it is ENOMEM
|
I think this might be a problem with |
The problem could also be that the box I am running this on is memory
restricted, and linux is already (or about to start) swapping.
I am a proponent of docker but it always feels strange that one requires
a full OS and at least 512mb ram to run a single process that only takes
up 10mb.
|
I explored this issue again and it seems like there's a big rabbit-hole of problems with locking memory in docker: I'm not sure how I could fix this in the library itself. By the way, I've been working a lot with your spasm library, I setup memutils in it and removed the garbage collector in favor of This is the last working commit: etcimon/libwasm@005df6b The newer one will compile only once I'm done making everything from mir work with I changed the name because it would probably be hard for it to be merged anyways. It compiles only with this version of LDC that adds support for This is my test file: https://github.com/etcimon/libwasm/blob/master/examples/dom/source/app.d |
Yeah, no problem, I moved on in the 7 year since 😄
Awesome, that is good to hear. I have been meaning to get back to it, but work is in the way. I have some ideas on completing the druntime wasm port I started, supporting the GC etc., but it requires a lot of spelunking. Unsure when it is done. I hope to manage before dconf, but no guarantees.
Cool. Will check it out when back from holiday.
No problem, the library is a bit dead, and while I have some fresh ideas, they will likely major rewrite. |
What I have been meaning to do, is use diet templates to have dynamically generated html, which is then merged (or not) recursively to populate the spasm structs or simply set the innerHTML. So basically it calls update on everything that changed through the HTML, and to accomodate missing fields the Node mixin would include a way to add attributes and properties that are used when applying changes to the DOM. That way, you can have a diet template that has a ton of slightly dynamic content elements without needing to build a ton of nodes for it. The problem is that I'm waiting on a pull request in DMD. And then it has to merge into LDC. |
in securepool.d@224:
logError("Could not mlock " ~ to!string(pool_size) ~ " bytes");
mlock actually returns -1, which is weird since it is not a valid return value http://linux.die.net/man/2/mlock.
I'm running dmd v2.067 on ArchLinux in boot2docker on windows machine.
My app doesn't use the securepool so it will still compile and run.
The text was updated successfully, but these errors were encountered: