thanks everyone who replied, i finally figured out what's wrong.
It turned out to be the problem that no CWM for gio could format the partitions into rfs therefore they kept giving me errors when i tried to restore.
and after some trials, I found that the CWM for CM7 (cwm-v2.zip) can actually restore my backup, but with the system, data, cache formated in ext3. Therefore with the stock kernel, it won't boot.
Final remedy: use CWM for CM7 to restore the backup, then flash a custom kernel for stock rom.