Oddly, I've been running a 'hot replace' capable RAID5/6 setup for a year or so now.
My solution was to make a single-drive-present two-drive-RAID1 for each physical drive, then chain those RAID1s together to form the RAID5/6 one layer up.
The downside was I had to have a daemon/script (beyond mdadm) monitoring in the background to add the hot-spare to the correct raid1 slot when it was required, but this sounds like you're going to be adding more proper support instead of the jury-rigged solution I've been working with with chained mdadm layers.
- WolfWings
