It all depends which cruiseline you go with. Some have only smoking on open decks but some have one or two bars where you can smoke. All restaurants will probably be non smoking.
Many do not allow smoking in cabins and will fine you heavily for "cleaning" if you break the rule....Nei.
I have just read some information about P&O on this website with regards to smoking rule.