Whamcloud - gitweb
LU-12020 llite: make sure name pack atomic 30/34330/3
authorWang Shilong <wshilong@ddn.com>
Tue, 26 Feb 2019 14:38:29 +0000 (22:38 +0800)
committerOleg Drokin <green@whamcloud.com>
Sun, 3 Mar 2019 00:22:00 +0000 (00:22 +0000)
commitf575b6551b2b8690894baeab95d6fe35e57e9418
tree225a35288ae6de835b1b817b6dadb98137cbceb2
parent94b11d5a7c55f4f6aff918c3b565b74cb18d04fb
LU-12020 llite: make sure name pack atomic

We are trying to access dentry name directly and pass it
down without holding @d_lock, this is racy and possibly
make us trigger assertions:

(mdc_lib.c:137:mdc_pack_name()) ASSERTION( lu_name_is_valid_2(buf, cpy_len) ) failed:

Fix the problem by allocting memory and copy name with @d_lock
held.

Change-Id: Iae0066661f42e8fca9358cbedd9cb21828779bbb
Signed-off-by: Wang Shilong <wshilong@ddn.com>
Reviewed-on: https://review.whamcloud.com/34330
Tested-by: Jenkins
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Gu Zheng <gzheng@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/llite/file.c