On Wed Jan 21, 2026 at 12:42 PM CET, Janusz Krzysztofik wrote:
> Current device sorting algorithm positions PCIe bridge upstream ports
> between DRM and PCI devices of their GPU children.  Listing those two not
> interleaved with bridge ports, and the ports following their PCI GPU
> devices, seems more clear.  Go for it.
>
> Signed-off-by: Janusz Krzysztofik <[email protected]>
> ---
>  lib/igt_device_scan.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
> index 34c7a8131b..61f507a06d 100644
> --- a/lib/igt_device_scan.c
> +++ b/lib/igt_device_scan.c
> @@ -23,6 +23,7 @@
>   */
>  
>  #include "drmtest.h"
> +#include "igt_aux.h"
>  #include "igt_core.h"
>  #include "igt_device_scan.h"
>  #include "igt_list.h"
> @@ -1061,6 +1062,7 @@ static struct igt_device *duplicate_device(struct 
> igt_device *dev) {
>  static int devs_compare(const void *a, const void *b)
>  {
>       struct igt_device *dev1, *dev2;
> +     unsigned int len1, len2;
>       int ret;
>  
>       dev1 = *(struct igt_device **) a;
> @@ -1069,6 +1071,12 @@ static int devs_compare(const void *a, const void *b)
>       if (ret)
>               return ret;
>  
> +     len1 = strlen(dev1->syspath);
> +     len2 = strlen(dev2->syspath);
> +
> +     if (len1 != len2 && !strncmp(dev1->syspath, dev2->syspath, min(len1, 
> len2)))
> +             return len2 - len1;
> +
>       return strcmp(dev1->syspath, dev2->syspath);
>  }
>  
Reviewed-by: Sebastian Brzezinka <[email protected]>
-- 
Best regards,
Sebastian

Reply via email to