bool                    no_buildid;
        bool                    no_buildid_cache;
        long                    samples;
-       off_t                   post_processing_offset;
 };
 
 static int write_output(struct perf_record *rec, void *buf, size_t size)
 {
        struct perf_data_file *file  = &rec->file;
        struct perf_session *session = rec->session;
+       u64 start = session->header.data_offset;
 
        u64 size = lseek(file->fd, 0, SEEK_CUR);
        if (size == 0)
                return 0;
 
-       return __perf_session__process_events(session, rec->post_processing_offset,
-                                             size - rec->post_processing_offset,
+       return __perf_session__process_events(session, start,
+                                             size - start,
                                              size, &build_id__mark_dso_hit_ops);
 }
 
                goto out_delete_session;
        }
 
-       rec->post_processing_offset = lseek(file->fd, 0, SEEK_CUR);
-
        machine = &session->machines.host;
 
        if (file->is_pipe) {