Convert aos over to flatbuffers
Everything builds, and all the tests pass. I suspect that some entries
are missing from the config files, but those will be found pretty
quickly on startup.
There is no logging or live introspection of queue messages.
Change-Id: I496ee01ed68f202c7851bed7e8786cee30df29f5
diff --git a/aos/ipc_lib/queue.cc b/aos/ipc_lib/queue.cc
index 5b6a0fa..3b6e5a1 100644
--- a/aos/ipc_lib/queue.cc
+++ b/aos/ipc_lib/queue.cc
@@ -172,7 +172,7 @@
MessageHeader *header = __atomic_load_n(&free_messages_, __ATOMIC_RELAXED);
do {
if (__builtin_expect(header == nullptr, 0)) {
- AOS_LOG(FATAL, "overused pool of queue %p (%s)\n", this, name_);
+ LOG(FATAL) << "overused pool of queue " << this << " (" << name_ << ")";
}
} while (__builtin_expect(
!__atomic_compare_exchange_n(&free_messages_, &header, header->next, true,
@@ -195,10 +195,8 @@
static_assert((sizeof(RawQueue::MessageHeader) % 8) == 0,
"need to revalidate size/alignent assumptions");
- if (queue_length < 1) {
- AOS_LOG(FATAL, "queue length %d of %s needs to be at least 1\n",
- queue_length, name);
- }
+ CHECK_GE(queue_length, 1) << ": queue length " << queue_length << " of "
+ << name << " needs to be at least 1";
const size_t name_size = strlen(name) + 1;
char *temp = static_cast<char *>(shm_malloc(name_size));
@@ -249,8 +247,8 @@
printf("fetching queue %s\n", name);
}
if (mutex_lock(&global_core->mem_struct->queues.lock) != 0) {
- AOS_LOG(FATAL, "mutex_lock(%p) failed\n",
- &global_core->mem_struct->queues.lock);
+ LOG(FATAL) << "mutex_lock(" << &global_core->mem_struct->queues.lock
+ << ") failed";
}
RawQueue *current =
static_cast<RawQueue *>(global_core->mem_struct->queues.pointer);
@@ -302,14 +300,14 @@
bool RawQueue::DoWriteMessage(void *msg, Options<RawQueue> options) {
if (kWriteDebug) {
- printf("queue: %p->WriteMessage(%p, %x)\n", this, msg, options.printable());
+ printf("queue: %p->WriteMessage(%p, %x), len :%zu\n", this, msg, options.printable(), msg_length_);
}
bool signal_readable;
{
IPCMutexLocker locker(&data_lock_);
- AOS_CHECK(!locker.owner_died());
+ CHECK(!locker.owner_died());
int new_end;
while (true) {
@@ -334,7 +332,7 @@
if (kWriteDebug) {
printf("queue: going to wait for writable_ of %p\n", this);
}
- AOS_CHECK(!writable_.Wait());
+ CHECK(!writable_.Wait());
}
}
data_[data_end_] = msg;
@@ -390,7 +388,7 @@
if (wait_result == Condition::WaitResult::kOk) {
break;
}
- AOS_CHECK(wait_result != Condition::WaitResult::kOwnerDied);
+ CHECK(wait_result != Condition::WaitResult::kOwnerDied);
if (wait_result == Condition::WaitResult::kTimeout) {
return false;
}
@@ -427,7 +425,7 @@
void *msg = NULL;
IPCMutexLocker locker(&data_lock_);
- AOS_CHECK(!locker.owner_died());
+ CHECK(!locker.owner_died());
if (!ReadCommonStart(options, nullptr, chrono::nanoseconds(0))) {
if (kReadDebug) {
@@ -490,7 +488,7 @@
void *msg = NULL;
IPCMutexLocker locker(&data_lock_);
- AOS_CHECK(!locker.owner_died());
+ CHECK(!locker.owner_died());
if (!ReadCommonStart(options, index, timeout)) {
if (kReadDebug) {