In a 5- to 6-quart pan over medium-high heat, stir onion and garlic in oil until limp, about 5 minutes.
Scrape into a small bowl.
Pour 1 quart water into the 5- to 6-quart pan (no need to wash pan) and bring to a boil over high heat.
Peel and rinse potatoes; cut into 1-inch chunks.
Add potatoes to boiling water; cover and return to a boil, then reduce heat to medium and simmer until potatoes mash easily, 8 to 10 minutes.
Drain potatoes and return to pan.
Add onion mixture, sour cream, mayonnaise, cream, and butter to potatoes. Mash with a potato masher or an electric mixer until mixture is as lumpy or smooth as you like, gradually beating in enough of the milk to reach desired consistency.