+ printf("Finding end of current data...\n"); flush();
+ /* Find end of data */
+ ao_log_end_pos = ao_storage_config;
+ for (ao_log_current_pos = 0;
+ ao_log_current_pos < ao_storage_config;
+ ao_log_current_pos += ao_storage_block)
+ {
+ printf("reading %ld\n", ao_log_current_pos); flush();
+ if (!ao_log_telescience_read(ao_log_current_pos))
+ break;
+ }
+ printf("last block is at %ld\n", ao_log_current_pos); flush();
+ if (ao_log_current_pos > 0) {
+ ao_log_current_pos -= ao_storage_block;
+ for (; ao_log_current_pos < ao_storage_config;
+ ao_log_current_pos += sizeof (struct ao_log_telescience))
+ {
+ if (!ao_log_telescience_read(ao_log_current_pos))
+ break;
+ }
+ }
+ printf("Logging will start at %ld\n", ao_log_current_pos); flush();