has anyone seen this issue? i am going to be using 1 symlink per user for homedirs because our homedir struct is not flat - h/a/aboy, h/b/balbert with dirs a - z. the homedir option will point to the homelinks dir which contains all the symlinks.
Description Prolonged heavy access by CIFS clients that involve or cause lookup of Unix absolute symbolic links can affect filer performance. Because the resolution of absolute symlinks depends on Unix mount point information which is not available to CIFS clients, a table of translations is kept on the filer (/etc/symlink.translations). The entries in this file are order dependent and are searched sequentially. If a CIFS client is doing symlink lookups frequently, and if the entry to resolve the symlink is near the end of the file, and if the file is large, there can be a great deal of CPU utilization. This can slow operations for other users. For example, a user may be changing files in a directory that contains dozens of absolutes symbolic links. The /etc/symlink.translations file may have 1000s of entries. The user is accessing the files with Windows Explorer. After the target file is updated, the filer notifies Explorer of the file change. This is because Explorer will have posted a "change notify" request with the filer, so that it is alerted when changes occur and can update/redraw its display window. Explorer will touch each file including each of the symbolic links. The access of the symlinks will cause the filer to attempt to resolve them by scanning the /etc/symlink.translations entries. If there are many symlinks, many entries,multiple users with Explorer windows affected by change-notify updates, and if the entries needed to resolve the symlinks are missing or at the end of the /etc/symlink.translations file then filer performance can be affected.
Workaround Use the filer's cifs homedir feature (options cifs.home_dir) instead of using a symlink per user when implementing CIFS home directories if there are many users.