Hi, I am building a custom Kernel from ArchLinux standard Kernel package. I do that mostly to get CONFIG_NO_HZ_FULL on since I dedicate cores to RT threads of my app. Beside that, I play it safe by not touching to settings that I have no idea what they do and I keep the default upstream packaging settings. There is one timing measurement that I do in my app. the time it takes for: 1. Thread A to write in an eventfd to wake up thread B running an io_uring event loop 2. thread B userspace event processing + write data in a TCP socket through io_uring 3. thread B Receive the write CQE With previous kernel settings, the timing that I had was 85 uSecs. Idk why but yesterday, I felt more daring than usual I have decided disable a couple of features that aren't needed. So I disabled: CONFIG_AUDIT CONFIG_SECURITY_APPARMOR (had to remove it to be allowed to remove CONFIG_AUDIT) CONFIG_HYPERVISOR_GUEST (my kernel will always only run on bare metal) CONFIG_AMD_MEM_ENCRYPT (my server is Intel based) and I have been amazed by how much faster io_uring became. My timing went from 85 to 59.8 uSecs (A 30% improvement)! Now, because I have disabled a couple of settings all at the same time, I am not really sure which one is responsible for this amazing result but I would suspect that CONFIG_AUDIT might be the one... You know what? I would be willing to take a couple more of those juicy 30% improvements anytime... So I was wondering if someone is aware of some other kernel config settings that are notoriously detrimental to the kernel io_uring I/O performance (more specifically TCP/IP)? My next try will be to disable: CONFIG_SECURITY_NETWORK CONFIG_SECURITY_TOMOYO CONFIG_SECURITY_SMACK I suspect that I might not find another 30% improvment... but who knows? if I do, I will report back Greetings,