linux does not need to be on a primary partition to boot, mine is on hda5 and hda8, both of which are logical partitions in what dos considers to be an extended partition.
I read somewhere that since the later versions of dos you could actually make more than one primary partition & dos (& windows) would accept them OK. MS's fdisk couldn't create them but some proprietary partitioning programs could.