diff options
Diffstat (limited to 'meta')
| -rw-r--r-- | meta/lib/oeqa/runtime/parselogs.py | 64 |
1 files changed, 56 insertions, 8 deletions
diff --git a/meta/lib/oeqa/runtime/parselogs.py b/meta/lib/oeqa/runtime/parselogs.py index 4d4a21b12f..604a29a21c 100644 --- a/meta/lib/oeqa/runtime/parselogs.py +++ b/meta/lib/oeqa/runtime/parselogs.py | |||
| @@ -6,12 +6,53 @@ from oeqa.utils.decorators import * | |||
| 6 | #in the future these lists could be moved outside of module | 6 | #in the future these lists could be moved outside of module |
| 7 | errors = ["error", "cannot", "can\'t", "failed"] | 7 | errors = ["error", "cannot", "can\'t", "failed"] |
| 8 | 8 | ||
| 9 | ignore_errors = { 'genericx86-64': ['mmci-pl18x', 'error changing net interface name', 'dma timeout'], \ | 9 | common_errors = [ |
| 10 | 'genericx86': ['mmci-pl18x', 'error changing net interface name', 'dma timeout', 'AE_ALREADY_EXISTS'], \ | 10 | '(WW) warning, (EE) error, (NI) not implemented, (??) unknown.', |
| 11 | 'emenlow': ['mmci-pl18x', 'error changing net interface name', 'dma timeout', 'AE_ALREADY_EXISTS', '\[drm:psb_do_init\] \*ERROR\* Debug is'], \ | 11 | 'dma timeout', |
| 12 | 'crownbay': ['mmci-pl18x', 'error changing net interface name', 'dma timeout', 'AE_ALREADY_EXISTS', 'Could not enable PowerButton event', 'probe of LNXPWRBN:00 failed with error -22'], \ | 12 | ] |
| 13 | 'qemuarm': ['mmci-pl18x', 'error changing net interface name', 'dma timeout', 'mmci-pl18x: probe of fpga:[0-f][0-f] failed with error -38', 'wrong ELF class', 'Fast TSC calibration', 'AE_NOT_FOUND', 'Open ACPI failed', 'Failed to load module "glx"', '\(EE\) error', 'perfctr msr \(MSR c1 is 0\)', 'MMCONFIG information'], \ | 13 | |
| 14 | 'qemux86-64': ['mmci-pl18x', 'error changing net interface name', 'dma timeout', 'wrong ELF class', 'Fast TSC calibration', 'AE_NOT_FOUND', 'Open ACPI failed', 'Failed to load module "glx"', '\(EE\) error', 'perfctr msr \(MSR c1 is 0\)', 'MMCONFIG information'] } | 14 | x86_common = [ |
| 15 | '[drm:psb_do_init] *ERROR* Debug is', | ||
| 16 | 'wrong ELF class', | ||
| 17 | 'Could not enable PowerButton event', | ||
| 18 | 'probe of LNXPWRBN:00 failed with error -22', | ||
| 19 | ] + common_errors | ||
| 20 | |||
| 21 | qemux86_common = [ | ||
| 22 | 'Fast TSC calibration', | ||
| 23 | '_OSC failed (AE_NOT_FOUND); disabling ASPM', | ||
| 24 | 'Open ACPI failed (/var/run/acpid.socket) (No such file or directory)', | ||
| 25 | 'Failed to load module "vesa"', | ||
| 26 | 'Failed to load module "modesetting"', | ||
| 27 | 'Failed to load module "glx"', | ||
| 28 | 'wrong ELF class', | ||
| 29 | ] + common_errors | ||
| 30 | |||
| 31 | ignore_errors = { | ||
| 32 | 'default' : common_errors, | ||
| 33 | 'qemux86' : [ | ||
| 34 | 'Failed to access perfctr msr (MSR c1 is 0)', | ||
| 35 | "fail to add MMCONFIG information, can't access extended PCI configuration space under this bridge.", | ||
| 36 | ] + qemux86_common, | ||
| 37 | 'qemux86-64' : qemux86_common, | ||
| 38 | 'qemumips' : [ | ||
| 39 | 'Failed to load module "glx"', | ||
| 40 | ] + common_errors, | ||
| 41 | 'qemuppc' : [ | ||
| 42 | 'PCI 0000:00 Cannot reserve Legacy IO [io 0x0000-0x0fff]', | ||
| 43 | 'mode "640x480" test failed', | ||
| 44 | 'Failed to load module "glx"', | ||
| 45 | ] + common_errors, | ||
| 46 | 'qemuarm' : [ | ||
| 47 | 'mmci-pl18x: probe of fpga:05 failed with error -22', | ||
| 48 | 'mmci-pl18x: probe of fpga:0b failed with error -22', | ||
| 49 | 'Failed to load module "glx"' | ||
| 50 | ] + common_errors, | ||
| 51 | 'emenlow' : x86_common, | ||
| 52 | 'crownbay' : x86_common, | ||
| 53 | 'genericx86' : x86_common, | ||
| 54 | 'genericx86-64' : x86_common, | ||
| 55 | } | ||
| 15 | 56 | ||
| 16 | log_locations = ["/var/log/","/var/log/dmesg", "/tmp/dmesg_output.log"] | 57 | log_locations = ["/var/log/","/var/log/dmesg", "/tmp/dmesg_output.log"] |
| 17 | 58 | ||
| @@ -73,9 +114,16 @@ class ParseLogsTest(oeRuntimeTest): | |||
| 73 | try: | 114 | try: |
| 74 | errorlist = ignore_errors[self.getMachine()] | 115 | errorlist = ignore_errors[self.getMachine()] |
| 75 | except KeyError: | 116 | except KeyError: |
| 76 | self.msg += "No ignore list found for this machine, using generic\n" | 117 | self.msg += "No ignore list found for this machine, using default\n" |
| 77 | errorlist = ignore_errors['genericx86'] | 118 | errorlist = ignore_errors['default'] |
| 78 | for ignore_error in errorlist: | 119 | for ignore_error in errorlist: |
| 120 | ignore_error = ignore_error.replace("(", "\(") | ||
| 121 | ignore_error = ignore_error.replace(")", "\)") | ||
| 122 | ignore_error = ignore_error.replace("'", ".") | ||
| 123 | ignore_error = ignore_error.replace("?", "\?") | ||
| 124 | ignore_error = ignore_error.replace("[", "\[") | ||
| 125 | ignore_error = ignore_error.replace("]", "\]") | ||
| 126 | ignore_error = ignore_error.replace("*", "\*") | ||
| 79 | grepcmd += ignore_error+"|" | 127 | grepcmd += ignore_error+"|" |
| 80 | grepcmd = grepcmd[:-1] | 128 | grepcmd = grepcmd[:-1] |
| 81 | grepcmd += "\'" | 129 | grepcmd += "\'" |
