POR-15 works great for rust so far. Wire wheel the heck out of it to knock off the loose stuff, desgrease, and then paint away. On the other hand I am completely un-impressed on its job on bare metal so far, even following there process it doesnt bond to bare metal well. Some spots I can scratch it off with my finger nail. But the rusted spots it wont chip, peel, or budge. I'm yet to find out long term rust prevention benefits of it, but it goes on nice, its self leveling, i.e. you cant tell it's been brushed on. You need to paint over the top of it though, 2 weeks in the sun, it was already getting hazy. But I'd recommend it for a frame with heavy rust to light surface rust.
I would recommend against using bed liner over rust without some kind of neutrilizer underneath it to try to prevent the rust. I've seen bed-liner peel right off of metal that has rust underneath. Even stuff that was painted when new over factory paint. It doesnt do much to prevent existing rust from expanding.