Posts
535
Following
101
Followers
118
A relatively new professional kernel hacker, born in August 6, 2000, and living in Korea (South!).

- Linux Kernel Developer @ Oracle (Linux Kernel MM) (2025.02 ~ Present)
- Reviewer for the Linux Slab & Reverse Mapping subsystem
- Former Intern @ NVIDIA, SK Hynix, Panmnesia (Security, MM and CXL)
- B.Sc. in Computer Science & Engineering, Chungnam National University (Class of 2025)

Opinions are my own.

My interests are:
Memory Management,
Computer Architecture,
Circuit Design,
Virtualization

A big issue in the kernel are asymmetries between review resource and patch submission.

If you have 20 inexperienced kernel engineers all doing big difficult work and submitting large series that need TONS of review (and sometimes essentially development-via-review) and only a few reviewers, you have a problem.

What compounds this is that not all review is equal.

It seems most people will only really look at the surface, and rather happily give tags.

I think that technical skill is not enough for review [as I have said very often - soft skills are the actually core ones] - you have to be willing to say no, you have to be willing to consider the wider picture.

Finding people who have the right skills, are willing to handle the stress + thanklessness, & who have the time is not easy.

So the asymmetry I think is insoluble.

It'd be good if we could have stricter controls to throttle incoming series though.

3
4
1

Harry (Hyeonggon) Yoo

Edited 5 days ago
@ljs @jann @alwayscurious @vbabka That's one of my projects for next year, planning to start by writing an RFC around the end of this year :)
1
0
2

Harry (Hyeonggon) Yoo

Edited 10 days ago
@wagi @ljs
It’s great that you’re already doing a lot of cardio!
Do you have any plans for eating in mind?
1
0
2
@wagi @ljs

Thank you @wagi !

Woohoo good luck with yours too!
For me resisting food was harder than working out :P
2
0
3

Harry (Hyeonggon) Yoo

Edited 10 days ago
@ljs

Thanks! I'm proud of how far I've come ;) just going to keep going.

my PT has successfully gaslighted me, like, 'getting lean is better than eating pizza and chicken" yeah sure sure
0
0
1

Harry (Hyeonggon) Yoo

Edited 10 days ago
Here’s a progress update on my diet! It’s been five weeks now.
- Five workout sessions per week (focusing on losing fat)
- Eating only 2 sandwiches per day (most of the time!)

Target weight is about 70-75kg... so still a long long way to go.
1
0
4

Prototype for type-based partitioning of Linux kernel slab caches: https://discourse.llvm.org/t/rfc-a-framework-for-allocator-partitioning-hints/87434/24?u=melver

Compiler seems to be doing a good-enough job of inferring allocated types per /proc/slabinfo. With the diagnostic -Rpass=alloc-token I can see about 965 allocation sites where it failed to infer the allocated type, but most of them are "bag of bytes", and only few with complex sizeof calculations like struct_size that are too opaque right now (but can be fixed).

2
3
1

Harry (Hyeonggon) Yoo

Edited 21 days ago
Working on saving 8 or 16 bytes per slab object in certain slab caches that fall into special cases, most notably 0.7%-0.8% or 1.5%-1.6% (depending on the configuration) memory savings for the inode cache (ext4 and xfs).

When memory cgroup and memory allocation profiling are enabled (the former being very common in production and the latter less so), the kernel allocates two pointers per object: one for the memory cgroup to which it belongs, and another for the code location that requested the allocation.

In two special cases, this overhead can be eliminated by allocating slabobj_ext metadata from unused space within a slab page:
- Case 1. The "leftover" space after the last slab object is larger than the size of an array of slabobj_ext.
- Case 2. The per-object alignment padding is larger than sizeof(struct slabobj_ext).

Thanks to @vbabka who suggested an excellent general approach to cover Case 1 and 2 with a minimal performance impact on the memory cgroup charging code (more details in the cover letter)

For these two cases, one or two pointers can be saved per slab object. Examples include the ext4 inode cache (case 1) and the xfs inode cache (case 2). That results in approximately 0.7-0.8% (memcg) or 1.5-1.6% (memcg + mem profiling) of the total inode cache size.

https://lore.kernel.org/linux-mm/20250827113726.707801-1-harry.yoo@oracle.com/
0
1
2
@ptesarik @ljs

Hopefully, the rise of the physical world comes without the return-to-office :P
0
0
2

Harry (Hyeonggon) Yoo

Edited 1 month ago
I should have been a photographer ?!
1
0
3
@ljs yay, this means I was weak and now I'm getting stronger!
0
0
1

Harry (Hyeonggon) Yoo

Edited 1 month ago
@ljs And while on a diet, I can't eat like I used to before so I've been taking 3-4 teas a day like a Brit to calm down my stomach
0
0
2
@ljs It's really sore that I'm starting to worry lol
1
0
1

Harry (Hyeonggon) Yoo

I didn't really work on my legs much before, but ever since I started PT, my legs hurt with every move I make
0
0
1

Harry (Hyeonggon) Yoo

On diet day 3
0
0
1
@oleksandr
lol man I'd rather stay AI-illiterate (if possible)
1
1
1
@oleksandr and then misread LLM output!
1
0
0

Harry (Hyeonggon) Yoo

Uh I don't want to misread code
1
0
0
@ljs Hail gym! blobcatblankiescared
0
0
2
Show older