Make sure that you either install XP first or make an NTFS partition as the first partition on the hard drive. XP is evil and always wants the first chunk of the drive, so it will corrupt your linux install if linux came first and you didn't leave the first partition for win.
Not quite true actually. Take a look at my partition table:

cfdisk 2.12

Disk Drive: /dev/hda
Size: 41174138880 bytes, 41.1 GB
Heads: 16 Sectors per Track: 63 Cylinders: 79780

Name Flags Part Type FS Type [Label] Size (MB)
------------------------------------------------------------------------------
hda1 Primary Unknown (78) 97.10*
hda2 Boot Primary Linux ReiserFS 3000.07*
hda3 Primary NTFS 8000.01*
hda5 Logical Linux ReiserFS 4999.94*
hda6 Logical Linux ReiserFS 1000.20*
hda7 Logical Linux ReiserFS 4999.94*
hda8 Logical Linux ReiserFS 4999.94*
hda9 Logical Linux ReiserFS 8000.01*
hda10 Logical Linux 1000.20*
Logical Free Space 5076.78*

The NTFS partition, which is the 3rd partition, is my XP install. I use XOSL boot loader on my primary MBA (/dev/hda). All I do is partition my hard drive, install XOSL, install Linux, put its boot loader on hda2 (/boot), install XP, then run XOSL's restore command. I then configure XOSL to boot off of the OSes' partition, hda2 for Linux, hda3 for XP, etc.