* [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops @ 2019-06-04 11:48 Simon Ser 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect " Simon Ser ` (6 more replies) 0 siblings, 7 replies; 13+ messages in thread From: Simon Ser @ 2019-06-04 11:48 UTC (permalink / raw) To: igt-dev; +Cc: martin.peres This series is a continuation of "Add igt_audio self-tests and check for noise/pops". Comments have been addressed on the last two patches of that series, and a new commit adds a new phaseshift test. In my real-world tests the power for these low frequencies go up to 0.0001 for DisplayPort. In the self-tests a 0.0005 threshold detects a phaseshift of at least 4 samples. Lowering the threshold to 0.0002 isn't enough to detect phaseshifts with a lower number of samples. Thus I still think a 0.0005 threshold is reasonable. The phaseshift self-test truncates 8 samples, just so that we have some freedom if we want to change audio_signal_detect's logic. 8 samples is definitely a very small phaseshift. Simon Ser (3): lib/igt_audio: detect noise and pops lib/tests/igt_audio: add a pop test lib/tests/igt_audio: add phaseshift detection test lib/igt_audio.c | 58 ++++++++++++++++++++++++++++++++++++++---- lib/tests/igt_audio.c | 59 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 112 insertions(+), 5 deletions(-) -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect noise and pops 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser @ 2019-06-04 11:48 ` Simon Ser 2019-06-04 12:52 ` Martin Peres 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 2/3] lib/tests/igt_audio: add a pop test Simon Ser ` (5 subsequent siblings) 6 siblings, 1 reply; 13+ messages in thread From: Simon Ser @ 2019-06-04 11:48 UTC (permalink / raw) To: igt-dev; +Cc: martin.peres First, normalize the bin power by dividing it by the number of input samples. We need to multiply by 2 since we get half as many bins as input samples. Second, check that low frequencies are under a given threshold. If there is a pop or some noise, the low frequencies will be affected. Signed-off-by: Simon Ser <simon.ser@intel.com> --- lib/igt_audio.c | 58 ++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 53 insertions(+), 5 deletions(-) diff --git a/lib/igt_audio.c b/lib/igt_audio.c index 08c0fb6af0db..e0b1bafe1be2 100644 --- a/lib/igt_audio.c +++ b/lib/igt_audio.c @@ -39,6 +39,17 @@ #define CHANNELS_MAX 8 #define SYNTHESIZE_AMPLITUDE 0.9 #define SYNTHESIZE_ACCURACY 0.2 +/** MIN_FREQ: minimum frequency that audio_signal can generate. + * + * To make sure the audio signal doesn't contain noise, #audio_signal_detect + * checks that low frequencies have a power lower than #NOISE_THRESHOLD. + * However if too-low frequencies are generated, noise detection can fail. + * + * This value should be at least 100Hz plus one bin. Best is not to change this + * value. + */ +#define MIN_FREQ 200 /* Hz */ +#define NOISE_THRESHOLD 0.0005 /** * SECTION:igt_audio @@ -108,6 +119,7 @@ int audio_signal_add_frequency(struct audio_signal *signal, int frequency, igt_assert(index < FREQS_MAX); igt_assert(channel < signal->channels); + igt_assert(frequency >= MIN_FREQ); /* Stay within the Nyquist–Shannon sampling theorem. */ if (frequency > signal->sampling_rate / 2) { @@ -304,6 +316,12 @@ void audio_signal_fill(struct audio_signal *signal, double *buffer, audio_sanity_check(buffer, signal->channels * samples); } +/* See https://en.wikipedia.org/wiki/Window_function#Hann_and_Hamming_windows */ +static double hann_window(double v, size_t i, size_t N) +{ + return v * 0.5 * (1 - cos(2.0 * M_PI * (double) i / (double) N)); +} + /** * Checks that frequencies specified in signal, and only those, are included * in the input data. @@ -328,6 +346,16 @@ bool audio_signal_detect(struct audio_signal *signal, int sampling_rate, data = malloc(samples_len * sizeof(double)); memcpy(data, samples, samples_len * sizeof(double)); + /* Apply a Hann window to the input signal, to reduce frequency leaks + * due to the endpoints of the signal being discontinuous. + * + * For more info: + * - https://download.ni.com/evaluation/pxi/Understanding%20FFTs%20and%20Windowing.pdf + * - https://en.wikipedia.org/wiki/Window_function + */ + for (i = 0; i < data_len; i++) + data[i] = hann_window(data[i], i, data_len); + /* Allowed error in Hz due to FFT step */ freq_accuracy = sampling_rate / data_len; igt_debug("Allowed freq. error: %d Hz\n", freq_accuracy); @@ -338,8 +366,7 @@ bool audio_signal_detect(struct audio_signal *signal, int sampling_rate, igt_assert(0); } - /* Compute the power received by every bin of the FFT, and record the - * maximum power received as a way to normalize all the others. + /* Compute the power received by every bin of the FFT. * * For i < data_len / 2, the real part of the i-th term is stored at * data[i] and its imaginary part is stored at data[data_len - i]. @@ -349,15 +376,36 @@ bool audio_signal_detect(struct audio_signal *signal, int sampling_rate, * The power is encoded as the magnitude of the complex number and the * phase is encoded as its angle. */ - max = 0; bin_power[0] = data[0]; for (i = 1; i < bin_power_len - 1; i++) { bin_power[i] = hypot(data[i], data[data_len - i]); - if (bin_power[i] > max) - max = bin_power[i]; } bin_power[bin_power_len - 1] = data[data_len / 2]; + /* Normalize the power */ + for (i = 0; i < bin_power_len; i++) + bin_power[i] = 2 * bin_power[i] / data_len; + + /* Detect noise with a threshold on the power of low frequencies */ + for (i = 0; i < bin_power_len; i++) { + freq = sampling_rate * i / data_len; + if (freq > MIN_FREQ - 100) + break; + if (bin_power[i] > NOISE_THRESHOLD) { + igt_debug("Noise level too high: freq=%d power=%f\n", + freq, bin_power[i]); + return false; + } + } + + /* Record the maximum power received as a way to normalize all the + * others. */ + max = NAN; + for (i = 0; i < bin_power_len; i++) { + if (isnan(max) || bin_power[i] > max) + max = bin_power[i]; + } + for (i = 0; i < signal->freqs_count; i++) detected[i] = false; -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect noise and pops 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect " Simon Ser @ 2019-06-04 12:52 ` Martin Peres 0 siblings, 0 replies; 13+ messages in thread From: Martin Peres @ 2019-06-04 12:52 UTC (permalink / raw) To: Simon Ser, igt-dev; +Cc: martin.peres On 04/06/2019 14:48, Simon Ser wrote: > First, normalize the bin power by dividing it by the number of input samples. > We need to multiply by 2 since we get half as many bins as input samples. > > Second, check that low frequencies are under a given threshold. If there is a > pop or some noise, the low frequencies will be affected. Reviewed-by: Martin Peres <martin.peres@linux.intel.com> > > Signed-off-by: Simon Ser <simon.ser@intel.com> > --- > lib/igt_audio.c | 58 ++++++++++++++++++++++++++++++++++++++++++++----- > 1 file changed, 53 insertions(+), 5 deletions(-) > > diff --git a/lib/igt_audio.c b/lib/igt_audio.c > index 08c0fb6af0db..e0b1bafe1be2 100644 > --- a/lib/igt_audio.c > +++ b/lib/igt_audio.c > @@ -39,6 +39,17 @@ > #define CHANNELS_MAX 8 > #define SYNTHESIZE_AMPLITUDE 0.9 > #define SYNTHESIZE_ACCURACY 0.2 > +/** MIN_FREQ: minimum frequency that audio_signal can generate. > + * > + * To make sure the audio signal doesn't contain noise, #audio_signal_detect > + * checks that low frequencies have a power lower than #NOISE_THRESHOLD. > + * However if too-low frequencies are generated, noise detection can fail. > + * > + * This value should be at least 100Hz plus one bin. Best is not to change this > + * value. > + */ > +#define MIN_FREQ 200 /* Hz */ > +#define NOISE_THRESHOLD 0.0005 > > /** > * SECTION:igt_audio > @@ -108,6 +119,7 @@ int audio_signal_add_frequency(struct audio_signal *signal, int frequency, > > igt_assert(index < FREQS_MAX); > igt_assert(channel < signal->channels); > + igt_assert(frequency >= MIN_FREQ); > > /* Stay within the Nyquist–Shannon sampling theorem. */ > if (frequency > signal->sampling_rate / 2) { > @@ -304,6 +316,12 @@ void audio_signal_fill(struct audio_signal *signal, double *buffer, > audio_sanity_check(buffer, signal->channels * samples); > } > > +/* See https://en.wikipedia.org/wiki/Window_function#Hann_and_Hamming_windows */ > +static double hann_window(double v, size_t i, size_t N) > +{ > + return v * 0.5 * (1 - cos(2.0 * M_PI * (double) i / (double) N)); > +} > + > /** > * Checks that frequencies specified in signal, and only those, are included > * in the input data. > @@ -328,6 +346,16 @@ bool audio_signal_detect(struct audio_signal *signal, int sampling_rate, > data = malloc(samples_len * sizeof(double)); > memcpy(data, samples, samples_len * sizeof(double)); > > + /* Apply a Hann window to the input signal, to reduce frequency leaks > + * due to the endpoints of the signal being discontinuous. > + * > + * For more info: > + * - https://download.ni.com/evaluation/pxi/Understanding%20FFTs%20and%20Windowing.pdf > + * - https://en.wikipedia.org/wiki/Window_function > + */ > + for (i = 0; i < data_len; i++) > + data[i] = hann_window(data[i], i, data_len); > + > /* Allowed error in Hz due to FFT step */ > freq_accuracy = sampling_rate / data_len; > igt_debug("Allowed freq. error: %d Hz\n", freq_accuracy); > @@ -338,8 +366,7 @@ bool audio_signal_detect(struct audio_signal *signal, int sampling_rate, > igt_assert(0); > } > > - /* Compute the power received by every bin of the FFT, and record the > - * maximum power received as a way to normalize all the others. > + /* Compute the power received by every bin of the FFT. > * > * For i < data_len / 2, the real part of the i-th term is stored at > * data[i] and its imaginary part is stored at data[data_len - i]. > @@ -349,15 +376,36 @@ bool audio_signal_detect(struct audio_signal *signal, int sampling_rate, > * The power is encoded as the magnitude of the complex number and the > * phase is encoded as its angle. > */ > - max = 0; > bin_power[0] = data[0]; > for (i = 1; i < bin_power_len - 1; i++) { > bin_power[i] = hypot(data[i], data[data_len - i]); > - if (bin_power[i] > max) > - max = bin_power[i]; > } > bin_power[bin_power_len - 1] = data[data_len / 2]; > > + /* Normalize the power */ > + for (i = 0; i < bin_power_len; i++) > + bin_power[i] = 2 * bin_power[i] / data_len; > + > + /* Detect noise with a threshold on the power of low frequencies */ > + for (i = 0; i < bin_power_len; i++) { > + freq = sampling_rate * i / data_len; > + if (freq > MIN_FREQ - 100) > + break; > + if (bin_power[i] > NOISE_THRESHOLD) { > + igt_debug("Noise level too high: freq=%d power=%f\n", > + freq, bin_power[i]); > + return false; > + } > + } > + > + /* Record the maximum power received as a way to normalize all the > + * others. */ > + max = NAN; > + for (i = 0; i < bin_power_len; i++) { > + if (isnan(max) || bin_power[i] > max) > + max = bin_power[i]; > + } > + > for (i = 0; i < signal->freqs_count; i++) > detected[i] = false; > > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 2/3] lib/tests/igt_audio: add a pop test 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect " Simon Ser @ 2019-06-04 11:48 ` Simon Ser 2019-06-04 12:54 ` Martin Peres 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 3/3] lib/tests/igt_audio: add phaseshift detection test Simon Ser ` (4 subsequent siblings) 6 siblings, 1 reply; 13+ messages in thread From: Simon Ser @ 2019-06-04 11:48 UTC (permalink / raw) To: igt-dev; +Cc: martin.peres Make sure adding a pop in the input signal makes audio_signal_detect fail. Signed-off-by: Simon Ser <simon.ser@intel.com> --- lib/tests/igt_audio.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/lib/tests/igt_audio.c b/lib/tests/igt_audio.c index 47e61adf74fe..821813bae47a 100644 --- a/lib/tests/igt_audio.c +++ b/lib/tests/igt_audio.c @@ -116,6 +116,26 @@ static void test_signal_detect_with_unexpected_freq(struct audio_signal *signal) igt_assert(!ok); } +static void test_signal_detect_pop(struct audio_signal *signal) +{ + double *buf; + bool ok; + size_t i; + + buf = malloc(BUFFER_LEN * sizeof(double)); + audio_signal_fill(signal, buf, BUFFER_LEN / CHANNELS); + + /* Add a discontinuity in the signal */ + for (i = 0; i < 5; i++) + buf[BUFFER_LEN / 3 + i] = 0.9; + + ok = audio_signal_detect(signal, SAMPLING_RATE, 0, buf, BUFFER_LEN); + + free(buf); + + igt_assert(!ok); +} + igt_main { struct audio_signal *signal; @@ -151,6 +171,9 @@ igt_main igt_subtest("signal-detect-with-unexpected-freq") test_signal_detect_with_unexpected_freq(signal); + igt_subtest("signal-detect-pop") + test_signal_detect_pop(signal); + igt_fixture { audio_signal_fini(signal); } -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2 2/3] lib/tests/igt_audio: add a pop test 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 2/3] lib/tests/igt_audio: add a pop test Simon Ser @ 2019-06-04 12:54 ` Martin Peres 2019-06-05 8:03 ` [igt-dev] [PATCH i-g-t v3] lib/tests/igt_audio: add a test holding a sample Simon Ser 0 siblings, 1 reply; 13+ messages in thread From: Martin Peres @ 2019-06-04 12:54 UTC (permalink / raw) To: Simon Ser, igt-dev; +Cc: martin.peres On 04/06/2019 14:48, Simon Ser wrote: > Make sure adding a pop in the input signal makes audio_signal_detect fail. > > Signed-off-by: Simon Ser <simon.ser@intel.com> > --- > lib/tests/igt_audio.c | 23 +++++++++++++++++++++++ > 1 file changed, 23 insertions(+) > > diff --git a/lib/tests/igt_audio.c b/lib/tests/igt_audio.c > index 47e61adf74fe..821813bae47a 100644 > --- a/lib/tests/igt_audio.c > +++ b/lib/tests/igt_audio.c > @@ -116,6 +116,26 @@ static void test_signal_detect_with_unexpected_freq(struct audio_signal *signal) > igt_assert(!ok); > } > > +static void test_signal_detect_pop(struct audio_signal *signal) I would prefer you repeating/holding the sample for multiple samples as opposed to forcing 0.9. How about naming the test "test_signal_detect_held_sample"? > +{ > + double *buf; > + bool ok; > + size_t i; > + > + buf = malloc(BUFFER_LEN * sizeof(double)); > + audio_signal_fill(signal, buf, BUFFER_LEN / CHANNELS); > + > + /* Add a discontinuity in the signal */ > + for (i = 0; i < 5; i++) > + buf[BUFFER_LEN / 3 + i] = 0.9; > + > + ok = audio_signal_detect(signal, SAMPLING_RATE, 0, buf, BUFFER_LEN); > + > + free(buf); > + > + igt_assert(!ok); > +} > + > igt_main > { > struct audio_signal *signal; > @@ -151,6 +171,9 @@ igt_main > igt_subtest("signal-detect-with-unexpected-freq") > test_signal_detect_with_unexpected_freq(signal); > > + igt_subtest("signal-detect-pop") > + test_signal_detect_pop(signal); > + > igt_fixture { > audio_signal_fini(signal); > } > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v3] lib/tests/igt_audio: add a test holding a sample 2019-06-04 12:54 ` Martin Peres @ 2019-06-05 8:03 ` Simon Ser 2019-06-12 10:56 ` Martin Peres 0 siblings, 1 reply; 13+ messages in thread From: Simon Ser @ 2019-06-05 8:03 UTC (permalink / raw) To: igt-dev Make sure holding a sample in the input signal makes audio_signal_detect fail. Signed-off-by: Simon Ser <simon.ser@intel.com> --- lib/tests/igt_audio.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/lib/tests/igt_audio.c b/lib/tests/igt_audio.c index 47e61adf74fe..d18537d66fb7 100644 --- a/lib/tests/igt_audio.c +++ b/lib/tests/igt_audio.c @@ -116,6 +116,28 @@ static void test_signal_detect_with_unexpected_freq(struct audio_signal *signal) igt_assert(!ok); } +static void test_signal_detect_held_sample(struct audio_signal *signal) +{ + double *buf; + bool ok; + size_t i; + double value; + + buf = malloc(BUFFER_LEN * sizeof(double)); + audio_signal_fill(signal, buf, BUFFER_LEN / CHANNELS); + + /* Repeat a sample in the middle of the signal */ + value = buf[BUFFER_LEN / 3]; + for (i = 0; i < 5; i++) + buf[BUFFER_LEN / 3 + i] = value; + + ok = audio_signal_detect(signal, SAMPLING_RATE, 0, buf, BUFFER_LEN); + + free(buf); + + igt_assert(!ok); +} + igt_main { struct audio_signal *signal; @@ -151,6 +173,9 @@ igt_main igt_subtest("signal-detect-with-unexpected-freq") test_signal_detect_with_unexpected_freq(signal); + igt_subtest("signal-detect-held-sample") + test_signal_detect_held_sample(signal); + igt_fixture { audio_signal_fini(signal); } -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3] lib/tests/igt_audio: add a test holding a sample 2019-06-05 8:03 ` [igt-dev] [PATCH i-g-t v3] lib/tests/igt_audio: add a test holding a sample Simon Ser @ 2019-06-12 10:56 ` Martin Peres 0 siblings, 0 replies; 13+ messages in thread From: Martin Peres @ 2019-06-12 10:56 UTC (permalink / raw) To: Simon Ser, igt-dev On 05/06/2019 11:03, Simon Ser wrote: > Make sure holding a sample in the input signal makes audio_signal_detect fail. > > Signed-off-by: Simon Ser <simon.ser@intel.com> > --- > lib/tests/igt_audio.c | 25 +++++++++++++++++++++++++ > 1 file changed, 25 insertions(+) > > diff --git a/lib/tests/igt_audio.c b/lib/tests/igt_audio.c > index 47e61adf74fe..d18537d66fb7 100644 > --- a/lib/tests/igt_audio.c > +++ b/lib/tests/igt_audio.c > @@ -116,6 +116,28 @@ static void test_signal_detect_with_unexpected_freq(struct audio_signal *signal) > igt_assert(!ok); > } > > +static void test_signal_detect_held_sample(struct audio_signal *signal) > +{ > + double *buf; > + bool ok; > + size_t i; > + double value; > + > + buf = malloc(BUFFER_LEN * sizeof(double)); > + audio_signal_fill(signal, buf, BUFFER_LEN / CHANNELS); > + > + /* Repeat a sample in the middle of the signal */ > + value = buf[BUFFER_LEN / 3]; > + for (i = 0; i < 5; i++) > + buf[BUFFER_LEN / 3 + i] = value; > + > + ok = audio_signal_detect(signal, SAMPLING_RATE, 0, buf, BUFFER_LEN); > + > + free(buf); > + > + igt_assert(!ok); Please add a reason here. With this done, the patch is: Reviewed-by: Martin Peres <martin.peres@linux.intel.com> > +} > + > igt_main > { > struct audio_signal *signal; > @@ -151,6 +173,9 @@ igt_main > igt_subtest("signal-detect-with-unexpected-freq") > test_signal_detect_with_unexpected_freq(signal); > > + igt_subtest("signal-detect-held-sample") > + test_signal_detect_held_sample(signal); > + > igt_fixture { > audio_signal_fini(signal); > } > -- > 2.21.0 > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 3/3] lib/tests/igt_audio: add phaseshift detection test 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect " Simon Ser 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 2/3] lib/tests/igt_audio: add a pop test Simon Ser @ 2019-06-04 11:48 ` Simon Ser 2019-06-04 13:01 ` Martin Peres 2019-06-04 12:23 ` [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops Patchwork ` (3 subsequent siblings) 6 siblings, 1 reply; 13+ messages in thread From: Simon Ser @ 2019-06-04 11:48 UTC (permalink / raw) To: igt-dev; +Cc: martin.peres Truncate a few samples in the middle of the signal, and make sure the detection fails. Signed-off-by: Simon Ser <simon.ser@intel.com> --- lib/tests/igt_audio.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/lib/tests/igt_audio.c b/lib/tests/igt_audio.c index 821813bae47a..7c5279acc92e 100644 --- a/lib/tests/igt_audio.c +++ b/lib/tests/igt_audio.c @@ -33,6 +33,8 @@ #define SAMPLING_RATE 44100 #define CHANNELS 1 #define BUFFER_LEN 2048 +/** PHASESHIFT_LEN: how many samples will be truncated from the signal */ +#define PHASESHIFT_LEN 8 static const int test_freqs[] = { 300, 700, 5000 }; @@ -136,6 +138,37 @@ static void test_signal_detect_pop(struct audio_signal *signal) igt_assert(!ok); } +static void test_signal_detect_phaseshift(struct audio_signal *signal) +{ + double *buf; + bool ok; + + buf = malloc((BUFFER_LEN + PHASESHIFT_LEN) * sizeof(double)); + audio_signal_fill(signal, buf, (BUFFER_LEN + PHASESHIFT_LEN) / CHANNELS); + + /* Perform a phaseshift (this isn't related to sirens). + * + * The idea is to remove a part of the signal in the middle of the + * buffer: + * + * BUFFER_LEN/3 PHASESHIFT_LEN 2*BUFFER_LEN/3 + * [--------------|################|---------------------------------] + * + * | + * V + * + * [--------------|---------------------------------] + */ + memmove(&buf[BUFFER_LEN / 3], &buf[BUFFER_LEN / 3 + PHASESHIFT_LEN], + (2 * BUFFER_LEN / 3) * sizeof(double)); + + ok = audio_signal_detect(signal, SAMPLING_RATE, 0, buf, BUFFER_LEN); + + free(buf); + + igt_assert(!ok); +} + igt_main { struct audio_signal *signal; @@ -174,6 +207,9 @@ igt_main igt_subtest("signal-detect-pop") test_signal_detect_pop(signal); + igt_subtest("signal-detect-phaseshift") + test_signal_detect_phaseshift(signal); + igt_fixture { audio_signal_fini(signal); } -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2 3/3] lib/tests/igt_audio: add phaseshift detection test 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 3/3] lib/tests/igt_audio: add phaseshift detection test Simon Ser @ 2019-06-04 13:01 ` Martin Peres 0 siblings, 0 replies; 13+ messages in thread From: Martin Peres @ 2019-06-04 13:01 UTC (permalink / raw) To: Simon Ser, igt-dev; +Cc: martin.peres On 04/06/2019 14:48, Simon Ser wrote: > Truncate a few samples in the middle of the signal, and make sure the detection > fails. This is very nice! Reviewed-by: Martin Peres <martin.peres@linux.intel.com> > > Signed-off-by: Simon Ser <simon.ser@intel.com> > --- > lib/tests/igt_audio.c | 36 ++++++++++++++++++++++++++++++++++++ > 1 file changed, 36 insertions(+) > > diff --git a/lib/tests/igt_audio.c b/lib/tests/igt_audio.c > index 821813bae47a..7c5279acc92e 100644 > --- a/lib/tests/igt_audio.c > +++ b/lib/tests/igt_audio.c > @@ -33,6 +33,8 @@ > #define SAMPLING_RATE 44100 > #define CHANNELS 1 > #define BUFFER_LEN 2048 > +/** PHASESHIFT_LEN: how many samples will be truncated from the signal */ > +#define PHASESHIFT_LEN 8 > > static const int test_freqs[] = { 300, 700, 5000 }; > > @@ -136,6 +138,37 @@ static void test_signal_detect_pop(struct audio_signal *signal) > igt_assert(!ok); > } > > +static void test_signal_detect_phaseshift(struct audio_signal *signal) > +{ > + double *buf; > + bool ok; > + > + buf = malloc((BUFFER_LEN + PHASESHIFT_LEN) * sizeof(double)); > + audio_signal_fill(signal, buf, (BUFFER_LEN + PHASESHIFT_LEN) / CHANNELS); > + > + /* Perform a phaseshift (this isn't related to sirens). > + * > + * The idea is to remove a part of the signal in the middle of the > + * buffer: > + * > + * BUFFER_LEN/3 PHASESHIFT_LEN 2*BUFFER_LEN/3 > + * [--------------|################|---------------------------------] > + * > + * | > + * V > + * > + * [--------------|---------------------------------] > + */ > + memmove(&buf[BUFFER_LEN / 3], &buf[BUFFER_LEN / 3 + PHASESHIFT_LEN], > + (2 * BUFFER_LEN / 3) * sizeof(double)); > + > + ok = audio_signal_detect(signal, SAMPLING_RATE, 0, buf, BUFFER_LEN); > + > + free(buf); > + > + igt_assert(!ok); > +} > + > igt_main > { > struct audio_signal *signal; > @@ -174,6 +207,9 @@ igt_main > igt_subtest("signal-detect-pop") > test_signal_detect_pop(signal); > > + igt_subtest("signal-detect-phaseshift") > + test_signal_detect_phaseshift(signal); > + > igt_fixture { > audio_signal_fini(signal); > } > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser ` (2 preceding siblings ...) 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 3/3] lib/tests/igt_audio: add phaseshift detection test Simon Ser @ 2019-06-04 12:23 ` Patchwork 2019-06-04 23:39 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork ` (2 subsequent siblings) 6 siblings, 0 replies; 13+ messages in thread From: Patchwork @ 2019-06-04 12:23 UTC (permalink / raw) To: Simon Ser; +Cc: igt-dev == Series Details == Series: Check for audio noise and pops URL : https://patchwork.freedesktop.org/series/61576/ State : success == Summary == CI Bug Log - changes from IGT_5035 -> IGTPW_3100 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/61576/revisions/1/mbox/ Known issues ------------ Here are the changes found in IGTPW_3100 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_pipe_crc_basic@hang-read-crc-pipe-a: - fi-icl-u3: [PASS][1] -> [DMESG-WARN][2] ([fdo#107724]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/fi-icl-u3/igt@kms_pipe_crc_basic@hang-read-crc-pipe-a.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/fi-icl-u3/igt@kms_pipe_crc_basic@hang-read-crc-pipe-a.html #### Possible fixes #### * {igt@i915_selftest@live_blt}: - fi-skl-iommu: [INCOMPLETE][3] ([fdo#108602]) -> [PASS][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/fi-skl-iommu/igt@i915_selftest@live_blt.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/fi-skl-iommu/igt@i915_selftest@live_blt.html * {igt@i915_selftest@live_mman}: - fi-icl-dsi: [TIMEOUT][5] ([fdo#110818 ]) -> [PASS][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/fi-icl-dsi/igt@i915_selftest@live_mman.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/fi-icl-dsi/igt@i915_selftest@live_mman.html * igt@prime_self_import@basic-with_one_bo_two_files: - fi-icl-u3: [DMESG-WARN][7] ([fdo#107724]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/fi-icl-u3/igt@prime_self_import@basic-with_one_bo_two_files.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/fi-icl-u3/igt@prime_self_import@basic-with_one_bo_two_files.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724 [fdo#108602]: https://bugs.freedesktop.org/show_bug.cgi?id=108602 [fdo#109673]: https://bugs.freedesktop.org/show_bug.cgi?id=109673 [fdo#110818 ]: https://bugs.freedesktop.org/show_bug.cgi?id=110818 Participating hosts (53 -> 46) ------------------------------ Missing (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-kbl-7560u fi-byt-clapper fi-bdw-samus Build changes ------------- * IGT: IGT_5035 -> IGTPW_3100 CI_DRM_6184: 99ffea268c69399f2936c08ef809b5f8c3485d8b @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3100: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/ IGT_5035: d37fd01737dea57f33176d6525610666637a88d6 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Check for audio noise and pops 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser ` (3 preceding siblings ...) 2019-06-04 12:23 ` [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops Patchwork @ 2019-06-04 23:39 ` Patchwork 2019-06-05 10:48 ` [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops (rev2) Patchwork 2019-06-06 14:00 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 6 siblings, 0 replies; 13+ messages in thread From: Patchwork @ 2019-06-04 23:39 UTC (permalink / raw) To: Ser, Simon; +Cc: igt-dev == Series Details == Series: Check for audio noise and pops URL : https://patchwork.freedesktop.org/series/61576/ State : success == Summary == CI Bug Log - changes from IGT_5035_full -> IGTPW_3100_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/61576/revisions/1/mbox/ Known issues ------------ Here are the changes found in IGTPW_3100_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_tiled_swapping@non-threaded: - shard-iclb: [PASS][1] -> [FAIL][2] ([fdo#108686]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb2/igt@gem_tiled_swapping@non-threaded.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb5/igt@gem_tiled_swapping@non-threaded.html - shard-hsw: [PASS][3] -> [FAIL][4] ([fdo#108686]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-hsw7/igt@gem_tiled_swapping@non-threaded.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-hsw2/igt@gem_tiled_swapping@non-threaded.html * igt@i915_pm_rpm@gem-idle: - shard-iclb: [PASS][5] -> [INCOMPLETE][6] ([fdo#107713] / [fdo#108840]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb6/igt@i915_pm_rpm@gem-idle.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb8/igt@i915_pm_rpm@gem-idle.html * igt@i915_suspend@sysfs-reader: - shard-apl: [PASS][7] -> [DMESG-WARN][8] ([fdo#108566]) +3 similar issues [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-apl7/igt@i915_suspend@sysfs-reader.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-apl1/igt@i915_suspend@sysfs-reader.html * igt@kms_flip@dpms-vs-vblank-race-interruptible: - shard-glk: [PASS][9] -> [FAIL][10] ([fdo#103060]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-glk2/igt@kms_flip@dpms-vs-vblank-race-interruptible.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-glk6/igt@kms_flip@dpms-vs-vblank-race-interruptible.html * igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-render: - shard-iclb: [PASS][11] -> [FAIL][12] ([fdo#103167]) +3 similar issues [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-render.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb6/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-render.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes: - shard-iclb: [PASS][13] -> [INCOMPLETE][14] ([fdo#107713] / [fdo#110042]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html * igt@kms_psr@no_drrs: - shard-iclb: [PASS][15] -> [FAIL][16] ([fdo#108341]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb2/igt@kms_psr@no_drrs.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb1/igt@kms_psr@no_drrs.html * igt@kms_psr@psr2_cursor_mmap_cpu: - shard-iclb: [PASS][17] -> [SKIP][18] ([fdo#109441]) +2 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb7/igt@kms_psr@psr2_cursor_mmap_cpu.html * igt@kms_vblank@pipe-a-wait-forked-hang: - shard-hsw: [PASS][19] -> [INCOMPLETE][20] ([fdo#103540]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-hsw5/igt@kms_vblank@pipe-a-wait-forked-hang.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-hsw7/igt@kms_vblank@pipe-a-wait-forked-hang.html * igt@kms_vblank@pipe-c-ts-continuation-dpms-suspend: - shard-kbl: [PASS][21] -> [INCOMPLETE][22] ([fdo#103665]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-kbl3/igt@kms_vblank@pipe-c-ts-continuation-dpms-suspend.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-kbl3/igt@kms_vblank@pipe-c-ts-continuation-dpms-suspend.html #### Possible fixes #### * igt@i915_pm_rpm@modeset-lpsp-stress: - shard-iclb: [INCOMPLETE][23] ([fdo#107713] / [fdo#108840]) -> [PASS][24] [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb2/igt@i915_pm_rpm@modeset-lpsp-stress.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb7/igt@i915_pm_rpm@modeset-lpsp-stress.html * igt@i915_suspend@debugfs-reader: - shard-apl: [DMESG-WARN][25] ([fdo#108566]) -> [PASS][26] +5 similar issues [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-apl2/igt@i915_suspend@debugfs-reader.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-apl5/igt@i915_suspend@debugfs-reader.html * igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b: - shard-snb: [SKIP][27] ([fdo#109271] / [fdo#109278]) -> [PASS][28] [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-snb2/igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-snb1/igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b.html * igt@kms_color@pipe-a-ctm-blue-to-red: - shard-kbl: [FAIL][29] ([fdo#107201]) -> [PASS][30] [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-kbl7/igt@kms_color@pipe-a-ctm-blue-to-red.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-kbl4/igt@kms_color@pipe-a-ctm-blue-to-red.html * igt@kms_cursor_crc@pipe-c-cursor-suspend: - shard-kbl: [FAIL][31] ([fdo#103232]) -> [PASS][32] [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-kbl1/igt@kms_cursor_crc@pipe-c-cursor-suspend.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt: - shard-snb: [SKIP][33] ([fdo#109271]) -> [PASS][34] +1 similar issue [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-snb2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-snb5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-gtt: - shard-glk: [FAIL][35] ([fdo#103167]) -> [PASS][36] [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-glk7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-gtt.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-glk2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-pwrite: - shard-iclb: [FAIL][37] ([fdo#103167]) -> [PASS][38] +7 similar issues [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-pwrite.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-pwrite.html * igt@kms_psr@psr2_primary_mmap_gtt: - shard-iclb: [SKIP][39] ([fdo#109441]) -> [PASS][40] +1 similar issue [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb8/igt@kms_psr@psr2_primary_mmap_gtt.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb2/igt@kms_psr@psr2_primary_mmap_gtt.html * igt@kms_setmode@basic: - shard-kbl: [FAIL][41] ([fdo#99912]) -> [PASS][42] [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-kbl2/igt@kms_setmode@basic.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-kbl4/igt@kms_setmode@basic.html * igt@prime_vgem@fence-wait-bsd1: - shard-iclb: [INCOMPLETE][43] ([fdo#107713]) -> [PASS][44] [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5035/shard-iclb7/igt@prime_vgem@fence-wait-bsd1.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/shard-iclb5/igt@prime_vgem@fence-wait-bsd1.html [fdo#103060]: https://bugs.freedesktop.org/show_bug.cgi?id=103060 [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232 [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540 [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665 [fdo#107201]: https://bugs.freedesktop.org/show_bug.cgi?id=107201 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#108341]: https://bugs.freedesktop.org/show_bug.cgi?id=108341 [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566 [fdo#108686]: https://bugs.freedesktop.org/show_bug.cgi?id=108686 [fdo#108840]: https://bugs.freedesktop.org/show_bug.cgi?id=108840 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#110042]: https://bugs.freedesktop.org/show_bug.cgi?id=110042 [fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912 Participating hosts (7 -> 6) ------------------------------ Missing (1): shard-skl Build changes ------------- * IGT: IGT_5035 -> IGTPW_3100 CI_DRM_6184: 99ffea268c69399f2936c08ef809b5f8c3485d8b @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3100: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/ IGT_5035: d37fd01737dea57f33176d6525610666637a88d6 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3100/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops (rev2) 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser ` (4 preceding siblings ...) 2019-06-04 23:39 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork @ 2019-06-05 10:48 ` Patchwork 2019-06-06 14:00 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 6 siblings, 0 replies; 13+ messages in thread From: Patchwork @ 2019-06-05 10:48 UTC (permalink / raw) To: Simon Ser; +Cc: igt-dev == Series Details == Series: Check for audio noise and pops (rev2) URL : https://patchwork.freedesktop.org/series/61576/ State : success == Summary == CI Bug Log - changes from CI_DRM_6194 -> IGTPW_3112 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/61576/revisions/2/mbox/ Known issues ------------ Here are the changes found in IGTPW_3112 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_pm_rpm@module-reload: - fi-skl-6770hq: [PASS][1] -> [FAIL][2] ([fdo#108511]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html * igt@kms_frontbuffer_tracking@basic: - fi-icl-u2: [PASS][3] -> [FAIL][4] ([fdo#103167]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html #### Possible fixes #### * igt@gem_ctx_switch@basic-default: - {fi-icl-guc}: [INCOMPLETE][5] ([fdo#107713] / [fdo#108569]) -> [PASS][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/fi-icl-guc/igt@gem_ctx_switch@basic-default.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/fi-icl-guc/igt@gem_ctx_switch@basic-default.html * igt@kms_chamelium@hdmi-hpd-fast: - fi-kbl-7500u: [FAIL][7] ([fdo#109485]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#108511]: https://bugs.freedesktop.org/show_bug.cgi?id=108511 [fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569 [fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485 Participating hosts (49 -> 47) ------------------------------ Additional (5): fi-kbl-7567u fi-skl-gvtdvm fi-byt-j1900 fi-icl-u3 fi-skl-6600u Missing (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-kbl-7560u fi-byt-clapper fi-bdw-samus Build changes ------------- * IGT: IGT_5038 -> IGTPW_3112 CI_DRM_6194: 10a75edfc43885387e1e9e2bc50f9678e9bf59d6 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3112: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/ IGT_5038: a34cbc9834aed017d1a452ba42d3e53f9258f8d2 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Check for audio noise and pops (rev2) 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser ` (5 preceding siblings ...) 2019-06-05 10:48 ` [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops (rev2) Patchwork @ 2019-06-06 14:00 ` Patchwork 6 siblings, 0 replies; 13+ messages in thread From: Patchwork @ 2019-06-06 14:00 UTC (permalink / raw) To: Simon Ser; +Cc: igt-dev == Series Details == Series: Check for audio noise and pops (rev2) URL : https://patchwork.freedesktop.org/series/61576/ State : success == Summary == CI Bug Log - changes from CI_DRM_6194_full -> IGTPW_3112_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/61576/revisions/2/mbox/ Known issues ------------ Here are the changes found in IGTPW_3112_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_tiled_swapping@non-threaded: - shard-iclb: [PASS][1] -> [FAIL][2] ([fdo#108686]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb7/igt@gem_tiled_swapping@non-threaded.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb7/igt@gem_tiled_swapping@non-threaded.html - shard-hsw: [PASS][3] -> [FAIL][4] ([fdo#108686]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-hsw1/igt@gem_tiled_swapping@non-threaded.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-hsw4/igt@gem_tiled_swapping@non-threaded.html * igt@i915_suspend@fence-restore-untiled: - shard-apl: [PASS][5] -> [DMESG-WARN][6] ([fdo#108566]) +4 similar issues [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-apl8/igt@i915_suspend@fence-restore-untiled.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-apl3/igt@i915_suspend@fence-restore-untiled.html * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic: - shard-hsw: [PASS][7] -> [FAIL][8] ([fdo#105767]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-hsw7/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-hsw5/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html * igt@kms_frontbuffer_tracking@fbc-badstride: - shard-iclb: [PASS][9] -> [FAIL][10] ([fdo#103167]) +5 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-badstride.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb5/igt@kms_frontbuffer_tracking@fbc-badstride.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes: - shard-kbl: [PASS][11] -> [INCOMPLETE][12] ([fdo#103665]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-kbl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-kbl6/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html * igt@kms_psr@psr2_cursor_mmap_cpu: - shard-iclb: [PASS][13] -> [SKIP][14] ([fdo#109441]) +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb6/igt@kms_psr@psr2_cursor_mmap_cpu.html * igt@kms_setmode@basic: - shard-hsw: [PASS][15] -> [FAIL][16] ([fdo#99912]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-hsw1/igt@kms_setmode@basic.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-hsw4/igt@kms_setmode@basic.html #### Possible fixes #### * igt@gem_ctx_isolation@bcs0-s3: - shard-apl: [DMESG-WARN][17] ([fdo#108566]) -> [PASS][18] +4 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-apl2/igt@gem_ctx_isolation@bcs0-s3.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-apl5/igt@gem_ctx_isolation@bcs0-s3.html * {igt@gem_ctx_param@vm}: - shard-hsw: [DMESG-WARN][19] ([fdo#110836]) -> [PASS][20] [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-hsw5/igt@gem_ctx_param@vm.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-hsw8/igt@gem_ctx_param@vm.html * igt@kms_cursor_crc@pipe-c-cursor-dpms: - shard-apl: [FAIL][21] ([fdo#103232]) -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-apl4/igt@kms_cursor_crc@pipe-c-cursor-dpms.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-apl4/igt@kms_cursor_crc@pipe-c-cursor-dpms.html - shard-kbl: [FAIL][23] ([fdo#103232]) -> [PASS][24] [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-dpms.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-kbl4/igt@kms_cursor_crc@pipe-c-cursor-dpms.html * igt@kms_dp_dsc@basic-dsc-enable-edp: - shard-iclb: [SKIP][25] ([fdo#109349]) -> [PASS][26] [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb6/igt@kms_dp_dsc@basic-dsc-enable-edp.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html * igt@kms_flip@2x-plain-flip-interruptible: - shard-hsw: [SKIP][27] ([fdo#109271]) -> [PASS][28] +18 similar issues [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-hsw1/igt@kms_flip@2x-plain-flip-interruptible.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-hsw8/igt@kms_flip@2x-plain-flip-interruptible.html * igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite: - shard-iclb: [FAIL][29] ([fdo#103167]) -> [PASS][30] +6 similar issues [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb7/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite.html * igt@kms_plane_lowres@pipe-a-tiling-y: - shard-iclb: [FAIL][31] ([fdo#103166]) -> [PASS][32] [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb4/igt@kms_plane_lowres@pipe-a-tiling-y.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb7/igt@kms_plane_lowres@pipe-a-tiling-y.html * igt@kms_plane_scaling@pipe-a-scaler-with-rotation: - shard-iclb: [INCOMPLETE][33] ([fdo#107713] / [fdo#110041]) -> [PASS][34] [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb7/igt@kms_plane_scaling@pipe-a-scaler-with-rotation.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb6/igt@kms_plane_scaling@pipe-a-scaler-with-rotation.html * igt@kms_psr2_su@frontbuffer: - shard-iclb: [SKIP][35] ([fdo#109642]) -> [PASS][36] [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb4/igt@kms_psr2_su@frontbuffer.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb2/igt@kms_psr2_su@frontbuffer.html * igt@kms_psr@psr2_cursor_plane_onoff: - shard-iclb: [SKIP][37] ([fdo#109441]) -> [PASS][38] +3 similar issues [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb8/igt@kms_psr@psr2_cursor_plane_onoff.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html * igt@kms_setmode@basic: - shard-kbl: [FAIL][39] ([fdo#99912]) -> [PASS][40] [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-kbl1/igt@kms_setmode@basic.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-kbl3/igt@kms_setmode@basic.html * igt@perf_pmu@rc6-runtime-pm-long: - shard-hsw: [FAIL][41] ([fdo#105010]) -> [PASS][42] [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-hsw8/igt@perf_pmu@rc6-runtime-pm-long.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-hsw6/igt@perf_pmu@rc6-runtime-pm-long.html * igt@tools_test@tools_test: - shard-kbl: [SKIP][43] ([fdo#109271]) -> [PASS][44] [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-kbl3/igt@tools_test@tools_test.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-kbl1/igt@tools_test@tools_test.html #### Warnings #### * igt@gem_mmap_gtt@forked-big-copy-xy: - shard-iclb: [TIMEOUT][45] ([fdo#109673]) -> [INCOMPLETE][46] ([fdo#107713] / [fdo#109100]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6194/shard-iclb6/igt@gem_mmap_gtt@forked-big-copy-xy.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/shard-iclb8/igt@gem_mmap_gtt@forked-big-copy-xy.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166 [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232 [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665 [fdo#105010]: https://bugs.freedesktop.org/show_bug.cgi?id=105010 [fdo#105767]: https://bugs.freedesktop.org/show_bug.cgi?id=105767 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566 [fdo#108686]: https://bugs.freedesktop.org/show_bug.cgi?id=108686 [fdo#109100]: https://bugs.freedesktop.org/show_bug.cgi?id=109100 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#109673]: https://bugs.freedesktop.org/show_bug.cgi?id=109673 [fdo#110041]: https://bugs.freedesktop.org/show_bug.cgi?id=110041 [fdo#110836]: https://bugs.freedesktop.org/show_bug.cgi?id=110836 [fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912 Participating hosts (10 -> 6) ------------------------------ Missing (4): pig-skl-6260u shard-skl pig-hsw-4770r pig-glk-j5005 Build changes ------------- * IGT: IGT_5038 -> IGTPW_3112 * Piglit: piglit_4509 -> None CI_DRM_6194: 10a75edfc43885387e1e9e2bc50f9678e9bf59d6 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3112: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/ IGT_5038: a34cbc9834aed017d1a452ba42d3e53f9258f8d2 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3112/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2019-06-12 10:56 UTC | newest] Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-06-04 11:48 [igt-dev] [PATCH i-g-t v2 0/3] Check for audio noise and pops Simon Ser 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect " Simon Ser 2019-06-04 12:52 ` Martin Peres 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 2/3] lib/tests/igt_audio: add a pop test Simon Ser 2019-06-04 12:54 ` Martin Peres 2019-06-05 8:03 ` [igt-dev] [PATCH i-g-t v3] lib/tests/igt_audio: add a test holding a sample Simon Ser 2019-06-12 10:56 ` Martin Peres 2019-06-04 11:48 ` [igt-dev] [PATCH i-g-t v2 3/3] lib/tests/igt_audio: add phaseshift detection test Simon Ser 2019-06-04 13:01 ` Martin Peres 2019-06-04 12:23 ` [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops Patchwork 2019-06-04 23:39 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 2019-06-05 10:48 ` [igt-dev] ✓ Fi.CI.BAT: success for Check for audio noise and pops (rev2) Patchwork 2019-06-06 14:00 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.