it is probably worth to create a logical partition /dev/hda5 in primary partition /dev/hda4 and use it for swap. This way, you don't have to spend the entire /dev/hda4 for swap, and can create other logical partitions in it
–
dmityugovJun 2 '09 at 20:25

If you have decent amount of RAM and your applications aren't memory-intensive, you might consider using a separate file as a swap instead of the whole partition. That way you can easily select the amount of swap space you use, either by adding more swap files, or resizing existing ones.

Let's say that your swapfile will reside in root directory as /swapfile, and will have size 512 MB. To create it issue commands as root:

Adding more swap files is as simple as creating more files (/swapfile1, /swapfileX), formatting them using mkswap and enabling using swapon. If you want to disable a swapfile, you can use command swapoff /swapfile.

As for the performance between disk and file version, it's not that terribly different. You can even use swapfile as hibernation disk in laptops (although I always use separate partition for that anyway).

You'll need to format /dev/hda4 as swap, which I think just deletes the file system tables, then just edit /etc/fstab and point swap to /dev/hda4. Then reboot and you should be good. It goes without saying that you'll lose any data on /dev/hda4. You can use gparted as a gui for the formatting.