From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konstantin Khorenko Date: Wed, 5 Aug 2026 16:10:16 +0200 Subject: [Devel] [PATCH RHEL10 COMMIT] fence-watchdog: return count from watchdog_log_path store In-Reply-To: <20260706110002.1024515-6-khorenko@virtuozzo.com> Message-ID: <202608051410.675EAG6M508463@f0.sw.ru> List-Id: The commit is pushed to "branch-rh10-6.12.0-211.39.1.16.x.vz10-ovz" and will appear at git at bitbucket.org:openvz/vzkernel.git after rh10-6.12.0-211.39.1.16.2.vz10 ------> commit b8665131c11adbc94a8bec2a31df322a6ce5be4b Author: Konstantin Khorenko Date: Mon Jul 6 12:59:43 2026 +0200 fence-watchdog: return count from watchdog_log_path store fence_wdog_log_path_store() returned 0 on success instead of the number of bytes consumed. A sysfs ->store() handler must return @count (or a negative error); returning 0 tells the VFS that no bytes of the write were consumed, so a write(2) of the new path makes no progress. A libc/shell that loops until all bytes are written (e.g. echo > file) then spins forever, and a single write() reports 0 rather than the requested length. The path value itself is updated (sscanf ran). The sibling watchdog_timer and watchdog_action store handlers already return count; do the same here. Fixes: 385200750a485 ("fence-watchdog: Add fence-watchdog driver") Feature: kernel: fense watchdog driver https://virtuozzo.atlassian.net/browse/VSTOR-137234 Signed-off-by: Konstantin Khorenko Reviewed-by: Pavel Tikhomirov --- kernel/fence-watchdog.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/fence-watchdog.c b/kernel/fence-watchdog.c index bcbd439d4981f..f7b7bfa9e4d9f 100644 --- a/kernel/fence-watchdog.c +++ b/kernel/fence-watchdog.c @@ -276,10 +276,9 @@ static ssize_t fence_wdog_log_path_store(struct kobject *kobj, if (ret < 0) return ret; - if (sscanf(buf, format, fence_wdog_log_path) != 1) return -EINVAL; - return 0; + return count; } static struct kobj_attribute fence_wdog_timer_attr =