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 - 2024 Red Hat, Inc.