mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kent Overstreet <kent.overstreet@gmail.com>
To: akpm@linux-foundation.org, linux-kernel@vger.kernel.org
Cc: Kent Overstreet <kent.overstreet@gmail.com>
Subject: [PATCH 0/7] generic radix trees; drop flex arrays
Date: Mon, 17 Dec 2018 08:19:22 -0500	[thread overview]
Message-ID: <20181217131929.11727-1-kent.overstreet@gmail.com> (raw)

this has been sitting on my todo list for far too long; let's try and get it
merged before flex arrays grow any new users.

The only significant change since the last time I mailed this out is that it's
now safe to use a genradix from multiple threads, including when new nodes are
being allocated.

Since we never _free_ nodes on a genradix while it's in use (only when the
entire tree is being freed), this adds very little code - we just use cmpxchg
for adding pointers to new nodes, there's no need to use rcu_read_lock() or
anything like that. And for the types of things we seem to want to use it for
it's quite useful.

Andrew, would you mind picking up this series, or would someone else be more
suitable? The patch series has been sent out a few times and seen a fair amoun
of review.

Kent Overstreet (7):
  openvswitch: convert to kvmalloc
  md: convert to kvmalloc
  selinux: convert to kvmalloc
  Generic radix trees
  proc: commit to genradix
  sctp: Convert to genradix
  Drop flex_arrays

 Documentation/core-api/flexible-arrays.rst    | 130 ------
 Documentation/core-api/generic-radix-tree.rst |  12 +
 Documentation/core-api/index.rst              |   1 +
 Documentation/flexible-arrays.txt             | 123 ------
 drivers/md/raid5-ppl.c                        |   6 +-
 drivers/md/raid5.c                            |  87 ++--
 drivers/md/raid5.h                            |   9 +-
 fs/proc/base.c                                |  43 +-
 include/linux/flex_array.h                    | 149 -------
 include/linux/generic-radix-tree.h            | 231 ++++++++++
 include/linux/poison.h                        |   3 -
 include/net/sctp/structs.h                    |  15 +-
 lib/Makefile                                  |   5 +-
 lib/flex_array.c                              | 398 ------------------
 lib/generic-radix-tree.c                      | 217 ++++++++++
 net/openvswitch/flow.h                        |   1 -
 net/openvswitch/flow_netlink.h                |   1 -
 net/openvswitch/flow_table.c                  |  51 +--
 net/openvswitch/flow_table.h                  |   3 +-
 net/sctp/stream.c                             | 106 +----
 net/sctp/stream_interleave.c                  |   2 +-
 security/selinux/ss/avtab.c                   |  40 +-
 security/selinux/ss/avtab.h                   |   4 +-
 security/selinux/ss/conditional.c             |   6 +-
 security/selinux/ss/policydb.c                | 122 ++----
 security/selinux/ss/policydb.h                |  12 +-
 security/selinux/ss/services.c                |  22 +-
 tools/include/linux/poison.h                  |   3 -
 28 files changed, 628 insertions(+), 1174 deletions(-)
 delete mode 100644 Documentation/core-api/flexible-arrays.rst
 create mode 100644 Documentation/core-api/generic-radix-tree.rst
 delete mode 100644 Documentation/flexible-arrays.txt
 delete mode 100644 include/linux/flex_array.h
 create mode 100644 include/linux/generic-radix-tree.h
 delete mode 100644 lib/flex_array.c
 create mode 100644 lib/generic-radix-tree.c

-- 
2.20.1


             reply	other threads:[~2018-12-17 13:19 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-17 13:19 Kent Overstreet [this message]
2018-12-17 13:19 ` [PATCH 1/7] openvswitch: convert to kvmalloc Kent Overstreet
2018-12-17 13:19 ` [PATCH 2/7] md: " Kent Overstreet
2018-12-17 13:19 ` [PATCH 3/7] selinux: " Kent Overstreet
2018-12-17 13:19 ` [PATCH 4/7] Generic radix trees Kent Overstreet
2018-12-17 13:19 ` [PATCH 5/7] proc: commit to genradix Kent Overstreet
2018-12-17 13:19 ` [PATCH 6/7] sctp: Convert " Kent Overstreet
2018-12-17 20:50   ` Andrew Morton
2018-12-17 20:59     ` Marcelo Ricardo Leitner
2018-12-17 21:00     ` Kent Overstreet
2019-01-15 14:29       ` Marcelo Ricardo Leitner
2019-01-18 13:10         ` Neil Horman
2019-01-18 13:35           ` Marcelo Ricardo Leitner
2019-01-18 14:51             ` Neil Horman
2018-12-17 13:19 ` [PATCH 7/7] Drop flex_arrays Kent Overstreet

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=20181217131929.11727-1-kent.overstreet@gmail.com \
    --to=kent.overstreet@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®