I spent hours trying to make an EXT4 partition on HTC Desire (Bravo) using Linux or windows Paragon partition manager, the problem after making the partition is that the phone no longer can mount the FAT32 partition making it impossible to access, instead the EXT4 will function pretty well and be added to the Internal Memory as a part of it.
The solution is so simple. stop trying to partition your SDCARD using linux or windows software and instead you can flash a custom recover menu or use it if you already have it, some Clockworksmod recoveries don't have partitioning, I recommend cyanogenmod recovery meny to do this, all you have to do is to backup your FAT32 partition and all your apps using Astro File manager or other backup tool, then boot into recovery holding the buttons responsible for your phone, for example on HTC Hero it will be holding menu and home on startup.
after that partition your SD card, make an ext partition of 512MB that should be enough for the internal memory.
because latest custom roms with APP2SD can move apps to SD anyway, the new EXT partition will function good to hold your DATA and CACHE and the rest of the SD will be FAT32 wich will be for your music, apps and other files.
this way you will get rid of problems like exchange mail or sms filling your internal memory.
and you will avoid errors like:
Not enough disk space on device.