genevent 0.8
[lttv.git] / ltt / branches / poly / lttd / lttd.c
index 6da2924292581e44a66b37f1e870f6f09caba348..4f5f4bc421d19d27a24b273d028a7bf53b5641ea 100644 (file)
@@ -311,7 +311,8 @@ int read_subbuffer(struct fd_pair *pair)
        }
        
        err = TEMP_FAILURE_RETRY(write(pair->trace,
-                               pair->mmap + (consumed_old & (~(pair->subbuf_size-1))),
+                               pair->mmap 
+                                       + (consumed_old & ((pair->n_subbufs * pair->subbuf_size)-1)),
                                pair->subbuf_size));
 
        if(err < 0) {
@@ -329,6 +330,7 @@ write_error:
                        ret = -EFAULT;
                } else if(errno == -EIO) {
                        perror("Reader has been pushed by the writer, last subbuffer corrupted.");
+                       /* FIXME : we may delete the last written buffer if we wish. */
                        ret = -EIO;
                }
                goto get_error;
This page took 0.024955 seconds and 4 git commands to generate.