Hi, My name is Akash, and I want to start with OS development.. I am interested in memory management, and would like to know if anyone has a newbie project in their mind.. Thanks and Regards Akash
On Tue, 19 Nov 2019 17:03:37 +0530, Akash Sarda said:
Hi,
My name is Akash, and I want to start with OS development.. I am interested in memory management, and would like to know if anyone has a newbie project in their mind..
Unfortunately, there's probably not much good newbie work in memory management, because a whole lot of experts have already gone over it and make it work reasonably well on *literally* everything from light bulbs to supercomputers. I'm not saying there's nothing in there for a newbie to do. There's probably still tons of minor enhancements that can be done, but they're going to require that you actually understand the code at a fairly deep level. For example, here's a recent commit: commit abc04c84ae77fdbce2c42c52e4059d327e54c7ab Author: Minchan Kim <minchan@google.com> Date: Wed Nov 6 16:06:48 2019 +1100 mm/page_io.c: annotate refault stalls from swap_readpage If a block device supports rw_page operation, it doesn't submit bios so the annotation in submit_bio() for refault stall doesn't work. It happens with zram in android, especially swap read path which could consume CPU cycle for decompress. It is also a problem for zswap which uses frontswap. Annotate swap_readpage() to account the synchronous IO overhead to prevent underreport memory pressure. The description of what was changed and why runs to just under 500 characters, while the actual change is well under 200. I'm assuming you've already cloned either Linus's git tree or one or more of the development trees. If so, you can do a 'git log mm/' and see what work has been recently done, so you know what sort of learning curve you're going to have. You definitely need to read the various files under Documentation/process and you probably should go read this as well: https://lists.kernelnewbies.org/pipermail/kernelnewbies/2017-April/017765.ht...
Awesome, thanks for the info! On Wed, Nov 20, 2019 at 1:50 AM Valdis Klētnieks <valdis.kletnieks@vt.edu> wrote:
On Tue, 19 Nov 2019 17:03:37 +0530, Akash Sarda said:
Hi,
My name is Akash, and I want to start with OS development.. I am interested in memory management, and would like to know if anyone has a newbie project in their mind..
Unfortunately, there's probably not much good newbie work in memory management, because a whole lot of experts have already gone over it and make it work reasonably well on *literally* everything from light bulbs to supercomputers.
I'm not saying there's nothing in there for a newbie to do. There's probably still tons of minor enhancements that can be done, but they're going to require that you actually understand the code at a fairly deep level. For example, here's a recent commit:
commit abc04c84ae77fdbce2c42c52e4059d327e54c7ab Author: Minchan Kim <minchan@google.com> Date: Wed Nov 6 16:06:48 2019 +1100
mm/page_io.c: annotate refault stalls from swap_readpage
If a block device supports rw_page operation, it doesn't submit bios so the annotation in submit_bio() for refault stall doesn't work. It happens with zram in android, especially swap read path which could consume CPU cycle for decompress. It is also a problem for zswap which uses frontswap.
Annotate swap_readpage() to account the synchronous IO overhead to prevent underreport memory pressure.
The description of what was changed and why runs to just under 500 characters, while the actual change is well under 200.
I'm assuming you've already cloned either Linus's git tree or one or more of the development trees. If so, you can do a 'git log mm/' and see what work has been recently done, so you know what sort of learning curve you're going to have.
You definitely need to read the various files under Documentation/process and you probably should go read this as well:
https://lists.kernelnewbies.org/pipermail/kernelnewbies/2017-April/017765.ht...
On Wed, Nov 20, 2019 at 1:50 AM Valdis Klētnieks <valdis.kletnieks@vt.edu> wrote:
On Tue, 19 Nov 2019 17:03:37 +0530, Akash Sarda said:
Hi,
My name is Akash, and I want to start with OS development.. I am interested in memory management, and would like to know if anyone has a newbie project in their mind..
We, my team and me, are actually looking into some newbie tasks in the area of memory management. It is just not focussed on extending the existing implementation, but rather on updating old documentation, understanding and improving tests, and other activities around the memory management system. If that is of interest for you, let me know off-list and we can discuss details and a good task to get started. Certainly, memory management is quite involved, so you would need to stick longer to this task to show dome results to the community. There are no obvious easy quick wins, but checking and updating documentation to the current way the kernel works (and adding a test for that and using ftrace to see roughly what happens) could be a nice contribution in this area. Lukas
participants (3)
-
Akash Sarda -
Lukas Bulwahn -
Valdis Klētnieks