1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125 | diff -Nru libhybris-0.1.0+git20131207+e452e83/debian/changelog libhybris-0.1.0+git20131207+e452e83/debian/changelog
--- libhybris-0.1.0+git20131207+e452e83/debian/changelog 2015-03-12 01:28:52.000000000 -0300
+++ libhybris-0.1.0+git20131207+e452e83/debian/changelog 2015-03-16 16:01:39.000000000 -0300
@@ -1,3 +1,10 @@
+libhybris (0.1.0+git20131207+e452e83-0ubuntu38) vivid; urgency=medium
+
+ * Reverting switch to CLOCK_MONOTONIC_RAW as that caused a regression
+ when recording videos with krillin
+
+ -- Ricardo Salveti de Araujo <ricardo.salveti@canonical.com> Mon, 16 Mar 2015 15:59:00 -0300
+
libhybris (0.1.0+git20131207+e452e83-0ubuntu37) vivid; urgency=medium
* Backporting fixes from upstream before doing a new rebase:
diff -Nru libhybris-0.1.0+git20131207+e452e83/debian/patches/debian-changes libhybris-0.1.0+git20131207+e452e83/debian/patches/debian-changes
--- libhybris-0.1.0+git20131207+e452e83/debian/patches/debian-changes 2015-03-12 01:29:06.000000000 -0300
+++ libhybris-0.1.0+git20131207+e452e83/debian/patches/debian-changes 2015-03-16 16:01:56.000000000 -0300
@@ -158,6 +158,14 @@
===================================================================
Index: libhybris-0.1.0+git20131207+e452e83/hybris/wifi/wifi.c
===================================================================
+Index: libhybris-0.1.0+git20131207+e452e83/hybris/common/Makefile.am
+===================================================================
+Index: libhybris-0.1.0+git20131207+e452e83/hybris/common/sysconf.c
+===================================================================
+Index: libhybris-0.1.0+git20131207+e452e83/hybris/egl/egl.c
+===================================================================
+Index: libhybris-0.1.0+git20131207+e452e83/hybris/glesv2/glesv2.c
+===================================================================
--- /dev/null
+++ libhybris-0.1.0+git20131207+e452e83/compat/Android.common.mk
@@ -0,0 +1,10 @@
@@ -9153,17 +9161,7 @@
static void hybris_set_mutex_attr(unsigned int android_value, pthread_mutexattr_t *attr)
{
/* Init already sets as PTHREAD_MUTEX_NORMAL */
-@@ -495,8 +559,7 @@ static int my_pthread_mutex_lock_timeout
- *((int *)__mutex) = (int) realmutex;
- }
-
-- /* TODO: Android uses CLOCK_MONOTONIC here but I am not sure which one to use */
-- clock_gettime(CLOCK_REALTIME, &tv);
-+ clock_gettime(CLOCK_MONOTONIC_RAW, &tv);
- tv.tv_sec += __msecs/1000;
- tv.tv_nsec += (__msecs % 1000) * 1000000;
- if (tv.tv_nsec >= 1000000000) {
-@@ -577,8 +640,8 @@ static int my_pthread_cond_broadcast(pth
+@@ -577,8 +641,8 @@ static int my_pthread_cond_broadcast(pth
{
unsigned int value = (*(unsigned int *) cond);
if (hybris_check_android_shared_cond(value)) {
@@ -9174,7 +9172,7 @@
}
pthread_cond_t *realcond = (pthread_cond_t *) value;
-@@ -598,8 +661,8 @@ static int my_pthread_cond_signal(pthrea
+@@ -598,8 +662,8 @@ static int my_pthread_cond_signal(pthrea
unsigned int value = (*(unsigned int *) cond);
if (hybris_check_android_shared_cond(value)) {
@@ -9185,18 +9183,7 @@
}
pthread_cond_t *realcond = (pthread_cond_t *) value;
-@@ -712,9 +775,8 @@ static int my_pthread_cond_timedwait_rel
- *((unsigned int *) mutex) = (unsigned int) realmutex;
- }
-
-- /* TODO: Android uses CLOCK_MONOTONIC here but I am not sure which one to use */
- struct timespec tv;
-- clock_gettime(CLOCK_REALTIME, &tv);
-+ clock_gettime(CLOCK_MONOTONIC_RAW, &tv);
- tv.tv_sec += reltime->tv_sec;
- tv.tv_nsec += reltime->tv_nsec;
- if (tv.tv_nsec >= 1000000000) {
-@@ -1175,38 +1237,43 @@ static int my_setlinebuf(FILE *fp)
+@@ -1175,38 +1239,43 @@ static int my_setlinebuf(FILE *fp)
return 0;
}
@@ -9268,7 +9255,7 @@
FP_ATTRIB static double my_strtod(const char *nptr, char **endptr)
{
if (locale_inited == 0)
-@@ -1217,6 +1284,56 @@ FP_ATTRIB static double my_strtod(const
+@@ -1217,6 +1286,56 @@ FP_ATTRIB static double my_strtod(const
return strtod_l(nptr, endptr, hybris_locale);
}
@@ -9325,7 +9312,7 @@
extern int __cxa_atexit(void (*)(void*), void*, void*);
static struct _hook hooks[] = {
-@@ -1307,7 +1424,7 @@ static struct _hook hooks[] = {
+@@ -1307,7 +1426,7 @@ static struct _hook hooks[] = {
{"pthread_mutex_lock_timeout_np", my_pthread_mutex_lock_timeout_np},
{"pthread_mutexattr_init", pthread_mutexattr_init},
{"pthread_mutexattr_destroy", pthread_mutexattr_destroy},
@@ -9334,7 +9321,7 @@
{"pthread_mutexattr_settype", pthread_mutexattr_settype},
{"pthread_mutexattr_getpshared", pthread_mutexattr_getpshared},
{"pthread_mutexattr_setpshared", my_pthread_mutexattr_setpshared},
-@@ -1347,7 +1464,7 @@ static struct _hook hooks[] = {
+@@ -1347,7 +1466,7 @@ static struct _hook hooks[] = {
{"pthread_attr_setguardsize", my_pthread_attr_setguardsize},
{"pthread_attr_getguardsize", my_pthread_attr_getguardsize},
{"pthread_attr_setscope", my_pthread_attr_setscope},
@@ -9343,7 +9330,7 @@
{"pthread_getattr_np", my_pthread_getattr_np},
{"pthread_rwlockattr_init", my_pthread_rwlockattr_init},
{"pthread_rwlockattr_destroy", my_pthread_rwlockattr_destroy},
-@@ -1422,7 +1539,8 @@ static struct _hook hooks[] = {
+@@ -1422,7 +1541,8 @@ static struct _hook hooks[] = {
{"__errno", __errno_location},
{"__set_errno", my_set_errno},
/* net specifics, to avoid __res_get_state */
@@ -9353,7 +9340,7 @@
{"gethostbyaddr", gethostbyaddr},
{"gethostbyname", gethostbyname},
{"gethostbyname2", gethostbyname2},
-@@ -1449,21 +1567,43 @@ static struct _hook hooks[] = {
+@@ -1449,21 +1569,43 @@ static struct _hook hooks[] = {
/* grp.h */
{"getgrgid", getgrgid},
{"__cxa_atexit", __cxa_atexit},
|