So the procedure is to go to Canadian Consulate in person to get the Visa stamped?
Look up the information on a site of appropriate canadian consulate. Perhaps, you may not need to show up in person, just send your passports in mail for stamping. It will take a couple of weeks, though. On the other hand, showing up in person will get you a visa on the same day.
We have a valid AP which should be enough I guess. But what's US reentry permit? I thought Advance Parole is enough to reenter.
That's the one. You need nothing beyond that.