diff options
Diffstat (limited to 'perf')
2 files changed, 7 insertions, 3 deletions
diff --git a/perf/org.eclipse.linuxtools.perf.tests/src/org/eclipse/linuxtools/internal/perf/tests/DataManipulatorTest.java b/perf/org.eclipse.linuxtools.perf.tests/src/org/eclipse/linuxtools/internal/perf/tests/DataManipulatorTest.java index d282d3c674..9f6d7b846e 100644 --- a/perf/org.eclipse.linuxtools.perf.tests/src/org/eclipse/linuxtools/internal/perf/tests/DataManipulatorTest.java +++ b/perf/org.eclipse.linuxtools.perf.tests/src/org/eclipse/linuxtools/internal/perf/tests/DataManipulatorTest.java @@ -38,7 +38,7 @@ public class DataManipulatorTest { "disassembly data", path); //$NON-NLS-1$ sdData.parse(); - String expected = "perf annotate -i " + path.toOSString() + "perf.data"; //$NON-NLS-1$ + String expected = "sh -c perf annotate -i " + path.toOSString() + "perf.data < /dev/null"; //$NON-NLS-1$ assertEquals(expected, sdData.getPerfData().trim()); } diff --git a/perf/org.eclipse.linuxtools.perf/src/org/eclipse/linuxtools/internal/perf/SourceDisassemblyData.java b/perf/org.eclipse.linuxtools.perf/src/org/eclipse/linuxtools/internal/perf/SourceDisassemblyData.java index e63da557c1..1d3109def3 100644 --- a/perf/org.eclipse.linuxtools.perf/src/org/eclipse/linuxtools/internal/perf/SourceDisassemblyData.java +++ b/perf/org.eclipse.linuxtools.perf/src/org/eclipse/linuxtools/internal/perf/SourceDisassemblyData.java @@ -46,8 +46,12 @@ public class SourceDisassemblyData extends AbstractDataManipulator { } protected String [] getCommand(String workingDir) { - return new String[] { "perf", "annotate", //$NON-NLS-1$ //$NON-NLS-2$ - "-i", workingDir + "perf.data" }; //$NON-NLS-1$ //$NON-NLS-2$ + /* + * Some versions of perf annotate hangs waiting for some input that never comes. + * Redirecting an empty file or /dev/null to its input will avoid this. + */ + return new String[] { "sh", "-c", "perf annotate -i " + workingDir + "perf.data" + //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ + " < /dev/null" }; //$NON-NLS-1$ } }
\ No newline at end of file |