Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
[pandora-kernel.git] / tools / perf / util / python.c
index b5c7d81..a9ac050 100644 (file)
@@ -674,7 +674,8 @@ static PyObject *pyrf_evlist__read_on_cpu(struct pyrf_evlist *pevlist,
        struct perf_evlist *evlist = &pevlist->evlist;
        union perf_event *event;
        int sample_id_all = 1, cpu;
-       static char *kwlist[] = {"sample_id_all", NULL, NULL};
+       static char *kwlist[] = {"cpu", "sample_id_all", NULL, NULL};
+       int err;
 
        if (!PyArg_ParseTupleAndKeywords(args, kwargs, "i|i", kwlist,
                                         &cpu, &sample_id_all))
@@ -690,8 +691,12 @@ static PyObject *pyrf_evlist__read_on_cpu(struct pyrf_evlist *pevlist,
                        return PyErr_NoMemory();
 
                first = list_entry(evlist->entries.next, struct perf_evsel, node);
-               perf_event__parse_sample(event, first->attr.sample_type, sample_id_all,
-                                        &pevent->sample);
+               err = perf_event__parse_sample(event, first->attr.sample_type,
+                                              perf_evsel__sample_size(first),
+                                              sample_id_all, &pevent->sample);
+               if (err)
+                       return PyErr_Format(PyExc_OSError,
+                                           "perf: can't parse sample, err=%d", err);
                return pyevent;
        }