I agree to use smoothness only for a speed penalty. I thought I reconized the last example that you mentioned, but it was another bad road that I cycled on in Romania (pasul Rarau, a few km to the west of your example, was paved and horrible, now marked as footpath) 😉






 
OK, here is v3 of the patch based on v1.  Changes:
- also treat surface=paving_stones:30 as paved
- treat highway=via_ferrata as unpaved
- don't interpret smoothness=bad as unpaved

Add spead penalty for roads with very_bad or worser smoothness if they are not flagged as unpaved
highway=* & mkgmap:unpaved!=1 & smoothness ~ '.*(bad|horrible|impassable)'  { add mkgmap:road-speed = '-2' }

I still don't like this version. It sets mkgmap:unpaved=1 for highways which are explicitely mapped as paved, e.g.
http://www.openstreetmap.org/way/150436049
which matches
highway=tertiary & surface=paved & smoothness=very_bad
or
http://www.openstreetmap.org/way/38245394

There are quite a lot of major highways with a combination of paved surface and ugly smoothness.
I think the smoothness tag should only be used to add a road speed penalty.

Gerd