Cut the potatoes into chunks, and boil in a pan of water until very soft.
Meanwhile, heat the oil in a large frying pan, and add the onions and garlic. Cook over a medium-low heat for 5-10 minutes, until very soft but not browned.
When the potatoes are soft, drain them, and add the 2tbsp of milk. Mash to your desired consistency. Add the onions and grated cheese, and mix well. Season with some salt and plenty of black pepper. Set aside.
On a lightly floured surface, roll out the puff pastry into a rectangle - I used a pre-rolled sheet, but still rolled it out a little further. Shape the potato filling into a log along the centre of the pastry, leaving a few inches of pastry along two opposite sides, and just a centimetre or so along the other two sides.
Using a sharp knife, cut the excess pastry at a slight angle into strips (my strips were about 1cm wide) - see photos. Alternating from side to side, fold the strips across to the centre of the filling, and stick them down with a dab of milk. Tuck the ends in neatly, again sealing with a little milk (you might need to cut of a bit of excess pastry at the ends).
Brush the whole plait lightly with milk, and bake at 190°C (Gas Mark 5 / 375°F) for around 45 minutes, until the pastry is golden brown and crispy.