Loading libion/ion.c +5 −5 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ int ion_is_legacy(int fd) { int ion_open() { int fd = open("/dev/ion", O_RDONLY | O_CLOEXEC); if (fd < 0) ALOGE("open /dev/ion failed!\n"); if (fd < 0) ALOGE("open /dev/ion failed: %s", strerror(errno)); return fd; } Loading @@ -69,7 +69,7 @@ int ion_close(int fd) { static int ion_ioctl(int fd, int req, void* arg) { int ret = ioctl(fd, req, arg); if (ret < 0) { ALOGE("ioctl %x failed with code %d: %s\n", req, ret, strerror(errno)); ALOGE("ioctl %x failed with code %d: %s", req, ret, strerror(errno)); return -errno; } return ret; Loading Loading @@ -115,12 +115,12 @@ int ion_map(int fd, ion_user_handle_t handle, size_t length, int prot, int flags ret = ion_ioctl(fd, ION_IOC_MAP, &data); if (ret < 0) return ret; if (data.fd < 0) { ALOGE("map ioctl returned negative fd\n"); ALOGE("map ioctl returned negative fd"); return -EINVAL; } tmp_ptr = mmap(NULL, length, prot, flags, data.fd, offset); if (tmp_ptr == MAP_FAILED) { ALOGE("mmap failed: %s\n", strerror(errno)); ALOGE("mmap failed: %s", strerror(errno)); return -errno; } *map_fd = data.fd; Loading @@ -140,7 +140,7 @@ int ion_share(int fd, ion_user_handle_t handle, int* share_fd) { ret = ion_ioctl(fd, ION_IOC_SHARE, &data); if (ret < 0) return ret; if (data.fd < 0) { ALOGE("share ioctl returned negative fd\n"); ALOGE("share ioctl returned negative fd"); return -EINVAL; } *share_fd = data.fd; Loading liblog/logger_write.c +15 −4 Original line number Diff line number Diff line Loading @@ -243,7 +243,7 @@ static inline uint32_t get4LE(const uint8_t* src) { static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) { struct android_log_transport_write* node; int ret; int ret, save_errno; struct timespec ts; size_t len, i; Loading @@ -254,20 +254,24 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) return -EINVAL; } save_errno = errno; #if defined(__ANDROID__) clock_gettime(android_log_clockid(), &ts); if (log_id == LOG_ID_SECURITY) { if (vec[0].iov_len < 4) { errno = save_errno; return -EINVAL; } ret = check_log_uid_permissions(); if (ret < 0) { errno = save_errno; return ret; } if (!__android_log_security()) { /* If only we could reset downstream logd counter */ errno = save_errno; return -EPERM; } } else if (log_id == LOG_ID_EVENTS || log_id == LOG_ID_STATS) { Loading @@ -276,6 +280,7 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) EventTagMap *m, *f; if (vec[0].iov_len < 4) { errno = save_errno; return -EINVAL; } Loading Loading @@ -311,6 +316,7 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) android_closeEventTagMap(f); } if (!ret) { errno = save_errno; return -EPERM; } } else { Loading Loading @@ -340,6 +346,7 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) } if (!__android_log_is_loggable_len(prio, tag, len - 1, ANDROID_LOG_VERBOSE)) { errno = save_errno; return -EPERM; } } Loading Loading @@ -371,21 +378,23 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) } } errno = save_errno; return ret; } static int __write_to_log_init(log_id_t log_id, struct iovec* vec, size_t nr) { int ret, save_errno = errno; __android_log_lock(); if (write_to_log == __write_to_log_init) { int ret; ret = __write_to_log_initialize(); if (ret < 0) { __android_log_unlock(); if (!list_empty(&__android_log_persist_write)) { __write_to_log_daemon(log_id, vec, nr); } errno = save_errno; return ret; } Loading @@ -394,7 +403,9 @@ static int __write_to_log_init(log_id_t log_id, struct iovec* vec, size_t nr) { __android_log_unlock(); return write_to_log(log_id, vec, nr); ret = write_to_log(log_id, vec, nr); errno = save_errno; return ret; } LIBLOG_ABI_PUBLIC int __android_log_write(int prio, const char* tag, Loading Loading
libion/ion.c +5 −5 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ int ion_is_legacy(int fd) { int ion_open() { int fd = open("/dev/ion", O_RDONLY | O_CLOEXEC); if (fd < 0) ALOGE("open /dev/ion failed!\n"); if (fd < 0) ALOGE("open /dev/ion failed: %s", strerror(errno)); return fd; } Loading @@ -69,7 +69,7 @@ int ion_close(int fd) { static int ion_ioctl(int fd, int req, void* arg) { int ret = ioctl(fd, req, arg); if (ret < 0) { ALOGE("ioctl %x failed with code %d: %s\n", req, ret, strerror(errno)); ALOGE("ioctl %x failed with code %d: %s", req, ret, strerror(errno)); return -errno; } return ret; Loading Loading @@ -115,12 +115,12 @@ int ion_map(int fd, ion_user_handle_t handle, size_t length, int prot, int flags ret = ion_ioctl(fd, ION_IOC_MAP, &data); if (ret < 0) return ret; if (data.fd < 0) { ALOGE("map ioctl returned negative fd\n"); ALOGE("map ioctl returned negative fd"); return -EINVAL; } tmp_ptr = mmap(NULL, length, prot, flags, data.fd, offset); if (tmp_ptr == MAP_FAILED) { ALOGE("mmap failed: %s\n", strerror(errno)); ALOGE("mmap failed: %s", strerror(errno)); return -errno; } *map_fd = data.fd; Loading @@ -140,7 +140,7 @@ int ion_share(int fd, ion_user_handle_t handle, int* share_fd) { ret = ion_ioctl(fd, ION_IOC_SHARE, &data); if (ret < 0) return ret; if (data.fd < 0) { ALOGE("share ioctl returned negative fd\n"); ALOGE("share ioctl returned negative fd"); return -EINVAL; } *share_fd = data.fd; Loading
liblog/logger_write.c +15 −4 Original line number Diff line number Diff line Loading @@ -243,7 +243,7 @@ static inline uint32_t get4LE(const uint8_t* src) { static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) { struct android_log_transport_write* node; int ret; int ret, save_errno; struct timespec ts; size_t len, i; Loading @@ -254,20 +254,24 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) return -EINVAL; } save_errno = errno; #if defined(__ANDROID__) clock_gettime(android_log_clockid(), &ts); if (log_id == LOG_ID_SECURITY) { if (vec[0].iov_len < 4) { errno = save_errno; return -EINVAL; } ret = check_log_uid_permissions(); if (ret < 0) { errno = save_errno; return ret; } if (!__android_log_security()) { /* If only we could reset downstream logd counter */ errno = save_errno; return -EPERM; } } else if (log_id == LOG_ID_EVENTS || log_id == LOG_ID_STATS) { Loading @@ -276,6 +280,7 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) EventTagMap *m, *f; if (vec[0].iov_len < 4) { errno = save_errno; return -EINVAL; } Loading Loading @@ -311,6 +316,7 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) android_closeEventTagMap(f); } if (!ret) { errno = save_errno; return -EPERM; } } else { Loading Loading @@ -340,6 +346,7 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) } if (!__android_log_is_loggable_len(prio, tag, len - 1, ANDROID_LOG_VERBOSE)) { errno = save_errno; return -EPERM; } } Loading Loading @@ -371,21 +378,23 @@ static int __write_to_log_daemon(log_id_t log_id, struct iovec* vec, size_t nr) } } errno = save_errno; return ret; } static int __write_to_log_init(log_id_t log_id, struct iovec* vec, size_t nr) { int ret, save_errno = errno; __android_log_lock(); if (write_to_log == __write_to_log_init) { int ret; ret = __write_to_log_initialize(); if (ret < 0) { __android_log_unlock(); if (!list_empty(&__android_log_persist_write)) { __write_to_log_daemon(log_id, vec, nr); } errno = save_errno; return ret; } Loading @@ -394,7 +403,9 @@ static int __write_to_log_init(log_id_t log_id, struct iovec* vec, size_t nr) { __android_log_unlock(); return write_to_log(log_id, vec, nr); ret = write_to_log(log_id, vec, nr); errno = save_errno; return ret; } LIBLOG_ABI_PUBLIC int __android_log_write(int prio, const char* tag, Loading