When I freshly installed Oracle Linux 7 and opened /proc/filesystems, I only saw xfs. But there was still mkfs commands for ext filesystems. So I created a block device, used the mkfs command to make it ext4, and then mounted it. Mount worked, and I checked /proc/filesystems to see ext4 added. Quite bizzare to me. I don't understand why it isn't in /proc/filesystems in the first place. Is there a typical way to enable filesystems onto /proc/filesystems?
Just like hardware drivers, filesystems are available as kernel modules. And just like hardware drivers, they can be automatically loaded on demand. When you attempted the mount, the module was automatically loaded so you didn't have to
modprobe it manually.
If you run
lsmod you'll find the ext4 driver in there. If you unmount the filesystem, you can
rmmod the module,
lsmod again to see it's gone, then mount and
lsmod and it'll be back. And whenever that module is loaded, it will contribute to the contents of