Documentation/core-api/index.rst | 1 + Documentation/core-api/min_heap.rst | 291 ++++++++++++++++++++++++++++ drivers/md/bcache/Kconfig | 1 + drivers/md/dm-vdo/Kconfig | 1 + fs/bcachefs/Kconfig | 1 + include/linux/min_heap.h | 202 ++++++++++++------- kernel/events/core.c | 6 +- lib/Kconfig | 3 + lib/Kconfig.debug | 1 + lib/Makefile | 1 + lib/min_heap.c | 70 +++++++ 11 files changed, 508 insertions(+), 70 deletions(-) create mode 100644 Documentation/core-api/min_heap.rst create mode 100644 lib/min_heap.c
Add non-inline versions of the min heap API functions in lib/min_heap.c
and updates all users outside of kernel/events/core.c to use these
non-inline versions. Additionally, it micro-optimizes the efficiency of
the min heap by pre-scaling the counter, following the same approach as
in lib/sort.c. Documentation for the min heap API has also been added
to the core-api section.
Regards,
Kuan-Wei
Kuan-Wei Chiu (3):
lib/min_heap: Introduce non-inline versions of min heap API functions
lib min_heap: Optimize min heap by prescaling counters for better
performance
Documentation/core-api: Add min heap API introduction
Documentation/core-api/index.rst | 1 +
Documentation/core-api/min_heap.rst | 291 ++++++++++++++++++++++++++++
drivers/md/bcache/Kconfig | 1 +
drivers/md/dm-vdo/Kconfig | 1 +
fs/bcachefs/Kconfig | 1 +
include/linux/min_heap.h | 202 ++++++++++++-------
kernel/events/core.c | 6 +-
lib/Kconfig | 3 +
lib/Kconfig.debug | 1 +
lib/Makefile | 1 +
lib/min_heap.c | 70 +++++++
11 files changed, 508 insertions(+), 70 deletions(-)
create mode 100644 Documentation/core-api/min_heap.rst
create mode 100644 lib/min_heap.c
--
2.34.1
On Mon, Oct 14, 2024 at 02:47:00AM GMT, Kuan-Wei Chiu wrote: > Add non-inline versions of the min heap API functions in lib/min_heap.c > and updates all users outside of kernel/events/core.c to use these > non-inline versions. Additionally, it micro-optimizes the efficiency of > the min heap by pre-scaling the counter, following the same approach as > in lib/sort.c. Documentation for the min heap API has also been added > to the core-api section. Nice, has it been tested - do you need a CI account? I'd like to start seeing links to CI results in patch postings (and I need to tweak the CI to add git fetch links, as well). Coly, there's ktest tests for bcache that need to be updated - if you wanted to take that on it'd be lovely to consolidate how our subsystems are getting tested; I can give you a CI account as well. > > Regards, > Kuan-Wei > > Kuan-Wei Chiu (3): > lib/min_heap: Introduce non-inline versions of min heap API functions > lib min_heap: Optimize min heap by prescaling counters for better > performance > Documentation/core-api: Add min heap API introduction > > Documentation/core-api/index.rst | 1 + > Documentation/core-api/min_heap.rst | 291 ++++++++++++++++++++++++++++ > drivers/md/bcache/Kconfig | 1 + > drivers/md/dm-vdo/Kconfig | 1 + > fs/bcachefs/Kconfig | 1 + > include/linux/min_heap.h | 202 ++++++++++++------- > kernel/events/core.c | 6 +- > lib/Kconfig | 3 + > lib/Kconfig.debug | 1 + > lib/Makefile | 1 + > lib/min_heap.c | 70 +++++++ > 11 files changed, 508 insertions(+), 70 deletions(-) > create mode 100644 Documentation/core-api/min_heap.rst > create mode 100644 lib/min_heap.c
> 2024年10月14日 07:05,Kent Overstreet <kent.overstreet@linux.dev> 写道: > > On Mon, Oct 14, 2024 at 02:47:00AM GMT, Kuan-Wei Chiu wrote: >> Add non-inline versions of the min heap API functions in lib/min_heap.c >> and updates all users outside of kernel/events/core.c to use these >> non-inline versions. Additionally, it micro-optimizes the efficiency of >> the min heap by pre-scaling the counter, following the same approach as >> in lib/sort.c. Documentation for the min heap API has also been added >> to the core-api section. > > Nice, has it been tested - do you need a CI account? > > I'd like to start seeing links to CI results in patch postings (and I > need to tweak the CI to add git fetch links, as well). > > Coly, there's ktest tests for bcache that need to be updated - if you > wanted to take that on it'd be lovely to consolidate how our subsystems > are getting tested; I can give you a CI account as well. Yes, please do. And let me take a look at the test cases for bcache part. Thanks. Coly Li
On Mon, Oct 14, 2024 at 09:18:33AM GMT, Coly Li wrote: > > > > 2024年10月14日 07:05,Kent Overstreet <kent.overstreet@linux.dev> 写道: > > > > On Mon, Oct 14, 2024 at 02:47:00AM GMT, Kuan-Wei Chiu wrote: > >> Add non-inline versions of the min heap API functions in lib/min_heap.c > >> and updates all users outside of kernel/events/core.c to use these > >> non-inline versions. Additionally, it micro-optimizes the efficiency of > >> the min heap by pre-scaling the counter, following the same approach as > >> in lib/sort.c. Documentation for the min heap API has also been added > >> to the core-api section. > > > > Nice, has it been tested - do you need a CI account? > > > > I'd like to start seeing links to CI results in patch postings (and I > > need to tweak the CI to add git fetch links, as well). > > > > Coly, there's ktest tests for bcache that need to be updated - if you > > wanted to take that on it'd be lovely to consolidate how our subsystems > > are getting tested; I can give you a CI account as well. > > Yes, please do. And let me take a look at the test cases for bcache part. Send me the username you want and your ssh pubkey bcache tests are here: https://evilpiepirate.org/git/ktest.git/tree/tests/bcache they are _old_, and need a lot of updating - you'll probably want to hit me up on IRC
On Sun, Oct 13, 2024 at 07:05:38PM -0400, Kent Overstreet wrote: > On Mon, Oct 14, 2024 at 02:47:00AM GMT, Kuan-Wei Chiu wrote: > > Add non-inline versions of the min heap API functions in lib/min_heap.c > > and updates all users outside of kernel/events/core.c to use these > > non-inline versions. Additionally, it micro-optimizes the efficiency of > > the min heap by pre-scaling the counter, following the same approach as > > in lib/sort.c. Documentation for the min heap API has also been added > > to the core-api section. > > Nice, has it been tested - do you need a CI account? > > I'd like to start seeing links to CI results in patch postings (and I > need to tweak the CI to add git fetch links, as well). > It would be nice to have a CI account to test my patches. Is there any guide available on how to use it? Regards, Kuan-Wei > Coly, there's ktest tests for bcache that need to be updated - if you > wanted to take that on it'd be lovely to consolidate how our subsystems > are getting tested; I can give you a CI account as well. > > > > > Regards, > > Kuan-Wei > > > > Kuan-Wei Chiu (3): > > lib/min_heap: Introduce non-inline versions of min heap API functions > > lib min_heap: Optimize min heap by prescaling counters for better > > performance > > Documentation/core-api: Add min heap API introduction > > > > Documentation/core-api/index.rst | 1 + > > Documentation/core-api/min_heap.rst | 291 ++++++++++++++++++++++++++++ > > drivers/md/bcache/Kconfig | 1 + > > drivers/md/dm-vdo/Kconfig | 1 + > > fs/bcachefs/Kconfig | 1 + > > include/linux/min_heap.h | 202 ++++++++++++------- > > kernel/events/core.c | 6 +- > > lib/Kconfig | 3 + > > lib/Kconfig.debug | 1 + > > lib/Makefile | 1 + > > lib/min_heap.c | 70 +++++++ > > 11 files changed, 508 insertions(+), 70 deletions(-) > > create mode 100644 Documentation/core-api/min_heap.rst > > create mode 100644 lib/min_heap.c >
On Mon, Oct 14, 2024 at 07:27:06AM GMT, Kuan-Wei Chiu wrote: > On Sun, Oct 13, 2024 at 07:05:38PM -0400, Kent Overstreet wrote: > > On Mon, Oct 14, 2024 at 02:47:00AM GMT, Kuan-Wei Chiu wrote: > > > Add non-inline versions of the min heap API functions in lib/min_heap.c > > > and updates all users outside of kernel/events/core.c to use these > > > non-inline versions. Additionally, it micro-optimizes the efficiency of > > > the min heap by pre-scaling the counter, following the same approach as > > > in lib/sort.c. Documentation for the min heap API has also been added > > > to the core-api section. > > > > Nice, has it been tested - do you need a CI account? > > > > I'd like to start seeing links to CI results in patch postings (and I > > need to tweak the CI to add git fetch links, as well). > > > It would be nice to have a CI account to test my patches. Is there any > guide available on how to use it? I give you a config file to edit, it watches your git branch(es), you watch dashboard
© 2016 - 2026 Red Hat, Inc.