We traditionally had a lot of patches on mkinitrd (and even had a real fork for years before rebasing on Fedora's version about two years ago).
Six or seven years ago a patch was sent by our maintainer on redhat bugzilla and it was merged about 1 year later, after 1 year without any reply. Now we tend to send them by mail with not much more success...
I had a patch merged last year and Olivier had one more recently, but we had little success overall getting our work upstream as mkinitrd is not a "real project" but more developed as internal tool by redhat, without a ML to discuss with its developers, etc.
We are now managing our patches in git so I could create easily a for-upstream branch with 18 patches that I think can be merged.
I sent last week an email about this branch to the last bunch of redhat's people who had released versions of mkinitrd as there does not seem to be an official maintainer, hopefuly they will pick some of the patches :)
The other patches are mostly splashy support (but we'll be able to drop this soon hopefuly, as plymouth seems to be working nice) or to reduce boot time.
Regarding improved boot time, we had patched mkinitrd before 2009 Spring to only wait for needed devices (the / partition, the disks under the lvm or soft raid containing /, the partition under the encrypted one containing /...) instead of waiting for all devices to be there. This saves several seconds on most machines. I did not put this part in for-upstream branch as there are two known bugs in current version adding some delay and I did not yet have time to investigate them: