"/dev/hda6 is my root partition, when dropped to shell and running fsck with no arguments I get the same message:
fsck.ext3 for device /dev/hda6 exited with signal 4"
fsck should not be run against a mounted file system. If you do then you will get error messages. These errors may only be the fact that /dev/hda6 was not dismounted cleanly. So this is not a valid test of /dev/hda6.
"I can browse the root partition using cd with no problems"
If you boot a rescue CD and fsck.ext3 runs clean against /dev/hda6, this is a valid test that /dev/hda6 is clean.
"Having no problem booting using kernel 2.4"
This is a valid test that /dev/hda6 is clean.
"While booting with old kernel 2.2.12 I get the following message
Warning...fsck.ext3 for device /dev/hda6 exited with signal 4 [FAILED]"
This is a valid test that /dev/hda6 is corrupt.
Looking over the evidence I would say that the problem lies in kernel 2.2.12, not /dev/hda6. I don't know what the problem is and you have already eliminated one possibility.
Be prepared. Create a LifeBoat CD.