On Sun, Oct 09, 2022 at 07:32:38PM +1300, Paulo Miguel Almeida wrote: > My name is Paulo Almeida and as per the instructions listed on the KSPP > page, this is my self-introduction email :) Hello! Welcome to the circus. :) > I will keep it short. > > - My background is in HPC and AI > - I've been writing software for around 20 years now > - I've written my x86-64 hobbyist OS for fun and in my spare time I've > writing a MOS 6502 emulator for the same reason. Heh, nice. That made me wonder if there was a QEmu port, but it seems it hasn't been touched in a decade? https://github.com/AVEx-6502/qemu-6502 Is there a particular 6502 system you're working to emulate? > - Contributing to KSPP is going to be a side project of mine that I plan > to do outside of business hours... so expect a dedication of a few > hours per week. Excellent! We're always glad to have folks helping. > Q: What topics are you interested in? > A: kernel driver development, x86 & ARM hardware architecture, Math, Data > structures, Rust and virtualisation. > > Q: What do you want to learn about? > A: I see the KSPP project/initiative as a way to get exposed to pieces > of code that I wouldn't normally come across which is always > appreciated :) Yeah, you'll end up uncovering some really weird stuff, as you seem to have already found[1]. ;) > I am also aware of the calibre of developers I will be dealing with and > I'm sure that I will be learning really a lot from them :) One of the double-edged swords with KSPP is while you get to work with all the kernel's subsystem maintainers, you also have to work with all the kernel's subsystem maintainers. ;) You'll learn a lot, but you can also end up discovering very different requirements as you send patches. > Q: What experience do you have with security, the kernel, programming, > or anything else you think is important. > A: > I've contributed to the kernel a few times time in the past for both > adding features and janitorial tasks. Excellent! Yeah, it looks like you've been helping clean up some staging drivers[2]. I see you touched rtl8192u -- there's a lot of duplicate code spread around in the rtl* drivers. It would be interesting to see those consolidated some day. If you're interested, it may be worth asking about it on the wireless list. > I took the Linux Kernel Internals (LF420) and the Linux Kernel Debugging > and Security (LF44) courses by the Linux Foundation. Cool -- did anything stand out for you in those courses? > As for other experiences, due to the fact that I wrote my hobbyist OS, I > do have a decent experience with the x86/x86-64 architecture. I also > spent quite sometime writing static analysis parsers.... so should those > experiences help anyone or any possible future plan for the KSPP, please > count on me. Great! One area that needs some review and testing that is x86-specific is the userspace CET support[3]. That spans a wide range of from chipset all the way up through compiler, kernel, and glibc. Getting more people to try that series out and post results ("it works for me" or "I couldn't trigger the protection", etc) would be very welcome. You've already found the "remove the 1-element arrays" work, and there are plenty more like that on the issue tracker. Trying to really put an end to strlcpy[4] is ongoing[5] too, as there has been a fairly concerted effort to remove them lately: Count of "git grep strlcpy | wc -l" over recent releases: v5.17: 1535 v5.18: 1525 v5.19: 1507 v6.0: 1379 master: 544 next-20221010: 401 Thanks for introducing yourself! -Kees [1] https://lore.kernel.org/linux-hardening/Y0IsXXYnS4DnWkMW@xxxxxxxxxxxxxxx/ [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/?qt=author&q=Paulo+Miguel+Almeida [3] https://lore.kernel.org/lkml/Y0IsXXYnS4DnWkMW@xxxxxxxxxxxxxxx/ [4] https://github.com/KSPP/linux/issues/89 [5] https://lore.kernel.org/lkml/?q=s%3A%22use+strscpy%22 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/?qt=grep&q=strlcpy -- Kees Cook