All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC tip/core/rcu 0/4] Forbid static SRCU use in modules
@ 2019-04-02 14:28 Paul E. McKenney
  2019-04-02 14:29   ` Paul E. McKenney
                   ` (4 more replies)
  0 siblings, 5 replies; 71+ messages in thread
From: Paul E. McKenney @ 2019-04-02 14:28 UTC (permalink / raw)
  To: rcu
  Cc: linux-kernel, mingo, jiangshanlai, dipankar, akpm,
	mathieu.desnoyers, josh, tglx, peterz, rostedt, dhowells,
	edumazet, fweisbec, oleg, joel, linux-nvdimm, dri-devel, amd-gfx

Hello!

This series prohibits use of DEFINE_SRCU() and DEFINE_STATIC_SRCU()
by loadable modules.  The reason for this prohibition is the fact
that using these two macros within modules requires that the size of
the reserved region be increased, which is not something we want to
be doing all that often.  Instead, loadable modules should define an
srcu_struct and invoke init_srcu_struct() from their module_init function
and cleanup_srcu_struct() from their module_exit function.  Note that
modules using call_srcu() will also need to invoke srcu_barrier() from
their module_exit function.

This series consist of the following:

1.	Dynamically allocate dax_srcu.

2.	Dynamically allocate drm_unplug_srcu.

3.	Dynamically allocate kfd_processes_srcu.

These build and have been subjected to 0day testing, but might also need
testing by someone having the requisite hardware.

							Thanx, Paul

------------------------------------------------------------------------

 drivers/dax/super.c                        |   10 +++++-
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c |    5 +++
 drivers/gpu/drm/amd/amdkfd/kfd_process.c   |    2 -
 drivers/gpu/drm/drm_drv.c                  |    8 ++++
 include/linux/srcutree.h                   |   19 +++++++++--
 kernel/rcu/rcuperf.c                       |   40 +++++++++++++++++++-----
 kernel/rcu/rcutorture.c                    |   48 +++++++++++++++++++++--------
 7 files changed, 105 insertions(+), 27 deletions(-)

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

end of thread, other threads:[~2019-04-09 19:14 UTC | newest]

Thread overview: 71+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-02 14:28 [PATCH RFC tip/core/rcu 0/4] Forbid static SRCU use in modules Paul E. McKenney
2019-04-02 14:29 ` [PATCH RFC tip/core/rcu 1/4] dax/super: Dynamically allocate dax_srcu Paul E. McKenney
2019-04-02 14:29   ` Paul E. McKenney
2019-04-03 18:31   ` Dan Williams
2019-04-03 18:31     ` Dan Williams
2019-04-04 21:04     ` Paul E. McKenney
2019-04-04 21:04       ` Paul E. McKenney
2019-04-02 14:29 ` [PATCH RFC tip/core/rcu 2/4] drivers/gpu/drm: Dynamically allocate drm_unplug_srcu Paul E. McKenney
2019-04-02 16:14   ` Daniel Vetter
2019-04-02 16:14     ` Daniel Vetter
2019-04-02 14:29 ` [PATCH RFC tip/core/rcu 3/4] drivers/gpu/drm/amd: Dynamically allocate kfd_processes_srcu Paul E. McKenney
2019-04-02 17:40   ` Kuehling, Felix
2019-04-02 17:40     ` Kuehling, Felix
2019-04-04 21:16     ` Paul E. McKenney
2019-04-04 21:16       ` Paul E. McKenney
2019-04-02 14:29 ` [PATCH RFC tip/core/rcu 4/4] rcu: Forbid DEFINE{,_STATIC}_SRCU() from modules Paul E. McKenney
2019-04-02 15:14 ` [PATCH RFC tip/core/rcu 0/4] Forbid static SRCU use in modules Mathieu Desnoyers
2019-04-02 15:23   ` Paul E. McKenney
     [not found]     ` <20190402152334.GC4102-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-02 15:34       ` Mathieu Desnoyers
2019-04-02 15:34         ` Mathieu Desnoyers
2019-04-03 13:32         ` Paul E. McKenney
2019-04-03 14:27           ` Mathieu Desnoyers
     [not found]             ` <1028306587.504.1554301662374.JavaMail.zimbra-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2019-04-03 16:20               ` Paul E. McKenney
2019-04-03 16:20                 ` Paul E. McKenney
2019-04-03 19:30                 ` Joel Fernandes
2019-04-03 19:30                   ` Joel Fernandes
     [not found]                 ` <20190403162039.GA14111-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-05 23:28                   ` Paul E. McKenney
2019-04-05 23:28                     ` Paul E. McKenney
2019-04-06 13:33                     ` Joel Fernandes
2019-04-07 13:48                       ` Paul E. McKenney
2019-04-07 13:48                         ` Paul E. McKenney
     [not found]                     ` <20190405232835.GA24702-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-06 23:06                       ` Joel Fernandes
2019-04-06 23:06                         ` Joel Fernandes
2019-04-07 13:39                         ` Paul E. McKenney
     [not found]                           ` <20190407133941.GC14111-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-07 13:59                             ` Paul E. McKenney
2019-04-07 13:59                               ` Paul E. McKenney
     [not found]                               ` <20190407135937.GA30053-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-07 15:46                                 ` Joel Fernandes
2019-04-07 15:46                                   ` Joel Fernandes
2019-04-07 17:05                                   ` Paul E. McKenney
2019-04-07 17:05                                     ` Paul E. McKenney
     [not found]                                     ` <20190407170514.GE14111-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-08  0:36                                       ` Joel Fernandes
2019-04-08  0:36                                         ` Joel Fernandes
2019-04-08  2:28                                         ` Paul E. McKenney
2019-04-07 19:26                                 ` Mathieu Desnoyers
2019-04-07 19:26                                   ` Mathieu Desnoyers
     [not found]                                   ` <134026717.535.1554665176677.JavaMail.zimbra-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2019-04-07 19:32                                     ` Joel Fernandes
2019-04-07 19:32                                       ` Joel Fernandes
2019-04-07 20:41                                       ` Mathieu Desnoyers
2019-04-07 20:41                                         ` Mathieu Desnoyers
2019-04-07 21:07                                         ` Joel Fernandes
2019-04-08  2:27                                           ` Paul E. McKenney
2019-04-08 13:05                                             ` Mathieu Desnoyers
2019-04-08 14:22                                               ` Paul E. McKenney
2019-04-08 14:49                                                 ` Mathieu Desnoyers
2019-04-08 15:46                                                   ` Paul E. McKenney
2019-04-08 17:24                                                     ` Mathieu Desnoyers
2019-04-09 15:40                                                       ` Joel Fernandes
     [not found]                                                         ` <20190409154012.GC248418-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2019-04-09 15:56                                                           ` Mathieu Desnoyers
2019-04-09 15:56                                                             ` Mathieu Desnoyers
2019-04-09 16:18                                                             ` Joel Fernandes
2019-04-09 16:40                                                             ` Paul E. McKenney
     [not found]                                                               ` <20190409164031.GE14111-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-09 16:45                                                                 ` Mathieu Desnoyers
2019-04-09 16:45                                                                   ` Mathieu Desnoyers
2019-04-09 17:55                                                                   ` Paul E. McKenney
     [not found]                                                                     ` <20190409175549.GG14111-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2019-04-09 18:04                                                                       ` Mathieu Desnoyers
2019-04-09 18:04                                                                         ` Mathieu Desnoyers
2019-04-09 19:14                                                                         ` Paul E. McKenney
2019-04-02 18:40     ` Joel Fernandes
2019-04-02 18:40       ` Joel Fernandes
2019-04-02 18:40       ` Joel Fernandes
2019-04-03 13:19       ` Paul E. McKenney

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.