<feed xmlns='http://www.w3.org/2005/Atom'>
<title>replicant/core/libsync/sync.c, branch master</title>
<subtitle>Patches not merged yet, used for building and testing them
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/'/>
<entry>
<title>Merge "libsync: Fix a double-free." am: 16dd491aac am: 12f6c4809e</title>
<updated>2017-09-07T22:00:13+00:00</updated>
<author>
<name>George Burgess IV</name>
<email>gbiv@google.com</email>
</author>
<published>2017-09-07T22:00:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=ce61cde6d84fadf239d1f33104e536728253c60f'/>
<id>ce61cde6d84fadf239d1f33104e536728253c60f</id>
<content type='text'>
am: 614fc323ff

Change-Id: I4f19d7b30e1218a1ec5d51570c273b5e2dcfd522
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
am: 614fc323ff

Change-Id: I4f19d7b30e1218a1ec5d51570c273b5e2dcfd522
</pre>
</div>
</content>
</entry>
<entry>
<title>libsync: Fix a double-free.</title>
<updated>2017-09-05T23:26:36+00:00</updated>
<author>
<name>George Burgess IV</name>
<email>gbiv@google.com</email>
</author>
<published>2017-09-05T23:26:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=4ff5ff29d26cd028d5d78f5b764dab380fd7c9f4'/>
<id>4ff5ff29d26cd028d5d78f5b764dab380fd7c9f4</id>
<content type='text'>
sync_file_info, the only caller of legacy_fence_info_to_sync_file_info,
unconditionally frees legacy_info after
legacy_fence_info_to_sync_file_info is called. So, if this calloc
fails, we'll end up freeing legacy_info twice.

Bug: 27101951
Test: mma. Static analyzer complaint about double-free is gone.
Change-Id: I43bf820af9aadf30cb8eabce57416f69a8fccf89
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
sync_file_info, the only caller of legacy_fence_info_to_sync_file_info,
unconditionally frees legacy_info after
legacy_fence_info_to_sync_file_info is called. So, if this calloc
fails, we'll end up freeing legacy_info twice.

Bug: 27101951
Test: mma. Static analyzer complaint about double-free is gone.
Change-Id: I43bf820af9aadf30cb8eabce57416f69a8fccf89
</pre>
</div>
</content>
</entry>
<entry>
<title>sync: store the num_fences from first SYNC_IOC_FILE_INFO</title>
<updated>2017-08-01T21:05:33+00:00</updated>
<author>
<name>Saurabh Shah</name>
<email>saurshah@quicinc.com</email>
</author>
<published>2017-08-01T20:54:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=cad5925fc93803b3775896a7523648d18216ea3b'/>
<id>cad5925fc93803b3775896a7523648d18216ea3b</id>
<content type='text'>
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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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
</pre>
</div>
</content>
</entry>
<entry>
<title>sync: Cache knowledge of kernel uapi version</title>
<updated>2017-03-09T01:34:14+00:00</updated>
<author>
<name>Jesse Hall</name>
<email>jessehall@google.com</email>
</author>
<published>2017-02-19T05:51:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=6cd0fc56c0a2cb8fdf897f49f013f86dc698d793'/>
<id>6cd0fc56c0a2cb8fdf897f49f013f86dc698d793</id>
<content type='text'>
Previously all libsync calls would try first the modern/mainline uapi
and if that failed try the legacy uapi, or vice versa. This is
inefficient, and confusing when looking at strace. With this change,
after the first successful syscall, libsync know's what uapi version
the kernel supports, and will only try that version in the future.

Test: sync-unit-tests on bullhead
Change-Id: I8b5de0194da0cfc6c080c0180318e16bb673d3c9
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously all libsync calls would try first the modern/mainline uapi
and if that failed try the legacy uapi, or vice versa. This is
inefficient, and confusing when looking at strace. With this change,
after the first successful syscall, libsync know's what uapi version
the kernel supports, and will only try that version in the future.

Test: sync-unit-tests on bullhead
Change-Id: I8b5de0194da0cfc6c080c0180318e16bb673d3c9
</pre>
</div>
</content>
</entry>
<entry>
<title>sync: rename sync/sync.h to android/sync.h</title>
<updated>2017-02-24T02:44:50+00:00</updated>
<author>
<name>Jesse Hall</name>
<email>jessehall@google.com</email>
</author>
<published>2017-02-13T23:19:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=41129a2526d4a8bc3510bc65c0e39e1e9d4700d2'/>
<id>41129a2526d4a8bc3510bc65c0e39e1e9d4700d2</id>
<content type='text'>
Leave a temporary symlink from the old name to avoid having to change
all dependencies simultaneously.

Bug: 1901466
Test: m
Change-Id: Id210f0091457e52e1a6e048d241a723bdbe8779b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Leave a temporary symlink from the old name to avoid having to change
all dependencies simultaneously.

Bug: 1901466
Test: m
Change-Id: Id210f0091457e52e1a6e048d241a723bdbe8779b
</pre>
</div>
</content>
</entry>
<entry>
<title>sync: move declarations from sync/sync.h to sync.c</title>
<updated>2017-02-24T02:44:50+00:00</updated>
<author>
<name>Jesse Hall</name>
<email>jessehall@google.com</email>
</author>
<published>2017-02-13T00:42:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=b7fdb2a1284143b8cee11483646b8753262ad165'/>
<id>b7fdb2a1284143b8cee11483646b8753262ad165</id>
<content type='text'>
None of these should be needed or used outside of sync.c.

Test: lunch bullhead-eng ; m
Change-Id: I548a499d0e2ada2ab4987e63a8116327c3be0076
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
None of these should be needed or used outside of sync.c.

Test: lunch bullhead-eng ; m
Change-Id: I548a499d0e2ada2ab4987e63a8116327c3be0076
</pre>
</div>
</content>
</entry>
<entry>
<title>sync: implement sync_file_info</title>
<updated>2017-02-24T02:44:50+00:00</updated>
<author>
<name>Jesse Hall</name>
<email>jessehall@google.com</email>
</author>
<published>2017-02-13T00:32:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=836661616fcf4bc023b192d1c320f0727a9dfef9'/>
<id>836661616fcf4bc023b192d1c320f0727a9dfef9</id>
<content type='text'>
Also modifies sync-unit-test to use sync_file_info instead of the
deprecated sync_fence_info, but check that they match in several tests.

Bug: 35138793
Test: sync-unit-tests on bullhead
Change-Id: Ic672d1c89798435a8b71469500e82c770a66bf4d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also modifies sync-unit-test to use sync_file_info instead of the
deprecated sync_fence_info, but check that they match in several tests.

Bug: 35138793
Test: sync-unit-tests on bullhead
Change-Id: Ic672d1c89798435a8b71469500e82c770a66bf4d
</pre>
</div>
</content>
</entry>
<entry>
<title>sync: refactor sync_fence_info</title>
<updated>2017-02-24T02:44:50+00:00</updated>
<author>
<name>Jesse Hall</name>
<email>jessehall@google.com</email>
</author>
<published>2017-02-13T00:17:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=89530820d7f5837f00f3f04e18dfa05c7506eb68'/>
<id>89530820d7f5837f00f3f04e18dfa05c7506eb68</id>
<content type='text'>
Split the sync_fence_info implementation into multiple functions. This
clarifies the logic, and allows the parts to be reused in the upcoming
sync_file_info function.

Test: sync-unit-tests on bullhead
Change-Id: I0ea37067dddf41b831670f08eb99e0b7fd52adce
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Split the sync_fence_info implementation into multiple functions. This
clarifies the logic, and allows the parts to be reused in the upcoming
sync_file_info function.

Test: sync-unit-tests on bullhead
Change-Id: I0ea37067dddf41b831670f08eb99e0b7fd52adce
</pre>
</div>
</content>
</entry>
<entry>
<title>sync: Use correct type in size calculation</title>
<updated>2017-02-24T02:44:50+00:00</updated>
<author>
<name>Jesse Hall</name>
<email>jessehall@google.com</email>
</author>
<published>2017-02-13T00:01:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=077ffd5055538e79d20fb5de964083cfbe10dc3f'/>
<id>077ffd5055538e79d20fb5de964083cfbe10dc3f</id>
<content type='text'>
The previous and current types are the same size, so this wouldn't
have caused a bug in practice, but it is confusing, and would have
been a problem in the unlikely event we changed the size of one of the
types.

Test: sync-unit-tests on bullhead
Change-Id: Ic43b81f3b4ff214af86b6b6d4d02c648f95d0c4b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The previous and current types are the same size, so this wouldn't
have caused a bug in practice, but it is confusing, and would have
been a problem in the unlikely event we changed the size of one of the
types.

Test: sync-unit-tests on bullhead
Change-Id: Ic43b81f3b4ff214af86b6b6d4d02c648f95d0c4b
</pre>
</div>
</content>
</entry>
<entry>
<title>libsync: add support to new Sync API</title>
<updated>2017-01-17T22:29:01+00:00</updated>
<author>
<name>Gustavo Padovan</name>
<email>gustavo.padovan@collabora.com</email>
</author>
<published>2016-06-11T14:11:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/contrib/GNUtoo/replicant/core/commit/?id=61ab0d74d218d0be32d0cab1c7ee22c5e12216fe'/>
<id>61ab0d74d218d0be32d0cab1c7ee22c5e12216fe</id>
<content type='text'>
Change libsync functions in a way that it can run dynamically on both
APIs.

v2: fix whitespace changes and poll return handling

v3: handle error cases on sync_wait()

Test: Sync unit tests still passes.
Change-Id: I743ab92ce39cbfa75dca41dd0a435efa9f2aab66
hange-Id: Ib56f2c6441b41028bc9f66998676790b7713988a
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change libsync functions in a way that it can run dynamically on both
APIs.

v2: fix whitespace changes and poll return handling

v3: handle error cases on sync_wait()

Test: Sync unit tests still passes.
Change-Id: I743ab92ce39cbfa75dca41dd0a435efa9f2aab66
hange-Id: Ib56f2c6441b41028bc9f66998676790b7713988a
</pre>
</div>
</content>
</entry>
</feed>
