This depends heavily on how the ext4 filesystem was formatted. Some newer ext4 features (e.g.
64bit) cannot be understood by older ext2 drivers, and the kernel would refuse to mount the filesystem (see, for example this post). In general, any filesystem formatted with a modern
mke2fs with the default
-t ext4 options will not be mountable by an old ext2 driver, but if the filesystem was originally formatted a long time ago, then upgraded to ext4, it may still be mountable by ext2 if none of the newer ext4-specific features were enabled.
The ext2/3/4 filesystems track which features are in use by
incompat feature flags. These features are normally set at
mke2fs time, but can sometimes be changed by
tune2fs. If an unknown
compat feature is found, the kernel will mount it, but
e2fsck will refuse to check it because it might do something wrong. If an unknown
rocompat feature is found, the kernel can mount the filesystem read-only, and any unknown
incompat feature will prevent the filesystem from being mounted at all (a message will be printed to
/var/log/messages in this case).
You can use
debugfs -c -R features <device> to dump the features enabled on a filesystem, for example:
# debugfs -c -R features /dev/sdb1
debugfs 1.42.13.wc5 (15-Apr-2016)
/dev/sdb1: catastrophic mode - not reading inode or group bitmaps
Filesystem features: has_journal ext_attr resize_inode dir_index filetype
needs_recovery dirdata sparse_super large_file huge_file uninit_bg dir_nlink
Though this doesn't tell you which ones are
incompat. If your version of
debugfs doesn't understand some newer feature, it will print it like
I0400 or similar.