mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-04-13 09:59:31 +00:00
types: move struct rcuwait into types.h
Move rcuwait struct definition into types.h so that rcuwait can be used without including rcuwait.h which includes other headers. Without this change mm_types.h can't use rcuwait due to a the following circular dependency: mm_types.h -> rcuwait.h -> signal.h -> mm_types.h Link: https://lkml.kernel.org/r/20250213224655.1680278-7-surenb@google.com Suggested-by: Matthew Wilcox <willy@infradead.org> Signed-off-by: Suren Baghdasaryan <surenb@google.com> Acked-by: Davidlohr Bueso <dave@stgolabs.net> Acked-by: Liam R. Howlett <Liam.Howlett@Oracle.com> Acked-by: Lorenzo Stoakes <lorenzo.stoakes@oracle.com> Tested-by: Shivank Garg <shivankg@amd.com> Link: https://lkml.kernel.org/r/5e19ec93-8307-47c2-bb13-3ddf7150624e@amd.com Cc: Christian Brauner <brauner@kernel.org> Cc: David Hildenbrand <david@redhat.com> Cc: David Howells <dhowells@redhat.com> Cc: Hugh Dickins <hughd@google.com> Cc: Jann Horn <jannh@google.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Klara Modin <klarasmodin@gmail.com> Cc: Lokesh Gidra <lokeshgidra@google.com> Cc: Mateusz Guzik <mjguzik@gmail.com> Cc: Mel Gorman <mgorman@techsingularity.net> Cc: Michal Hocko <mhocko@suse.com> Cc: Minchan Kim <minchan@google.com> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Pasha Tatashin <pasha.tatashin@soleen.com> Cc: "Paul E . McKenney" <paulmck@kernel.org> Cc: Peter Xu <peterx@redhat.com> Cc: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Shakeel Butt <shakeel.butt@linux.dev> Cc: Sourav Panda <souravpanda@google.com> Cc: Vlastimil Babka <vbabka@suse.cz> Cc: Wei Yang <richard.weiyang@gmail.com> Cc: Will Deacon <will@kernel.org> Cc: Heiko Carstens <hca@linux.ibm.com> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
fe605930f0
commit
2c2bd11cab
2 changed files with 13 additions and 12 deletions
|
@ -4,18 +4,7 @@
|
|||
|
||||
#include <linux/rcupdate.h>
|
||||
#include <linux/sched/signal.h>
|
||||
|
||||
/*
|
||||
* rcuwait provides a way of blocking and waking up a single
|
||||
* task in an rcu-safe manner.
|
||||
*
|
||||
* The only time @task is non-nil is when a user is blocked (or
|
||||
* checking if it needs to) on a condition, and reset as soon as we
|
||||
* know that the condition has succeeded and are awoken.
|
||||
*/
|
||||
struct rcuwait {
|
||||
struct task_struct __rcu *task;
|
||||
};
|
||||
#include <linux/types.h>
|
||||
|
||||
#define __RCUWAIT_INITIALIZER(name) \
|
||||
{ .task = NULL, }
|
||||
|
|
|
@ -248,5 +248,17 @@ typedef void (*swap_func_t)(void *a, void *b, int size);
|
|||
typedef int (*cmp_r_func_t)(const void *a, const void *b, const void *priv);
|
||||
typedef int (*cmp_func_t)(const void *a, const void *b);
|
||||
|
||||
/*
|
||||
* rcuwait provides a way of blocking and waking up a single
|
||||
* task in an rcu-safe manner.
|
||||
*
|
||||
* The only time @task is non-nil is when a user is blocked (or
|
||||
* checking if it needs to) on a condition, and reset as soon as we
|
||||
* know that the condition has succeeded and are awoken.
|
||||
*/
|
||||
struct rcuwait {
|
||||
struct task_struct __rcu *task;
|
||||
};
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
#endif /* _LINUX_TYPES_H */
|
||||
|
|
Loading…
Add table
Reference in a new issue