Created attachment 10164 [details] patch to fix case insensitivity of cifs client I've noticed a problem with case insensitivity on my cifs mounts. I ran into it when upgrading from Linux Mint 13 to 17. I've since determined that the problem also exists on debian testing. The shares on my NAS boxes (Buffalo and ZyXEL) are case sensitive with Mint 13 and debian stable (wheezy). They are case insensitive on Mint 17 and debian testing (jessie). I do a lot of file renaming (upper/lower casing) and the insensitivity poses a real problem. Here is an example from fstab for one of my shares and the mount command used. //10.2.76.31/android /mnt/ls-pro-android cifs users,noauto,credentials=/home/trdavenport/sambapw,iocharset=utf8 0 0 mount /mnt/ls-pro-android As a test I first installed a new instance of debian stable (Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.57-3+deb7u2)(cifs.ko v.1.76), installed cifs-utils (2:5.5-1) and configured everything to access my shares. This resulted in case sensitive access to all my shares. Without making any other changes I installed a backported kernel (Linux 3.12-0.bpo.1-amd64 #1 SMP Debian 3.12.9-1~bpo70+1)(cifs.ko v.2.02) and with that all my shares are case insensitive. Using grub I can switch back and forth between the two kernels and the results are consistent. Have I missed an option or configuration that would address this? I think the nocase option is supposed to turn off sensitivity, but can't find anything to turn it on. Could this fix ( http;//article.gmane.org/gmane.linux.kernel.cifs/8832 ) from 2013-09-12 have something to do with it? If I use fuse/gvfs, all the shares are case sensitive on debian stable and testing as well as Mint 13 and 17. -- Tim Davenport Gatlinburg, Tennessee USA ------------- I can report that this bug is affecting folks in production environments. It seems a newer version of the kernel cifs client code is reporting capabilities that are confusing the Samba server into turning off case sensitivity, which breaks a lot of stuff. For example, on our Samba server we have "case sensitive = Auto" because we have both Linux and Windows clients. Our older Linux clients running Kubuntu 10.04 indeed obtain the desired case sensitive connections, but when we try to upgrade a client to Kubuntu 12.04 with the 14.04 LTS enablement stack, the mounts suddenly become case insensitive, after which it's not too hard to confuse the client into dropping the "serverino" flag on the connection (manually you can do "mkdir Test; cd tesT"), after which KDE locking code goes bonkers. In the referenced post, https://lists.samba.org/archive/samba-technical/2014-June/100697.html Shirish Pargaonkar included a one-line patch to the Samba server negprot.c code that fixes this bug. No one replied, so unclear whether it got missed? What's the procedure to get that fix into the Samba codebase? Is reporting on this list sufficient, or does a separate bug report need to be entered somewhere into a bug tracking system? ---------- When a client supports extended security but server does not, and that client, in Flags2 field of smb header indicates that - it supports extended security negotiation - it does not support security signatures - it does not require security signatures Samba server treats a client as a Vista client. That turns off case sensitivity and that is a problem for cifs vfs client. So include remote cifs client along with remote samba client to not do so otherwise.
Created attachment 10168 [details] git-am fix for 4.1.next and 4.0.next. Cherry-pick of the fix that went into master for 4.1.next, 4.0.next.
Comment on attachment 10168 [details] git-am fix for 4.1.next and 4.0.next. LGTM!
Karolin, please add the patch to 4.0 and 4.1. Thanks!
Pushed to autobuild-v4-[0|1]-test.
Pushed to both branches. Closing out bug report. Thanks!