[Devel] Ускорение работы CIFS без direct

Evgeny Sinelnikov sin на etersoft.ru
Чт Июл 15 20:49:46 MSD 2010


Здравствуйте,

Разбирая задачу #5442, "Протестировать сборку Etercifs 4.5.1", я
вспомнил о проблеме препятствующей использовать параметр direct.
http://bugs.etersoft.ru/show_bug.cgi?id=5442

Суть текущей проверки, насколько я понял, в том, что в новых версиях
Etercifs 4.5.X.Y предполагается отключить параметр монтирования
direct. Со времени моей последней работы над etercifs я помню, что
проблема отключения direct связана с особенностями постраничного
(страницы в 4кб для x86) кеширования в VFS.

Проблема возникает, когда нужно уметь читать страницы, в которых часть
байт заблокировано и сервер отдаёт только не заблокированные. При этом
VFS, рассчитывая на не вынужденные блокировки (Advisory), читает
блоками невзирая на блокировки. Соответственно сервер, работая с
вынужденными блокировками (Mandatory), не позволяет прочесть, если
какая-та часть байт заблокирована.

Найден ли обходной путь для решения этой проблемы?

Со своей стороны, я полагаю, что без правки логики работы
самба-сервера, решить эту проблему не получится. По крайней мере, пока
я не знаю как это обойти.

-- 
Sin (Sinelnikov Evgeny)


Подробная информация о списке рассылки Devel