[PATCH v3 0/5] lib: rework bitmap_parselist and tests

Yury Norov
2019-04-03T04:39:58Z

bitmap_parselist has been evolved from a pretty simple idea for long and
now lacks for refactoring. It is not structured, has nested loops and a
set of opaque-named variables.

Things are more complicated because bitmap_parselist() is a part of user
interface, and its behavior should not change.

In this patchset
- bitmap_parselist_user() made a wrapper on bitmap_parselist();
- bitmap_parselist() reworked (patch 2);
- time measurement in test_bitmap_parselist switched to ktime_get
(patch 3);
- new tests introduced (patch 4), and
- bitmap_parselist_user() testing enabled with the same testset as
bitmap_parselist() (patch 5).

v1: https://lkml.org/lkml/2018/12/23/50
v2: https://www.spinics.net/lists/kernel/msg3048976.html
v3: Implementation of an approach with copying the data to
kernel space in bitmap_parselist_user() instead of parsing
user data byte by byte. For me, it looks better than v2.

Yury Norov (5):
lib: make bitmap_parselist_user() a wrapper on bitmap_parselist()
lib: rework bitmap_parselist
lib/test_bitmap: switch test_bitmap_parselist to ktime_get()
lib/test_bitmap: add testcases for bitmap_parselist
lib/test_bitmap: add tests for bitmap_parselist_user

lib/bitmap.c | 285 ++++++++++++++++++++++++++--------------------
lib/test_bitmap.c | 67 ++++++++---
2 files changed, 218 insertions(+), 134 deletions(-)

--
2.17.1