I'd like to get the answer in LOC.
I know that most of the modules/drivers, virtualization enhancements, android patches etc. can be excluded from kernel right away. But my question is more a call for verbose and theoretic answer, so it can be used as a reference by others.
So, what of Linux do I not need as a regular user? Better yet, let us imagine a casual computer user browsing web sites, doing some office processing etc. Nothing special or development/hacking.
In this stance, I'd like to know what parts of kernel and corresponding count of code can be removed from Linux.
And by this an outsider can know how really "monolithic" Linux is.
UPD: @MatthewRock I understand what you said in your answer and that's a reasonable piece of advice. I don't advocate for custom kernels if you read me that way. It's more about the status of usefulness of the parts of the default kernel. I think I better provide an example of what I think would be my perfect answer without answering myself, like:
You don't need these:
STM32's SPI code = XXXLOC
KVM Support = YYYLOC
"Hur Hur I'm a sheep" mark = ZZZLOC