All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH -next v3 0/4] rhashtable: guarantee initial allocation
@ 2018-06-21 21:28 Davidlohr Bueso
  2018-06-21 21:28 ` [PATCH 1/4] lib/rhashtable: simplify bucket_table_alloc() Davidlohr Bueso
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Davidlohr Bueso @ 2018-06-21 21:28 UTC (permalink / raw)
  To: akpm, torvalds
  Cc: tgraf, herbert, manfred, mhocko, guillaume.knispel, linux-api,
	linux-kernel, dave

Changes from v2:
lkml.kernel.org/r/20180601160125.30031-1-dave@stgolabs.net

- Dropped original patch 1 (which removed the EINVAL returns
  for WARN_ON) as well as patch 5.
- Added a new patch 1, which simplifies the alloc after mhocko's
  changes (originally suggested by Linus).
- Use max_t instead of min_t for the resize.

Changes from v1
lkml.kernel.org/r/20180524211135.27760-1-dave@stgolabs.net

- patch 2 is reworked a bit based on the commments from Herbert Xu.
  o upon failure, retry immediately with GFP_NOFAIL (simpler)
  o the caller now passes the needed semantics, not bucket_table_alloc().
  o we consider min_size when resizing, not just HASH_MIN_SIZE.

- removed patch 3; not need after Michal's patch.

Hi,

This series is the result of the discussion with Linus around ipc
subsystem initialization and how it behaves with error return when
calling rhashtable_init()[1]. Instead of caring about the error
or calling the infamous BUG_ON, Linus suggested we guarantee the
rhashtable allocation.

First two patches deal with the rhashtable_init() changes, while the
patches 3+4 remove some ipc hacks we no longer need.

Please consider for v4.19.

[0] https://lkml.org/lkml/2018/5/23/758

Thanks!

Davidlohr Bueso (4):
  lib/rhashtable: simplify bucket_table_alloc()
  lib/rhashtable: guarantee initial hashtable allocation
  ipc: get rid of ids->tables_initialized hack
  ipc: simplify ipc initialization

 include/linux/ipc_namespace.h |  1 -
 ipc/msg.c                     |  9 ++++-----
 ipc/namespace.c               | 20 ++++----------------
 ipc/sem.c                     | 10 ++++------
 ipc/shm.c                     |  9 ++++-----
 ipc/util.c                    | 41 +++++++++++++----------------------------
 ipc/util.h                    | 18 +++++++++---------
 lib/rhashtable.c              | 19 ++++++++++++-------
 8 files changed, 50 insertions(+), 77 deletions(-)

-- 
2.16.4


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-06-25  9:13 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-21 21:28 [PATCH -next v3 0/4] rhashtable: guarantee initial allocation Davidlohr Bueso
2018-06-21 21:28 ` [PATCH 1/4] lib/rhashtable: simplify bucket_table_alloc() Davidlohr Bueso
2018-06-21 21:33   ` Randy Dunlap
2018-06-22  6:04   ` NeilBrown
2018-06-22  6:04     ` NeilBrown
2018-06-22  6:36     ` Davidlohr Bueso
2018-06-22 18:15   ` [PATCH v2 " Davidlohr Bueso
2018-06-22 18:16     ` Davidlohr Bueso
2018-06-22 18:35     ` Davidlohr Bueso
2018-06-25  9:13     ` Michal Hocko
2018-06-21 21:28 ` [PATCH 2/4] lib/rhashtable: guarantee initial hashtable allocation Davidlohr Bueso
2018-06-22  6:54   ` Herbert Xu
2018-06-21 21:28 ` [PATCH 3/4] ipc: get rid of ids->tables_initialized hack Davidlohr Bueso
2018-06-21 21:28 ` [PATCH 4/4] ipc: simplify ipc initialization Davidlohr Bueso

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.