From 2ba367f3f1d87567b674dfee4215a730c9a72abe Mon Sep 17 00:00:00 2001 From: wguanghao Date: Wed, 28 Jul 2021 14:56:43 +0800 Subject: [PATCH] %check: add make run-unit-test --- ...odify-for-systems-with-PGSIZE-of-64K.patch | 101 ++++++++++++++++++ lvm2.spec | 9 +- 2 files changed, 109 insertions(+), 1 deletion(-) create mode 100644 0014-unit-test-modify-for-systems-with-PGSIZE-of-64K.patch diff --git a/0014-unit-test-modify-for-systems-with-PGSIZE-of-64K.patch b/0014-unit-test-modify-for-systems-with-PGSIZE-of-64K.patch new file mode 100644 index 0000000..70792aa --- /dev/null +++ b/0014-unit-test-modify-for-systems-with-PGSIZE-of-64K.patch @@ -0,0 +1,101 @@ +From ae53fb697e738779aa0392dea2b3c489a5316744 Mon Sep 17 00:00:00 2001 +From: Wu Guanghao +Date: Tue, 23 Feb 2021 17:39:29 +0800 +Subject: [PATCH] unit-test: modify for systems with PGSIZE of 64K + +This modification supports dynamically obtaining the value of PAGE_SIZE, +which is compatible with systems with PAGE_SIZE of (4K/64K) + +Signed-off-by: wuguanghao +--- + test/unit/bcache_t.c | 7 ++++--- + test/unit/bcache_utils_t.c | 2 +- + test/unit/io_engine_t.c | 7 +++++-- + 3 files changed, 10 insertions(+), 6 deletions(-) + +diff --git a/test/unit/bcache_t.c b/test/unit/bcache_t.c +index 2a8f931..418ae9a 100644 +--- a/test/unit/bcache_t.c ++++ b/test/unit/bcache_t.c +@@ -360,6 +360,7 @@ static void _large_fixture_exit(void *context) + *--------------------------------------------------------------*/ + #define MEG 2048 + #define SECTOR_SHIFT 9 ++#define PAGE_SIZE_SECTORS (sysconf(_SC_PAGE_SIZE) >> SECTOR_SHIFT) + + static void good_create(sector_t block_size, unsigned nr_cache_blocks) + { +@@ -389,12 +390,12 @@ static void bad_create(sector_t block_size, unsigned nr_cache_blocks) + + static void test_create(void *fixture) + { +- good_create(8, 16); ++ good_create(PAGE_SIZE_SECTORS, 16); + } + + static void test_nr_cache_blocks_must_be_positive(void *fixture) + { +- bad_create(8, 0); ++ bad_create(PAGE_SIZE_SECTORS, 0); + } + + static void test_block_size_must_be_positive(void *fixture) +@@ -412,7 +413,7 @@ static void test_block_size_must_be_multiple_of_page_size(void *fixture) + bad_create(_bad_examples[i], 16); + + for (i = 1; i < 100; i++) +- good_create(i * 8, 16); ++ good_create(i * PAGE_SIZE_SECTORS, 16); + } + + static void test_get_triggers_read(void *context) +diff --git a/test/unit/bcache_utils_t.c b/test/unit/bcache_utils_t.c +index d022c51..d54b144 100644 +--- a/test/unit/bcache_utils_t.c ++++ b/test/unit/bcache_utils_t.c +@@ -26,7 +26,7 @@ + + //---------------------------------------------------------------- + +-#define T_BLOCK_SIZE 4096 ++#define T_BLOCK_SIZE sysconf(_SC_PAGESIZE) + #define NR_BLOCKS 64 + #define INIT_PATTERN 123 + +diff --git a/test/unit/io_engine_t.c b/test/unit/io_engine_t.c +index 44e93e0..f8cdc91 100644 +--- a/test/unit/io_engine_t.c ++++ b/test/unit/io_engine_t.c +@@ -25,8 +25,11 @@ + + //---------------------------------------------------------------- + ++#define SECTOR_SHIFT 9 + #define SECTOR_SIZE 512 + #define BLOCK_SIZE_SECTORS 8 ++#define PAGE_SIZE sysconf(_SC_PAGESIZE) ++#define PAGE_SIZE_SECTORS (PAGE_SIZE >> SECTOR_SHIFT) + #define NR_BLOCKS 64 + + struct fixture { +@@ -82,7 +85,7 @@ static void *_fix_init(void) + T_ASSERT(f); + f->e = create_async_io_engine(); + T_ASSERT(f->e); +- if (posix_memalign((void **) &f->data, 4096, SECTOR_SIZE * BLOCK_SIZE_SECTORS)) ++ if (posix_memalign((void **) &f->data, PAGE_SIZE, SECTOR_SIZE * BLOCK_SIZE_SECTORS)) + test_fail("posix_memalign failed"); + + snprintf(f->fname, sizeof(f->fname), "unit-test-XXXXXX"); +@@ -167,7 +170,7 @@ static void _test_write_bytes(void *fixture) + unsigned offset = 345; + char buf_out[32]; + char buf_in[32]; +- struct bcache *cache = bcache_create(8, BLOCK_SIZE_SECTORS, f->e); ++ struct bcache *cache = bcache_create(PAGE_SIZE_SECTORS, BLOCK_SIZE_SECTORS, f->e); + T_ASSERT(cache); + + // T_ASSERT(bcache_read_bytes(cache, f->fd, offset, sizeof(buf_in), buf_in)); +-- +1.8.3.1 + diff --git a/lvm2.spec b/lvm2.spec index 64eb780..77b02ba 100644 --- a/lvm2.spec +++ b/lvm2.spec @@ -43,7 +43,7 @@ Name: lvm2 Version: 2.03.09 -Release: 7 +Release: 8 Epoch: 8 Summary: Tools for logical volume management License: GPLv2+ and LGPLv2.1 and BSD @@ -62,6 +62,7 @@ Patch10: 0010-enhancement-syslog-more-when-use-libdevmapper-so.patch Patch11: 0011-enhancement-log-it-when-disk-slow.patch Patch12: 0012-bugfix-lvm2-fix-the-reuse-of-va_list.patch Patch13: 0013-lvreduce-support-yes.patch +Patch14: 0014-unit-test-modify-for-systems-with-PGSIZE-of-64K.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -246,6 +247,9 @@ can register and carryout actions triggered when particular events occur. %configure --with-default-dm-run-dir=/run --with-default-run-dir=/run/lvm --with-default-pid-dir=/run --with-default-locking-dir=/run/lock/lvm --with-usrlibdir=%{_libdir} --enable-fsadm --enable-write_install --with-user= --with-group= --with-device-uid=0 --with-device-gid=6 --with-device-mode=0660 --enable-pkgconfig --enable-applib --enable-cmdlib --enable-dmeventd --enable-blkid_wiping --enable-python3-bindings %{?configure_cluster} %{?configure_cmirror} --with-udevdir=%{_prefix}/lib/udev/rules.d --enable-udev_sync --with-thin=internal --enable-lvmetad --with-thin=internal --enable-lvmpolld %{?configure_lockd_dlm} %{?configure_lockd_sanlock} --enable-dbus-service --enable-notify-dbus --enable-dmfilemapd make %{?_smp_mflags} +%check +make run-unit-test + %install make install DESTDIR=%{buildroot} make install_system_dirs DESTDIR=%{buildroot} @@ -484,6 +488,9 @@ fi %changelog +* Wed Jul 28 2021 wuguanghao - 8.2.03.09-8 +- %check: add make run-unit-test + * Wed Jul 28 2021 wuguanghao - 8.2.03.09-7 - lvreduce support --yes option -- Gitee