reg strange behaviour of 6500 sup720 engine

uploaded the image size was about 740mb and the available memory size was about 780mb.

after uploading the image, we gave verify /md5 command for OS verification. As soon as we gave this, the sup engine started behaving weird. It got kind of struck , it started saying native vlan mismatch on trunk ports, spanning tree loop on ports, ULD error, all kind of switching error popped up. The sup engine become acting very strange and it never tried to failover to the standby sup engine.

when we physically went to saw , the status LED of sup was red , when we tried to do failover to the other sup it dint happen, we then removed the broken sup, then it got failed over. this led to a disaster, our whole dc wasn't functioning properly.

i was uploading the image on 3 different 6500 switches, it went well on two and it was on third 6500 this problem happened. What sounds so weird is I was only uploading the IOS, i was event doing anything else more than that. I am not sure what could have caused this problem

1) if there wasnt space on the memory, it should have given a warning, but it dint!!!

2) if the image wasnt there/corrupted then verify /md5 should not have even started.

My doubts are

whether there is any best practice saying that there has to be this much memory should be always available/free on supbootflash, what i mean is say if supbootflash size is 1gb does we should keep 10-20% free always in the memory.

Always I was wondering whether verify /md5 command could increased the CPU utilization on the switch and I even want to know what kind of processes happens when we give this md5 verification command on the switch.