[Intel-gfx] [PATCH igt 1/2] lib: Update intel_require_memory to handle +4GB cases

Chris Wilson chris at chris-wilson.co.uk
Wed Jun 24 03:20:37 PDT 2015


On Tue, Jun 23, 2015 at 01:21:28PM +0100, Michel Thierry wrote:
> Changed size from u32 to u64 to support +4GB.
> 48-bit PPGTT test cases may need extra memory available.
> 
> Signed-off-by: Michel Thierry <michel.thierry at intel.com>
> ---
>  lib/igt_aux.h  | 2 +-
>  lib/intel_os.c | 6 +++---
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/igt_aux.h b/lib/igt_aux.h
> index b2dc267..922ae5b 100644
> --- a/lib/igt_aux.h
> +++ b/lib/igt_aux.h
> @@ -86,7 +86,7 @@ uint64_t intel_get_avail_ram_mb(void);
>  uint64_t intel_get_total_ram_mb(void);
>  uint64_t intel_get_total_swap_mb(void);
>  
> -void intel_require_memory(uint32_t count, uint32_t size, unsigned mode);
> +void intel_require_memory(uint32_t count, uint64_t size, unsigned mode);
>  #define CHECK_RAM 0x1
>  #define CHECK_SWAP 0x2
>  
> diff --git a/lib/intel_os.c b/lib/intel_os.c
> index 3321a8d..2650788 100644
> --- a/lib/intel_os.c
> +++ b/lib/intel_os.c
> @@ -215,7 +215,7 @@ intel_get_total_swap_mb(void)
>   * assumption that any test that needs to check for memory requirements is a
>   * thrashing test unsuitable for slow simulated systems.
>   */
> -void intel_require_memory(uint32_t count, uint32_t size, unsigned mode)
> +void intel_require_memory(uint32_t count, uint64_t size, unsigned mode)
>  {
>  /* rough estimate of how many bytes the kernel requires to track each object */
>  #define KERNEL_BO_OVERHEAD 512
> @@ -225,8 +225,8 @@ void intel_require_memory(uint32_t count, uint32_t size, unsigned mode)
>  	required *= size + KERNEL_BO_OVERHEAD;
>  	required = ALIGN(required, 4096);
>  
> -	igt_debug("Checking %u surfaces of size %u bytes (total %llu) against %s%s\n",
> -		  count, size, (long long)required,
> +	igt_debug("Checking %u surfaces of size %llu bytes (total %llu) against %s%s\n",

I think this is probably a good time to start putting thousand
separators into the output "%'llu" (hoping that we have gcc everywhere).

This would also need

diff --git a/lib/igt_core.c b/lib/igt_core.c
index 1367863..8ac1f33 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -55,6 +55,7 @@
 #include <time.h>
 #include <ctype.h>
 #include <limits.h>
+#include <locale.h>
 
 #include "drmtest.h"
 #include "intel_chipset.h"
@@ -523,6 +524,9 @@ static int common_init(int *argc, char **argv,
        int ret = 0;
        char *env = getenv("IGT_LOG_LEVEL");
 
+       if (isatty(STDOUT_FILENO))
+               setlocale(LC_ALL, "");
+
        if (env) {
                if (strcmp(env, "debug") == 0)
                        igt_log_level = IGT_LOG_DEBUG;
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list