All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cyril Hrubis <chrubis@suse.cz>
To: Petr Vorel <pvorel@suse.cz>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [PATCH 1/1] cachestat01: Reduce required space on 64kb page size
Date: Tue, 30 Jul 2024 09:49:25 +0200	[thread overview]
Message-ID: <ZqibBUXHVfSjN-_4@yuki> (raw)
In-Reply-To: <20240729223431.1307306-1-pvorel@suse.cz>

Hi!
> cachestat01.c:39: TINFO: Number of pages: 4096
> cachestat01.c:56: TPASS: cachestat(fd, cs_range, cs, 0) passed
> cachestat01.c:59: TPASS: cs->nr_cache + cs->nr_evicted == num_pages (4096)
> cachestat01.c:38: TINFO: Disable file synchronization
> cachestat01.c:39: TINFO: Number of pages: 8192
> cachestat01.c:46: TBROK: write(3,0x1000ddb0aa0,65536) failed: ENOSPC (28)
> 
> Fixes: 93b28ee69d ("Add cachestat01 test")
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
> First I thought we should use tst_fs_has_free() in each
> test_cached_pages() run, but test uses .all_filesystems, thus it's
> always 300 MB. Should we, just in case, use .dev_min_size = 300,
> to make sure it runs correctly even we change the DEV_SIZE_MB value?
> 
> Or, should we really calculate required space with tst_fs_has_free(),
> based on page size num_pages and * 1.1 (reserved space for metadata)?

Hmm, I guess that we should calculate how many pages are going to fit
into the filesystem and cap it on a sane number as well, so that the
test runs for a reasonable time if user passed a real and big block
device, so something as:

num_pages = MIN(tst_device->size/(2*page_size), 15);

>  testcases/kernel/syscalls/cachestat/cachestat01.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/testcases/kernel/syscalls/cachestat/cachestat01.c b/testcases/kernel/syscalls/cachestat/cachestat01.c
> index f7f6275cbd..edb6335d9e 100644
> --- a/testcases/kernel/syscalls/cachestat/cachestat01.c
> +++ b/testcases/kernel/syscalls/cachestat/cachestat01.c
> @@ -67,7 +67,7 @@ static void test_cached_pages(const unsigned int use_sync, const int num_pages)
>  
>  static void run(unsigned int use_sync)
>  {
> -	for (int i = 0; i < 15; i++)
> +	for (int i = 0; i < page_size > 4096 ? 13 : 15; i++)

Uff, this is starting to look like perl...

>  		test_cached_pages(use_sync, 1 << i);
>  }
>  
> -- 
> 2.45.2
> 

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

  parent reply	other threads:[~2024-07-30  7:50 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-29 22:34 [LTP] [PATCH 1/1] cachestat01: Reduce required space on 64kb page size Petr Vorel
2024-07-29 22:36 ` Petr Vorel
2024-07-30  7:49 ` Cyril Hrubis [this message]
2024-07-30  8:57   ` Petr Vorel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZqibBUXHVfSjN-_4@yuki \
    --to=chrubis@suse.cz \
    --cc=ltp@lists.linux.it \
    --cc=pvorel@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.