I have a server running debian/testing with samba 3.0.7-debian. My Client is Gentoo/stable with 3.0.7 debian. my local LANG is en_US.UTF-8 I have several japanese filenames on the server (they are utf-8 there of course). If I mount the share with mount.cifs //fileserver/share share/ -o user=me then I see just questionmarks. If I try to mount it it with mount.cifs //fileserver/share share/ -o user=me,ipcharset=utf8 then I see a long, very long string of questionmarks, blocks, and some very strange kanji instead of the ver simple japanese filename. The filename is correctly viewed on the fileserver with the same shell (gnome-terminal, terminal encoding set to utf-8). I have no other utf-8 characters like umlauts etc to test, but at least with japaense its not working ...
Should be fixed by changes to fs/cifs/file.c and the new file fs/cifs/readdir.c which created a new cifs readdir routine which handles utf8 variable length characters much better (strings were getting overwritten in some asian languages before). Should be fixed in 2.6.10 or later kernels (patches available for some earlier kernels on the project page). note that the syntax is iocharset (not ipcharset) but that should not be necessary in any case when the server supports unicode (as Samba 3 and Windows do).