Hello,
I'm a final year CS B.S. student. I was looking for an interesting project / thesis for my Bachelor and my professor suggested I take a look into Genode (besides other things). I find the project fascinating, even though I don't nearly possess enough information to fully understand it. Browsing through the issue tracker, I saw Issue #4323, regarding a possible memory leak. To my understanding, this would be a very easy fix, just free the void pointer that was allocated. Is that enough? I've also found one other place (and there could be more) where this happens again. The same idea -> allocated memory that doesn't get deallocated if the mapping fails.
How should I go about helping with this? Search for such spots and add a deallocation for each I find, then create a pull request?
I'm not familiar with the code in base/core/, but from a cursory look it might be possible that this is simply in need of changing the subsequent line
if (!map_local())....
to also free the range before doing "return nullptr", as you said ; but from what I've seen of the Genode team, and Norman, if they filed a ticket instead of just doing the fix it could mean there are other intricacies involved ; or that they want to consider all aspects (like, are there similar unspotted problems elsewhere in the code, can it be solved with RAII instead of manual freeing, etc) before commiting the fix.
I'm guessing you ought to post to the ticket before crafting the pull request, or anyway that's how I've seen it done before (no experience with PR myself).
No matter what, I hope you give the Genode framework a test drive, and who knows, maybe settle in the Genode community. In my experience, open-source projects mainly lack developers ; they rarely lack in manpower for doc writers, localization, evangelism and so on, but mainly in the coding department.So if you know C++, I feel very much we should encourage you to contribute :-) Maybe to the "genode-world" repo, if it turns out to be more easy to reach than Genode "core" initially.
Though I suppose it might be going too far off target, i.e. your professor would rather you contribute to "core" Genode, which makes sense.
Cedric