diff mbox

[libdrm,1/1] drmsltest: Check expected neighbours

Message ID 20170728142322.18783-1-jan.vesely@rutgers.edu (mailing list archive)
State New, archived
Headers show

Commit Message

Jan Vesely July 28, 2017, 2:23 p.m. UTC
Fixes: 7d8c9464081634f053e16e5eac9655a12fae1dc4
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
---

I thought I sent this out, but couldn't find it in sent mail.
This tests the behaviour set in 3b2ee2b5bfc0d68525fee936e51297a9b6c629f1
more than 2 years ago

Jan


 tests/drmsl.c | 28 ++++++++++++++++++++--------
 1 file changed, 20 insertions(+), 8 deletions(-)

Comments

Jan Vesely Aug. 14, 2017, 2:44 a.m. UTC | #1
On Fri, 2017-07-28 at 10:23 -0400, Jan Vesely wrote:
> Fixes: 7d8c9464081634f053e16e5eac9655a12fae1dc4
> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

ping.
Emil, should I just drop this patch?
another alternative is to remove the list implementation entirely,
since nobody noticed when it got broken.

Jan

> ---
> 
> I thought I sent this out, but couldn't find it in sent mail.
> This tests the behaviour set in 3b2ee2b5bfc0d68525fee936e51297a9b6c629f1
> more than 2 years ago
> 
> Jan
> 
> 
>  tests/drmsl.c | 28 ++++++++++++++++++++--------
>  1 file changed, 20 insertions(+), 8 deletions(-)
> 
> diff --git a/tests/drmsl.c b/tests/drmsl.c
> index d0ac0efa..d1b59a86 100644
> --- a/tests/drmsl.c
> +++ b/tests/drmsl.c
> @@ -106,7 +106,9 @@ static double do_time(int size, int iter)
>      return usec;
>  }
>  
> -static void print_neighbors(void *list, unsigned long key)
> +static void print_neighbors(void *list, unsigned long key,
> +                            unsigned long expected_prev,
> +                            unsigned long expected_next)
>  {
>      unsigned long prev_key = 0;
>      unsigned long next_key = 0;
> @@ -119,6 +121,16 @@ static void print_neighbors(void *list, unsigned long key)
>  				  &next_key, &next_value);
>      printf("Neighbors of %5lu: %d %5lu %5lu\n",
>  	   key, retval, prev_key, next_key);
> +    if (prev_key != expected_prev) {
> +        fprintf(stderr, "Unexpected neighbor: %5lu. Expected: %5lu\n",
> +                prev_key, expected_prev);
> +	exit(1);
> +    }
> +    if (next_key != expected_next) {
> +        fprintf(stderr, "Unexpected neighbor: %5lu. Expected: %5lu\n",
> +                next_key, expected_next);
> +	exit(1);
> +    }
>  }
>  
>  int main(void)
> @@ -138,13 +150,13 @@ int main(void)
>      print(list);
>      printf("\n==============================\n\n");
>  
> -    print_neighbors(list, 0);
> -    print_neighbors(list, 50);
> -    print_neighbors(list, 51);
> -    print_neighbors(list, 123);
> -    print_neighbors(list, 200);
> -    print_neighbors(list, 213);
> -    print_neighbors(list, 256);
> +    print_neighbors(list, 0, 0, 50);
> +    print_neighbors(list, 50, 0, 50);
> +    print_neighbors(list, 51, 50, 123);
> +    print_neighbors(list, 123, 50, 123);
> +    print_neighbors(list, 200, 123, 213);
> +    print_neighbors(list, 213, 123, 213);
> +    print_neighbors(list, 256, 213, 256);
>      printf("\n==============================\n\n");
>  
>      drmSLDelete(list, 50);
Emil Velikov Aug. 16, 2017, 1:51 a.m. UTC | #2
Hi Jan,

On 14 August 2017 at 03:44, Jan Vesely <jan.vesely@rutgers.edu> wrote:
> On Fri, 2017-07-28 at 10:23 -0400, Jan Vesely wrote:
>> Fixes: 7d8c9464081634f053e16e5eac9655a12fae1dc4
>> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
>
> ping.
> Emil, should I just drop this patch?
> another alternative is to remove the list implementation entirely,
> since nobody noticed when it got broken.
>
libdrm stuff has been under my radar for a bit.
I'll try to take a look tomorrow/the day after.

I've been travelling over the last few days and I'm still in the
middle of it :-\

-Emil
Emil Velikov Aug. 21, 2017, 12:19 p.m. UTC | #3
On 16 August 2017 at 02:51, Emil Velikov <emil.l.velikov@gmail.com> wrote:
> Hi Jan,
>
> On 14 August 2017 at 03:44, Jan Vesely <jan.vesely@rutgers.edu> wrote:
>> On Fri, 2017-07-28 at 10:23 -0400, Jan Vesely wrote:
>>> Fixes: 7d8c9464081634f053e16e5eac9655a12fae1dc4
>>> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
>>
>> ping.
>> Emil, should I just drop this patch?
>> another alternative is to remove the list implementation entirely,
>> since nobody noticed when it got broken.
>>
> libdrm stuff has been under my radar for a bit.
> I'll try to take a look tomorrow/the day after.
>
> I've been travelling over the last few days and I'm still in the
> middle of it :-\
>
Thanks for the patience Jan.
Pushed the patch to master.

-Emil
diff mbox

Patch

diff --git a/tests/drmsl.c b/tests/drmsl.c
index d0ac0efa..d1b59a86 100644
--- a/tests/drmsl.c
+++ b/tests/drmsl.c
@@ -106,7 +106,9 @@  static double do_time(int size, int iter)
     return usec;
 }
 
-static void print_neighbors(void *list, unsigned long key)
+static void print_neighbors(void *list, unsigned long key,
+                            unsigned long expected_prev,
+                            unsigned long expected_next)
 {
     unsigned long prev_key = 0;
     unsigned long next_key = 0;
@@ -119,6 +121,16 @@  static void print_neighbors(void *list, unsigned long key)
 				  &next_key, &next_value);
     printf("Neighbors of %5lu: %d %5lu %5lu\n",
 	   key, retval, prev_key, next_key);
+    if (prev_key != expected_prev) {
+        fprintf(stderr, "Unexpected neighbor: %5lu. Expected: %5lu\n",
+                prev_key, expected_prev);
+	exit(1);
+    }
+    if (next_key != expected_next) {
+        fprintf(stderr, "Unexpected neighbor: %5lu. Expected: %5lu\n",
+                next_key, expected_next);
+	exit(1);
+    }
 }
 
 int main(void)
@@ -138,13 +150,13 @@  int main(void)
     print(list);
     printf("\n==============================\n\n");
 
-    print_neighbors(list, 0);
-    print_neighbors(list, 50);
-    print_neighbors(list, 51);
-    print_neighbors(list, 123);
-    print_neighbors(list, 200);
-    print_neighbors(list, 213);
-    print_neighbors(list, 256);
+    print_neighbors(list, 0, 0, 50);
+    print_neighbors(list, 50, 0, 50);
+    print_neighbors(list, 51, 50, 123);
+    print_neighbors(list, 123, 50, 123);
+    print_neighbors(list, 200, 123, 213);
+    print_neighbors(list, 213, 123, 213);
+    print_neighbors(list, 256, 213, 256);
     printf("\n==============================\n\n");
 
     drmSLDelete(list, 50);