From 90a74600d772ee578aaf5c63005e2d80b0d223c9 Mon Sep 17 00:00:00 2001 From: Saurabh Shah Date: Tue, 1 Aug 2017 13:54:21 -0700 Subject: [PATCH] sync: store the num_fences from first SYNC_IOC_FILE_INFO Fixes a bug with the signal time of devices using the modern sync file interface. The bug only affects kernels running an Android kernel 4.9 and later. b/63395253 Test: tests/sync_test.cpp Change-Id: I6fb00bcb8e16a3268c357153edd8e35a44546caa --- libsync/sync.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libsync/sync.c b/libsync/sync.c index e65765894..6b187faed 100644 --- a/libsync/sync.c +++ b/libsync/sync.c @@ -217,6 +217,8 @@ static struct sync_file_info *modern_sync_file_info(int fd) local_info.num_fences * sizeof(struct sync_fence_info)); if (!info) return NULL; + + info->num_fences = local_info.num_fences; info->sync_fence_info = (__u64)(uintptr_t)(info + 1); err = ioctl(fd, SYNC_IOC_FILE_INFO, info);