blob: 348a9d0fb766a450e1d5c96d56c435534f1ecb05 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001// SPDX-License-Identifier: GPL-2.0
Sasha Levin5634bd72013-06-13 18:41:17 -04002#include <linux/lockdep.h>
Ben Hutchings37524662017-05-25 12:58:31 +00003#include <stdlib.h>
Ingo Molnarb2ed0992016-02-29 10:25:32 +01004
5/* Trivial API wrappers, we don't (yet) have RCU in user-space: */
6#define hlist_for_each_entry_rcu hlist_for_each_entry
7#define hlist_add_head_rcu hlist_add_head
8#define hlist_del_rcu hlist_del
Levin, Alexander (Sasha Levin)e58e8712017-05-31 00:38:09 +00009#define list_for_each_entry_rcu list_for_each_entry
10#define list_add_tail_rcu list_add_tail
Ingo Molnarb2ed0992016-02-29 10:25:32 +010011
Ben Hutchings37524662017-05-25 12:58:31 +000012u32 prandom_u32(void)
13{
14 /* Used only by lock_pin_lock() which is dead code */
15 abort();
16}
17
Bart Van Asscheac862d92018-12-06 17:11:30 -080018void print_irqtrace_events(struct task_struct *curr)
19{
20 abort();
21}
22
Ben Hutchings1baa7542017-05-25 12:58:39 +000023static struct new_utsname *init_utsname(void)
24{
25 static struct new_utsname n = (struct new_utsname) {
26 .release = "liblockdep",
27 .version = LIBLOCKDEP_VERSION,
28 };
29
30 return &n;
31}
32
Sasha Levin5634bd72013-06-13 18:41:17 -040033#include "../../../kernel/locking/lockdep.c"