when doing headgasket, garage checks only engine head, and there is no need to tak out pistons. pistons always bit black ....is your car smoky when you driving ? kinda blue ish , or black light smoke ? if it does, so more likely oil ring is gone... or stuck, or broken, hard to tell that .... when was oil changed last time ? did you use good oil ? do you use proper oil ? proper grade, but not the cheapest ... to save money, or not to most expensive, thinking you doing better for engine? ... 10w40 is the oil to go, go for most popular name.... i am using castrol magnetic.. make sure oil level is fine. ... not overfilled.... right between marks on dipstick.
if you changed oil recently, suggest you get engine cleaner, or flusher, which suppose to be addon in oil, use it as it states.... if it say worm engine 15 min, than do it... if it say drive for 30 miles , do it, and after that change oil and filter. if all that doesn't help ( i mean still smoky), so than it means oil ring not stuck , it is more likely broken.
from money point cheaper would be engine change