If a room was once a smoking room, but now isn’t, you have to change everything to get that smell out. Just as you can’t get rid of smoke smell in cars, you can’t just call it non-smoking but not take care of that nauseating smell. This means replacing carpet, chairs, bedding, wallpaper/repaint, etc. you can’t clean it out.
Our first room was most definitely a smoking room previously, even though the entire hotel is now non-smoking. We could tell because the room number sign didn’t have a “no smoking” label under it like most of the other rooms around it. As soon as we opened the door that smell just wafted out. I’m glad they let us swap rooms though, the second room did not smell like smoke.