[Devel] [PATCH RHEL10 COMMIT] fence-watchdog: return count from watchdog_log_path store

Konstantin Khorenko khorenko at virtuozzo.com
Wed Aug 5 17:10:16 MSK 2026


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 <khorenko at virtuozzo.com>
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 <khorenko at virtuozzo.com>
    Reviewed-by: Pavel Tikhomirov <ptikhomirov at virtuozzo.com>
---
 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 =


More information about the Devel mailing list