From: Petr Vorel <pvorel@suse.cz>
To: "xuyang2018.jy@fujitsu.com" <xuyang2018.jy@fujitsu.com>
Cc: "ltp@lists.linux.it" <ltp@lists.linux.it>
Subject: Re: [LTP] [PATCH v4 2/4] zram/zram_lib.sh: adapt the situation that zram device is being used
Date: Fri, 17 Dec 2021 11:34:46 +0100 [thread overview]
Message-ID: <Ybxnxs5t5lDpNS4U@pevik> (raw)
In-Reply-To: <61BC59C5.9090708@fujitsu.com>
Hi Xu,
> >> If zram-generator package is installed and works, then we can not remove zram module
> >> because zram swap is being used. This case needs a clean zram environment, change this
> >> test by using hot_add/hot_remove interface[1]. So even zram device is being used, we
> >> still can add zram device and remove them in cleanup.
> > BTW this was added in v4.2-rc1 (6 years ago, 6566d1a32bf7 ("zram: add dynamic
> > device add/remove functionality")). Hopefully anybody still supporting older
> > kernels is using old LTP for it.
> Oh, I don't realize it before. I tested it on centos7 then I think this
> control interface maybe introduced long time ago.
> To be honst, I don't want to make this case more complex. How about
> adding /sys/class/zram-control check after load zram module. If not,
> just report case needs to use hot_add/hot_remove interface .
Would it work something like this?
ZRAM_SYSCTL_KERNEL_VERSION="4.2"
...
zram_cleanup()
{
...
if tst_kvcmp -lt $ZRAM_SYSCTL_KERNEL_VERSION; then
for i in $(seq $dev_start $dev_end); do
echo $i > /sys/class/zram-control/hot_remove
done
fi
zram_load()
{
...
if [ ! -d "/sys/class/zram-control" ]; then
modprobe zram num_devices=$dev_num
module_load=1
dev_start=0
dev_end=$(($dev_num - 1))
tst_res TPASS "all zram devices(/dev/zram0~$dev_end) successfully created"
return
fi
tst_kvcmp -lt $ZRAM_SYSCTL_KERNEL_VERSION && \
tst_brk TCONF "test requires kernel $ZRAM_SYSCTL_KERNEL_VERSION+"
dev_start=$(ls /dev/zram* | wc -w)
dev_end=$(($dev_start + $dev_num - 1))
for i in $(seq $dev_start $dev_end); do
cat /sys/class/zram-control/hot_add > /dev/null
done
Kind regards,
Petr
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2021-12-17 10:35 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-15 7:20 [LTP] [PATCH v4 1/4] swapping01: skip test if zram-swap is being used Yang Xu
2021-12-15 7:20 ` [LTP] [PATCH v4 2/4] zram/zram_lib.sh: adapt the situation that zram device " Yang Xu
2021-12-17 7:48 ` Petr Vorel
2021-12-17 9:34 ` xuyang2018.jy
2021-12-17 10:34 ` Petr Vorel [this message]
2021-12-20 2:58 ` xuyang2018.jy
2021-12-20 8:52 ` Petr Vorel
2021-12-17 7:49 ` Petr Vorel
2021-12-15 7:20 ` [LTP] [PATCH v4 3/4] zram/zram03: Convert into new api Yang Xu
2021-12-17 8:22 ` Petr Vorel
2021-12-17 9:42 ` xuyang2018.jy
2021-12-17 8:24 ` Petr Vorel
2021-12-15 7:20 ` [LTP] [PATCH v4 4/4] zram/zram01.sh: Use mem_used_total field instead of compr_data_size field Yang Xu
2021-12-17 8:47 ` Petr Vorel
2021-12-17 9:45 ` xuyang2018.jy
2021-12-17 10:36 ` Petr Vorel
2021-12-17 7:01 ` [LTP] [PATCH v4 1/4] swapping01: skip test if zram-swap is being used Petr Vorel
2021-12-17 7:04 ` xuyang2018.jy
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=Ybxnxs5t5lDpNS4U@pevik \
--to=pvorel@suse.cz \
--cc=ltp@lists.linux.it \
--cc=xuyang2018.jy@fujitsu.com \
/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.