All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yury Norov <yury.norov@gmail.com>
To: linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	David Howells <dhowells@redhat.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Jonathan Corbet <corbet@lwn.net>,
	"Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>,
	Matthew Wilcox <willy@infradead.org>, NeilBrown <neilb@suse.de>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Russell King <linux@armlinux.org.uk>,
	Vlastimil Babka <vbabka@suse.cz>,
	William Kucharski <william.kucharski@oracle.com>,
	linux-doc@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-mm@kvack.org
Cc: Yury Norov <yury.norov@gmail.com>
Subject: [PATCH 0/8] lib: cleanup bitmap-related headers
Date: Fri,  1 Jul 2022 05:54:22 -0700	[thread overview]
Message-ID: <20220701125430.2907638-1-yury.norov@gmail.com> (raw)

This series unifies declarations of bitmap-related functions and aligns
return types with values that actually returned. Also, it moves one-liner
wrappers around cpumask functions into headers, so that compiler has a
chance to optimize better.

With this series, GCC 11.2 for ARM64 with kernel v5.19-rc4:
add/remove: 15/7 grow/shrink: 461/164 up/down: 14844/-4580 (10264)

This +10K didn't surprize me because  modern compilers are more agressive
in inlining, loop unrolling, and other techniques that increase size of
the image.

Yury Norov (8):
  arm: align find_bit defs with generic kernel
  lib/bitmap: change return values to bool where appropriate
  lib/bitmap: change type of bitmap_weight to unsigned int
  cpumask: change return types to bool where appropriate
  lib/cpumask: change return types to unsigned
  lib/cpumask: move one-line wrappers around find_bit to the header
  mm: split include/linux/gfp.h
  lib/cpumask: move some one-line wrappers to header file

 Documentation/core-api/mm-api.rst |   8 +-
 MAINTAINERS                       |   1 +
 arch/arm/include/asm/bitops.h     |  20 +-
 include/linux/bitmap.h            |  10 +-
 include/linux/cpumask.h           | 125 +++++++++--
 include/linux/gfp.h               | 334 +----------------------------
 include/linux/gfp_flags.h         | 338 ++++++++++++++++++++++++++++++
 lib/bitmap.c                      |   9 +-
 lib/cpumask.c                     |  97 +--------
 tools/include/linux/bitmap.h      |  12 +-
 tools/lib/bitmap.c                |   6 +-
 11 files changed, 483 insertions(+), 477 deletions(-)
 create mode 100644 include/linux/gfp_flags.h

-- 
2.34.1


WARNING: multiple messages have this Message-ID (diff)
From: Yury Norov <yury.norov@gmail.com>
To: linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	David Howells <dhowells@redhat.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Jonathan Corbet <corbet@lwn.net>,
	"Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>,
	Matthew Wilcox <willy@infradead.org>, NeilBrown <neilb@suse.de>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Russell King <linux@armlinux.org.uk>,
	Vlastimil Babka <vbabka@suse.cz>,
	William Kucharski <william.kucharski@oracle.com>,
	linux-doc@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-mm@kvack.org
Cc: Yury Norov <yury.norov@gmail.com>
Subject: [PATCH 0/8] lib: cleanup bitmap-related headers
Date: Fri,  1 Jul 2022 05:54:22 -0700	[thread overview]
Message-ID: <20220701125430.2907638-1-yury.norov@gmail.com> (raw)

This series unifies declarations of bitmap-related functions and aligns
return types with values that actually returned. Also, it moves one-liner
wrappers around cpumask functions into headers, so that compiler has a
chance to optimize better.

With this series, GCC 11.2 for ARM64 with kernel v5.19-rc4:
add/remove: 15/7 grow/shrink: 461/164 up/down: 14844/-4580 (10264)

This +10K didn't surprize me because  modern compilers are more agressive
in inlining, loop unrolling, and other techniques that increase size of
the image.

Yury Norov (8):
  arm: align find_bit defs with generic kernel
  lib/bitmap: change return values to bool where appropriate
  lib/bitmap: change type of bitmap_weight to unsigned int
  cpumask: change return types to bool where appropriate
  lib/cpumask: change return types to unsigned
  lib/cpumask: move one-line wrappers around find_bit to the header
  mm: split include/linux/gfp.h
  lib/cpumask: move some one-line wrappers to header file

 Documentation/core-api/mm-api.rst |   8 +-
 MAINTAINERS                       |   1 +
 arch/arm/include/asm/bitops.h     |  20 +-
 include/linux/bitmap.h            |  10 +-
 include/linux/cpumask.h           | 125 +++++++++--
 include/linux/gfp.h               | 334 +----------------------------
 include/linux/gfp_flags.h         | 338 ++++++++++++++++++++++++++++++
 lib/bitmap.c                      |   9 +-
 lib/cpumask.c                     |  97 +--------
 tools/include/linux/bitmap.h      |  12 +-
 tools/lib/bitmap.c                |   6 +-
 11 files changed, 483 insertions(+), 477 deletions(-)
 create mode 100644 include/linux/gfp_flags.h

-- 
2.34.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

             reply	other threads:[~2022-07-01 12:54 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-01 12:54 Yury Norov [this message]
2022-07-01 12:54 ` [PATCH 0/8] lib: cleanup bitmap-related headers Yury Norov
2022-07-01 12:54 ` [PATCH 1/8] arm: align find_bit declarations with generic kernel Yury Norov
2022-07-01 12:54   ` Yury Norov
2022-07-02 11:55   ` Andy Shevchenko
2022-07-02 11:55     ` Andy Shevchenko
2022-07-01 12:54 ` [PATCH 2/8] lib/bitmap: change return types to bool where appropriate Yury Norov
2022-07-01 12:54   ` Yury Norov
2022-07-01 12:54 ` [PATCH 3/8] lib/bitmap: change type of bitmap_weight to unsigned int Yury Norov
2022-07-01 12:54   ` Yury Norov
2022-07-02 11:57   ` Andy Shevchenko
2022-07-02 11:57     ` Andy Shevchenko
2022-07-01 12:54 ` [PATCH 4/8] cpumask: change return types to bool where appropriate Yury Norov
2022-07-01 12:54   ` Yury Norov
2022-07-01 12:54 ` [PATCH 5/8] lib/cpumask: change return types to unsigned " Yury Norov
2022-07-01 12:54   ` Yury Norov
2022-07-02 12:00   ` Andy Shevchenko
2022-07-02 12:00     ` Andy Shevchenko
2022-07-02 21:59     ` Yury Norov
2022-07-02 21:59       ` Yury Norov
2022-07-01 12:54 ` [PATCH 6/8] lib/cpumask: move trivial wrappers around find_bit to the header Yury Norov
2022-07-01 12:54   ` Yury Norov
2022-07-01 12:54 ` [PATCH 7/8] mm: split include/linux/gfp.h Yury Norov
2022-07-01 12:54   ` Yury Norov
2022-07-02 12:05   ` Andy Shevchenko
2022-07-02 12:05     ` Andy Shevchenko
2022-07-02 12:09     ` Andy Shevchenko
2022-07-02 12:09       ` Andy Shevchenko
2022-07-02 22:06       ` Yury Norov
2022-07-02 22:06         ` Yury Norov
2022-07-01 12:54 ` [PATCH 8/8] lib/cpumask: move some one-line wrappers to header file Yury Norov
2022-07-01 12:54   ` Yury Norov

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=20220701125430.2907638-1-yury.norov@gmail.com \
    --to=yury.norov@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=corbet@lwn.net \
    --cc=dhowells@redhat.com \
    --cc=geert@linux-m68k.org \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux@armlinux.org.uk \
    --cc=linux@rasmusvillemoes.dk \
    --cc=neilb@suse.de \
    --cc=vbabka@suse.cz \
    --cc=william.kucharski@oracle.com \
    --cc=willy@infradead.org \
    /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.