Honetly, I have never had a problem with smokey smell in a cabin. They use very good deoderizers.
However, I do always pack a can of air freshener in my suitcase ... mainly just to give the cabin a fresh smell (especially if it's one without a balcony). The other thing I do is usually pack a half-can and just toss it at the end of the cruise.
I've also packed one of those wrinkle-releasers, which is a great way to freshen up a shirt or something.
Hope that helps.