I agree with you. If writing FPW is not large performance degradation, it is just idea that we can use to write FPW in same timing as checksum enabled. i.g., if we support new wal_level, the system writes FPW when a simple SELECT updates hint bits. but checksum function is disabled. Thought?
I wonder if its too much for this purpose. In fact, we just need a way to know that a block could have been written on the master which the standby never saw. So even WAL logging just the block id should be good enough for pg_rewind to be able to detect and later copy that block from the new master. Having said that, I don't know if there is general advantage of WAL logging the exact hint bit update operation for other reasons.
Another difference AFAICS is that checksum feature needs the block to be backed up only after the first time a hint bit is updated after checkpoint. But for something like pg_rewind to work, we will need to WAL log every hint bit update on a page. So we would want to keep it as short as possible.