Translation Unit: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c

An annotated version of the translation unit with minimal whitespace. Indentation is according to the depth of the #include stack. Line numbers are linked to the original source code.

Highlighted filenames take you forward to the next occasion in the include graph of the file being pre-processed, in this case: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c

Return to Index


# Starting FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proc_fs.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proc_fs.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/types.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/types.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/types.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/types.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/types.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/types.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/types.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/types.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/int-ll64.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/int-ll64.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/int-ll64.h
........[      19]: typedef __signed__ char __s8;
........[      20]: typedef unsigned char __u8;
........[      22]: typedef __signed__ short __s16;
........[      23]: typedef unsigned short __u16;
........[      25]: typedef __signed__ int __s32;
........[      26]: typedef unsigned int __u32;
........[      29]: __extension__ typedef __signed__ long long __s64;
........[      30]: __extension__ typedef unsigned long long __u64;
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/int-ll64.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/int-ll64.h
.......[      15]: typedef signed char s8;
.......[      16]: typedef unsigned char u8;
.......[      18]: typedef signed short s16;
.......[      19]: typedef unsigned short u16;
.......[      21]: typedef signed int s32;
.......[      22]: typedef unsigned int u32;
.......[      24]: typedef signed long long s64;
.......[      25]: typedef unsigned long long u64;
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/int-ll64.h
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/types.h
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/types.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/types.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/posix_types.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/posix_types.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stddef.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stddef.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/stddef.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/stddef.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/compiler.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/compiler.h
........[      72]: struct ftrace_branch_data {
........[      73]: const char *func;
........[      74]: const char *file;
........[      75]: unsigned line;
........[      76]: union {
........[      77]: struct {
........[      78]: unsigned long correct;
........[      79]: unsigned long incorrect;
........[      80]: };
........[      81]: struct {
........[      82]: unsigned long miss;
........[      83]: unsigned long hit;
........[      84]: };
........[      85]: unsigned long miss_hit[2];
........[      86]: };
........[      87]: };
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/compiler.h
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/stddef.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stddef.h
......[      10]: enum {
......[      11]: false = 0,
......[      12]: true = 1
......[      13]: };
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stddef.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/posix_types.h
.....[      24]: typedef struct {
.....[      25]: unsigned long fds_bits[1024 / (8 * sizeof(long))];
.....[      26]: } __kernel_fd_set;
.....[      29]: typedef void (*__kernel_sighandler_t)(int);
.....[      32]: typedef int __kernel_key_t;
.....[      33]: typedef int __kernel_mqd_t;
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/posix_types.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/types.h
....[      32]: typedef __u16 __le16;
....[      33]: typedef __u16 __be16;
....[      34]: typedef __u32 __le32;
....[      35]: typedef __u32 __be32;
....[      36]: typedef __u64 __le64;
....[      37]: typedef __u64 __be64;
....[      39]: typedef __u16 __sum16;
....[      40]: typedef __u32 __wsum;
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/types.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/types.h
...[      12]: typedef __u32 __kernel_dev_t;
...[      14]: typedef __kernel_fd_set fd_set;
...[      15]: typedef __kernel_dev_t dev_t;
...[      16]: typedef __kernel_ino_t ino_t;
...[      17]: typedef __kernel_mode_t mode_t;
...[      18]: typedef unsigned short umode_t;
...[      19]: typedef __u32 nlink_t;
...[      20]: typedef __kernel_off_t off_t;
...[      21]: typedef __kernel_pid_t pid_t;
...[      22]: typedef __kernel_daddr_t daddr_t;
...[      23]: typedef __kernel_key_t key_t;
...[      24]: typedef __kernel_suseconds_t suseconds_t;
...[      25]: typedef __kernel_timer_t timer_t;
...[      26]: typedef __kernel_clockid_t clockid_t;
...[      27]: typedef __kernel_mqd_t mqd_t;
...[      29]: typedef _Bool bool;
...[      31]: typedef __kernel_uid32_t uid_t;
...[      32]: typedef __kernel_gid32_t gid_t;
...[      33]: typedef __kernel_uid16_t uid16_t;
...[      34]: typedef __kernel_gid16_t gid16_t;
...[      36]: typedef unsigned long uintptr_t;
...[      40]: typedef __kernel_old_uid_t old_uid_t;
...[      41]: typedef __kernel_old_gid_t old_gid_t;
...[      45]: typedef __kernel_loff_t loff_t;
...[      54]: typedef __kernel_size_t size_t;
...[      59]: typedef __kernel_ssize_t ssize_t;
...[      64]: typedef __kernel_ptrdiff_t ptrdiff_t;
...[      69]: typedef __kernel_time_t time_t;
...[      74]: typedef __kernel_clock_t clock_t;
...[      79]: typedef __kernel_caddr_t caddr_t;
...[      83]: typedef unsigned char u_char;
...[      84]: typedef unsigned short u_short;
...[      85]: typedef unsigned int u_int;
...[      86]: typedef unsigned long u_long;
...[      89]: typedef unsigned char unchar;
...[      90]: typedef unsigned short ushort;
...[      91]: typedef unsigned int uint;
...[      92]: typedef unsigned long ulong;
...[      97]: typedef __u8 u_int8_t;
...[      98]: typedef __s8 int8_t;
...[      99]: typedef __u16 u_int16_t;
...[     100]: typedef __s16 int16_t;
...[     101]: typedef __u32 u_int32_t;
...[     102]: typedef __s32 int32_t;
...[     106]: typedef __u8 uint8_t;
...[     107]: typedef __u16 uint16_t;
...[     108]: typedef __u32 uint32_t;
...[     111]: typedef __u64 uint64_t;
...[     112]: typedef __u64 u_int64_t;
...[     113]: typedef __s64 int64_t;
...[     133]: typedef unsigned long sector_t;
...[     134]: typedef unsigned long blkcnt_t;
...[     146]: typedef u64 dma_addr_t;
...[     157]: typedef unsigned gfp_t;
...[     158]: typedef unsigned fmode_t;
...[     159]: typedef unsigned oom_flags_t;
...[     162]: typedef u64 phys_addr_t;
...[     167]: typedef phys_addr_t resource_size_t;
...[     173]: typedef unsigned long irq_hw_number_t;
...[     175]: typedef struct {
...[     176]: int counter;
...[     177]: } atomic_t;
...[     180]: typedef struct {
...[     181]: long counter;
...[     182]: } atomic64_t;
...[     185]: struct list_head {
...[     186]: struct list_head *next, *prev;
...[     187]: };
...[     189]: struct hlist_head {
...[     190]: struct hlist_node *first;
...[     191]: };
...[     193]: struct hlist_node {
...[     194]: struct hlist_node *next, **pprev;
...[     195]: };
...[     197]: struct ustat {
...[     198]: __kernel_daddr_t f_tfree;
...[     199]: __kernel_ino_t f_tinode;
...[     200]: char f_fname[6];
...[     201]: char f_fpack[6];
...[     202]: };
...[     209]: struct callback_head {
...[     210]: struct callback_head *next;
...[     211]: void (*func)(struct callback_head *head);
...[     212]: };
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/types.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proc_fs.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/linkage.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/linkage.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/export.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/export.h
.....[      26]: struct kernel_symbol
.....[      27]: {
.....[      28]: unsigned long value;
.....[      29]: const char *name;
.....[      30]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/export.h
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/linkage.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/wait.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/wait.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list.h
.....[      24]: static inline __attribute__((no_instrument_function)) void INIT_LIST_HEAD(struct list_head *list)
.....[      25]: {
.....[      26]: list->next = list;
.....[      27]: list->prev = list;
.....[      28]: }
.....[      37]: static inline __attribute__((no_instrument_function)) void __list_add(struct list_head *new,
.....[      38]: struct list_head *prev,
.....[      39]: struct list_head *next)
.....[      40]: {
.....[      41]: next->prev = new;
.....[      42]: new->next = next;
.....[      43]: new->prev = prev;
.....[      44]: prev->next = new;
.....[      45]: }
.....[      60]: static inline __attribute__((no_instrument_function)) void list_add(struct list_head *new, struct list_head *\
.....                head)
.....[      61]: {
.....[      62]: __list_add(new, head, head->next);
.....[      63]: }
.....[      74]: static inline __attribute__((no_instrument_function)) void list_add_tail(struct list_head *new, struct list_head \
.....                *head)
.....[      75]: {
.....[      76]: __list_add(new, head->prev, head);
.....[      77]: }
.....[      86]: static inline __attribute__((no_instrument_function)) void __list_del(struct list_head * prev, struct list_head \
.....                * next)
.....[      87]: {
.....[      88]: next->prev = prev;
.....[      89]: prev->next = next;
.....[      90]: }
.....[      99]: static inline __attribute__((no_instrument_function)) void __list_del_entry(struct list_head *entry)
.....[     100]: {
.....[     101]: __list_del(entry->prev, entry->next);
.....[     102]: }
.....[     104]: static inline __attribute__((no_instrument_function)) void list_del(struct list_head *entry)
.....[     105]: {
.....[     106]: __list_del(entry->prev, entry->next);
.....[     107]: entry->next = ((void *) 0x00100100 + (0xdead000000000000UL));
.....[     108]: entry->prev = ((void *) 0x00200200 + (0xdead000000000000UL));
.....[     109]: }
.....[     122]: static inline __attribute__((no_instrument_function)) void list_replace(struct list_head *old,
.....[     123]: struct list_head *new)
.....[     124]: {
.....[     125]: new->next = old->next;
.....[     126]: new->next->prev = new;
.....[     127]: new->prev = old->prev;
.....[     128]: new->prev->next = new;
.....[     129]: }
.....[     131]: static inline __attribute__((no_instrument_function)) void list_replace_init(struct list_head *old,
.....[     132]: struct list_head *new)
.....[     133]: {
.....[     134]: list_replace(old, new);
.....[     135]: INIT_LIST_HEAD(old);
.....[     136]: }
.....[     142]: static inline __attribute__((no_instrument_function)) void list_del_init(struct list_head *entry)
.....[     143]: {
.....[     144]: __list_del_entry(entry);
.....[     145]: INIT_LIST_HEAD(entry);
.....[     146]: }
.....[     153]: static inline __attribute__((no_instrument_function)) void list_move(struct list_head *list, struct list_head \
.....                *head)
.....[     154]: {
.....[     155]: __list_del_entry(list);
.....[     156]: list_add(list, head);
.....[     157]: }
.....[     164]: static inline __attribute__((no_instrument_function)) void list_move_tail(struct list_head *list,
.....[     165]: struct list_head *head)
.....[     166]: {
.....[     167]: __list_del_entry(list);
.....[     168]: list_add_tail(list, head);
.....[     169]: }
.....[     176]: static inline __attribute__((no_instrument_function)) int list_is_last(const struct list_head *list,
.....[     177]: const struct list_head *head)
.....[     178]: {
.....[     179]: return list->next == head;
.....[     180]: }
.....[     186]: static inline __attribute__((no_instrument_function)) int list_empty(const struct list_head *head)
.....[     187]: {
.....[     188]: return head->next == head;
.....[     189]: }
.....[     204]: static inline __attribute__((no_instrument_function)) int list_empty_careful(const struct list_head *head)
.....[     205]: {
.....[     206]: struct list_head *next = head->next;
.....[     207]: return (next == head) && (next == head->prev);
.....[     208]: }
.....[     214]: static inline __attribute__((no_instrument_function)) void list_rotate_left(struct list_head *head)
.....[     215]: {
.....[     216]: struct list_head *first;
.....[     218]: if (!list_empty(head)) {
.....[     219]: first = head->next;
.....[     220]: list_move_tail(first, head);
.....[     221]: }
.....[     222]: }
.....[     228]: static inline __attribute__((no_instrument_function)) int list_is_singular(const struct list_head *head)
.....[     229]: {
.....[     230]: return !list_empty(head) && (head->next == head->prev);
.....[     231]: }
.....[     233]: static inline __attribute__((no_instrument_function)) void __list_cut_position(struct list_head *list,
.....[     234]: struct list_head *head, struct list_head *entry)
.....[     235]: {
.....[     236]: struct list_head *new_first = entry->next;
.....[     237]: list->next = head->next;
.....[     238]: list->next->prev = list;
.....[     239]: list->prev = entry;
.....[     240]: entry->next = list;
.....[     241]: head->next = new_first;
.....[     242]: new_first->prev = head;
.....[     243]: }
.....[     259]: static inline __attribute__((no_instrument_function)) void list_cut_position(struct list_head *list,
.....[     260]: struct list_head *head, struct list_head *entry)
.....[     261]: {
.....[     262]: if (list_empty(head))
.....[     263]: return;
.....[     264]: if (list_is_singular(head) &&
.....[     265]: (head->next != entry && head != entry))
.....[     266]: return;
.....[     267]: if (entry == head)
.....[     268]: INIT_LIST_HEAD(list);
.....[     269]: else
.....[     270]: __list_cut_position(list, head, entry);
.....[     271]: }
.....[     273]: static inline __attribute__((no_instrument_function)) void __list_splice(const struct list_head *list,
.....[     274]: struct list_head *prev,
.....[     275]: struct list_head *next)
.....[     276]: {
.....[     277]: struct list_head *first = list->next;
.....[     278]: struct list_head *last = list->prev;
.....[     280]: first->prev = prev;
.....[     281]: prev->next = first;
.....[     283]: last->next = next;
.....[     284]: next->prev = last;
.....[     285]: }
.....[     292]: static inline __attribute__((no_instrument_function)) void list_splice(const struct list_head *list,
.....[     293]: struct list_head *head)
.....[     294]: {
.....[     295]: if (!list_empty(list))
.....[     296]: __list_splice(list, head, head->next);
.....[     297]: }
.....[     304]: static inline __attribute__((no_instrument_function)) void list_splice_tail(struct list_head *list,
.....[     305]: struct list_head *head)
.....[     306]: {
.....[     307]: if (!list_empty(list))
.....[     308]: __list_splice(list, head->prev, head);
.....[     309]: }
.....[     318]: static inline __attribute__((no_instrument_function)) void list_splice_init(struct list_head *list,
.....[     319]: struct list_head *head)
.....[     320]: {
.....[     321]: if (!list_empty(list)) {
.....[     322]: __list_splice(list, head, head->next);
.....[     323]: INIT_LIST_HEAD(list);
.....[     324]: }
.....[     325]: }
.....[     335]: static inline __attribute__((no_instrument_function)) void list_splice_tail_init(struct list_head *list,
.....[     336]: struct list_head *head)
.....[     337]: {
.....[     338]: if (!list_empty(list)) {
.....[     339]: __list_splice(list, head->prev, head);
.....[     340]: INIT_LIST_HEAD(list);
.....[     341]: }
.....[     342]: }
.....[     597]: static inline __attribute__((no_instrument_function)) void INIT_HLIST_NODE(struct hlist_node *h)
.....[     598]: {
.....[     599]: h->next = ((void *)0);
.....[     600]: h->pprev = ((void *)0);
.....[     601]: }
.....[     603]: static inline __attribute__((no_instrument_function)) int hlist_unhashed(const struct hlist_node *h)
.....[     604]: {
.....[     605]: return !h->pprev;
.....[     606]: }
.....[     608]: static inline __attribute__((no_instrument_function)) int hlist_empty(const struct hlist_head *h)
.....[     609]: {
.....[     610]: return !h->first;
.....[     611]: }
.....[     613]: static inline __attribute__((no_instrument_function)) void __hlist_del(struct hlist_node *n)
.....[     614]: {
.....[     615]: struct hlist_node *next = n->next;
.....[     616]: struct hlist_node **pprev = n->pprev;
.....[     617]: *pprev = next;
.....[     618]: if (next)
.....[     619]: next->pprev = pprev;
.....[     620]: }
.....[     622]: static inline __attribute__((no_instrument_function)) void hlist_del(struct hlist_node *n)
.....[     623]: {
.....[     624]: __hlist_del(n);
.....[     625]: n->next = ((void *) 0x00100100 + (0xdead000000000000UL));
.....[     626]: n->pprev = ((void *) 0x00200200 + (0xdead000000000000UL));
.....[     627]: }
.....[     629]: static inline __attribute__((no_instrument_function)) void hlist_del_init(struct hlist_node *n)
.....[     630]: {
.....[     631]: if (!hlist_unhashed(n)) {
.....[     632]: __hlist_del(n);
.....[     633]: INIT_HLIST_NODE(n);
.....[     634]: }
.....[     635]: }
.....[     637]: static inline __attribute__((no_instrument_function)) void hlist_add_head(struct hlist_node *n, struct hlist_head \
.....                *h)
.....[     638]: {
.....[     639]: struct hlist_node *first = h->first;
.....[     640]: n->next = first;
.....[     641]: if (first)
.....[     642]: first->pprev = &n->next;
.....[     643]: h->first = n;
.....[     644]: n->pprev = &h->first;
.....[     645]: }
.....[     648]: static inline __attribute__((no_instrument_function)) void hlist_add_before(struct hlist_node *n,
.....[     649]: struct hlist_node *next)
.....[     650]: {
.....[     651]: n->pprev = next->pprev;
.....[     652]: n->next = next;
.....[     653]: next->pprev = &n->next;
.....[     654]: *(n->pprev) = n;
.....[     655]: }
.....[     657]: static inline __attribute__((no_instrument_function)) void hlist_add_after(struct hlist_node *n,
.....[     658]: struct hlist_node *next)
.....[     659]: {
.....[     660]: next->next = n->next;
.....[     661]: n->next = next;
.....[     662]: next->pprev = &n->next;
.....[     664]: if(next->next)
.....[     665]: next->next->pprev = &next->next;
.....[     666]: }
.....[     669]: static inline __attribute__((no_instrument_function)) void hlist_add_fake(struct hlist_node *n)
.....[     670]: {
.....[     671]: n->pprev = &n->next;
.....[     672]: }
.....[     678]: static inline __attribute__((no_instrument_function)) void hlist_move_list(struct hlist_head *old,
.....[     679]: struct hlist_head *new)
.....[     680]: {
.....[     681]: new->first = old->first;
.....[     682]: if (new->first)
.....[     683]: new->first->pprev = &new->first;
.....[     684]: old->first = ((void *)0);
.....[     685]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/wait.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/preempt.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/preempt.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/preempt.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/preempt.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/percpu.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/percpu.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
.........# Starting FILE: /usr/include/c++/4.2.1/tr1/stdarg.h
.........#  Holding FILE: /usr/include/c++/4.2.1/tr1/stdarg.h
..........# Starting FILE: /usr/include/c++/4.2.1/tr1/cstdarg
..........#  Holding FILE: /usr/include/c++/4.2.1/tr1/cstdarg
...........# Starting FILE: /usr/include/c++/4.2.1/cstdarg
...........#  Holding FILE: /usr/include/c++/4.2.1/cstdarg
............# Starting FILE: /usr/include/c++/4.2.1/bits/c++config.h
............#  Holding FILE: /usr/include/c++/4.2.1/bits/c++config.h
.............# Starting FILE: /usr/include/c++/4.2.1/bits/os_defines.h
.............#  Holding FILE: /usr/include/c++/4.2.1/bits/os_defines.h
..............# Starting FILE: /usr/include/unistd.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/_types.h
...............#  Holding FILE: /usr/include/_types.h
................# Starting FILE: /usr/include/sys/_types.h
................#  Holding FILE: /usr/include/sys/_types.h
.................# Starting FILE: /usr/include/machine/_types.h
.................#  Holding FILE: /usr/include/machine/_types.h
..................# Starting FILE: /usr/include/i386/_types.h
...................#  Back in FILE: /usr/include/i386/_types.h
...................[      37]: typedef signed char __int8_t;
...................[      41]: typedef unsigned char __uint8_t;
...................[      42]: typedef short __int16_t;
...................[      43]: typedef unsigned short __uint16_t;
...................[      44]: typedef int __int32_t;
...................[      45]: typedef unsigned int __uint32_t;
...................[      46]: typedef long long __int64_t;
...................[      47]: typedef unsigned long long __uint64_t;
...................[      49]: typedef long __darwin_intptr_t;
...................[      50]: typedef unsigned int __darwin_natural_t;
...................[      70]: typedef int __darwin_ct_rune_t;
...................[      76]: typedef union {
...................[      77]: char __mbstate8[128];
...................[      78]: long long _mbstateL;
...................[      79]: } __mbstate_t;
...................[      81]: typedef __mbstate_t __darwin_mbstate_t;
...................[      88]: typedef int __darwin_ptrdiff_t;
...................[      94]: typedef unsigned long __darwin_size_t;
...................[      98]: typedef __builtin_va_list __darwin_va_list;
...................[     106]: typedef __darwin_ct_rune_t __darwin_wchar_t;
...................[     109]: typedef __darwin_wchar_t __darwin_rune_t;
...................[     114]: typedef __darwin_ct_rune_t __darwin_wint_t;
...................[     117]: typedef unsigned long __darwin_clock_t;
...................[     118]: typedef __uint32_t __darwin_socklen_t;
...................[     119]: typedef long __darwin_ssize_t;
...................[     120]: typedef long __darwin_time_t;
...................#   Ending FILE: /usr/include/i386/_types.h
..................#   Ending FILE: /usr/include/machine/_types.h
.................#  Back in FILE: /usr/include/sys/_types.h
.................[      58]: struct __darwin_pthread_handler_rec
.................[      59]: {
.................[      60]: void (*__routine)(void *);
.................[      61]: void *__arg;
.................[      62]: struct __darwin_pthread_handler_rec *__next;
.................[      63]: };
.................[      64]: struct _opaque_pthread_attr_t { long __sig; char __opaque[36]; };
.................[      65]: struct _opaque_pthread_cond_t { long __sig; char __opaque[24]; };
.................[      66]: struct _opaque_pthread_condattr_t { long __sig; char __opaque[4]; };
.................[      67]: struct _opaque_pthread_mutex_t { long __sig; char __opaque[40]; };
.................[      68]: struct _opaque_pthread_mutexattr_t { long __sig; char __opaque[8]; };
.................[      69]: struct _opaque_pthread_once_t { long __sig; char __opaque[4]; };
.................[      70]: struct _opaque_pthread_rwlock_t { long __sig; char __opaque[124]; };
.................[      71]: struct _opaque_pthread_rwlockattr_t { long __sig; char __opaque[12]; };
.................[      72]: struct _opaque_pthread_t { long __sig; struct __darwin_pthread_handler_rec *__cleanup_stack; char __opaque[596\
.................                ]; };
.................[      94]: typedef __int64_t __darwin_blkcnt_t;
.................[      95]: typedef __int32_t __darwin_blksize_t;
.................[      96]: typedef __int32_t __darwin_dev_t;
.................[      97]: typedef unsigned int __darwin_fsblkcnt_t;
.................[      98]: typedef unsigned int __darwin_fsfilcnt_t;
.................[      99]: typedef __uint32_t __darwin_gid_t;
.................[     100]: typedef __uint32_t __darwin_id_t;
.................[     101]: typedef __uint64_t __darwin_ino64_t;
.................[     103]: typedef __darwin_ino64_t __darwin_ino_t;
.................[     107]: typedef __darwin_natural_t __darwin_mach_port_name_t;
.................[     108]: typedef __darwin_mach_port_name_t __darwin_mach_port_t;
.................[     109]: typedef __uint16_t __darwin_mode_t;
.................[     110]: typedef __int64_t __darwin_off_t;
.................[     111]: typedef __int32_t __darwin_pid_t;
.................[     112]: typedef struct _opaque_pthread_attr_t
.................[     113]: __darwin_pthread_attr_t;
.................[     114]: typedef struct _opaque_pthread_cond_t
.................[     115]: __darwin_pthread_cond_t;
.................[     116]: typedef struct _opaque_pthread_condattr_t
.................[     117]: __darwin_pthread_condattr_t;
.................[     118]: typedef unsigned long __darwin_pthread_key_t;
.................[     119]: typedef struct _opaque_pthread_mutex_t
.................[     120]: __darwin_pthread_mutex_t;
.................[     121]: typedef struct _opaque_pthread_mutexattr_t
.................[     122]: __darwin_pthread_mutexattr_t;
.................[     123]: typedef struct _opaque_pthread_once_t
.................[     124]: __darwin_pthread_once_t;
.................[     125]: typedef struct _opaque_pthread_rwlock_t
.................[     126]: __darwin_pthread_rwlock_t;
.................[     127]: typedef struct _opaque_pthread_rwlockattr_t
.................[     128]: __darwin_pthread_rwlockattr_t;
.................[     129]: typedef struct _opaque_pthread_t
.................[     130]: *__darwin_pthread_t;
.................[     131]: typedef __uint32_t __darwin_sigset_t;
.................[     132]: typedef __int32_t __darwin_suseconds_t;
.................[     133]: typedef __uint32_t __darwin_uid_t;
.................[     134]: typedef __uint32_t __darwin_useconds_t;
.................[     135]: typedef unsigned char __darwin_uuid_t[16];
.................[     136]: typedef char __darwin_uuid_string_t[37];
.................#   Ending FILE: /usr/include/sys/_types.h
................#  Back in FILE: /usr/include/_types.h
................[      39]: typedef int __darwin_nl_item;
................[      40]: typedef int __darwin_wctrans_t;
................[      44]: typedef unsigned long __darwin_wctype_t;
................#   Ending FILE: /usr/include/_types.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/unistd.h
................#  Back in FILE: /usr/include/sys/unistd.h
................[     132]: struct accessx_descriptor {
................[     133]: unsigned int ad_name_offset;
................[     134]: int ad_flags;
................[     135]: int ad_pad[2];
................[     136]: };
................#   Ending FILE: /usr/include/sys/unistd.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_gid_t.h
................#  Back in FILE: /usr/include/sys/_types/_gid_t.h
................[      30]: typedef __darwin_gid_t gid_t;
................#   Ending FILE: /usr/include/sys/_types/_gid_t.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_intptr_t.h
................#  Back in FILE: /usr/include/sys/_types/_intptr_t.h
................[      30]: typedef __darwin_intptr_t intptr_t;
................#   Ending FILE: /usr/include/sys/_types/_intptr_t.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_off_t.h
................#  Back in FILE: /usr/include/sys/_types/_off_t.h
................[      30]: typedef __darwin_off_t off_t;
................#   Ending FILE: /usr/include/sys/_types/_off_t.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_pid_t.h
................#  Back in FILE: /usr/include/sys/_types/_pid_t.h
................[      30]: typedef __darwin_pid_t pid_t;
................#   Ending FILE: /usr/include/sys/_types/_pid_t.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_uid_t.h
................#  Back in FILE: /usr/include/sys/_types/_uid_t.h
................[      30]: typedef __darwin_uid_t uid_t;
................#   Ending FILE: /usr/include/sys/_types/_uid_t.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_useconds_t.h
................#  Back in FILE: /usr/include/sys/_types/_useconds_t.h
................[      30]: typedef __darwin_useconds_t useconds_t;
................#   Ending FILE: /usr/include/sys/_types/_useconds_t.h
...............#  Back in FILE: /usr/include/unistd.h
...............[     424]: void _exit(int) __attribute__((noreturn));
...............[     425]: int access(const char *, int);
...............[     426]: unsigned int
...............[     427]: alarm(unsigned int);
...............[     428]: int chdir(const char *);
...............[     429]: int chown(const char *, uid_t, gid_t);
...............[     431]: int close(int) __asm("_" "close" "$UNIX2003");
...............[     433]: int dup(int);
...............[     434]: int dup2(int, int);
...............[     435]: int execl(const char *, const char *, ...);
...............[     436]: int execle(const char *, const char *, ...);
...............[     437]: int execlp(const char *, const char *, ...);
...............[     438]: int execv(const char *, char * const *);
...............[     439]: int execve(const char *, char * const *, char * const *);
...............[     440]: int execvp(const char *, char * const *);
...............[     441]: pid_t fork(void);
...............[     442]: long fpathconf(int, int);
...............[     443]: char *getcwd(char *, size_t);
...............[     444]: gid_t getegid(void);
...............[     445]: uid_t geteuid(void);
...............[     446]: gid_t getgid(void);
...............[     450]: int getgroups(int, gid_t []);
...............[     452]: char *getlogin(void);
...............[     453]: pid_t getpgrp(void);
...............[     454]: pid_t getpid(void);
...............[     455]: pid_t getppid(void);
...............[     456]: uid_t getuid(void);
...............[     457]: int isatty(int);
...............[     458]: int link(const char *, const char *);
...............[     459]: off_t lseek(int, off_t, int);
...............[     460]: long pathconf(const char *, int);
...............[     462]: int pause(void) __asm("_" "pause" "$UNIX2003");
...............[     464]: int pipe(int [2]);
...............[     466]: ssize_t read(int, void *, size_t) __asm("_" "read" "$UNIX2003");
...............[     468]: int rmdir(const char *);
...............[     469]: int setgid(gid_t);
...............[     470]: int setpgid(pid_t, pid_t);
...............[     471]: pid_t setsid(void);
...............[     472]: int setuid(uid_t);
...............[     474]: unsigned int
...............[     475]: sleep(unsigned int) __asm("_" "sleep" "$UNIX2003");
...............[     477]: long sysconf(int);
...............[     478]: pid_t tcgetpgrp(int);
...............[     479]: int tcsetpgrp(int, pid_t);
...............[     480]: char *ttyname(int);
...............[     483]: int ttyname_r(int, char *, size_t) __asm("_" "ttyname_r" "$UNIX2003");
...............[     488]: int unlink(const char *);
...............[     490]: ssize_t write(int, const void *, size_t) __asm("_" "write" "$UNIX2003");
...............[     501]: size_t confstr(int, char *, size_t) __asm("_" "confstr" "$UNIX2003");
...............[     503]: int getopt(int, char * const [], const char *) __asm("_" "getopt" "$UNIX2003");
...............[     505]: extern char *optarg;
...............[     506]: extern int optind, opterr, optopt;
...............[     533]: void *brk(const void *);
...............[     534]: int chroot(const char *) ;
...............[     537]: char *crypt(const char *, const char *);
...............[     541]: char *ctermid(char *);
...............[     544]: void encrypt(char *, int) __asm("_" "encrypt" "$UNIX2003");
...............[     548]: int fchdir(int);
...............[     549]: long gethostid(void);
...............[     550]: pid_t getpgid(pid_t);
...............[     551]: pid_t getsid(pid_t);
...............[     555]: int getdtablesize(void) ;
...............[     556]: int getpagesize(void) __attribute__((const)) ;
...............[     557]: char *getpass(const char *) ;
...............[     562]: char *getwd(char *) ;
...............[     565]: int lchown(const char *, uid_t, gid_t) __asm("_" "lchown" "$UNIX2003");
...............[     567]: int lockf(int, int, off_t) __asm("_" "lockf" "$UNIX2003");
...............[     569]: int nice(int) __asm("_" "nice" "$UNIX2003");
...............[     571]: ssize_t pread(int, void *, size_t, off_t) __asm("_" "pread" "$UNIX2003");
...............[     573]: ssize_t pwrite(int, const void *, size_t, off_t) __asm("_" "pwrite" "$UNIX2003");
...............[     582]: void *sbrk(int);
...............[     586]: pid_t setpgrp(void) __asm("_" "setpgrp" "$UNIX2003");
...............[     591]: int setregid(gid_t, gid_t) __asm("_" "setregid" "$UNIX2003");
...............[     593]: int setreuid(uid_t, uid_t) __asm("_" "setreuid" "$UNIX2003");
...............[     595]: void swab(const void * , void * , ssize_t);
...............[     596]: void sync(void);
...............[     597]: int truncate(const char *, off_t);
...............[     598]: useconds_t ualarm(useconds_t, useconds_t);
...............[     599]: int usleep(useconds_t) __asm("_" "usleep" "$UNIX2003");
...............[     600]: pid_t vfork(void);
...............[     603]: int fsync(int) __asm("_" "fsync" "$UNIX2003");
...............[     605]: int ftruncate(int, off_t);
...............[     606]: int getlogin_r(char *, size_t);
...............[     619]: int fchown(int, uid_t, gid_t);
...............[     620]: int gethostname(char *, size_t);
...............[     621]: ssize_t readlink(const char * , char * , size_t);
...............[     622]: int setegid(gid_t);
...............[     623]: int seteuid(uid_t);
...............[     624]: int symlink(const char *, const char *);
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/select.h
...............#  Holding FILE: /usr/include/sys/select.h
................# Starting FILE: /usr/include/sys/_types/_fd_def.h
.................[      46]: typedef struct fd_set {
.................[      47]: __int32_t fds_bits[((((1024) % ((sizeof(__int32_t) * 8))) == 0) ? ((1024) / ((sizeof(__int32_t) * 8))) : (((1024) / (\
.................                (sizeof(__int32_t) * 8))) + 1))];
.................[      48]: } fd_set;
.................[      52]: static __inline __attribute__((no_instrument_function)) int
.................[      53]: __darwin_fd_isset(int _n, const struct fd_set *_p)
.................[      54]: {
.................[      55]: return (_p->fds_bits[(unsigned long)_n/(sizeof(__int32_t) * 8)] & ((__int32_t)(1<<((unsigned long)_n % (sizeof\
.................                (__int32_t) * 8)))));
.................[      56]: }
.................#   Ending FILE: /usr/include/sys/_types/_fd_def.h
...............#  Holding FILE: /usr/include/sys/select.h
................# Starting FILE: /usr/include/sys/_types/_timespec.h
.................#  Back in FILE: /usr/include/sys/_types/_timespec.h
.................[      30]: struct timespec
.................[      31]: {
.................[      32]: __darwin_time_t tv_sec;
.................[      33]: long tv_nsec;
.................[      34]: };
.................#   Ending FILE: /usr/include/sys/_types/_timespec.h
...............#  Holding FILE: /usr/include/sys/select.h
................# Starting FILE: /usr/include/sys/_types/_timeval.h
.................#  Back in FILE: /usr/include/sys/_types/_timeval.h
.................[      30]: struct timeval
.................[      31]: {
.................[      32]: __darwin_time_t tv_sec;
.................[      33]: __darwin_suseconds_t tv_usec;
.................[      34]: };
.................#   Ending FILE: /usr/include/sys/_types/_timeval.h
...............#  Holding FILE: /usr/include/sys/select.h
................# Starting FILE: /usr/include/sys/_types/_suseconds_t.h
.................#  Back in FILE: /usr/include/sys/_types/_suseconds_t.h
.................[      30]: typedef __darwin_suseconds_t suseconds_t;
.................#   Ending FILE: /usr/include/sys/_types/_suseconds_t.h
...............#  Holding FILE: /usr/include/sys/select.h
................# Starting FILE: /usr/include/sys/_types/_sigset_t.h
.................#  Back in FILE: /usr/include/sys/_types/_sigset_t.h
.................[      30]: typedef __darwin_sigset_t sigset_t;
.................#   Ending FILE: /usr/include/sys/_types/_sigset_t.h
................#  Back in FILE: /usr/include/sys/select.h
................[     114]: int pselect(int, fd_set * , fd_set * ,
................[     115]: fd_set * , const struct timespec * ,
................[     116]: const sigset_t * )
................[     123]: __asm("_" "pselect" "$UNIX2003")
................[     126]: ;
...............#  Holding FILE: /usr/include/sys/select.h
................# Starting FILE: /usr/include/sys/_select.h
.................[      39]: int select(int, fd_set * , fd_set * ,
.................[      40]: fd_set * , struct timeval * )
.................[      47]: __asm("_" "select" "$UNIX2003")
.................[      50]: ;
.................#   Ending FILE: /usr/include/sys/_select.h
................#   Ending FILE: /usr/include/sys/select.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_dev_t.h
................#  Back in FILE: /usr/include/sys/_types/_dev_t.h
................[      30]: typedef __darwin_dev_t dev_t;
................#   Ending FILE: /usr/include/sys/_types/_dev_t.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_mode_t.h
................#  Back in FILE: /usr/include/sys/_types/_mode_t.h
................[      30]: typedef __darwin_mode_t mode_t;
................#   Ending FILE: /usr/include/sys/_types/_mode_t.h
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/sys/_types/_uuid_t.h
................#  Back in FILE: /usr/include/sys/_types/_uuid_t.h
................[      30]: typedef __darwin_uuid_t uuid_t;
................#   Ending FILE: /usr/include/sys/_types/_uuid_t.h
...............#  Back in FILE: /usr/include/unistd.h
...............[     640]: void _Exit(int) __attribute__((noreturn));
...............[     641]: int accessx_np(const struct accessx_descriptor *, size_t, int *, uid_t);
...............[     642]: int acct(const char *);
...............[     643]: int add_profil(char *, size_t, unsigned long, unsigned int);
...............[     644]: void endusershell(void);
...............[     645]: int execvP(const char *, const char *, char * const *);
...............[     646]: char *fflagstostr(unsigned long);
...............[     647]: int getdomainname(char *, int);
...............[     648]: int getgrouplist(const char *, int, int *, int *);
..............#  Holding FILE: /usr/include/unistd.h
...............# Starting FILE: /usr/include/gethostuuid.h
................[      39]: int gethostuuid(uuid_t, const struct timespec *) ;
................#   Ending FILE: /usr/include/gethostuuid.h
...............#  Back in FILE: /usr/include/unistd.h
...............[     658]: mode_t getmode(const void *, mode_t);
...............[     659]: int getpeereid(int, uid_t *, gid_t *);
...............[     660]: int getsgroups_np(int *, uuid_t);
...............[     661]: char *getusershell(void);
...............[     662]: int getwgroups_np(int *, uuid_t);
...............[     663]: int initgroups(const char *, int);
...............[     664]: int iruserok(unsigned long, int, const char *, const char *);
...............[     665]: int iruserok_sa(const void *, int, int, const char *, const char *);
...............[     666]: int issetugid(void);
...............[     667]: char *mkdtemp(char *);
...............[     668]: int mknod(const char *, mode_t, dev_t);
...............[     669]: int mkpath_np(const char *path, mode_t omode) ;
...............[     670]: int mkstemp(char *);
...............[     671]: int mkstemps(char *, int);
...............[     672]: char *mktemp(char *);
...............[     673]: int nfssvc(int, void *);
...............[     674]: int profil(char *, size_t, unsigned long, unsigned int);
...............[     675]: int pthread_setugid_np(uid_t, gid_t);
...............[     676]: int pthread_getugid_np( uid_t *, gid_t *);
...............[     677]: int rcmd(char **, int, const char *, const char *, const char *, int *);
...............[     678]: int rcmd_af(char **, int, const char *, const char *, const char *, int *,
...............[     679]: int);
...............[     680]: int reboot(int);
...............[     681]: int revoke(const char *);
...............[     682]: int rresvport(int *);
...............[     683]: int rresvport_af(int *, int);
...............[     684]: int ruserok(const char *, int, const char *, const char *);
...............[     685]: int setdomainname(const char *, int);
...............[     686]: int setgroups(int, const gid_t *);
...............[     687]: void sethostid(long);
...............[     688]: int sethostname(const char *, int);
...............[     690]: void setkey(const char *) __asm("_" "setkey" "$UNIX2003");
...............[     694]: int setlogin(const char *);
...............[     695]: void *setmode(const char *) ;
...............[     696]: int setrgid(gid_t);
...............[     697]: int setruid(uid_t);
...............[     698]: int setsgroups_np(int, const uuid_t);
...............[     699]: void setusershell(void);
...............[     700]: int setwgroups_np(int, const uuid_t);
...............[     701]: int strtofflags(char **, unsigned long *, unsigned long *);
...............[     702]: int swapon(const char *);
...............[     703]: int syscall(int, ...);
...............[     704]: int ttyslot(void);
...............[     705]: int undelete(const char *);
...............[     706]: int unwhiteout(const char *);
...............[     707]: void *valloc(size_t);
...............[     709]: extern char *suboptarg;
...............[     710]: int getsubopt(char **, char * const *, char **);
...............[     722]: int fgetattrlist(int,void*,void*,size_t,unsigned long) ;
...............[     723]: int fsetattrlist(int,void*,void*,size_t,unsigned long) ;
...............[     724]: int getattrlist(const char*,void*,void*,size_t,unsigned long) __asm("_" "getattrlist" "$UNIX2003");
...............[     725]: int setattrlist(const char*,void*,void*,size_t,unsigned long) __asm("_" "setattrlist" "$UNIX2003");
...............[     726]: int exchangedata(const char*,const char*,unsigned long);
...............[     727]: int getdirentriesattr(int,void*,void*,size_t,unsigned long*,unsigned long*,unsigned long*,unsigned long);
...............[     731]: struct fssearchblock;
...............[     732]: struct searchstate;
...............[     734]: int searchfs(const char *, struct fssearchblock *, unsigned long *, unsigned int, unsigned int, struct searchstate *\
...............                );
...............[     735]: int fsctl(const char *,unsigned long,void*,unsigned int);
...............[     736]: int ffsctl(int,unsigned long,void*,unsigned int) ;
...............[     741]: int fsync_volume_np(int, int) ;
...............[     742]: int sync_volume_np(const char *, int) ;
...............[     744]: extern int optreset;
...............#   Ending FILE: /usr/include/unistd.h
..............#  Back in FILE: /usr/include/c++/4.2.1/bits/os_defines.h
..............[      92]: extern void __dtrace_probe$cxa_runtime$cxa_exception_rethrow$v1(void);
..............[      93]: extern int __dtrace_isenabled$cxa_runtime$cxa_exception_rethrow$v1(void);
..............[      94]: extern void __dtrace_probe$cxa_runtime$cxa_exception_throw$v1$766f6964202a(void *);
..............[      95]: extern int __dtrace_isenabled$cxa_runtime$cxa_exception_throw$v1(void);
..............#   Ending FILE: /usr/include/c++/4.2.1/bits/os_defines.h
.............#  Back in FILE: /usr/include/c++/4.2.1/bits/c++config.h
.............[     153]: namespace std {
.............[     165]: }
.............#   Ending FILE: /usr/include/c++/4.2.1/bits/c++config.h
............#  Back in FILE: /usr/include/c++/4.2.1/cstdarg
............[      58]: namespace std {
............[      60]: using ::va_list;
............[      62]: }
............#   Ending FILE: /usr/include/c++/4.2.1/cstdarg
...........#   Ending FILE: /usr/include/c++/4.2.1/tr1/cstdarg
..........#   Ending FILE: /usr/include/c++/4.2.1/tr1/stdarg.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitops.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitops.h
..........[      24]: extern unsigned int __sw_hweight8(unsigned int w);
..........[      25]: extern unsigned int __sw_hweight16(unsigned int w);
..........[      26]: extern unsigned int __sw_hweight32(unsigned int w);
..........[      27]: extern unsigned long __sw_hweight64(__u64 w);
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitops.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/alternative.h
............[      46]: struct alt_instr {
............[      47]: s32 instr_offset;
............[      48]: s32 repl_offset;
............[      49]: u16 cpuid;
............[      50]: u8 instrlen;
............[      51]: u8 replacementlen;
............[      52]: };
............[      54]: extern void alternative_instructions(void);
............[      55]: extern void apply_alternatives(struct alt_instr *start, struct alt_instr *end);
............[      57]: struct module;
............[      60]: extern void alternatives_smp_module_add(struct module *mod, char *name,
............[      61]: void *locks, void *locks_end,
............[      62]: void *text, void *text_end);
............[      63]: extern void alternatives_smp_module_del(struct module *mod);
............[      64]: extern void alternatives_enable_smp(void);
............[      65]: extern int alternatives_text_reserved(void *start, void *end);
............[      66]: extern bool skip_smp_alternatives;
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/alternative.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cpufeature.h
.............[     239]: extern const char * const x86_cap_flags[10*32];
.............[     240]: extern const char * const x86_power_flags[32];
.............[     359]: extern void warn_pre_alternatives(void);
.............[     360]: extern bool __static_cpu_has_safe(u16 bit);
.............[     367]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) __attribute__((pure\
.............                )) bool __static_cpu_has(u16 bit)
.............[     368]: {
.............[     414]: u8 flag;
.............[     416]: asm volatile("1: movb $0,%0\n"
.............[     417]: "2:\n"
.............[     418]: ".section .altinstructions,\"a\"\n"
.............[     419]: " .long 1b - .\n"
.............[     420]: " .long 3f - .\n"
.............[     421]: " .word %P1\n"
.............[     422]: " .byte 2b - 1b\n"
.............[     423]: " .byte 4f - 3f\n"
.............[     424]: ".previous\n"
.............[     425]: ".section .discard,\"aw\",@progbits\n"
.............[     426]: " .byte 0xff + (4f-3f) - (2b-1b)\n"
.............[     427]: ".previous\n"
.............[     428]: ".section .altinstr_replacement,\"ax\"\n"
.............[     429]: "3: movb $1,%0\n"
.............[     430]: "4:\n"
.............[     431]: ".previous\n"
.............[     432]: : "=qm" (flag) : "i" (bit));
.............[     433]: return flag;
.............[     436]: }
.............[     447]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) __attribute__((pure\
.............                )) bool _static_cpu_has_safe(u16 bit)
.............[     448]: {
.............[     484]: u8 flag;
.............[     486]: asm volatile("1: movb $2,%0\n"
.............[     487]: "2:\n"
.............[     488]: ".section .altinstructions,\"a\"\n"
.............[     489]: " .long 1b - .\n"
.............[     490]: " .long 3f - .\n"
.............[     491]: " .word %P2\n"
.............[     492]: " .byte 2b - 1b\n"
.............[     493]: " .byte 4f - 3f\n"
.............[     494]: ".previous\n"
.............[     495]: ".section .discard,\"aw\",@progbits\n"
.............[     496]: " .byte 0xff + (4f-3f) - (2b-1b)\n"
.............[     497]: ".previous\n"
.............[     498]: ".section .altinstr_replacement,\"ax\"\n"
.............[     499]: "3: movb $0,%0\n"
.............[     500]: "4:\n"
.............[     501]: ".previous\n"
.............[     502]: ".section .altinstructions,\"a\"\n"
.............[     503]: " .long 1b - .\n"
.............[     504]: " .long 5f - .\n"
.............[     505]: " .word %P1\n"
.............[     506]: " .byte 4b - 3b\n"
.............[     507]: " .byte 6f - 5f\n"
.............[     508]: ".previous\n"
.............[     509]: ".section .discard,\"aw\",@progbits\n"
.............[     510]: " .byte 0xff + (6f-5f) - (4b-3b)\n"
.............[     511]: ".previous\n"
.............[     512]: ".section .altinstr_replacement,\"ax\"\n"
.............[     513]: "5: movb $1,%0\n"
.............[     514]: "6:\n"
.............[     515]: ".previous\n"
.............[     516]: : "=qm" (flag)
.............[     517]: : "i" (bit), "i" ((3*32+21)));
.............[     518]: return (flag == 2 ? __static_cpu_has_safe(bit) : flag);
.............[     520]: }
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cpufeature.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/alternative.h
............[     199]: struct paravirt_patch_site;
............[     204]: static inline __attribute__((no_instrument_function)) void apply_paravirt(struct paravirt_patch_site *start\
............                ,
............[     205]: struct paravirt_patch_site *end)
............[     206]: {}
............[     211]: extern void *text_poke_early(void *addr, const void *opcode, size_t len);
............[     227]: extern void *text_poke(void *addr, const void *opcode, size_t len);
............[     228]: extern int poke_int3_handler(struct pt_regs *regs);
............[     229]: extern void *text_poke_bp(void *addr, const void *opcode, size_t len, void *handler);
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/alternative.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
...........[      70]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void
...........[      71]: set_bit(long nr, volatile unsigned long *addr)
...........[      72]: {
...........[      73]: if ((__builtin_constant_p(nr))) {
...........[      74]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "orb %1,%0"
...........[      75]: : "=m" (*(volatile long *) ((void *)(addr) +(( nr)>>3)))
...........[      76]: : "iq" ((u8)(1 << ((nr) & 7)))
...........[      77]: : "memory");
...........[      78]: } else {
...........[      79]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "bts %1,%0"
...........[      80]: : "=m" (*(volatile long *) (addr)) : "Ir" (nr) : "memory");
...........[      81]: }
...........[      82]: }
...........[      93]: static inline __attribute__((no_instrument_function)) void __set_bit(long nr, volatile unsigned long *addr)
...........[      94]: {
...........[      95]: asm volatile("bts %1,%0" : "=m" (*(volatile long *) (addr)) : "Ir" (nr) : "memory");
...........[      96]: }
...........[     108]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void
...........[     109]: clear_bit(long nr, volatile unsigned long *addr)
...........[     110]: {
...........[     111]: if ((__builtin_constant_p(nr))) {
...........[     112]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "andb %1,%0"
...........[     113]: : "=m" (*(volatile long *) ((void *)(addr) +(( nr)>>3)))
...........[     114]: : "iq" ((u8)~(1 << ((nr) & 7))));
...........[     115]: } else {
...........[     116]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "btr %1,%0"
...........[     117]: : "=m" (*(volatile long *) (addr))
...........[     118]: : "Ir" (nr));
...........[     119]: }
...........[     120]: }
...........[     130]: static inline __attribute__((no_instrument_function)) void clear_bit_unlock(long nr, volatile unsigned long *\
...........                addr)
...........[     131]: {
...........[     132]: __asm__ __volatile__("": : :"memory");
...........[     133]: clear_bit(nr, addr);
...........[     134]: }
...........[     136]: static inline __attribute__((no_instrument_function)) void __clear_bit(long nr, volatile unsigned long *addr)
...........[     137]: {
...........[     138]: asm volatile("btr %1,%0" : "=m" (*(volatile long *) (addr)) : "Ir" (nr));
...........[     139]: }
...........[     153]: static inline __attribute__((no_instrument_function)) void __clear_bit_unlock(long nr, volatile unsigned long \
...........                *addr)
...........[     154]: {
...........[     155]: __asm__ __volatile__("": : :"memory");
...........[     156]: __clear_bit(nr, addr);
...........[     157]: }
...........[     171]: static inline __attribute__((no_instrument_function)) void __change_bit(long nr, volatile unsigned long *addr\
...........                )
...........[     172]: {
...........[     173]: asm volatile("btc %1,%0" : "=m" (*(volatile long *) (addr)) : "Ir" (nr));
...........[     174]: }
...........[     185]: static inline __attribute__((no_instrument_function)) void change_bit(long nr, volatile unsigned long *addr)
...........[     186]: {
...........[     187]: if ((__builtin_constant_p(nr))) {
...........[     188]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "xorb %1,%0"
...........[     189]: : "=m" (*(volatile long *) ((void *)(addr) +(( nr)>>3)))
...........[     190]: : "iq" ((u8)(1 << ((nr) & 7))));
...........[     191]: } else {
...........[     192]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "btc %1,%0"
...........[     193]: : "=m" (*(volatile long *) (addr))
...........[     194]: : "Ir" (nr));
...........[     195]: }
...........[     196]: }
...........[     206]: static inline __attribute__((no_instrument_function)) int test_and_set_bit(long nr, volatile unsigned long *addr\
...........                )
...........[     207]: {
...........[     208]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "bts" " %2, " "%0" "; set" "c" " %1" : "+m" (*addr), "=qm" (c) : "Ir"( nr) : "memory"); return c != 0\
...........                ; } while (0);
...........[     209]: }
...........[     218]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int
...........[     219]: test_and_set_bit_lock(long nr, volatile unsigned long *addr)
...........[     220]: {
...........[     221]: return test_and_set_bit(nr, addr);
...........[     222]: }
...........[     233]: static inline __attribute__((no_instrument_function)) int __test_and_set_bit(long nr, volatile unsigned long \
...........                *addr)
...........[     234]: {
...........[     235]: int oldbit;
...........[     237]: asm("bts %2,%1\n\t"
...........[     238]: "sbb %0,%0"
...........[     239]: : "=r" (oldbit), "=m" (*(volatile long *) (addr))
...........[     240]: : "Ir" (nr));
...........[     241]: return oldbit;
...........[     242]: }
...........[     252]: static inline __attribute__((no_instrument_function)) int test_and_clear_bit(long nr, volatile unsigned long \
...........                *addr)
...........[     253]: {
...........[     254]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "btr" " %2, " "%0" "; set" "c" " %1" : "+m" (*addr), "=qm" (c) : "Ir"( nr) : "memory"); return c != 0\
...........                ; } while (0);
...........[     255]: }
...........[     273]: static inline __attribute__((no_instrument_function)) int __test_and_clear_bit(long nr, volatile unsigned long \
...........                *addr)
...........[     274]: {
...........[     275]: int oldbit;
...........[     277]: asm volatile("btr %2,%1\n\t"
...........[     278]: "sbb %0,%0"
...........[     279]: : "=r" (oldbit), "=m" (*(volatile long *) (addr))
...........[     280]: : "Ir" (nr));
...........[     281]: return oldbit;
...........[     282]: }
...........[     285]: static inline __attribute__((no_instrument_function)) int __test_and_change_bit(long nr, volatile unsigned long \
...........                *addr)
...........[     286]: {
...........[     287]: int oldbit;
...........[     289]: asm volatile("btc %2,%1\n\t"
...........[     290]: "sbb %0,%0"
...........[     291]: : "=r" (oldbit), "=m" (*(volatile long *) (addr))
...........[     292]: : "Ir" (nr) : "memory");
...........[     294]: return oldbit;
...........[     295]: }
...........[     305]: static inline __attribute__((no_instrument_function)) int test_and_change_bit(long nr, volatile unsigned long \
...........                *addr)
...........[     306]: {
...........[     307]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "btc" " %2, " "%0" "; set" "c" " %1" : "+m" (*addr), "=qm" (c) : "Ir"( nr) : "memory"); return c != 0\
...........                ; } while (0);
...........[     308]: }
...........[     310]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int constant_test_bit\
...........                (long nr, const volatile unsigned long *addr)
...........[     311]: {
...........[     312]: return ((1UL << (nr & (64-1))) &
...........[     313]: (addr[nr >> 6])) != 0;
...........[     314]: }
...........[     316]: static inline __attribute__((no_instrument_function)) int variable_test_bit(long nr, volatile const unsigned \
...........                long *addr)
...........[     317]: {
...........[     318]: int oldbit;
...........[     320]: asm volatile("bt %2,%1\n\t"
...........[     321]: "sbb %0,%0"
...........[     322]: : "=r" (oldbit)
...........[     323]: : "m" (*(unsigned long *)addr), "Ir" (nr));
...........[     325]: return oldbit;
...........[     326]: }
...........[     348]: static inline __attribute__((no_instrument_function)) unsigned long __ffs(unsigned long word)
...........[     349]: {
...........[     350]: asm("rep; bsf %1,%0"
...........[     351]: : "=r" (word)
...........[     352]: : "rm" (word));
...........[     353]: return word;
...........[     354]: }
...........[     362]: static inline __attribute__((no_instrument_function)) unsigned long ffz(unsigned long word)
...........[     363]: {
...........[     364]: asm("rep; bsf %1,%0"
...........[     365]: : "=r" (word)
...........[     366]: : "r" (~word));
...........[     367]: return word;
...........[     368]: }
...........[     376]: static inline __attribute__((no_instrument_function)) unsigned long __fls(unsigned long word)
...........[     377]: {
...........[     378]: asm("bsr %1,%0"
...........[     379]: : "=r" (word)
...........[     380]: : "rm" (word));
...........[     381]: return word;
...........[     382]: }
...........[     398]: static inline __attribute__((no_instrument_function)) int ffs(int x)
...........[     399]: {
...........[     400]: int r;
...........[     412]: asm("bsfl %1,%0"
...........[     413]: : "=r" (r)
...........[     414]: : "rm" (x), "0" (-1));
...........[     425]: return r + 1;
...........[     426]: }
...........[     439]: static inline __attribute__((no_instrument_function)) int fls(int x)
...........[     440]: {
...........[     441]: int r;
...........[     453]: asm("bsrl %1,%0"
...........[     454]: : "=r" (r)
...........[     455]: : "rm" (x), "0" (-1));
...........[     466]: return r + 1;
...........[     467]: }
...........[     481]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int fls64(__u64 x)
...........[     482]: {
...........[     483]: int bitpos = -1;
...........[     489]: asm("bsrq %1,%q0"
...........[     490]: : "+r" (bitpos)
...........[     491]: : "rm" (x));
...........[     492]: return bitpos + 1;
...........[     493]: }
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/find.h
............[      14]: extern unsigned long find_next_bit(const unsigned long *addr, unsigned long
............[      15]: size, unsigned long offset);
............[      28]: extern unsigned long find_next_zero_bit(const unsigned long *addr, unsigned
............[      29]: long size, unsigned long offset);
............[      42]: extern unsigned long find_first_bit(const unsigned long *addr,
............[      43]: unsigned long size);
............[      53]: extern unsigned long find_first_zero_bit(const unsigned long *addr,
............[      54]: unsigned long size);
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/find.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/sched.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/sched.h
............[      12]: static inline __attribute__((no_instrument_function)) int sched_find_first_bit(const unsigned long *b)
............[      13]: {
............[      15]: if (b[0])
............[      16]: return __ffs(b[0]);
............[      17]: return __ffs(b[1]) + 64;
............[      29]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/sched.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/arch_hweight.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/arch_hweight.h
............[      24]: static inline __attribute__((no_instrument_function)) unsigned int __arch_hweight32(unsigned int w)
............[      25]: {
............[      26]: unsigned int res = 0;
............[      28]: asm ("661:\n\t" "call __sw_hweight32" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
............                " .long " "663""1""f - .\n" " .word " "(4*32+23)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
............                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
............                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
............                ".byte 0xf3,0x40,0x0f,0xb8,0xc7" "\n" "664""1" ":\n\t" ".popsection"
............[      29]: : "=""a" (res)
............[      30]: : "D" (w));
............[      32]: return res;
............[      33]: }
............[      35]: static inline __attribute__((no_instrument_function)) unsigned int __arch_hweight16(unsigned int w)
............[      36]: {
............[      37]: return __arch_hweight32(w & 0xffff);
............[      38]: }
............[      40]: static inline __attribute__((no_instrument_function)) unsigned int __arch_hweight8(unsigned int w)
............[      41]: {
............[      42]: return __arch_hweight32(w & 0xff);
............[      43]: }
............[      45]: static inline __attribute__((no_instrument_function)) unsigned long __arch_hweight64(__u64 w)
............[      46]: {
............[      47]: unsigned long res = 0;
............[      53]: asm ("661:\n\t" "call __sw_hweight64" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
............                " .long " "663""1""f - .\n" " .word " "(4*32+23)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
............                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
............                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
............                ".byte 0xf3,0x48,0x0f,0xb8,0xc7" "\n" "664""1" ":\n\t" ".popsection"
............[      54]: : "=""a" (res)
............[      55]: : "D" (w));
............[      58]: return res;
............[      59]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/arch_hweight.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/le.h
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/le.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/byteorder.h
............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/byteorder.h
.............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/byteorder/little_endian.h
.............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/byteorder/little_endian.h
..............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/byteorder/little_endian.h
..............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/byteorder/little_endian.h
...............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swab.h
...............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swab.h
................# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/swab.h
................#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/swab.h
.................# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/swab.h
..................#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/swab.h
..................[       7]: static inline __attribute__((no_instrument_function)) __attribute__((__const__)) __u32 __arch_swab32(__u32 \
..................                val)
..................[       8]: {
..................[       9]: asm("bswapl %0" : "=r" (val) : "0" (val));
..................[      10]: return val;
..................[      11]: }
..................[      14]: static inline __attribute__((no_instrument_function)) __attribute__((__const__)) __u64 __arch_swab64(__u64 \
..................                val)
..................[      15]: {
..................[      30]: asm("bswapq %0" : "=r" (val) : "0" (val));
..................[      31]: return val;
..................[      33]: }
..................#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/swab.h
.................#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/swab.h
.................[      46]: static inline __attribute__((no_instrument_function)) __attribute__((__const__)) __u16 __fswab16(__u16 val\
.................                )
.................[      47]: {
.................[      53]: return ((__u16)( (((__u16)(val) & (__u16)0x00ffU) << 8) | (((__u16)(val) & (__u16)0xff00U) >> 8)));
.................[      55]: }
.................[      57]: static inline __attribute__((no_instrument_function)) __attribute__((__const__)) __u32 __fswab32(__u32 val\
.................                )
.................[      58]: {
.................[      62]: return __arch_swab32(val);
.................[      66]: }
.................[      68]: static inline __attribute__((no_instrument_function)) __attribute__((__const__)) __u64 __fswab64(__u64 val\
.................                )
.................[      69]: {
.................[      73]: return __arch_swab64(val);
.................[      81]: }
.................[      83]: static inline __attribute__((no_instrument_function)) __attribute__((__const__)) __u32 __fswahw32(__u32 val\
.................                )
.................[      84]: {
.................[      88]: return ((__u32)( (((__u32)(val) & (__u32)0x0000ffffUL) << 16) | (((__u32)(val) & (__u32)0xffff0000UL) >> 16)));
.................[      90]: }
.................[      92]: static inline __attribute__((no_instrument_function)) __attribute__((__const__)) __u32 __fswahb32(__u32 val\
.................                )
.................[      93]: {
.................[      97]: return ((__u32)( (((__u32)(val) & (__u32)0x00ff00ffUL) << 8) | (((__u32)(val) & (__u32)0xff00ff00UL) >> 8)));
.................[      99]: }
.................[     154]: static inline __attribute__((no_instrument_function)) __u16 __swab16p(const __u16 *p)
.................[     155]: {
.................[     159]: return (__builtin_constant_p((__u16)(*p)) ? ((__u16)( (((__u16)(*p) & (__u16)0x00ffU) << 8) | (((__u16)(*p) & (__u16\
.................                )0xff00U) >> 8))) : __fswab16(*p));
.................[     161]: }
.................[     167]: static inline __attribute__((no_instrument_function)) __u32 __swab32p(const __u32 *p)
.................[     168]: {
.................[     172]: return (__builtin_constant_p((__u32)(*p)) ? ((__u32)( (((__u32)(*p) & (__u32)0x000000ffUL) << 24) | (((__u32)(\
.................                *p) & (__u32)0x0000ff00UL) << 8) | (((__u32)(*p) & (__u32)0x00ff0000UL) >> 8) | (((__u32)(*p) & (__u32)0xff000000UL\
.................                ) >> 24))) : __fswab32(*p));
.................[     174]: }
.................[     180]: static inline __attribute__((no_instrument_function)) __u64 __swab64p(const __u64 *p)
.................[     181]: {
.................[     185]: return (__builtin_constant_p((__u64)(*p)) ? ((__u64)( (((__u64)(*p) & (__u64)0x00000000000000ffULL) << 56) | (\
.................                ((__u64)(*p) & (__u64)0x000000000000ff00ULL) << 40) | (((__u64)(*p) & (__u64)0x0000000000ff0000ULL) << 24) | (((\
.................                __u64)(*p) & (__u64)0x00000000ff000000ULL) << 8) | (((__u64)(*p) & (__u64)0x000000ff00000000ULL) >> 8) | (((__u64\
.................                )(*p) & (__u64)0x0000ff0000000000ULL) >> 24) | (((__u64)(*p) & (__u64)0x00ff000000000000ULL) >> 40) | (((__u64)(\
.................                *p) & (__u64)0xff00000000000000ULL) >> 56))) : __fswab64(*p));
.................[     187]: }
.................[     195]: static inline __attribute__((no_instrument_function)) __u32 __swahw32p(const __u32 *p)
.................[     196]: {
.................[     200]: return (__builtin_constant_p((__u32)(*p)) ? ((__u32)( (((__u32)(*p) & (__u32)0x0000ffffUL) << 16) | (((__u32)(\
.................                *p) & (__u32)0xffff0000UL) >> 16))) : __fswahw32(*p));
.................[     202]: }
.................[     210]: static inline __attribute__((no_instrument_function)) __u32 __swahb32p(const __u32 *p)
.................[     211]: {
.................[     215]: return (__builtin_constant_p((__u32)(*p)) ? ((__u32)( (((__u32)(*p) & (__u32)0x00ff00ffUL) << 8) | (((__u32)(*\
.................                p) & (__u32)0xff00ff00UL) >> 8))) : __fswahb32(*p));
.................[     217]: }
.................[     223]: static inline __attribute__((no_instrument_function)) void __swab16s(__u16 *p)
.................[     224]: {
.................[     228]: *p = __swab16p(p);
.................[     230]: }
.................[     235]: static inline __attribute__((no_instrument_function)) void __swab32s(__u32 *p)
.................[     236]: {
.................[     240]: *p = __swab32p(p);
.................[     242]: }
.................[     248]: static inline __attribute__((no_instrument_function)) void __swab64s(__u64 *p)
.................[     249]: {
.................[     253]: *p = __swab64p(p);
.................[     255]: }
.................[     263]: static inline __attribute__((no_instrument_function)) void __swahw32s(__u32 *p)
.................[     264]: {
.................[     268]: *p = __swahw32p(p);
.................[     270]: }
.................[     278]: static inline __attribute__((no_instrument_function)) void __swahb32s(__u32 *p)
.................[     279]: {
.................[     283]: *p = __swahb32p(p);
.................[     285]: }
.................#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/swab.h
................#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swab.h
...............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/byteorder/little_endian.h
...............[      43]: static inline __attribute__((no_instrument_function)) __le64 __cpu_to_le64p(const __u64 *p)
...............[      44]: {
...............[      45]: return ( __le64)*p;
...............[      46]: }
...............[      47]: static inline __attribute__((no_instrument_function)) __u64 __le64_to_cpup(const __le64 *p)
...............[      48]: {
...............[      49]: return ( __u64)*p;
...............[      50]: }
...............[      51]: static inline __attribute__((no_instrument_function)) __le32 __cpu_to_le32p(const __u32 *p)
...............[      52]: {
...............[      53]: return ( __le32)*p;
...............[      54]: }
...............[      55]: static inline __attribute__((no_instrument_function)) __u32 __le32_to_cpup(const __le32 *p)
...............[      56]: {
...............[      57]: return ( __u32)*p;
...............[      58]: }
...............[      59]: static inline __attribute__((no_instrument_function)) __le16 __cpu_to_le16p(const __u16 *p)
...............[      60]: {
...............[      61]: return ( __le16)*p;
...............[      62]: }
...............[      63]: static inline __attribute__((no_instrument_function)) __u16 __le16_to_cpup(const __le16 *p)
...............[      64]: {
...............[      65]: return ( __u16)*p;
...............[      66]: }
...............[      67]: static inline __attribute__((no_instrument_function)) __be64 __cpu_to_be64p(const __u64 *p)
...............[      68]: {
...............[      69]: return ( __be64)__swab64p(p);
...............[      70]: }
...............[      71]: static inline __attribute__((no_instrument_function)) __u64 __be64_to_cpup(const __be64 *p)
...............[      72]: {
...............[      73]: return __swab64p((__u64 *)p);
...............[      74]: }
...............[      75]: static inline __attribute__((no_instrument_function)) __be32 __cpu_to_be32p(const __u32 *p)
...............[      76]: {
...............[      77]: return ( __be32)__swab32p(p);
...............[      78]: }
...............[      79]: static inline __attribute__((no_instrument_function)) __u32 __be32_to_cpup(const __be32 *p)
...............[      80]: {
...............[      81]: return __swab32p((__u32 *)p);
...............[      82]: }
...............[      83]: static inline __attribute__((no_instrument_function)) __be16 __cpu_to_be16p(const __u16 *p)
...............[      84]: {
...............[      85]: return ( __be16)__swab16p(p);
...............[      86]: }
...............[      87]: static inline __attribute__((no_instrument_function)) __u16 __be16_to_cpup(const __be16 *p)
...............[      88]: {
...............[      89]: return __swab16p((__u16 *)p);
...............[      90]: }
...............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/byteorder/little_endian.h
.............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/byteorder/little_endian.h
..............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/byteorder/generic.h
...............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/byteorder/generic.h
...............[     143]: static inline __attribute__((no_instrument_function)) void le16_add_cpu(__le16 *var, u16 val)
...............[     144]: {
...............[     145]: *var = (( __le16)(__u16)((( __u16)(__le16)(*var)) + val));
...............[     146]: }
...............[     148]: static inline __attribute__((no_instrument_function)) void le32_add_cpu(__le32 *var, u32 val)
...............[     149]: {
...............[     150]: *var = (( __le32)(__u32)((( __u32)(__le32)(*var)) + val));
...............[     151]: }
...............[     153]: static inline __attribute__((no_instrument_function)) void le64_add_cpu(__le64 *var, u64 val)
...............[     154]: {
...............[     155]: *var = (( __le64)(__u64)((( __u64)(__le64)(*var)) + val));
...............[     156]: }
...............[     158]: static inline __attribute__((no_instrument_function)) void be16_add_cpu(__be16 *var, u16 val)
...............[     159]: {
...............[     160]: *var = (( __be16)(__builtin_constant_p((__u16)(((__builtin_constant_p((__u16)(( __u16)(__be16)(*var))) ?(\
...............                ( __u16)(((( __u16)(( __u16)(__be16)(*var)) &( __u16)0x00ffU) << 8) |((( __u16)(( __u16)(__be16)(*var)) &( __u16\
...............                )0xff00U) >> 8))) : __fswab16(( __u16)(__be16)(*var))) + val))) ? ((__u16)( (((__u16)(((__builtin_constant_p((\
...............                __u16)(( __u16)(__be16)(*var))) ?(( __u16)(((( __u16)(( __u16)(__be16)(*var)) &( __u16)0x00ffU) << 8) |((( __u16\
...............                )(( __u16)(__be16)(*var)) &( __u16)0xff00U) >> 8))) : __fswab16(( __u16)(__be16)(*var))) + val)) & (__u16)0x00ffU\
...............                ) << 8) | (((__u16)(((__builtin_constant_p((__u16)(( __u16)(__be16)(*var))) ?(( __u16)(((( __u16)(( __u16)(__be16\
...............                )(*var)) &( __u16)0x00ffU) << 8) |((( __u16)(( __u16)(__be16)(*var)) &( __u16)0xff00U) >> 8))) : __fswab16(( __u16\
...............                )(__be16)(*var))) + val)) & (__u16)0xff00U) >> 8))) : __fswab16(((__builtin_constant_p((__u16)(( __u16)(__be16\
...............                )(*var))) ?(( __u16)(((( __u16)(( __u16)(__be16)(*var)) &( __u16)0x00ffU) << 8) |((( __u16)(( __u16)(__be16)(*var\
...............                )) &( __u16)0xff00U) >> 8))) : __fswab16(( __u16)(__be16)(*var))) + val))));
...............[     161]: }
...............[     163]: static inline __attribute__((no_instrument_function)) void be32_add_cpu(__be32 *var, u32 val)
...............[     164]: {
...............[     165]: *var = (( __be32)(__builtin_constant_p((__u32)(((__builtin_constant_p((__u32)(( __u32)(__be32)(*var))) ?(\
...............                ( __u32)(((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x000000ffUL) << 24) |((( __u32)(( __u32)(__be32)(*var)) &\
...............                ( __u32)0x0000ff00UL) << 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x00ff0000UL) >> 8) |((( __u32)(( __u32)\
...............                (__be32)(*var)) &( __u32)0xff000000UL) >> 24))) : __fswab32(( __u32)(__be32)(*var))) + val))) ? ((__u32)( (((__u32\
...............                )(((__builtin_constant_p((__u32)(( __u32)(__be32)(*var))) ?(( __u32)(((( __u32)(( __u32)(__be32)(*var)) &( \
...............                __u32)0x000000ffUL) << 24) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x0000ff00UL) << 8) |((( __u32)(( __u32)\
...............                (__be32)(*var)) &( __u32)0x00ff0000UL) >> 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0xff000000UL) >> 24))\
...............                ) : __fswab32(( __u32)(__be32)(*var))) + val)) & (__u32)0x000000ffUL) << 24) | (((__u32)(((__builtin_constant_p\
...............                ((__u32)(( __u32)(__be32)(*var))) ?(( __u32)(((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x000000ffUL) << 24) \
...............                |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x0000ff00UL) << 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x00ff0000UL\
...............                ) >> 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0xff000000UL) >> 24))) : __fswab32(( __u32)(__be32)(*var))) \
...............                + val)) & (__u32)0x0000ff00UL) << 8) | (((__u32)(((__builtin_constant_p((__u32)(( __u32)(__be32)(*var))) ?(( __u32\
...............                )(((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x000000ffUL) << 24) |((( __u32)(( __u32)(__be32)(*var)) &( __u32\
...............                )0x0000ff00UL) << 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x00ff0000UL) >> 8) |((( __u32)(( __u32)(__be32\
...............                )(*var)) &( __u32)0xff000000UL) >> 24))) : __fswab32(( __u32)(__be32)(*var))) + val)) & (__u32)0x00ff0000UL) >> 8\
...............                ) | (((__u32)(((__builtin_constant_p((__u32)(( __u32)(__be32)(*var))) ?(( __u32)(((( __u32)(( __u32)(__be32\
...............                )(*var)) &( __u32)0x000000ffUL) << 24) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x0000ff00UL) << 8) |((( __u32\
...............                )(( __u32)(__be32)(*var)) &( __u32)0x00ff0000UL) >> 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0xff000000UL\
...............                ) >> 24))) : __fswab32(( __u32)(__be32)(*var))) + val)) & (__u32)0xff000000UL) >> 24))) : __fswab32(((__builtin_constant_p\
...............                ((__u32)(( __u32)(__be32)(*var))) ?(( __u32)(((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x000000ffUL) << 24) \
...............                |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x0000ff00UL) << 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0x00ff0000UL\
...............                ) >> 8) |((( __u32)(( __u32)(__be32)(*var)) &( __u32)0xff000000UL) >> 24))) : __fswab32(( __u32)(__be32)(*var))) \
...............                + val))));
...............[     166]: }
...............[     168]: static inline __attribute__((no_instrument_function)) void be64_add_cpu(__be64 *var, u64 val)
...............[     169]: {
...............[     170]: *var = (( __be64)(__builtin_constant_p((__u64)(((__builtin_constant_p((__u64)(( __u64)(__be64)(*var))) ?(\
...............                ( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000000000ffULL) << 56) |((( __u64)(( __u64)(__be64\
...............                )(*var)) &( __u64)0x000000000000ff00ULL) << 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000000000ff0000ULL\
...............                ) << 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000ff000000ULL) << 8) |((( __u64)(( __u64)(__be64)(\
...............                *var)) &( __u64)0x000000ff00000000ULL) >> 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000ff0000000000ULL\
...............                ) >> 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00ff000000000000ULL) >> 40) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0xff00000000000000ULL) >> 56))) : __fswab64(( __u64)(__be64)(*var))) + val))) ? ((__u64)( (((__u64\
...............                )(((__builtin_constant_p((__u64)(( __u64)(__be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( \
...............                __u64)0x00000000000000ffULL) << 56) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL) << 40\
...............                ) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)(*var\
...............                )) &( __u64)0x00000000ff000000ULL) << 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL) >> \
...............                8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000ff0000000000ULL) >> 24) |((( __u64)(( __u64)(__be64)(*var\
...............                )) &( __u64)0x00ff000000000000ULL) >> 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0xff00000000000000ULL) \
...............                >> 56))) : __fswab64(( __u64)(__be64)(*var))) + val)) & (__u64)0x00000000000000ffULL) << 56) | (((__u64)(((__builtin_constant_p\
...............                ((__u64)(( __u64)(__be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000000000ffULL\
...............                ) << 56) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL) << 40) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000ff000000ULL\
...............                ) << 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL) >> 8) |((( __u64)(( __u64)(__be64)(*\
...............                var)) &( __u64)0x0000ff0000000000ULL) >> 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00ff000000000000ULL\
...............                ) >> 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0xff00000000000000ULL) >> 56))) : __fswab64(( __u64)(__be64\
...............                )(*var))) + val)) & (__u64)0x000000000000ff00ULL) << 40) | (((__u64)(((__builtin_constant_p((__u64)(( __u64)(\
...............                __be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000000000ffULL) << 56) |((( __u64\
...............                )(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL) << 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)\
...............                0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000ff000000ULL) << 8) |((( __u64\
...............                )(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL) >> 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000ff0000000000ULL\
...............                ) >> 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00ff000000000000ULL) >> 40) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0xff00000000000000ULL) >> 56))) : __fswab64(( __u64)(__be64)(*var))) + val)) & (__u64)0x0000000000ff0000ULL\
...............                ) << 24) | (((__u64)(((__builtin_constant_p((__u64)(( __u64)(__be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64\
...............                )(*var)) &( __u64)0x00000000000000ffULL) << 56) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL\
...............                ) << 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0x00000000ff000000ULL) << 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL\
...............                ) >> 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000ff0000000000ULL) >> 24) |((( __u64)(( __u64)(__be64)(\
...............                *var)) &( __u64)0x00ff000000000000ULL) >> 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0xff00000000000000ULL\
...............                ) >> 56))) : __fswab64(( __u64)(__be64)(*var))) + val)) & (__u64)0x00000000ff000000ULL) << 8) | (((__u64)(((__builtin_constant_p\
...............                ((__u64)(( __u64)(__be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000000000ffULL\
...............                ) << 56) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL) << 40) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000ff000000ULL\
...............                ) << 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL) >> 8) |((( __u64)(( __u64)(__be64)(*\
...............                var)) &( __u64)0x0000ff0000000000ULL) >> 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00ff000000000000ULL\
...............                ) >> 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0xff00000000000000ULL) >> 56))) : __fswab64(( __u64)(__be64\
...............                )(*var))) + val)) & (__u64)0x000000ff00000000ULL) >> 8) | (((__u64)(((__builtin_constant_p((__u64)(( __u64)(__be64\
...............                )(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000000000ffULL) << 56) |((( __u64)(( __u64\
...............                )(__be64)(*var)) &( __u64)0x000000000000ff00ULL) << 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000000000ff0000ULL\
...............                ) << 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000ff000000ULL) << 8) |((( __u64)(( __u64)(__be64)(\
...............                *var)) &( __u64)0x000000ff00000000ULL) >> 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000ff0000000000ULL\
...............                ) >> 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00ff000000000000ULL) >> 40) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0xff00000000000000ULL) >> 56))) : __fswab64(( __u64)(__be64)(*var))) + val)) & (__u64)0x0000ff0000000000ULL\
...............                ) >> 24) | (((__u64)(((__builtin_constant_p((__u64)(( __u64)(__be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64\
...............                )(*var)) &( __u64)0x00000000000000ffULL) << 56) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL\
...............                ) << 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0x00000000ff000000ULL) << 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL\
...............                ) >> 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000ff0000000000ULL) >> 24) |((( __u64)(( __u64)(__be64)(\
...............                *var)) &( __u64)0x00ff000000000000ULL) >> 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0xff00000000000000ULL\
...............                ) >> 56))) : __fswab64(( __u64)(__be64)(*var))) + val)) & (__u64)0x00ff000000000000ULL) >> 40) | (((__u64)(((__builtin_constant_p\
...............                ((__u64)(( __u64)(__be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000000000ffULL\
...............                ) << 56) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL) << 40) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000ff000000ULL\
...............                ) << 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL) >> 8) |((( __u64)(( __u64)(__be64)(*\
...............                var)) &( __u64)0x0000ff0000000000ULL) >> 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00ff000000000000ULL\
...............                ) >> 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0xff00000000000000ULL) >> 56))) : __fswab64(( __u64)(__be64\
...............                )(*var))) + val)) & (__u64)0xff00000000000000ULL) >> 56))) : __fswab64(((__builtin_constant_p((__u64)(( __u64\
...............                )(__be64)(*var))) ?(( __u64)(((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000000000ffULL) << 56) |((( __u64\
...............                )(( __u64)(__be64)(*var)) &( __u64)0x000000000000ff00ULL) << 40) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)\
...............                0x0000000000ff0000ULL) << 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00000000ff000000ULL) << 8) |((( __u64\
...............                )(( __u64)(__be64)(*var)) &( __u64)0x000000ff00000000ULL) >> 8) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x0000ff0000000000ULL\
...............                ) >> 24) |((( __u64)(( __u64)(__be64)(*var)) &( __u64)0x00ff000000000000ULL) >> 40) |((( __u64)(( __u64)(__be64)\
...............                (*var)) &( __u64)0xff00000000000000ULL) >> 56))) : __fswab64(( __u64)(__be64)(*var))) + val))));
...............[     171]: }
...............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/byteorder/generic.h
..............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/byteorder/little_endian.h
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/byteorder.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/le.h
............[      11]: static inline __attribute__((no_instrument_function)) unsigned long find_next_zero_bit_le(const void *addr,
............[      12]: unsigned long size, unsigned long offset)
............[      13]: {
............[      14]: return find_next_zero_bit(addr, size, offset);
............[      15]: }
............[      17]: static inline __attribute__((no_instrument_function)) unsigned long find_next_bit_le(const void *addr,
............[      18]: unsigned long size, unsigned long offset)
............[      19]: {
............[      20]: return find_next_bit(addr, size, offset);
............[      21]: }
............[      23]: static inline __attribute__((no_instrument_function)) unsigned long find_first_zero_bit_le(const void *addr\
............                ,
............[      24]: unsigned long size)
............[      25]: {
............[      26]: return find_first_zero_bit(addr, size);
............[      27]: }
............[      52]: static inline __attribute__((no_instrument_function)) int test_bit_le(int nr, const void *addr)
............[      53]: {
............[      54]: return (__builtin_constant_p((nr ^ 0)) ? constant_test_bit((nr ^ 0), (addr)) : variable_test_bit((nr ^ 0), (addr)\
............                ));
............[      55]: }
............[      57]: static inline __attribute__((no_instrument_function)) void set_bit_le(int nr, void *addr)
............[      58]: {
............[      59]: set_bit(nr ^ 0, addr);
............[      60]: }
............[      62]: static inline __attribute__((no_instrument_function)) void clear_bit_le(int nr, void *addr)
............[      63]: {
............[      64]: clear_bit(nr ^ 0, addr);
............[      65]: }
............[      67]: static inline __attribute__((no_instrument_function)) void __set_bit_le(int nr, void *addr)
............[      68]: {
............[      69]: __set_bit(nr ^ 0, addr);
............[      70]: }
............[      72]: static inline __attribute__((no_instrument_function)) void __clear_bit_le(int nr, void *addr)
............[      73]: {
............[      74]: __clear_bit(nr ^ 0, addr);
............[      75]: }
............[      77]: static inline __attribute__((no_instrument_function)) int test_and_set_bit_le(int nr, void *addr)
............[      78]: {
............[      79]: return test_and_set_bit(nr ^ 0, addr);
............[      80]: }
............[      82]: static inline __attribute__((no_instrument_function)) int test_and_clear_bit_le(int nr, void *addr)
............[      83]: {
............[      84]: return test_and_clear_bit(nr ^ 0, addr);
............[      85]: }
............[      87]: static inline __attribute__((no_instrument_function)) int __test_and_set_bit_le(int nr, void *addr)
............[      88]: {
............[      89]: return __test_and_set_bit(nr ^ 0, addr);
............[      90]: }
............[      92]: static inline __attribute__((no_instrument_function)) int __test_and_clear_bit_le(int nr, void *addr)
............[      93]: {
............[      94]: return __test_and_clear_bit(nr ^ 0, addr);
............[      95]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bitops/le.h
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bitops.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitops.h
..........[      57]: static __inline__ __attribute__((no_instrument_function)) int get_bitmask_order(unsigned int count)
..........[      58]: {
..........[      59]: int order;
..........[      61]: order = fls(count);
..........[      62]: return order;
..........[      63]: }
..........[      65]: static __inline__ __attribute__((no_instrument_function)) int get_count_order(unsigned int count)
..........[      66]: {
..........[      67]: int order;
..........[      69]: order = fls(count) - 1;
..........[      70]: if (count & (count - 1))
..........[      71]: order++;
..........[      72]: return order;
..........[      73]: }
..........[      75]: static inline __attribute__((no_instrument_function)) unsigned long hweight_long(unsigned long w)
..........[      76]: {
..........[      77]: return sizeof(w) == 4 ? (__builtin_constant_p(w) ? ((( (!!((w) & (1ULL << 0))) + (!!((w) & (1ULL << 1))) + (!!((w) & (1ULL \
..........                << 2))) + (!!((w) & (1ULL << 3))) + (!!((w) & (1ULL << 4))) + (!!((w) & (1ULL << 5))) + (!!((w) & (1ULL << 6))) + (!!((w) & (1ULL \
..........                << 7))) ) + ( (!!(((w) >> 8) & (1ULL << 0))) + (!!(((w) >> 8) & (1ULL << 1))) + (!!(((w) >> 8) & (1ULL << 2))) + (!!(((w) >> 8) & (1ULL \
..........                << 3))) + (!!(((w) >> 8) & (1ULL << 4))) + (!!(((w) >> 8) & (1ULL << 5))) + (!!(((w) >> 8) & (1ULL << 6))) + (!!(((w) >> 8) & (1ULL \
..........                << 7))) )) + (( (!!(((w) >> 16) & (1ULL << 0))) + (!!(((w) >> 16) & (1ULL << 1))) + (!!(((w) >> 16) & (1ULL << 2))) + (!!(((w) >> 16\
..........                ) & (1ULL << 3))) + (!!(((w) >> 16) & (1ULL << 4))) + (!!(((w) >> 16) & (1ULL << 5))) + (!!(((w) >> 16) & (1ULL << 6))) + (!!(((w) \
..........                >> 16) & (1ULL << 7))) ) + ( (!!((((w) >> 16) >> 8) & (1ULL << 0))) + (!!((((w) >> 16) >> 8) & (1ULL << 1))) + (!!((((w) >> 16) >> 8) \
..........                & (1ULL << 2))) + (!!((((w) >> 16) >> 8) & (1ULL << 3))) + (!!((((w) >> 16) >> 8) & (1ULL << 4))) + (!!((((w) >> 16) >> 8) & (1ULL << \
..........                5))) + (!!((((w) >> 16) >> 8) & (1ULL << 6))) + (!!((((w) >> 16) >> 8) & (1ULL << 7))) ))) : __arch_hweight32(w)) : (__builtin_constant_p\
..........                (w) ? (((( (!!((w) & (1ULL << 0))) + (!!((w) & (1ULL << 1))) + (!!((w) & (1ULL << 2))) + (!!((w) & (1ULL << 3))) + (!!((w) & (1ULL \
..........                << 4))) + (!!((w) & (1ULL << 5))) + (!!((w) & (1ULL << 6))) + (!!((w) & (1ULL << 7))) ) + ( (!!(((w) >> 8) & (1ULL << 0))) + (!!(((\
..........                w) >> 8) & (1ULL << 1))) + (!!(((w) >> 8) & (1ULL << 2))) + (!!(((w) >> 8) & (1ULL << 3))) + (!!(((w) >> 8) & (1ULL << 4))) + (!!(((\
..........                w) >> 8) & (1ULL << 5))) + (!!(((w) >> 8) & (1ULL << 6))) + (!!(((w) >> 8) & (1ULL << 7))) )) + (( (!!(((w) >> 16) & (1ULL << 0))) + (\
..........                !!(((w) >> 16) & (1ULL << 1))) + (!!(((w) >> 16) & (1ULL << 2))) + (!!(((w) >> 16) & (1ULL << 3))) + (!!(((w) >> 16) & (1ULL << 4)\
..........                )) + (!!(((w) >> 16) & (1ULL << 5))) + (!!(((w) >> 16) & (1ULL << 6))) + (!!(((w) >> 16) & (1ULL << 7))) ) + ( (!!((((w) >> 16) >> 8\
..........                ) & (1ULL << 0))) + (!!((((w) >> 16) >> 8) & (1ULL << 1))) + (!!((((w) >> 16) >> 8) & (1ULL << 2))) + (!!((((w) >> 16) >> 8) & (1ULL \
..........                << 3))) + (!!((((w) >> 16) >> 8) & (1ULL << 4))) + (!!((((w) >> 16) >> 8) & (1ULL << 5))) + (!!((((w) >> 16) >> 8) & (1ULL << 6))) + \
..........                (!!((((w) >> 16) >> 8) & (1ULL << 7))) ))) + ((( (!!(((w) >> 32) & (1ULL << 0))) + (!!(((w) >> 32) & (1ULL << 1))) + (!!(((w) >> 32\
..........                ) & (1ULL << 2))) + (!!(((w) >> 32) & (1ULL << 3))) + (!!(((w) >> 32) & (1ULL << 4))) + (!!(((w) >> 32) & (1ULL << 5))) + (!!(((w) \
..........                >> 32) & (1ULL << 6))) + (!!(((w) >> 32) & (1ULL << 7))) ) + ( (!!((((w) >> 32) >> 8) & (1ULL << 0))) + (!!((((w) >> 32) >> 8) & (1ULL \
..........                << 1))) + (!!((((w) >> 32) >> 8) & (1ULL << 2))) + (!!((((w) >> 32) >> 8) & (1ULL << 3))) + (!!((((w) >> 32) >> 8) & (1ULL << 4))) + \
..........                (!!((((w) >> 32) >> 8) & (1ULL << 5))) + (!!((((w) >> 32) >> 8) & (1ULL << 6))) + (!!((((w) >> 32) >> 8) & (1ULL << 7))) )) + (( (!!\
..........                ((((w) >> 32) >> 16) & (1ULL << 0))) + (!!((((w) >> 32) >> 16) & (1ULL << 1))) + (!!((((w) >> 32) >> 16) & (1ULL << 2))) + (!!((((\
..........                w) >> 32) >> 16) & (1ULL << 3))) + (!!((((w) >> 32) >> 16) & (1ULL << 4))) + (!!((((w) >> 32) >> 16) & (1ULL << 5))) + (!!((((w) >> \
..........                32) >> 16) & (1ULL << 6))) + (!!((((w) >> 32) >> 16) & (1ULL << 7))) ) + ( (!!(((((w) >> 32) >> 16) >> 8) & (1ULL << 0))) + (!!(((((\
..........                w) >> 32) >> 16) >> 8) & (1ULL << 1))) + (!!(((((w) >> 32) >> 16) >> 8) & (1ULL << 2))) + (!!(((((w) >> 32) >> 16) >> 8) & (1ULL << 3)\
..........                )) + (!!(((((w) >> 32) >> 16) >> 8) & (1ULL << 4))) + (!!(((((w) >> 32) >> 16) >> 8) & (1ULL << 5))) + (!!(((((w) >> 32) >> 16) >> 8\
..........                ) & (1ULL << 6))) + (!!(((((w) >> 32) >> 16) >> 8) & (1ULL << 7))) )))) : __arch_hweight64(w));
..........[      78]: }
..........[      85]: static inline __attribute__((no_instrument_function)) __u64 rol64(__u64 word, unsigned int shift)
..........[      86]: {
..........[      87]: return (word << shift) | (word >> (64 - shift));
..........[      88]: }
..........[      95]: static inline __attribute__((no_instrument_function)) __u64 ror64(__u64 word, unsigned int shift)
..........[      96]: {
..........[      97]: return (word >> shift) | (word << (64 - shift));
..........[      98]: }
..........[     105]: static inline __attribute__((no_instrument_function)) __u32 rol32(__u32 word, unsigned int shift)
..........[     106]: {
..........[     107]: return (word << shift) | (word >> (32 - shift));
..........[     108]: }
..........[     115]: static inline __attribute__((no_instrument_function)) __u32 ror32(__u32 word, unsigned int shift)
..........[     116]: {
..........[     117]: return (word >> shift) | (word << (32 - shift));
..........[     118]: }
..........[     125]: static inline __attribute__((no_instrument_function)) __u16 rol16(__u16 word, unsigned int shift)
..........[     126]: {
..........[     127]: return (word << shift) | (word >> (16 - shift));
..........[     128]: }
..........[     135]: static inline __attribute__((no_instrument_function)) __u16 ror16(__u16 word, unsigned int shift)
..........[     136]: {
..........[     137]: return (word >> shift) | (word << (16 - shift));
..........[     138]: }
..........[     145]: static inline __attribute__((no_instrument_function)) __u8 rol8(__u8 word, unsigned int shift)
..........[     146]: {
..........[     147]: return (word << shift) | (word >> (8 - shift));
..........[     148]: }
..........[     155]: static inline __attribute__((no_instrument_function)) __u8 ror8(__u8 word, unsigned int shift)
..........[     156]: {
..........[     157]: return (word >> shift) | (word << (8 - shift));
..........[     158]: }
..........[     165]: static inline __attribute__((no_instrument_function)) __s32 sign_extend32(__u32 value, int index)
..........[     166]: {
..........[     167]: __u8 shift = 31 - index;
..........[     168]: return (__s32)(value << shift) >> shift;
..........[     169]: }
..........[     171]: static inline __attribute__((no_instrument_function)) unsigned fls_long(unsigned long l)
..........[     172]: {
..........[     173]: if (sizeof(l) == 4)
..........[     174]: return fls(l);
..........[     175]: return fls64(l);
..........[     176]: }
..........[     186]: static inline __attribute__((no_instrument_function)) unsigned long __ffs64(u64 word)
..........[     187]: {
..........[     194]: return __ffs((unsigned long)word);
..........[     195]: }
..........[     207]: extern unsigned long find_last_bit(const unsigned long *addr,
..........[     208]: unsigned long size);
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitops.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/log2.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/log2.h
..........[      21]: extern __attribute__((const, noreturn))
..........[      22]: int ____ilog2_NaN(void);
..........[      31]: static inline __attribute__((no_instrument_function)) __attribute__((const))
..........[      32]: int __ilog2_u32(u32 n)
..........[      33]: {
..........[      34]: return fls(n) - 1;
..........[      35]: }
..........[      39]: static inline __attribute__((no_instrument_function)) __attribute__((const))
..........[      40]: int __ilog2_u64(u64 n)
..........[      41]: {
..........[      42]: return fls64(n) - 1;
..........[      43]: }
..........[      51]: static inline __attribute__((no_instrument_function)) __attribute__((const))
..........[      52]: bool is_power_of_2(unsigned long n)
..........[      53]: {
..........[      54]: return (n != 0 && ((n & (n - 1)) == 0));
..........[      55]: }
..........[      60]: static inline __attribute__((no_instrument_function)) __attribute__((const))
..........[      61]: unsigned long __roundup_pow_of_two(unsigned long n)
..........[      62]: {
..........[      63]: return 1UL << fls_long(n - 1);
..........[      64]: }
..........[      69]: static inline __attribute__((no_instrument_function)) __attribute__((const))
..........[      70]: unsigned long __rounddown_pow_of_two(unsigned long n)
..........[      71]: {
..........[      72]: return 1UL << (fls_long(n) - 1);
..........[      73]: }
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/log2.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/printk.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/printk.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/init.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/init.h
...........[     135]: typedef int (*initcall_t)(void);
...........[     136]: typedef void (*exitcall_t)(void);
...........[     138]: extern initcall_t __con_initcall_start[], __con_initcall_end[];
...........[     139]: extern initcall_t __security_initcall_start[], __security_initcall_end[];
...........[     142]: typedef void (*ctor_fn_t)(void);
...........[     145]: extern int do_one_initcall(initcall_t fn);
...........[     146]: extern char __attribute__ ((__section__(".init.data"))) boot_command_line[];
...........[     147]: extern char *saved_command_line;
...........[     148]: extern unsigned int reset_devices;
...........[     151]: void setup_arch(char **);
...........[     152]: void prepare_namespace(void);
...........[     153]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) load_default_modules\
...........                (void);
...........[     154]: int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) init_rootfs(void\
...........                );
...........[     156]: extern void (*late_time_init)(void);
...........[     158]: extern bool initcall_debug;
...........[     225]: struct obs_kernel_param {
...........[     226]: const char *str;
...........[     227]: int (*setup_func)(char *);
...........[     228]: int early;
...........[     229]: };
...........[     254]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) parse_early_param\
...........                (void);
...........[     255]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) parse_early_options\
...........                (char *cmdline);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/init.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/printk.h
..........[       9]: extern const char linux_banner[];
..........[      10]: extern const char linux_proc_banner[];
..........[      12]: static inline __attribute__((no_instrument_function)) int printk_get_level(const char *buffer)
..........[      13]: {
..........[      14]: if (buffer[0] == '\001' && buffer[1]) {
..........[      15]: switch (buffer[1]) {
..........[      16]: case '0' ... '7':
..........[      17]: case 'd':
..........[      18]: return buffer[1];
..........[      19]: }
..........[      20]: }
..........[      21]: return 0;
..........[      22]: }
..........[      24]: static inline __attribute__((no_instrument_function)) const char *printk_skip_level(const char *buffer)
..........[      25]: {
..........[      26]: if (printk_get_level(buffer)) {
..........[      27]: switch (buffer[1]) {
..........[      28]: case '0' ... '7':
..........[      29]: case 'd':
..........[      30]: return buffer + 2;
..........[      31]: }
..........[      32]: }
..........[      33]: return buffer;
..........[      34]: }
..........[      36]: extern int console_printk[];
..........[      43]: static inline __attribute__((no_instrument_function)) void console_silent(void)
..........[      44]: {
..........[      45]: (console_printk[0]) = 0;
..........[      46]: }
..........[      48]: static inline __attribute__((no_instrument_function)) void console_verbose(void)
..........[      49]: {
..........[      50]: if ((console_printk[0]))
..........[      51]: (console_printk[0]) = 15;
..........[      52]: }
..........[      54]: struct va_format {
..........[      55]: const char *fmt;
..........[      56]: va_list *va;
..........[      57]: };
..........[      94]: static inline __attribute__((no_instrument_function)) __attribute__((format(printf, 1, 2)))
..........[      95]: int no_printk(const char *fmt, ...)
..........[      96]: {
..........[      97]: return 0;
..........[      98]: }
..........[     101]: extern __attribute__((format(printf, 1, 2)))
..........[     102]: void early_printk(const char *fmt, ...);
..........[     103]: void early_vprintk(const char *fmt, va_list ap);
..........[     110]: __attribute__((format(printf, 5, 0)))
..........[     111]: int vprintk_emit(int facility, int level,
..........[     112]: const char *dict, size_t dictlen,
..........[     113]: const char *fmt, va_list args);
..........[     115]: __attribute__((format(printf, 1, 0)))
..........[     116]: int vprintk(const char *fmt, va_list args);
..........[     118]: __attribute__((format(printf, 5, 6)))
..........[     119]: int printk_emit(int facility, int level,
..........[     120]: const char *dict, size_t dictlen,
..........[     121]: const char *fmt, ...);
..........[     123]: __attribute__((format(printf, 1, 2)))
..........[     124]: int printk(const char *fmt, ...);
..........[     129]: __attribute__((format(printf, 1, 2))) int printk_sched(const char *fmt, ...);
..........[     136]: extern int __printk_ratelimit(const char *func);
..........[     138]: extern bool printk_timed_ratelimit(unsigned long *caller_jiffies,
..........[     139]: unsigned int interval_msec);
..........[     141]: extern int printk_delay_msec;
..........[     142]: extern int dmesg_restrict;
..........[     143]: extern int kptr_restrict;
..........[     145]: extern void wake_up_klogd(void);
..........[     147]: void log_buf_kexec_setup(void);
..........[     148]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) setup_log_buf(int \
..........                early);
..........[     149]: void dump_stack_set_arch_desc(const char *fmt, ...);
..........[     150]: void dump_stack_print_info(const char *log_lvl);
..........[     151]: void show_regs_print_info(const char *log_lvl);
..........[     203]: extern void dump_stack(void) ;
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/printk.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dynamic_debug.h
...........[       9]: struct _ddebug {
...........[      14]: const char *modname;
...........[      15]: const char *function;
...........[      16]: const char *filename;
...........[      17]: const char *format;
...........[      18]: unsigned int lineno:18;
...........[      35]: unsigned int flags:8;
...........[      36]: } __attribute__((aligned(8)));
...........[      39]: int ddebug_add_module(struct _ddebug *tab, unsigned int n,
...........[      40]: const char *modname);
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dynamic_debug.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/string.h
............[      11]: extern char *strndup_user(const char *, long);
............[      12]: extern void *memdup_user(const void *, size_t);
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/string.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/string.h
............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/string.h
.............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/string_64.h
..............[       9]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void *__inline_memcpy\
..............                (void *to, const void *from, size_t n)
..............[      10]: {
..............[      11]: unsigned long d0, d1, d2;
..............[      12]: asm volatile("rep ; movsl\n\t"
..............[      13]: "testb $2,%b4\n\t"
..............[      14]: "je 1f\n\t"
..............[      15]: "movsw\n"
..............[      16]: "1:\ttestb $1,%b4\n\t"
..............[      17]: "je 2f\n\t"
..............[      18]: "movsb\n"
..............[      19]: "2:"
..............[      20]: : "=&c" (d0), "=&D" (d1), "=&S" (d2)
..............[      21]: : "0" (n / 4), "q" (n), "1" ((long)to), "2" ((long)from)
..............[      22]: : "memory");
..............[      23]: return to;
..............[      24]: }
..............[      34]: extern void *__memcpy(void *to, const void *from, size_t len);
..............[      55]: void *memset(void *s, int c, size_t n);
..............[      58]: void *memmove(void *dest, const void *src, size_t count);
..............[      60]: int memcmp(const void *cs, const void *ct, size_t count);
..............[      61]: size_t strlen(const char *s);
..............[      62]: char *strcpy(char *dest, const char *src);
..............[      63]: char *strcat(char *dest, const char *src);
..............[      64]: int strcmp(const char *cs, const char *ct);
..............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/string_64.h
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/string.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/string.h
............[      20]: extern char * strcpy(char *,const char *);
............[      23]: extern char * strncpy(char *,const char *, __kernel_size_t);
............[      26]: size_t strlcpy(char *, const char *, size_t);
............[      29]: extern char * strcat(char *, const char *);
............[      32]: extern char * strncat(char *, const char *, __kernel_size_t);
............[      35]: extern size_t strlcat(char *, const char *, __kernel_size_t);
............[      38]: extern int strcmp(const char *,const char *);
............[      41]: extern int strncmp(const char *,const char *,__kernel_size_t);
............[      44]: extern int strnicmp(const char *, const char *, __kernel_size_t);
............[      47]: extern int strcasecmp(const char *s1, const char *s2);
............[      50]: extern int strncasecmp(const char *s1, const char *s2, size_t n);
............[      53]: extern char * strchr(const char *,int);
............[      56]: extern char * strnchr(const char *, size_t, int);
............[      59]: extern char * strrchr(const char *,int);
............[      61]: extern char * skip_spaces(const char *);
............[      63]: extern char *strim(char *);
............[      65]: static inline __attribute__((no_instrument_function)) char *strstrip(char *str)
............[      66]: {
............[      67]: return strim(str);
............[      68]: }
............[      71]: extern char * strstr(const char *, const char *);
............[      74]: extern char * strnstr(const char *, const char *, size_t);
............[      77]: extern __kernel_size_t strlen(const char *);
............[      80]: extern __kernel_size_t strnlen(const char *,__kernel_size_t);
............[      83]: extern char * strpbrk(const char *,const char *);
............[      86]: extern char * strsep(char **,const char *);
............[      89]: extern __kernel_size_t strspn(const char *,const char *);
............[      92]: extern __kernel_size_t strcspn(const char *,const char *);
............[     105]: extern void * memscan(void *,int,__kernel_size_t);
............[     108]: extern int memcmp(const void *,const void *,__kernel_size_t);
............[     111]: extern void * memchr(const void *,int,__kernel_size_t);
............[     113]: void *memchr_inv(const void *s, int c, size_t n);
............[     115]: extern char *kstrdup(const char *s, gfp_t gfp);
............[     116]: extern char *kstrndup(const char *s, size_t len, gfp_t gfp);
............[     117]: extern void *kmemdup(const void *src, size_t len, gfp_t gfp);
............[     119]: extern char **argv_split(gfp_t gfp, const char *str, int *argcp);
............[     120]: extern void argv_free(char **argv);
............[     122]: extern bool sysfs_streq(const char *s1, const char *s2);
............[     123]: extern int strtobool(const char *s, bool *res);
............[     126]: int vbin_printf(u32 *bin_buf, size_t size, const char *fmt, va_list args);
............[     127]: int bstr_printf(char *buf, size_t size, const char *fmt, const u32 *bin_buf);
............[     128]: int bprintf(u32 *bin_buf, size_t size, const char *fmt, ...) __attribute__((format(printf, 3, 4)));
............[     131]: extern ssize_t memory_read_from_buffer(void *to, size_t count, loff_t *ppos,
............[     132]: const void *from, size_t available);
............[     139]: static inline __attribute__((no_instrument_function)) bool strstarts(const char *str, const char *prefix)
............[     140]: {
............[     141]: return strncmp(str, prefix, strlen(prefix)) == 0;
............[     142]: }
............[     144]: extern size_t memweight(const void *ptr, size_t bytes);
............[     151]: static inline __attribute__((no_instrument_function)) const char *kbasename(const char *path)
............[     152]: {
............[     153]: const char *tail = strrchr(path, '/');
............[     154]: return tail ? tail + 1 : path;
............[     155]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/string.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dynamic_debug.h
...........[     114]: static inline __attribute__((no_instrument_function)) int ddebug_remove_module(const char *mod)
...........[     115]: {
...........[     116]: return 0;
...........[     117]: }
...........[     119]: static inline __attribute__((no_instrument_function)) int ddebug_dyndbg_module_param_cb(char *param, char *\
...........                val,
...........[     120]: const char *modname)
...........[     121]: {
...........[     122]: if (strstr(param, "dyndbg")) {
...........[     124]: printk("\001" "4" "dyndbg param is supported only in "
...........[     125]: "CONFIG_DYNAMIC_DEBUG builds\n");
...........[     126]: return 0;
...........[     127]: }
...........[     128]: return -22;
...........[     129]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dynamic_debug.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/printk.h
..........[     368]: extern const struct file_operations kmsg_fops;
..........[     370]: enum {
..........[     371]: DUMP_PREFIX_NONE,
..........[     372]: DUMP_PREFIX_ADDRESS,
..........[     373]: DUMP_PREFIX_OFFSET
..........[     374]: };
..........[     375]: extern void hex_dump_to_buffer(const void *buf, size_t len,
..........[     376]: int rowsize, int groupsize,
..........[     377]: char *linebuf, size_t linebuflen, bool ascii);
..........[     379]: extern void print_hex_dump(const char *level, const char *prefix_str,
..........[     380]: int prefix_type, int rowsize, int groupsize,
..........[     381]: const void *buf, size_t len, bool ascii);
..........[     386]: extern void print_hex_dump_bytes(const char *prefix_str, int prefix_type,
..........[     387]: const void *buf, size_t len);
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/printk.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/kernel.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/kernel.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sysinfo.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sysinfo.h
...........[       7]: struct sysinfo {
...........[       8]: __kernel_long_t uptime;
...........[       9]: __kernel_ulong_t loads[3];
...........[      10]: __kernel_ulong_t totalram;
...........[      11]: __kernel_ulong_t freeram;
...........[      12]: __kernel_ulong_t sharedram;
...........[      13]: __kernel_ulong_t bufferram;
...........[      14]: __kernel_ulong_t totalswap;
...........[      15]: __kernel_ulong_t freeswap;
...........[      16]: __u16 procs;
...........[      17]: __u16 pad;
...........[      18]: __kernel_ulong_t totalhigh;
...........[      19]: __kernel_ulong_t freehigh;
...........[      20]: __u32 mem_unit;
...........[      21]: char _f[20-2*sizeof(__kernel_ulong_t)-sizeof(__u32)];
...........[      22]: };
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sysinfo.h
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/kernel.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
.........[     140]: struct completion;
.........[     141]: struct pt_regs;
.........[     142]: struct user;
.........[     145]: extern int _cond_resched(void);
.........[     166]: static inline __attribute__((no_instrument_function)) void __might_sleep(const char *file, int line,
.........[     167]: int preempt_offset) { }
.........[     200]: static inline __attribute__((no_instrument_function)) void might_fault(void) { }
.........[     203]: extern struct atomic_notifier_head panic_notifier_list;
.........[     204]: extern long (*panic_blink)(int state);
.........[     205]: __attribute__((format(printf, 1, 2)))
.........[     206]: void panic(const char *fmt, ...)
.........[     207]: __attribute__((noreturn)) ;
.........[     208]: extern void oops_enter(void);
.........[     209]: extern void oops_exit(void);
.........[     210]: void print_oops_end_marker(void);
.........[     211]: extern int oops_may_print(void);
.........[     212]: void do_exit(long error_code)
.........[     213]: __attribute__((noreturn));
.........[     214]: void complete_and_exit(struct completion *, long)
.........[     215]: __attribute__((noreturn));
.........[     218]: int _kstrtoul(const char *s, unsigned int base, unsigned long *res);
.........[     219]: int _kstrtol(const char *s, unsigned int base, long *res);
.........[     221]: int kstrtoull(const char *s, unsigned int base, unsigned long long *res);
.........[     222]: int kstrtoll(const char *s, unsigned int base, long long *res);
.........[     240]: static inline __attribute__((no_instrument_function)) int kstrtoul(const char *s, unsigned int base, unsigned long \
.........                *res)
.........[     241]: {
.........[     246]: if (sizeof(unsigned long) == sizeof(unsigned long long) &&
.........[     247]: __alignof__(unsigned long) == __alignof__(unsigned long long))
.........[     248]: return kstrtoull(s, base, (unsigned long long *)res);
.........[     249]: else
.........[     250]: return _kstrtoul(s, base, res);
.........[     251]: }
.........[     269]: static inline __attribute__((no_instrument_function)) int kstrtol(const char *s, unsigned int base, long *res)
.........[     270]: {
.........[     275]: if (sizeof(long) == sizeof(long long) &&
.........[     276]: __alignof__(long) == __alignof__(long long))
.........[     277]: return kstrtoll(s, base, (long long *)res);
.........[     278]: else
.........[     279]: return _kstrtol(s, base, res);
.........[     280]: }
.........[     282]: int kstrtouint(const char *s, unsigned int base, unsigned int *res);
.........[     283]: int kstrtoint(const char *s, unsigned int base, int *res);
.........[     285]: static inline __attribute__((no_instrument_function)) int kstrtou64(const char *s, unsigned int base, u64 *res)
.........[     286]: {
.........[     287]: return kstrtoull(s, base, res);
.........[     288]: }
.........[     290]: static inline __attribute__((no_instrument_function)) int kstrtos64(const char *s, unsigned int base, s64 *res)
.........[     291]: {
.........[     292]: return kstrtoll(s, base, res);
.........[     293]: }
.........[     295]: static inline __attribute__((no_instrument_function)) int kstrtou32(const char *s, unsigned int base, u32 *res)
.........[     296]: {
.........[     297]: return kstrtouint(s, base, res);
.........[     298]: }
.........[     300]: static inline __attribute__((no_instrument_function)) int kstrtos32(const char *s, unsigned int base, s32 *res)
.........[     301]: {
.........[     302]: return kstrtoint(s, base, res);
.........[     303]: }
.........[     305]: int kstrtou16(const char *s, unsigned int base, u16 *res);
.........[     306]: int kstrtos16(const char *s, unsigned int base, s16 *res);
.........[     307]: int kstrtou8(const char *s, unsigned int base, u8 *res);
.........[     308]: int kstrtos8(const char *s, unsigned int base, s8 *res);
.........[     310]: int kstrtoull_from_user(const char *s, size_t count, unsigned int base, unsigned long long *res);
.........[     311]: int kstrtoll_from_user(const char *s, size_t count, unsigned int base, long long *res);
.........[     312]: int kstrtoul_from_user(const char *s, size_t count, unsigned int base, unsigned long *res);
.........[     313]: int kstrtol_from_user(const char *s, size_t count, unsigned int base, long *res);
.........[     314]: int kstrtouint_from_user(const char *s, size_t count, unsigned int base, unsigned int *res);
.........[     315]: int kstrtoint_from_user(const char *s, size_t count, unsigned int base, int *res);
.........[     316]: int kstrtou16_from_user(const char *s, size_t count, unsigned int base, u16 *res);
.........[     317]: int kstrtos16_from_user(const char *s, size_t count, unsigned int base, s16 *res);
.........[     318]: int kstrtou8_from_user(const char *s, size_t count, unsigned int base, u8 *res);
.........[     319]: int kstrtos8_from_user(const char *s, size_t count, unsigned int base, s8 *res);
.........[     321]: static inline __attribute__((no_instrument_function)) int kstrtou64_from_user(const char *s, size_t count, unsigned \
.........                int base, u64 *res)
.........[     322]: {
.........[     323]: return kstrtoull_from_user(s, count, base, res);
.........[     324]: }
.........[     326]: static inline __attribute__((no_instrument_function)) int kstrtos64_from_user(const char *s, size_t count, unsigned \
.........                int base, s64 *res)
.........[     327]: {
.........[     328]: return kstrtoll_from_user(s, count, base, res);
.........[     329]: }
.........[     331]: static inline __attribute__((no_instrument_function)) int kstrtou32_from_user(const char *s, size_t count, unsigned \
.........                int base, u32 *res)
.........[     332]: {
.........[     333]: return kstrtouint_from_user(s, count, base, res);
.........[     334]: }
.........[     336]: static inline __attribute__((no_instrument_function)) int kstrtos32_from_user(const char *s, size_t count, unsigned \
.........                int base, s32 *res)
.........[     337]: {
.........[     338]: return kstrtoint_from_user(s, count, base, res);
.........[     339]: }
.........[     343]: extern unsigned long simple_strtoul(const char *,char **,unsigned int);
.........[     344]: extern long simple_strtol(const char *,char **,unsigned int);
.........[     345]: extern unsigned long long simple_strtoull(const char *,char **,unsigned int);
.........[     346]: extern long long simple_strtoll(const char *,char **,unsigned int);
.........[     352]: extern int num_to_str(char *buf, int size, unsigned long long num);
.........[     356]: extern __attribute__((format(printf, 2, 3))) int sprintf(char *buf, const char * fmt, ...);
.........[     357]: extern __attribute__((format(printf, 2, 0))) int vsprintf(char *buf, const char *, va_list);
.........[     358]: extern __attribute__((format(printf, 3, 4)))
.........[     359]: int snprintf(char *buf, size_t size, const char *fmt, ...);
.........[     360]: extern __attribute__((format(printf, 3, 0)))
.........[     361]: int vsnprintf(char *buf, size_t size, const char *fmt, va_list args);
.........[     362]: extern __attribute__((format(printf, 3, 4)))
.........[     363]: int scnprintf(char *buf, size_t size, const char *fmt, ...);
.........[     364]: extern __attribute__((format(printf, 3, 0)))
.........[     365]: int vscnprintf(char *buf, size_t size, const char *fmt, va_list args);
.........[     366]: extern __attribute__((format(printf, 2, 3)))
.........[     367]: char *kasprintf(gfp_t gfp, const char *fmt, ...);
.........[     368]: extern char *kvasprintf(gfp_t gfp, const char *fmt, va_list args);
.........[     370]: extern __attribute__((format(scanf, 2, 3)))
.........[     371]: int sscanf(const char *, const char *, ...);
.........[     372]: extern __attribute__((format(scanf, 2, 0)))
.........[     373]: int vsscanf(const char *, const char *, va_list);
.........[     375]: extern int get_option(char **str, int *pint);
.........[     376]: extern char *get_options(const char *str, int nints, int *ints);
.........[     377]: extern unsigned long long memparse(const char *ptr, char **retptr);
.........[     379]: extern int core_kernel_text(unsigned long addr);
.........[     380]: extern int core_kernel_data(unsigned long addr);
.........[     381]: extern int __kernel_text_address(unsigned long addr);
.........[     382]: extern int kernel_text_address(unsigned long addr);
.........[     383]: extern int func_ptr_is_kernel_text(void *ptr);
.........[     385]: struct pid;
.........[     386]: extern struct pid *session_of_pgrp(struct pid *pgrp);
.........[     388]: unsigned long int_sqrt(unsigned long);
.........[     390]: extern void bust_spinlocks(int yes);
.........[     391]: extern int oops_in_progress;
.........[     392]: extern int panic_timeout;
.........[     393]: extern int panic_on_oops;
.........[     394]: extern int panic_on_unrecovered_nmi;
.........[     395]: extern int panic_on_io_nmi;
.........[     396]: extern int sysctl_panic_on_stackoverflow;
.........[     397]: extern const char *print_tainted(void);
.........[     398]: enum lockdep_ok {
.........[     399]: LOCKDEP_STILL_OK,
.........[     400]: LOCKDEP_NOW_UNRELIABLE
.........[     401]: };
.........[     402]: extern void add_taint(unsigned flag, enum lockdep_ok);
.........[     403]: extern int test_taint(unsigned flag);
.........[     404]: extern unsigned long get_taint(void);
.........[     405]: extern int root_mountflags;
.........[     407]: extern bool early_boot_irqs_disabled;
.........[     410]: extern enum system_states {
.........[     411]: SYSTEM_BOOTING,
.........[     412]: SYSTEM_RUNNING,
.........[     413]: SYSTEM_HALT,
.........[     414]: SYSTEM_POWER_OFF,
.........[     415]: SYSTEM_RESTART,
.........[     416]: } system_state;
.........[     432]: extern const char hex_asc[];
.........[     436]: static inline __attribute__((no_instrument_function)) char *hex_byte_pack(char *buf, u8 byte)
.........[     437]: {
.........[     438]: *buf++ = hex_asc[((byte) & 0xf0) >> 4];
.........[     439]: *buf++ = hex_asc[((byte) & 0x0f)];
.........[     440]: return buf;
.........[     441]: }
.........[     443]: extern const char hex_asc_upper[];
.........[     447]: static inline __attribute__((no_instrument_function)) char *hex_byte_pack_upper(char *buf, u8 byte)
.........[     448]: {
.........[     449]: *buf++ = hex_asc_upper[((byte) & 0xf0) >> 4];
.........[     450]: *buf++ = hex_asc_upper[((byte) & 0x0f)];
.........[     451]: return buf;
.........[     452]: }
.........[     454]: static inline __attribute__((no_instrument_function)) char * pack_hex_byte(char *buf, u8 byte)
.........[     455]: {
.........[     456]: return hex_byte_pack(buf, byte);
.........[     457]: }
.........[     459]: extern int hex_to_bin(char ch);
.........[     460]: extern int hex2bin(u8 *dst, const char *src, size_t count);
.........[     462]: int mac_pton(const char *s, u8 *mac);
.........[     485]: void tracing_off_permanent(void);
.........[     490]: enum ftrace_dump_mode {
.........[     491]: DUMP_NONE,
.........[     492]: DUMP_ALL,
.........[     493]: DUMP_ORIG,
.........[     494]: };
.........[     497]: void tracing_on(void);
.........[     498]: void tracing_off(void);
.........[     499]: int tracing_is_on(void);
.........[     500]: void tracing_snapshot(void);
.........[     501]: void tracing_snapshot_alloc(void);
.........[     503]: extern void tracing_start(void);
.........[     504]: extern void tracing_stop(void);
.........[     506]: static inline __attribute__((no_instrument_function)) __attribute__((format(printf, 1, 2)))
.........[     507]: void ____trace_printk_check_format(const char *fmt, ...)
.........[     508]: {
.........[     509]: }
.........[     569]: extern __attribute__((format(printf, 2, 3)))
.........[     570]: int __trace_bprintk(unsigned long ip, const char *fmt, ...);
.........[     572]: extern __attribute__((format(printf, 2, 3)))
.........[     573]: int __trace_printk(unsigned long ip, const char *fmt, ...);
.........[     610]: extern int __trace_bputs(unsigned long ip, const char *str);
.........[     611]: extern int __trace_puts(unsigned long ip, const char *str, int size);
.........[     613]: extern void trace_dump_stack(int skip);
.........[     632]: extern int
.........[     633]: __ftrace_vbprintk(unsigned long ip, const char *fmt, va_list ap);
.........[     635]: extern int
.........[     636]: __ftrace_vprintk(unsigned long ip, const char *fmt, va_list ap);
.........[     638]: extern void ftrace_dump(enum ftrace_dump_mode oops_dump_mode);
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kernel.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/percpu.h
........[      88]: extern void __bad_percpu_size(void);
........[     492]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int x86_this_cpu_constant_test_bit\
........                (unsigned int nr,
........[     493]: const unsigned long *addr)
........[     494]: {
........[     495]: unsigned long *a = (unsigned long *)addr + nr / 64;
........[     498]: return ((1UL << (nr % 64)) & ({ typeof((*a)) pfo_ret__; switch (sizeof((*a))) { case 1: asm("mov" "b ""%%""gs"":" "%P" \
........                "1"",%0" : "=q" (pfo_ret__) : "m"(*a)); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"\
........                (*a)); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"(*a)); break; case 8: asm("mov" \
........                "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"(*a)); break; default: __bad_percpu_size(); } pfo_ret__; })\
........                ) != 0;
........[     502]: }
........[     504]: static inline __attribute__((no_instrument_function)) int x86_this_cpu_variable_test_bit(int nr,
........[     505]: const unsigned long *addr)
........[     506]: {
........[     507]: int oldbit;
........[     509]: asm volatile("bt ""%%""gs"":" "%P" "2"",%1\n\t"
........[     510]: "sbb %0,%0"
........[     511]: : "=r" (oldbit)
........[     512]: : "m" (*(unsigned long *)addr), "Ir" (nr));
........[     514]: return oldbit;
........[     515]: }
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/percpu.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/percpu.h
.........[      18]: extern unsigned long __per_cpu_offset[64];
.........[      72]: extern void setup_per_cpu_areas(void);
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/percpu.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/percpu.h
........[     526]: extern __attribute__((section(".data..percpu" ""))) __typeof__(unsigned long) this_cpu_off;
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/percpu.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/preempt.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/thread_info.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/thread_info.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bug.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bug.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bug.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bug.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bug.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bug.h
...........[      18]: struct bug_entry {
...........[      22]: signed int bug_addr_disp;
...........[      28]: signed int file_disp;
...........[      30]: unsigned short line;
...........[      32]: unsigned short flags;
...........[      33]: };
...........[      65]: extern __attribute__((format(printf, 3, 4)))
...........[      66]: void warn_slowpath_fmt(const char *file, const int line,
...........[      67]: const char *fmt, ...);
...........[      68]: extern __attribute__((format(printf, 4, 5)))
...........[      69]: void warn_slowpath_fmt_taint(const char *file, const int line, unsigned taint,
...........[      70]: const char *fmt, ...);
...........[      71]: extern void warn_slowpath_null(const char *file, const int line);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/bug.h
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/bug.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bug.h
.........[       7]: enum bug_trap_type {
.........[       8]: BUG_TRAP_TYPE_NONE = 0,
.........[       9]: BUG_TRAP_TYPE_WARN = 1,
.........[      10]: BUG_TRAP_TYPE_BUG = 2,
.........[      11]: };
.........[      13]: struct pt_regs;
.........[      91]: static inline __attribute__((no_instrument_function)) int is_warning_bug(const struct bug_entry *bug)
.........[      92]: {
.........[      93]: return bug->flags & (1 << 0);
.........[      94]: }
.........[      96]: const struct bug_entry *find_bug(unsigned long bugaddr);
.........[      98]: enum bug_trap_type report_bug(unsigned long bug_addr, struct pt_regs *regs);
.........[     101]: int is_valid_bugaddr(unsigned long addr);
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bug.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/thread_info.h
........[      13]: struct timespec;
........[      14]: struct compat_timespec;
........[      19]: struct restart_block {
........[      20]: long (*fn)(struct restart_block *);
........[      21]: union {
........[      23]: struct {
........[      24]: u32 *uaddr;
........[      25]: u32 val;
........[      26]: u32 flags;
........[      27]: u32 bitset;
........[      28]: u64 time;
........[      29]: u32 *uaddr2;
........[      30]: } futex;
........[      32]: struct {
........[      33]: clockid_t clockid;
........[      34]: struct timespec *rmtp;
........[      36]: struct compat_timespec *compat_rmtp;
........[      38]: u64 expires;
........[      39]: } nanosleep;
........[      41]: struct {
........[      42]: struct pollfd *ufds;
........[      43]: int nfds;
........[      44]: int has_timeout;
........[      45]: unsigned long tv_sec;
........[      46]: unsigned long tv_nsec;
........[      47]: } poll;
........[      48]: };
........[      49]: };
........[      51]: extern long do_no_restart_syscall(struct restart_block *parm);
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/thread_info.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/thread_info.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/thread_info.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page_types.h
...........[      49]: extern int devmem_is_allowed(unsigned long pagenr);
...........[      51]: extern unsigned long max_low_pfn_mapped;
...........[      52]: extern unsigned long max_pfn_mapped;
...........[      54]: static inline __attribute__((no_instrument_function)) phys_addr_t get_max_mapped(void)
...........[      55]: {
...........[      56]: return (phys_addr_t)max_pfn_mapped << 12;
...........[      57]: }
...........[      59]: bool pfn_range_is_mapped(unsigned long start_pfn, unsigned long end_pfn);
...........[      61]: extern unsigned long init_memory_mapping(unsigned long start,
...........[      62]: unsigned long end);
...........[      64]: extern void initmem_init(void);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page_types.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page_64.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page_64.h
...........[       9]: extern unsigned long max_pfn;
...........[      10]: extern unsigned long phys_base;
...........[      12]: static inline __attribute__((no_instrument_function)) unsigned long __phys_addr_nodebug(unsigned long x)
...........[      13]: {
...........[      14]: unsigned long y = x - (0xffffffff80000000UL);
...........[      17]: x = y + ((x > y) ? phys_base : ((0xffffffff80000000UL) - ((unsigned long)(0xffff880000000000UL))));
...........[      19]: return x;
...........[      20]: }
...........[      37]: void clear_page(void *page);
...........[      38]: void copy_page(void *to, void *from);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page_64.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
..........[      18]: struct page;
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/range.h
...........[       4]: struct range {
...........[       5]: u64 start;
...........[       6]: u64 end;
...........[       7]: };
...........[       9]: int add_range(struct range *range, int az, int nr_range,
...........[      10]: u64 start, u64 end);
...........[      13]: int add_range_with_merge(struct range *range, int az, int nr_range,
...........[      14]: u64 start, u64 end);
...........[      16]: void subtract_range(struct range *range, int az, u64 start, u64 end);
...........[      18]: int clean_sort_range(struct range *range, int az);
...........[      20]: void sort_range(struct range *range, int nr_range);
...........[      23]: static inline __attribute__((no_instrument_function)) resource_size_t cap_resource(u64 val)
...........[      24]: {
...........[      25]: if (val > ((resource_size_t)~0))
...........[      26]: return ((resource_size_t)~0);
...........[      28]: return val;
...........[      29]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/range.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
..........[      21]: extern struct range pfn_mapped[];
..........[      22]: extern int nr_pfn_mapped;
..........[      24]: static inline __attribute__((no_instrument_function)) void clear_user_page(void *page, unsigned long vaddr,
..........[      25]: struct page *pg)
..........[      26]: {
..........[      27]: clear_page(page);
..........[      28]: }
..........[      30]: static inline __attribute__((no_instrument_function)) void copy_user_page(void *to, void *from, unsigned long \
..........                vaddr,
..........[      31]: struct page *topage)
..........[      32]: {
..........[      33]: copy_page(to, from);
..........[      34]: }
..........[      65]: extern bool __virt_addr_valid(unsigned long kaddr);
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/getorder.h
...........[      12]: static inline __attribute__((no_instrument_function)) __attribute__((__const__))
...........[      13]: int __get_order(unsigned long size)
...........[      14]: {
...........[      15]: int order;
...........[      17]: size--;
...........[      18]: size >>= 12;
...........[      22]: order = fls64(size);
...........[      24]: return order;
...........[      25]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/getorder.h
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/page.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/thread_info.h
.........[      20]: struct task_struct;
.........[      21]: struct exec_domain;
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/thread_info.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........[       7]: struct task_struct;
..........[       8]: struct mm_struct;
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/vm86.h
...........[      62]: struct vm86_regs {
...........[      66]: long ebx;
...........[      67]: long ecx;
...........[      68]: long edx;
...........[      69]: long esi;
...........[      70]: long edi;
...........[      71]: long ebp;
...........[      72]: long eax;
...........[      73]: long __null_ds;
...........[      74]: long __null_es;
...........[      75]: long __null_fs;
...........[      76]: long __null_gs;
...........[      77]: long orig_eax;
...........[      78]: long eip;
...........[      79]: unsigned short cs, __csh;
...........[      80]: long eflags;
...........[      81]: long esp;
...........[      82]: unsigned short ss, __ssh;
...........[      86]: unsigned short es, __esh;
...........[      87]: unsigned short ds, __dsh;
...........[      88]: unsigned short fs, __fsh;
...........[      89]: unsigned short gs, __gsh;
...........[      90]: };
...........[      92]: struct revectored_struct {
...........[      93]: unsigned long __map[8];
...........[      94]: };
...........[      96]: struct vm86_struct {
...........[      97]: struct vm86_regs regs;
...........[      98]: unsigned long flags;
...........[      99]: unsigned long screen_bitmap;
...........[     100]: unsigned long cpu_type;
...........[     101]: struct revectored_struct int_revectored;
...........[     102]: struct revectored_struct int21_revectored;
...........[     103]: };
...........[     110]: struct vm86plus_info_struct {
...........[     111]: unsigned long force_return_for_pic:1;
...........[     112]: unsigned long vm86dbg_active:1;
...........[     113]: unsigned long vm86dbg_TFpendig:1;
...........[     114]: unsigned long unused:28;
...........[     115]: unsigned long is_vm86pus:1;
...........[     116]: unsigned char vm86dbg_intxxtab[32];
...........[     117]: };
...........[     118]: struct vm86plus_struct {
...........[     119]: struct vm86_regs regs;
...........[     120]: unsigned long flags;
...........[     121]: unsigned long screen_bitmap;
...........[     122]: unsigned long cpu_type;
...........[     123]: struct revectored_struct int_revectored;
...........[     124]: struct revectored_struct int21_revectored;
...........[     125]: struct vm86plus_info_struct vm86plus;
...........[     126]: };
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/vm86.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/math_emu.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/math_emu.h
...........[      11]: struct math_emu_info {
...........[      12]: long ___orig_eip;
...........[      13]: union {
...........[      14]: struct pt_regs *regs;
...........[      15]: struct kernel_vm86_regs *vm86;
...........[      16]: };
...........[      17]: };
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/math_emu.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/segment.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/segment.h
...........[     216]: extern const char early_idt_handlers[32][2+2+5];
...........[     267]: static inline __attribute__((no_instrument_function)) unsigned long get_limit(unsigned long segment)
...........[     268]: {
...........[     269]: unsigned long __limit;
...........[     270]: asm("lsll %1,%0" : "=r" (__limit) : "r" (segment));
...........[     271]: return __limit + 1;
...........[     272]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/segment.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/sigcontext.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/sigcontext.h
...........[      23]: struct _fpx_sw_bytes {
...........[      24]: __u32 magic1;
...........[      25]: __u32 extended_size;
...........[      28]: __u64 xstate_bv;
...........[      33]: __u32 xstate_size;
...........[      38]: __u32 padding[7];
...........[      39]: };
...........[     136]: struct _fpstate {
...........[     137]: __u16 cwd;
...........[     138]: __u16 swd;
...........[     139]: __u16 twd;
...........[     141]: __u16 fop;
...........[     142]: __u64 rip;
...........[     143]: __u64 rdp;
...........[     144]: __u32 mxcsr;
...........[     145]: __u32 mxcsr_mask;
...........[     146]: __u32 st_space[32];
...........[     147]: __u32 xmm_space[64];
...........[     148]: __u32 reserved2[12];
...........[     149]: union {
...........[     150]: __u32 reserved3[12];
...........[     151]: struct _fpx_sw_bytes sw_reserved;
...........[     153]: };
...........[     154]: };
...........[     197]: struct _xsave_hdr {
...........[     198]: __u64 xstate_bv;
...........[     199]: __u64 reserved1[2];
...........[     200]: __u64 reserved2[5];
...........[     201]: };
...........[     203]: struct _ymmh_state {
...........[     205]: __u32 ymmh_space[64];
...........[     206]: };
...........[     214]: struct _xstate {
...........[     215]: struct _fpstate fpstate;
...........[     216]: struct _xsave_hdr xstate_hdr;
...........[     217]: struct _ymmh_state ymmh;
...........[     219]: };
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/sigcontext.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/current.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/current.h
...........[       8]: struct task_struct;
...........[      10]: extern __attribute__((section(".data..percpu" ""))) __typeof__(struct task_struct *) current_task;
...........[      12]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) struct task_struct *get_current\
...........                (void)
...........[      13]: {
...........[      14]: return ({ typeof(current_task) pfo_ret__; switch (sizeof(current_task)) { case 1: asm("mov" "b ""%%""gs"":" "%P" \
...........                "1"",%0" : "=q" (pfo_ret__) : "p"( &(current_task))); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : "=r" \
...........                (pfo_ret__) : "p"( &(current_task))); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "p"\
...........                ( &(current_task))); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "p"( &(current_task\
...........                ))); break; default: __bad_percpu_size(); } pfo_ret__; });
...........[      15]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/current.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_types.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_types.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_64_types.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_64_types.h
............[      12]: typedef unsigned long pteval_t;
............[      13]: typedef unsigned long pmdval_t;
............[      14]: typedef unsigned long pudval_t;
............[      15]: typedef unsigned long pgdval_t;
............[      16]: typedef unsigned long pgprotval_t;
............[      18]: typedef struct { pteval_t pte; } pte_t;
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_64_types.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_types.h
...........[     242]: typedef struct pgprot { pgprotval_t pgprot; } pgprot_t;
...........[     244]: typedef struct { pgdval_t pgd; } pgd_t;
...........[     246]: static inline __attribute__((no_instrument_function)) pgd_t native_make_pgd(pgdval_t val)
...........[     247]: {
...........[     248]: return (pgd_t) { val };
...........[     249]: }
...........[     251]: static inline __attribute__((no_instrument_function)) pgdval_t native_pgd_val(pgd_t pgd)
...........[     252]: {
...........[     253]: return pgd.pgd;
...........[     254]: }
...........[     256]: static inline __attribute__((no_instrument_function)) pgdval_t pgd_flags(pgd_t pgd)
...........[     257]: {
...........[     258]: return native_pgd_val(pgd) & (~((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1\
...........                )))));
...........[     259]: }
...........[     262]: typedef struct { pudval_t pud; } pud_t;
...........[     264]: static inline __attribute__((no_instrument_function)) pud_t native_make_pud(pmdval_t val)
...........[     265]: {
...........[     266]: return (pud_t) { val };
...........[     267]: }
...........[     269]: static inline __attribute__((no_instrument_function)) pudval_t native_pud_val(pud_t pud)
...........[     270]: {
...........[     271]: return pud.pud;
...........[     272]: }
...........[     283]: typedef struct { pmdval_t pmd; } pmd_t;
...........[     285]: static inline __attribute__((no_instrument_function)) pmd_t native_make_pmd(pmdval_t val)
...........[     286]: {
...........[     287]: return (pmd_t) { val };
...........[     288]: }
...........[     290]: static inline __attribute__((no_instrument_function)) pmdval_t native_pmd_val(pmd_t pmd)
...........[     291]: {
...........[     292]: return pmd.pmd;
...........[     293]: }
...........[     303]: static inline __attribute__((no_instrument_function)) pudval_t pud_flags(pud_t pud)
...........[     304]: {
...........[     305]: return native_pud_val(pud) & (~((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1\
...........                )))));
...........[     306]: }
...........[     308]: static inline __attribute__((no_instrument_function)) pmdval_t pmd_flags(pmd_t pmd)
...........[     309]: {
...........[     310]: return native_pmd_val(pmd) & (~((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1\
...........                )))));
...........[     311]: }
...........[     313]: static inline __attribute__((no_instrument_function)) pte_t native_make_pte(pteval_t val)
...........[     314]: {
...........[     315]: return (pte_t) { .pte = val };
...........[     316]: }
...........[     318]: static inline __attribute__((no_instrument_function)) pteval_t native_pte_val(pte_t pte)
...........[     319]: {
...........[     320]: return pte.pte;
...........[     321]: }
...........[     323]: static inline __attribute__((no_instrument_function)) pteval_t pte_flags(pte_t pte)
...........[     324]: {
...........[     325]: return native_pte_val(pte) & (~((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1\
...........                )))));
...........[     326]: }
...........[     332]: typedef struct page *pgtable_t;
...........[     334]: extern pteval_t __supported_pte_mask;
...........[     335]: extern void set_nx(void);
...........[     336]: extern int nx_enabled;
...........[     339]: extern pgprot_t pgprot_writecombine(pgprot_t prot);
...........[     345]: struct file;
...........[     346]: pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn,
...........[     347]: unsigned long size, pgprot_t vma_prot);
...........[     348]: int phys_mem_access_prot_allowed(struct file *file, unsigned long pfn,
...........[     349]: unsigned long size, pgprot_t *vma_prot);
...........[     352]: void set_pte_vaddr(unsigned long vaddr, pte_t pte);
...........[     360]: struct seq_file;
...........[     361]: extern void arch_report_meminfo(struct seq_file *m);
...........[     363]: enum pg_level {
...........[     364]: PG_LEVEL_NONE,
...........[     365]: PG_LEVEL_4K,
...........[     366]: PG_LEVEL_2M,
...........[     367]: PG_LEVEL_1G,
...........[     368]: PG_LEVEL_NUM
...........[     369]: };
...........[     372]: extern void update_page_count(int level, unsigned long pages);
...........[     383]: extern pte_t *lookup_address(unsigned long address, unsigned int *level);
...........[     384]: extern phys_addr_t slow_virt_to_phys(void *__address);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_types.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/msr.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/msr.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ioctl.h
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ioctl.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ioctl.h
............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ioctl.h
.............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/ioctl.h
..............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/ioctl.h
..............[       7]: extern unsigned int __invalid_size_argument_for_IOC;
..............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/ioctl.h
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ioctl.h
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ioctl.h
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/msr.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/desc_defs.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/desc_defs.h
...........[      22]: struct desc_struct {
...........[      23]: union {
...........[      24]: struct {
...........[      25]: unsigned int a;
...........[      26]: unsigned int b;
...........[      27]: };
...........[      28]: struct {
...........[      29]: u16 limit0;
...........[      30]: u16 base0;
...........[      31]: unsigned base1: 8, type: 4, s: 1, dpl: 2, p: 1;
...........[      32]: unsigned limit: 4, avl: 1, l: 1, d: 1, g: 1, base2: 8;
...........[      33]: };
...........[      34]: };
...........[      35]: } __attribute__((packed));
...........[      43]: enum {
...........[      44]: GATE_INTERRUPT = 0xE,
...........[      45]: GATE_TRAP = 0xF,
...........[      46]: GATE_CALL = 0xC,
...........[      47]: GATE_TASK = 0x5,
...........[      48]: };
...........[      51]: struct gate_struct64 {
...........[      52]: u16 offset_low;
...........[      53]: u16 segment;
...........[      54]: unsigned ist : 3, zero0 : 5, type : 5, dpl : 2, p : 1;
...........[      55]: u16 offset_middle;
...........[      56]: u32 offset_high;
...........[      57]: u32 zero1;
...........[      58]: } __attribute__((packed));
...........[      64]: enum {
...........[      65]: DESC_TSS = 0x9,
...........[      66]: DESC_LDT = 0x2,
...........[      67]: DESCTYPE_S = 0x10,
...........[      68]: };
...........[      71]: struct ldttss_desc64 {
...........[      72]: u16 limit0;
...........[      73]: u16 base0;
...........[      74]: unsigned base1 : 8, type : 5, dpl : 2, p : 1;
...........[      75]: unsigned limit1 : 4, zero0 : 3, g : 1, base2 : 8;
...........[      76]: u32 base3;
...........[      77]: u32 zero1;
...........[      78]: } __attribute__((packed));
...........[      81]: typedef struct gate_struct64 gate_desc;
...........[      82]: typedef struct ldttss_desc64 ldt_desc;
...........[      83]: typedef struct ldttss_desc64 tss_desc;
...........[      94]: struct desc_ptr {
...........[      95]: unsigned short size;
...........[      96]: unsigned long address;
...........[      97]: } __attribute__((packed)) ;
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/desc_defs.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/nops.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/nops.h
...........[     142]: extern const unsigned char * const *ideal_nops;
...........[     143]: extern void arch_init_ideal_nops(void);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/nops.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/special_insns.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/special_insns.h
...........[       7]: static inline __attribute__((no_instrument_function)) void native_clts(void)
...........[       8]: {
...........[       9]: asm volatile("clts");
...........[      10]: }
...........[      19]: extern unsigned long __force_order;
...........[      21]: static inline __attribute__((no_instrument_function)) unsigned long native_read_cr0(void)
...........[      22]: {
...........[      23]: unsigned long val;
...........[      24]: asm volatile("mov %%cr0,%0\n\t" : "=r" (val), "=m" (__force_order));
...........[      25]: return val;
...........[      26]: }
...........[      28]: static inline __attribute__((no_instrument_function)) void native_write_cr0(unsigned long val)
...........[      29]: {
...........[      30]: asm volatile("mov %0,%%cr0": : "r" (val), "m" (__force_order));
...........[      31]: }
...........[      33]: static inline __attribute__((no_instrument_function)) unsigned long native_read_cr2(void)
...........[      34]: {
...........[      35]: unsigned long val;
...........[      36]: asm volatile("mov %%cr2,%0\n\t" : "=r" (val), "=m" (__force_order));
...........[      37]: return val;
...........[      38]: }
...........[      40]: static inline __attribute__((no_instrument_function)) void native_write_cr2(unsigned long val)
...........[      41]: {
...........[      42]: asm volatile("mov %0,%%cr2": : "r" (val), "m" (__force_order));
...........[      43]: }
...........[      45]: static inline __attribute__((no_instrument_function)) unsigned long native_read_cr3(void)
...........[      46]: {
...........[      47]: unsigned long val;
...........[      48]: asm volatile("mov %%cr3,%0\n\t" : "=r" (val), "=m" (__force_order));
...........[      49]: return val;
...........[      50]: }
...........[      52]: static inline __attribute__((no_instrument_function)) void native_write_cr3(unsigned long val)
...........[      53]: {
...........[      54]: asm volatile("mov %0,%%cr3": : "r" (val), "m" (__force_order));
...........[      55]: }
...........[      57]: static inline __attribute__((no_instrument_function)) unsigned long native_read_cr4(void)
...........[      58]: {
...........[      59]: unsigned long val;
...........[      60]: asm volatile("mov %%cr4,%0\n\t" : "=r" (val), "=m" (__force_order));
...........[      61]: return val;
...........[      62]: }
...........[      64]: static inline __attribute__((no_instrument_function)) unsigned long native_read_cr4_safe(void)
...........[      65]: {
...........[      66]: unsigned long val;
...........[      75]: val = native_read_cr4();
...........[      77]: return val;
...........[      78]: }
...........[      80]: static inline __attribute__((no_instrument_function)) void native_write_cr4(unsigned long val)
...........[      81]: {
...........[      82]: asm volatile("mov %0,%%cr4": : "r" (val), "m" (__force_order));
...........[      83]: }
...........[      86]: static inline __attribute__((no_instrument_function)) unsigned long native_read_cr8(void)
...........[      87]: {
...........[      88]: unsigned long cr8;
...........[      89]: asm volatile("movq %%cr8,%0" : "=r" (cr8));
...........[      90]: return cr8;
...........[      91]: }
...........[      93]: static inline __attribute__((no_instrument_function)) void native_write_cr8(unsigned long val)
...........[      94]: {
...........[      95]: asm volatile("movq %0,%%cr8" :: "r" (val) : "memory");
...........[      96]: }
...........[      99]: static inline __attribute__((no_instrument_function)) void native_wbinvd(void)
...........[     100]: {
...........[     101]: asm volatile("wbinvd": : :"memory");
...........[     102]: }
...........[     104]: extern void native_load_gs_index(unsigned);
...........[     110]: static inline __attribute__((no_instrument_function)) unsigned long read_cr0(void)
...........[     111]: {
...........[     112]: return native_read_cr0();
...........[     113]: }
...........[     115]: static inline __attribute__((no_instrument_function)) void write_cr0(unsigned long x)
...........[     116]: {
...........[     117]: native_write_cr0(x);
...........[     118]: }
...........[     120]: static inline __attribute__((no_instrument_function)) unsigned long read_cr2(void)
...........[     121]: {
...........[     122]: return native_read_cr2();
...........[     123]: }
...........[     125]: static inline __attribute__((no_instrument_function)) void write_cr2(unsigned long x)
...........[     126]: {
...........[     127]: native_write_cr2(x);
...........[     128]: }
...........[     130]: static inline __attribute__((no_instrument_function)) unsigned long read_cr3(void)
...........[     131]: {
...........[     132]: return native_read_cr3();
...........[     133]: }
...........[     135]: static inline __attribute__((no_instrument_function)) void write_cr3(unsigned long x)
...........[     136]: {
...........[     137]: native_write_cr3(x);
...........[     138]: }
...........[     140]: static inline __attribute__((no_instrument_function)) unsigned long read_cr4(void)
...........[     141]: {
...........[     142]: return native_read_cr4();
...........[     143]: }
...........[     145]: static inline __attribute__((no_instrument_function)) unsigned long read_cr4_safe(void)
...........[     146]: {
...........[     147]: return native_read_cr4_safe();
...........[     148]: }
...........[     150]: static inline __attribute__((no_instrument_function)) void write_cr4(unsigned long x)
...........[     151]: {
...........[     152]: native_write_cr4(x);
...........[     153]: }
...........[     155]: static inline __attribute__((no_instrument_function)) void wbinvd(void)
...........[     156]: {
...........[     157]: native_wbinvd();
...........[     158]: }
...........[     162]: static inline __attribute__((no_instrument_function)) unsigned long read_cr8(void)
...........[     163]: {
...........[     164]: return native_read_cr8();
...........[     165]: }
...........[     167]: static inline __attribute__((no_instrument_function)) void write_cr8(unsigned long x)
...........[     168]: {
...........[     169]: native_write_cr8(x);
...........[     170]: }
...........[     172]: static inline __attribute__((no_instrument_function)) void load_gs_index(unsigned selector)
...........[     173]: {
...........[     174]: native_load_gs_index(selector);
...........[     175]: }
...........[     180]: static inline __attribute__((no_instrument_function)) void clts(void)
...........[     181]: {
...........[     182]: native_clts();
...........[     183]: }
...........[     189]: static inline __attribute__((no_instrument_function)) void clflush(volatile void *__p)
...........[     190]: {
...........[     191]: asm volatile("clflush %0" : "+m" (*(volatile char *)__p));
...........[     192]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/special_insns.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/personality.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/personality.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/personality.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/personality.h
............[      10]: enum {
............[      11]: UNAME26 = 0x0020000,
............[      12]: ADDR_NO_RANDOMIZE = 0x0040000,
............[      13]: FDPIC_FUNCPTRS = 0x0080000,
............[      16]: MMAP_PAGE_ZERO = 0x0100000,
............[      17]: ADDR_COMPAT_LAYOUT = 0x0200000,
............[      18]: READ_IMPLIES_EXEC = 0x0400000,
............[      19]: ADDR_LIMIT_32BIT = 0x0800000,
............[      20]: SHORT_INODE = 0x1000000,
............[      21]: WHOLE_SECONDS = 0x2000000,
............[      22]: STICKY_TIMEOUTS = 0x4000000,
............[      23]: ADDR_LIMIT_3GB = 0x8000000,
............[      24]: };
............[      41]: enum {
............[      42]: PER_LINUX = 0x0000,
............[      43]: PER_LINUX_32BIT = 0x0000 | ADDR_LIMIT_32BIT,
............[      44]: PER_LINUX_FDPIC = 0x0000 | FDPIC_FUNCPTRS,
............[      45]: PER_SVR4 = 0x0001 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO,
............[      46]: PER_SVR3 = 0x0002 | STICKY_TIMEOUTS | SHORT_INODE,
............[      47]: PER_SCOSVR3 = 0x0003 | STICKY_TIMEOUTS |
............[      48]: WHOLE_SECONDS | SHORT_INODE,
............[      49]: PER_OSR5 = 0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS,
............[      50]: PER_WYSEV386 = 0x0004 | STICKY_TIMEOUTS | SHORT_INODE,
............[      51]: PER_ISCR4 = 0x0005 | STICKY_TIMEOUTS,
............[      52]: PER_BSD = 0x0006,
............[      53]: PER_SUNOS = 0x0006 | STICKY_TIMEOUTS,
............[      54]: PER_XENIX = 0x0007 | STICKY_TIMEOUTS | SHORT_INODE,
............[      55]: PER_LINUX32 = 0x0008,
............[      56]: PER_LINUX32_3GB = 0x0008 | ADDR_LIMIT_3GB,
............[      57]: PER_IRIX32 = 0x0009 | STICKY_TIMEOUTS,
............[      58]: PER_IRIXN32 = 0x000a | STICKY_TIMEOUTS,
............[      59]: PER_IRIX64 = 0x000b | STICKY_TIMEOUTS,
............[      60]: PER_RISCOS = 0x000c,
............[      61]: PER_SOLARIS = 0x000d | STICKY_TIMEOUTS,
............[      62]: PER_UW7 = 0x000e | STICKY_TIMEOUTS | MMAP_PAGE_ZERO,
............[      63]: PER_OSF4 = 0x000f,
............[      64]: PER_HPUX = 0x0010,
............[      65]: PER_MASK = 0x00ff,
............[      66]: };
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/personality.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/personality.h
...........[      11]: struct exec_domain;
...........[      12]: struct pt_regs;
...........[      14]: extern int register_exec_domain(struct exec_domain *);
...........[      15]: extern int unregister_exec_domain(struct exec_domain *);
...........[      16]: extern int __set_personality(unsigned int);
...........[      25]: typedef void (*handler_t)(int, struct pt_regs *);
...........[      27]: struct exec_domain {
...........[      28]: const char *name;
...........[      29]: handler_t handler;
...........[      30]: unsigned char pers_low;
...........[      31]: unsigned char pers_high;
...........[      32]: unsigned long *signal_map;
...........[      33]: unsigned long *signal_invmap;
...........[      34]: struct map_segment *err_map;
...........[      35]: struct map_segment *socktype_map;
...........[      36]: struct map_segment *sockopt_map;
...........[      37]: struct map_segment *af_map;
...........[      38]: struct module *module;
...........[      39]: struct exec_domain *next;
...........[      40]: };
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/personality.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpumask.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpumask.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitmap.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitmap.h
............[      91]: extern int __bitmap_empty(const unsigned long *bitmap, int bits);
............[      92]: extern int __bitmap_full(const unsigned long *bitmap, int bits);
............[      93]: extern int __bitmap_equal(const unsigned long *bitmap1,
............[      94]: const unsigned long *bitmap2, int bits);
............[      95]: extern void __bitmap_complement(unsigned long *dst, const unsigned long *src,
............[      96]: int bits);
............[      97]: extern void __bitmap_shift_right(unsigned long *dst,
............[      98]: const unsigned long *src, int shift, int bits);
............[      99]: extern void __bitmap_shift_left(unsigned long *dst,
............[     100]: const unsigned long *src, int shift, int bits);
............[     101]: extern int __bitmap_and(unsigned long *dst, const unsigned long *bitmap1,
............[     102]: const unsigned long *bitmap2, int bits);
............[     103]: extern void __bitmap_or(unsigned long *dst, const unsigned long *bitmap1,
............[     104]: const unsigned long *bitmap2, int bits);
............[     105]: extern void __bitmap_xor(unsigned long *dst, const unsigned long *bitmap1,
............[     106]: const unsigned long *bitmap2, int bits);
............[     107]: extern int __bitmap_andnot(unsigned long *dst, const unsigned long *bitmap1,
............[     108]: const unsigned long *bitmap2, int bits);
............[     109]: extern int __bitmap_intersects(const unsigned long *bitmap1,
............[     110]: const unsigned long *bitmap2, int bits);
............[     111]: extern int __bitmap_subset(const unsigned long *bitmap1,
............[     112]: const unsigned long *bitmap2, int bits);
............[     113]: extern int __bitmap_weight(const unsigned long *bitmap, int bits);
............[     115]: extern void bitmap_set(unsigned long *map, int i, int len);
............[     116]: extern void bitmap_clear(unsigned long *map, int start, int nr);
............[     117]: extern unsigned long bitmap_find_next_zero_area(unsigned long *map,
............[     118]: unsigned long size,
............[     119]: unsigned long start,
............[     120]: unsigned int nr,
............[     121]: unsigned long align_mask);
............[     123]: extern int bitmap_scnprintf(char *buf, unsigned int len,
............[     124]: const unsigned long *src, int nbits);
............[     125]: extern int __bitmap_parse(const char *buf, unsigned int buflen, int is_user,
............[     126]: unsigned long *dst, int nbits);
............[     127]: extern int bitmap_parse_user(const char *ubuf, unsigned int ulen,
............[     128]: unsigned long *dst, int nbits);
............[     129]: extern int bitmap_scnlistprintf(char *buf, unsigned int len,
............[     130]: const unsigned long *src, int nbits);
............[     131]: extern int bitmap_parselist(const char *buf, unsigned long *maskp,
............[     132]: int nmaskbits);
............[     133]: extern int bitmap_parselist_user(const char *ubuf, unsigned int ulen,
............[     134]: unsigned long *dst, int nbits);
............[     135]: extern void bitmap_remap(unsigned long *dst, const unsigned long *src,
............[     136]: const unsigned long *old, const unsigned long *new, int bits);
............[     137]: extern int bitmap_bitremap(int oldbit,
............[     138]: const unsigned long *old, const unsigned long *new, int bits);
............[     139]: extern void bitmap_onto(unsigned long *dst, const unsigned long *orig,
............[     140]: const unsigned long *relmap, int bits);
............[     141]: extern void bitmap_fold(unsigned long *dst, const unsigned long *orig,
............[     142]: int sz, int bits);
............[     143]: extern int bitmap_find_free_region(unsigned long *bitmap, int bits, int order);
............[     144]: extern void bitmap_release_region(unsigned long *bitmap, int pos, int order);
............[     145]: extern int bitmap_allocate_region(unsigned long *bitmap, int pos, int order);
............[     146]: extern void bitmap_copy_le(void *dst, const unsigned long *src, int nbits);
............[     147]: extern int bitmap_ord_to_pos(const unsigned long *bitmap, int n, int bits);
............[     159]: static inline __attribute__((no_instrument_function)) void bitmap_zero(unsigned long *dst, int nbits)
............[     160]: {
............[     161]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     162]: *dst = 0UL;
............[     163]: else {
............[     164]: int len = (((nbits) + (8 * sizeof(long)) - 1) / (8 * sizeof(long))) * sizeof(unsigned long);
............[     165]: memset(dst, 0, len);
............[     166]: }
............[     167]: }
............[     169]: static inline __attribute__((no_instrument_function)) void bitmap_fill(unsigned long *dst, int nbits)
............[     170]: {
............[     171]: size_t nlongs = (((nbits) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)));
............[     172]: if (!(__builtin_constant_p(nbits) && (nbits) <= 64)) {
............[     173]: int len = (nlongs - 1) * sizeof(unsigned long);
............[     174]: memset(dst, 0xff, len);
............[     175]: }
............[     176]: dst[nlongs - 1] = ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL );
............[     177]: }
............[     179]: static inline __attribute__((no_instrument_function)) void bitmap_copy(unsigned long *dst, const unsigned long \
............                *src,
............[     180]: int nbits)
............[     181]: {
............[     182]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     183]: *dst = *src;
............[     184]: else {
............[     185]: int len = (((nbits) + (8 * sizeof(long)) - 1) / (8 * sizeof(long))) * sizeof(unsigned long);
............[     186]: ({ size_t __len = (len); void *__ret; if (__builtin_constant_p(len) && __len >= 64) __ret = __memcpy((dst), (src), __len\
............                ); else __ret = __builtin_memcpy((dst), (src), __len); __ret; });
............[     187]: }
............[     188]: }
............[     190]: static inline __attribute__((no_instrument_function)) int bitmap_and(unsigned long *dst, const unsigned long *\
............                src1,
............[     191]: const unsigned long *src2, int nbits)
............[     192]: {
............[     193]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     194]: return (*dst = *src1 & *src2) != 0;
............[     195]: return __bitmap_and(dst, src1, src2, nbits);
............[     196]: }
............[     198]: static inline __attribute__((no_instrument_function)) void bitmap_or(unsigned long *dst, const unsigned long *\
............                src1,
............[     199]: const unsigned long *src2, int nbits)
............[     200]: {
............[     201]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     202]: *dst = *src1 | *src2;
............[     203]: else
............[     204]: __bitmap_or(dst, src1, src2, nbits);
............[     205]: }
............[     207]: static inline __attribute__((no_instrument_function)) void bitmap_xor(unsigned long *dst, const unsigned long \
............                *src1,
............[     208]: const unsigned long *src2, int nbits)
............[     209]: {
............[     210]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     211]: *dst = *src1 ^ *src2;
............[     212]: else
............[     213]: __bitmap_xor(dst, src1, src2, nbits);
............[     214]: }
............[     216]: static inline __attribute__((no_instrument_function)) int bitmap_andnot(unsigned long *dst, const unsigned long \
............                *src1,
............[     217]: const unsigned long *src2, int nbits)
............[     218]: {
............[     219]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     220]: return (*dst = *src1 & ~(*src2)) != 0;
............[     221]: return __bitmap_andnot(dst, src1, src2, nbits);
............[     222]: }
............[     224]: static inline __attribute__((no_instrument_function)) void bitmap_complement(unsigned long *dst, const unsigned \
............                long *src,
............[     225]: int nbits)
............[     226]: {
............[     227]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     228]: *dst = ~(*src) & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL );
............[     229]: else
............[     230]: __bitmap_complement(dst, src, nbits);
............[     231]: }
............[     233]: static inline __attribute__((no_instrument_function)) int bitmap_equal(const unsigned long *src1,
............[     234]: const unsigned long *src2, int nbits)
............[     235]: {
............[     236]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     237]: return ! ((*src1 ^ *src2) & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL ));
............[     238]: else
............[     239]: return __bitmap_equal(src1, src2, nbits);
............[     240]: }
............[     242]: static inline __attribute__((no_instrument_function)) int bitmap_intersects(const unsigned long *src1,
............[     243]: const unsigned long *src2, int nbits)
............[     244]: {
............[     245]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     246]: return ((*src1 & *src2) & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL )) != 0;
............[     247]: else
............[     248]: return __bitmap_intersects(src1, src2, nbits);
............[     249]: }
............[     251]: static inline __attribute__((no_instrument_function)) int bitmap_subset(const unsigned long *src1,
............[     252]: const unsigned long *src2, int nbits)
............[     253]: {
............[     254]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     255]: return ! ((*src1 & ~(*src2)) & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL ));
............[     256]: else
............[     257]: return __bitmap_subset(src1, src2, nbits);
............[     258]: }
............[     260]: static inline __attribute__((no_instrument_function)) int bitmap_empty(const unsigned long *src, int nbits)
............[     261]: {
............[     262]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     263]: return ! (*src & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL ));
............[     264]: else
............[     265]: return __bitmap_empty(src, nbits);
............[     266]: }
............[     268]: static inline __attribute__((no_instrument_function)) int bitmap_full(const unsigned long *src, int nbits)
............[     269]: {
............[     270]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     271]: return ! (~(*src) & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL ));
............[     272]: else
............[     273]: return __bitmap_full(src, nbits);
............[     274]: }
............[     276]: static inline __attribute__((no_instrument_function)) int bitmap_weight(const unsigned long *src, int nbits)
............[     277]: {
............[     278]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     279]: return hweight_long(*src & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL ));
............[     280]: return __bitmap_weight(src, nbits);
............[     281]: }
............[     283]: static inline __attribute__((no_instrument_function)) void bitmap_shift_right(unsigned long *dst,
............[     284]: const unsigned long *src, int n, int nbits)
............[     285]: {
............[     286]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     287]: *dst = *src >> n;
............[     288]: else
............[     289]: __bitmap_shift_right(dst, src, n, nbits);
............[     290]: }
............[     292]: static inline __attribute__((no_instrument_function)) void bitmap_shift_left(unsigned long *dst,
............[     293]: const unsigned long *src, int n, int nbits)
............[     294]: {
............[     295]: if ((__builtin_constant_p(nbits) && (nbits) <= 64))
............[     296]: *dst = (*src << n) & ( ((nbits) % 64) ? (1UL<<((nbits) % 64))-1 : ~0UL );
............[     297]: else
............[     298]: __bitmap_shift_left(dst, src, n, nbits);
............[     299]: }
............[     301]: static inline __attribute__((no_instrument_function)) int bitmap_parse(const char *buf, unsigned int buflen,
............[     302]: unsigned long *maskp, int nmaskbits)
............[     303]: {
............[     304]: return __bitmap_parse(buf, buflen, 0, maskp, nmaskbits);
............[     305]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bitmap.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpumask.h
...........[      14]: typedef struct cpumask { unsigned long bits[(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))]; } cpumask_t;
...........[      28]: extern int nr_cpu_ids;
...........[      79]: extern const struct cpumask *const cpu_possible_mask;
...........[      80]: extern const struct cpumask *const cpu_online_mask;
...........[      81]: extern const struct cpumask *const cpu_present_mask;
...........[      82]: extern const struct cpumask *const cpu_active_mask;
...........[     105]: static inline __attribute__((no_instrument_function)) unsigned int cpumask_check(unsigned int cpu)
...........[     106]: {
...........[     110]: return cpu;
...........[     111]: }
...........[     158]: static inline __attribute__((no_instrument_function)) unsigned int cpumask_first(const struct cpumask *srcp)
...........[     159]: {
...........[     160]: return find_first_bit(((srcp)->bits), 64);
...........[     161]: }
...........[     170]: static inline __attribute__((no_instrument_function)) unsigned int cpumask_next(int n, const struct cpumask *srcp\
...........                )
...........[     171]: {
...........[     173]: if (n != -1)
...........[     174]: cpumask_check(n);
...........[     175]: return find_next_bit(((srcp)->bits), 64, n+1);
...........[     176]: }
...........[     185]: static inline __attribute__((no_instrument_function)) unsigned int cpumask_next_zero(int n, const struct cpumask \
...........                *srcp)
...........[     186]: {
...........[     188]: if (n != -1)
...........[     189]: cpumask_check(n);
...........[     190]: return find_next_zero_bit(((srcp)->bits), 64, n+1);
...........[     191]: }
...........[     193]: int cpumask_next_and(int n, const struct cpumask *, const struct cpumask *);
...........[     194]: int cpumask_any_but(const struct cpumask *mask, unsigned int cpu);
...........[     255]: static inline __attribute__((no_instrument_function)) void cpumask_set_cpu(unsigned int cpu, struct cpumask *\
...........                dstp)
...........[     256]: {
...........[     257]: set_bit(cpumask_check(cpu), ((dstp)->bits));
...........[     258]: }
...........[     265]: static inline __attribute__((no_instrument_function)) void cpumask_clear_cpu(int cpu, struct cpumask *dstp)
...........[     266]: {
...........[     267]: clear_bit(cpumask_check(cpu), ((dstp)->bits));
...........[     268]: }
...........[     291]: static inline __attribute__((no_instrument_function)) int cpumask_test_and_set_cpu(int cpu, struct cpumask *\
...........                cpumask)
...........[     292]: {
...........[     293]: return test_and_set_bit(cpumask_check(cpu), ((cpumask)->bits));
...........[     294]: }
...........[     305]: static inline __attribute__((no_instrument_function)) int cpumask_test_and_clear_cpu(int cpu, struct cpumask \
...........                *cpumask)
...........[     306]: {
...........[     307]: return test_and_clear_bit(cpumask_check(cpu), ((cpumask)->bits));
...........[     308]: }
...........[     314]: static inline __attribute__((no_instrument_function)) void cpumask_setall(struct cpumask *dstp)
...........[     315]: {
...........[     316]: bitmap_fill(((dstp)->bits), 64);
...........[     317]: }
...........[     323]: static inline __attribute__((no_instrument_function)) void cpumask_clear(struct cpumask *dstp)
...........[     324]: {
...........[     325]: bitmap_zero(((dstp)->bits), 64);
...........[     326]: }
...........[     336]: static inline __attribute__((no_instrument_function)) int cpumask_and(struct cpumask *dstp,
...........[     337]: const struct cpumask *src1p,
...........[     338]: const struct cpumask *src2p)
...........[     339]: {
...........[     340]: return bitmap_and(((dstp)->bits), ((src1p)->bits),
...........[     341]: ((src2p)->bits), 64);
...........[     342]: }
...........[     350]: static inline __attribute__((no_instrument_function)) void cpumask_or(struct cpumask *dstp, const struct cpumask \
...........                *src1p,
...........[     351]: const struct cpumask *src2p)
...........[     352]: {
...........[     353]: bitmap_or(((dstp)->bits), ((src1p)->bits),
...........[     354]: ((src2p)->bits), 64);
...........[     355]: }
...........[     363]: static inline __attribute__((no_instrument_function)) void cpumask_xor(struct cpumask *dstp,
...........[     364]: const struct cpumask *src1p,
...........[     365]: const struct cpumask *src2p)
...........[     366]: {
...........[     367]: bitmap_xor(((dstp)->bits), ((src1p)->bits),
...........[     368]: ((src2p)->bits), 64);
...........[     369]: }
...........[     379]: static inline __attribute__((no_instrument_function)) int cpumask_andnot(struct cpumask *dstp,
...........[     380]: const struct cpumask *src1p,
...........[     381]: const struct cpumask *src2p)
...........[     382]: {
...........[     383]: return bitmap_andnot(((dstp)->bits), ((src1p)->bits),
...........[     384]: ((src2p)->bits), 64);
...........[     385]: }
...........[     392]: static inline __attribute__((no_instrument_function)) void cpumask_complement(struct cpumask *dstp,
...........[     393]: const struct cpumask *srcp)
...........[     394]: {
...........[     395]: bitmap_complement(((dstp)->bits), ((srcp)->bits),
...........[     396]: 64);
...........[     397]: }
...........[     404]: static inline __attribute__((no_instrument_function)) bool cpumask_equal(const struct cpumask *src1p,
...........[     405]: const struct cpumask *src2p)
...........[     406]: {
...........[     407]: return bitmap_equal(((src1p)->bits), ((src2p)->bits),
...........[     408]: 64);
...........[     409]: }
...........[     416]: static inline __attribute__((no_instrument_function)) bool cpumask_intersects(const struct cpumask *src1p,
...........[     417]: const struct cpumask *src2p)
...........[     418]: {
...........[     419]: return bitmap_intersects(((src1p)->bits), ((src2p)->bits),
...........[     420]: 64);
...........[     421]: }
...........[     430]: static inline __attribute__((no_instrument_function)) int cpumask_subset(const struct cpumask *src1p,
...........[     431]: const struct cpumask *src2p)
...........[     432]: {
...........[     433]: return bitmap_subset(((src1p)->bits), ((src2p)->bits),
...........[     434]: 64);
...........[     435]: }
...........[     441]: static inline __attribute__((no_instrument_function)) bool cpumask_empty(const struct cpumask *srcp)
...........[     442]: {
...........[     443]: return bitmap_empty(((srcp)->bits), 64);
...........[     444]: }
...........[     450]: static inline __attribute__((no_instrument_function)) bool cpumask_full(const struct cpumask *srcp)
...........[     451]: {
...........[     452]: return bitmap_full(((srcp)->bits), 64);
...........[     453]: }
...........[     459]: static inline __attribute__((no_instrument_function)) unsigned int cpumask_weight(const struct cpumask *srcp\
...........                )
...........[     460]: {
...........[     461]: return bitmap_weight(((srcp)->bits), 64);
...........[     462]: }
...........[     470]: static inline __attribute__((no_instrument_function)) void cpumask_shift_right(struct cpumask *dstp,
...........[     471]: const struct cpumask *srcp, int n)
...........[     472]: {
...........[     473]: bitmap_shift_right(((dstp)->bits), ((srcp)->bits), n,
...........[     474]: 64);
...........[     475]: }
...........[     483]: static inline __attribute__((no_instrument_function)) void cpumask_shift_left(struct cpumask *dstp,
...........[     484]: const struct cpumask *srcp, int n)
...........[     485]: {
...........[     486]: bitmap_shift_left(((dstp)->bits), ((srcp)->bits), n,
...........[     487]: 64);
...........[     488]: }
...........[     495]: static inline __attribute__((no_instrument_function)) void cpumask_copy(struct cpumask *dstp,
...........[     496]: const struct cpumask *srcp)
...........[     497]: {
...........[     498]: bitmap_copy(((dstp)->bits), ((srcp)->bits), 64);
...........[     499]: }
...........[     542]: static inline __attribute__((no_instrument_function)) int cpumask_scnprintf(char *buf, int len,
...........[     543]: const struct cpumask *srcp)
...........[     544]: {
...........[     545]: return bitmap_scnprintf(buf, len, ((srcp)->bits), 64);
...........[     546]: }
...........[     556]: static inline __attribute__((no_instrument_function)) int cpumask_parse_user(const char *buf, int len,
...........[     557]: struct cpumask *dstp)
...........[     558]: {
...........[     559]: return bitmap_parse_user(buf, len, ((dstp)->bits), 64);
...........[     560]: }
...........[     570]: static inline __attribute__((no_instrument_function)) int cpumask_parselist_user(const char *buf, int len,
...........[     571]: struct cpumask *dstp)
...........[     572]: {
...........[     573]: return bitmap_parselist_user(buf, len, ((dstp)->bits),
...........[     574]: 64);
...........[     575]: }
...........[     586]: static inline __attribute__((no_instrument_function)) int cpulist_scnprintf(char *buf, int len,
...........[     587]: const struct cpumask *srcp)
...........[     588]: {
...........[     589]: return bitmap_scnlistprintf(buf, len, ((srcp)->bits),
...........[     590]: 64);
...........[     591]: }
...........[     600]: static inline __attribute__((no_instrument_function)) int cpumask_parse(const char *buf, struct cpumask *dstp\
...........                )
...........[     601]: {
...........[     602]: char *nl = strchr(buf, '\n');
...........[     603]: int len = nl ? nl - buf : strlen(buf);
...........[     605]: return bitmap_parse(buf, len, ((dstp)->bits), 64);
...........[     606]: }
...........[     615]: static inline __attribute__((no_instrument_function)) int cpulist_parse(const char *buf, struct cpumask *dstp\
...........                )
...........[     616]: {
...........[     617]: return bitmap_parselist(buf, ((dstp)->bits), 64);
...........[     618]: }
...........[     625]: static inline __attribute__((no_instrument_function)) size_t cpumask_size(void)
...........[     626]: {
...........[     629]: return (((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long))) * sizeof(long);
...........[     630]: }
...........[     674]: typedef struct cpumask cpumask_var_t[1];
...........[     676]: static inline __attribute__((no_instrument_function)) bool alloc_cpumask_var(cpumask_var_t *mask, gfp_t flags\
...........                )
...........[     677]: {
...........[     678]: return true;
...........[     679]: }
...........[     681]: static inline __attribute__((no_instrument_function)) bool alloc_cpumask_var_node(cpumask_var_t *mask, gfp_t \
...........                flags,
...........[     682]: int node)
...........[     683]: {
...........[     684]: return true;
...........[     685]: }
...........[     687]: static inline __attribute__((no_instrument_function)) bool zalloc_cpumask_var(cpumask_var_t *mask, gfp_t flags\
...........                )
...........[     688]: {
...........[     689]: cpumask_clear(*mask);
...........[     690]: return true;
...........[     691]: }
...........[     693]: static inline __attribute__((no_instrument_function)) bool zalloc_cpumask_var_node(cpumask_var_t *mask, gfp_t \
...........                flags,
...........[     694]: int node)
...........[     695]: {
...........[     696]: cpumask_clear(*mask);
...........[     697]: return true;
...........[     698]: }
...........[     700]: static inline __attribute__((no_instrument_function)) void alloc_bootmem_cpumask_var(cpumask_var_t *mask)
...........[     701]: {
...........[     702]: }
...........[     704]: static inline __attribute__((no_instrument_function)) void free_cpumask_var(cpumask_var_t mask)
...........[     705]: {
...........[     706]: }
...........[     708]: static inline __attribute__((no_instrument_function)) void free_bootmem_cpumask_var(cpumask_var_t mask)
...........[     709]: {
...........[     710]: }
...........[     715]: extern const unsigned long cpu_all_bits[(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
...........[     726]: void set_cpu_possible(unsigned int cpu, bool possible);
...........[     727]: void set_cpu_present(unsigned int cpu, bool present);
...........[     728]: void set_cpu_online(unsigned int cpu, bool online);
...........[     729]: void set_cpu_active(unsigned int cpu, bool active);
...........[     730]: void init_cpu_present(const struct cpumask *src);
...........[     731]: void init_cpu_possible(const struct cpumask *src);
...........[     732]: void init_cpu_online(const struct cpumask *src);
...........[     748]: static inline __attribute__((no_instrument_function)) int __check_is_bitmap(const unsigned long *bitmap)
...........[     749]: {
...........[     750]: return 1;
...........[     751]: }
...........[     760]: extern const unsigned long
...........[     761]: cpu_bit_bitmap[64+1][(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
...........[     763]: static inline __attribute__((no_instrument_function)) const struct cpumask *get_cpu_mask(unsigned int cpu)
...........[     764]: {
...........[     765]: const unsigned long *p = cpu_bit_bitmap[1 + cpu % 64];
...........[     766]: p -= cpu / 64;
...........[     767]: return ((struct cpumask *)(1 ? (p) : (void *)sizeof(__check_is_bitmap(p))));
...........[     768]: }
...........[     831]: int __first_cpu(const cpumask_t *srcp);
...........[     832]: int __next_cpu(int n, const cpumask_t *srcp);
...........[     860]: static inline __attribute__((no_instrument_function)) void __cpu_set(int cpu, volatile cpumask_t *dstp)
...........[     861]: {
...........[     862]: set_bit(cpu, dstp->bits);
...........[     863]: }
...........[     866]: static inline __attribute__((no_instrument_function)) void __cpu_clear(int cpu, volatile cpumask_t *dstp)
...........[     867]: {
...........[     868]: clear_bit(cpu, dstp->bits);
...........[     869]: }
...........[     872]: static inline __attribute__((no_instrument_function)) void __cpus_setall(cpumask_t *dstp, int nbits)
...........[     873]: {
...........[     874]: bitmap_fill(dstp->bits, nbits);
...........[     875]: }
...........[     878]: static inline __attribute__((no_instrument_function)) void __cpus_clear(cpumask_t *dstp, int nbits)
...........[     879]: {
...........[     880]: bitmap_zero(dstp->bits, nbits);
...........[     881]: }
...........[     887]: static inline __attribute__((no_instrument_function)) int __cpu_test_and_set(int cpu, cpumask_t *addr)
...........[     888]: {
...........[     889]: return test_and_set_bit(cpu, addr->bits);
...........[     890]: }
...........[     893]: static inline __attribute__((no_instrument_function)) int __cpus_and(cpumask_t *dstp, const cpumask_t *src1p\
...........                ,
...........[     894]: const cpumask_t *src2p, int nbits)
...........[     895]: {
...........[     896]: return bitmap_and(dstp->bits, src1p->bits, src2p->bits, nbits);
...........[     897]: }
...........[     900]: static inline __attribute__((no_instrument_function)) void __cpus_or(cpumask_t *dstp, const cpumask_t *src1p\
...........                ,
...........[     901]: const cpumask_t *src2p, int nbits)
...........[     902]: {
...........[     903]: bitmap_or(dstp->bits, src1p->bits, src2p->bits, nbits);
...........[     904]: }
...........[     907]: static inline __attribute__((no_instrument_function)) void __cpus_xor(cpumask_t *dstp, const cpumask_t *src1p\
...........                ,
...........[     908]: const cpumask_t *src2p, int nbits)
...........[     909]: {
...........[     910]: bitmap_xor(dstp->bits, src1p->bits, src2p->bits, nbits);
...........[     911]: }
...........[     915]: static inline __attribute__((no_instrument_function)) int __cpus_andnot(cpumask_t *dstp, const cpumask_t *src1p\
...........                ,
...........[     916]: const cpumask_t *src2p, int nbits)
...........[     917]: {
...........[     918]: return bitmap_andnot(dstp->bits, src1p->bits, src2p->bits, nbits);
...........[     919]: }
...........[     922]: static inline __attribute__((no_instrument_function)) int __cpus_equal(const cpumask_t *src1p,
...........[     923]: const cpumask_t *src2p, int nbits)
...........[     924]: {
...........[     925]: return bitmap_equal(src1p->bits, src2p->bits, nbits);
...........[     926]: }
...........[     929]: static inline __attribute__((no_instrument_function)) int __cpus_intersects(const cpumask_t *src1p,
...........[     930]: const cpumask_t *src2p, int nbits)
...........[     931]: {
...........[     932]: return bitmap_intersects(src1p->bits, src2p->bits, nbits);
...........[     933]: }
...........[     936]: static inline __attribute__((no_instrument_function)) int __cpus_subset(const cpumask_t *src1p,
...........[     937]: const cpumask_t *src2p, int nbits)
...........[     938]: {
...........[     939]: return bitmap_subset(src1p->bits, src2p->bits, nbits);
...........[     940]: }
...........[     943]: static inline __attribute__((no_instrument_function)) int __cpus_empty(const cpumask_t *srcp, int nbits)
...........[     944]: {
...........[     945]: return bitmap_empty(srcp->bits, nbits);
...........[     946]: }
...........[     949]: static inline __attribute__((no_instrument_function)) int __cpus_weight(const cpumask_t *srcp, int nbits)
...........[     950]: {
...........[     951]: return bitmap_weight(srcp->bits, nbits);
...........[     952]: }
...........[     956]: static inline __attribute__((no_instrument_function)) void __cpus_shift_left(cpumask_t *dstp,
...........[     957]: const cpumask_t *srcp, int n, int nbits)
...........[     958]: {
...........[     959]: bitmap_shift_left(dstp->bits, srcp->bits, n, nbits);
...........[     960]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpumask.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/math64.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/math64.h
...........[      18]: static inline __attribute__((no_instrument_function)) u64 div_u64_rem(u64 dividend, u32 divisor, u32 *remainder\
...........                )
...........[      19]: {
...........[      20]: *remainder = dividend % divisor;
...........[      21]: return dividend / divisor;
...........[      22]: }
...........[      27]: static inline __attribute__((no_instrument_function)) s64 div_s64_rem(s64 dividend, s32 divisor, s32 *remainder\
...........                )
...........[      28]: {
...........[      29]: *remainder = dividend % divisor;
...........[      30]: return dividend / divisor;
...........[      31]: }
...........[      36]: static inline __attribute__((no_instrument_function)) u64 div64_u64_rem(u64 dividend, u64 divisor, u64 *remainder\
...........                )
...........[      37]: {
...........[      38]: *remainder = dividend % divisor;
...........[      39]: return dividend / divisor;
...........[      40]: }
...........[      45]: static inline __attribute__((no_instrument_function)) u64 div64_u64(u64 dividend, u64 divisor)
...........[      46]: {
...........[      47]: return dividend / divisor;
...........[      48]: }
...........[      53]: static inline __attribute__((no_instrument_function)) s64 div64_s64(s64 dividend, s64 divisor)
...........[      54]: {
...........[      55]: return dividend / divisor;
...........[      56]: }
...........[      97]: static inline __attribute__((no_instrument_function)) u64 div_u64(u64 dividend, u32 divisor)
...........[      98]: {
...........[      99]: u32 remainder;
...........[     100]: return div_u64_rem(dividend, divisor, &remainder);
...........[     101]: }
...........[     108]: static inline __attribute__((no_instrument_function)) s64 div_s64(s64 dividend, s32 divisor)
...........[     109]: {
...........[     110]: s32 remainder;
...........[     111]: return div_s64_rem(dividend, divisor, &remainder);
...........[     112]: }
...........[     115]: u32 iter_div_u64_rem(u64 dividend, u32 divisor, u64 *remainder);
...........[     117]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) u32
...........[     118]: __iter_div_u64_rem(u64 dividend, u32 divisor, u64 *remainder)
...........[     119]: {
...........[     120]: u32 ret = 0;
...........[     122]: while (dividend >= divisor) {
...........[     125]: asm("" : "+rm"(dividend));
...........[     127]: dividend -= divisor;
...........[     128]: ret++;
...........[     129]: }
...........[     131]: *remainder = dividend;
...........[     133]: return ret;
...........[     134]: }
...........[     148]: static inline __attribute__((no_instrument_function)) u64 mul_u64_u32_shr(u64 a, u32 mul, unsigned int shift)
...........[     149]: {
...........[     150]: u32 ah, al;
...........[     151]: u64 ret;
...........[     153]: al = a;
...........[     154]: ah = a >> 32;
...........[     156]: ret = ((u64)al * mul) >> shift;
...........[     157]: if (ah)
...........[     158]: ret += ((u64)ah * mul) << (32 - shift);
...........[     160]: return ret;
...........[     161]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/math64.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/err.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/err.h
...........[      22]: static inline __attribute__((no_instrument_function)) void * ERR_PTR(long error)
...........[      23]: {
...........[      24]: return (void *) error;
...........[      25]: }
...........[      27]: static inline __attribute__((no_instrument_function)) long PTR_ERR( const void *ptr)
...........[      28]: {
...........[      29]: return (long) ptr;
...........[      30]: }
...........[      32]: static inline __attribute__((no_instrument_function)) long IS_ERR( const void *ptr)
...........[      33]: {
...........[      34]: return __builtin_expect(!!(((unsigned long)ptr) >=( unsigned long)-4095), 0);
...........[      35]: }
...........[      37]: static inline __attribute__((no_instrument_function)) long IS_ERR_OR_NULL( const void *ptr)
...........[      38]: {
...........[      39]: return !ptr || __builtin_expect(!!(((unsigned long)ptr) >=( unsigned long)-4095), 0);
...........[      40]: }
...........[      49]: static inline __attribute__((no_instrument_function)) void * ERR_CAST( const void *ptr)
...........[      50]: {
...........[      52]: return (void *) ptr;
...........[      53]: }
...........[      55]: static inline __attribute__((no_instrument_function)) int PTR_ERR_OR_ZERO( const void *ptr)
...........[      56]: {
...........[      57]: if (IS_ERR(ptr))
...........[      58]: return PTR_ERR(ptr);
...........[      59]: else
...........[      60]: return 0;
...........[      61]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/err.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqflags.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqflags.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irqflags.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irqflags.h
............[      11]: static inline __attribute__((no_instrument_function)) unsigned long native_save_fl(void)
............[      12]: {
............[      13]: unsigned long flags;
............[      20]: asm volatile("# __raw_save_flags\n\t"
............[      21]: "pushf ; pop %0"
............[      22]: : "=rm" (flags)
............[      23]: :
............[      24]: : "memory");
............[      26]: return flags;
............[      27]: }
............[      29]: static inline __attribute__((no_instrument_function)) void native_restore_fl(unsigned long flags)
............[      30]: {
............[      31]: asm volatile("push %0 ; popf"
............[      32]: :
............[      33]: :"g" (flags)
............[      34]: :"memory", "cc");
............[      35]: }
............[      37]: static inline __attribute__((no_instrument_function)) void native_irq_disable(void)
............[      38]: {
............[      39]: asm volatile("cli": : :"memory");
............[      40]: }
............[      42]: static inline __attribute__((no_instrument_function)) void native_irq_enable(void)
............[      43]: {
............[      44]: asm volatile("sti": : :"memory");
............[      45]: }
............[      47]: static inline __attribute__((no_instrument_function)) void native_safe_halt(void)
............[      48]: {
............[      49]: asm volatile("sti; hlt": : :"memory");
............[      50]: }
............[      52]: static inline __attribute__((no_instrument_function)) void native_halt(void)
............[      53]: {
............[      54]: asm volatile("hlt": : :"memory");
............[      55]: }
............[      65]: static inline __attribute__((no_instrument_function)) __attribute__((no_instrument_function)) unsigned long \
............                arch_local_save_flags(void)
............[      66]: {
............[      67]: return native_save_fl();
............[      68]: }
............[      70]: static inline __attribute__((no_instrument_function)) __attribute__((no_instrument_function)) void arch_local_irq_restore\
............                (unsigned long flags)
............[      71]: {
............[      72]: native_restore_fl(flags);
............[      73]: }
............[      75]: static inline __attribute__((no_instrument_function)) __attribute__((no_instrument_function)) void arch_local_irq_disable\
............                (void)
............[      76]: {
............[      77]: native_irq_disable();
............[      78]: }
............[      80]: static inline __attribute__((no_instrument_function)) __attribute__((no_instrument_function)) void arch_local_irq_enable\
............                (void)
............[      81]: {
............[      82]: native_irq_enable();
............[      83]: }
............[      89]: static inline __attribute__((no_instrument_function)) void arch_safe_halt(void)
............[      90]: {
............[      91]: native_safe_halt();
............[      92]: }
............[      98]: static inline __attribute__((no_instrument_function)) void halt(void)
............[      99]: {
............[     100]: native_halt();
............[     101]: }
............[     106]: static inline __attribute__((no_instrument_function)) __attribute__((no_instrument_function)) unsigned long \
............                arch_local_irq_save(void)
............[     107]: {
............[     108]: unsigned long flags = arch_local_save_flags();
............[     109]: arch_local_irq_disable();
............[     110]: return flags;
............[     111]: }
............[     155]: static inline __attribute__((no_instrument_function)) int arch_irqs_disabled_flags(unsigned long flags)
............[     156]: {
............[     157]: return !(flags & ((1UL) << (9)));
............[     158]: }
............[     160]: static inline __attribute__((no_instrument_function)) int arch_irqs_disabled(void)
............[     161]: {
............[     162]: unsigned long flags = arch_local_save_flags();
............[     164]: return arch_irqs_disabled_flags(flags);
............[     165]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irqflags.h
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqflags.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
..........[      47]: static inline __attribute__((no_instrument_function)) void *current_text_addr(void)
..........[      48]: {
..........[      49]: void *pc;
..........[      51]: asm volatile("mov $1f, %0; 1:":"=r" (pc));
..........[      53]: return pc;
..........[      54]: }
..........[      64]: enum tlb_infos {
..........[      65]: ENTRIES,
..........[      66]: NR_INFO
..........[      67]: };
..........[      69]: extern u16 __attribute__((__section__(".data..read_mostly"))) tlb_lli_4k[NR_INFO];
..........[      70]: extern u16 __attribute__((__section__(".data..read_mostly"))) tlb_lli_2m[NR_INFO];
..........[      71]: extern u16 __attribute__((__section__(".data..read_mostly"))) tlb_lli_4m[NR_INFO];
..........[      72]: extern u16 __attribute__((__section__(".data..read_mostly"))) tlb_lld_4k[NR_INFO];
..........[      73]: extern u16 __attribute__((__section__(".data..read_mostly"))) tlb_lld_2m[NR_INFO];
..........[      74]: extern u16 __attribute__((__section__(".data..read_mostly"))) tlb_lld_4m[NR_INFO];
..........[      75]: extern s8 __attribute__((__section__(".data..read_mostly"))) tlb_flushall_shift;
..........[      83]: struct cpuinfo_x86 {
..........[      84]: __u8 x86;
..........[      85]: __u8 x86_vendor;
..........[      86]: __u8 x86_model;
..........[      87]: __u8 x86_mask;
..........[      97]: int x86_tlbsize;
..........[      99]: __u8 x86_virt_bits;
..........[     100]: __u8 x86_phys_bits;
..........[     102]: __u8 x86_coreid_bits;
..........[     104]: __u32 extended_cpuid_level;
..........[     106]: int cpuid_level;
..........[     107]: __u32 x86_capability[10 + 1];
..........[     108]: char x86_vendor_id[16];
..........[     109]: char x86_model_id[64];
..........[     111]: int x86_cache_size;
..........[     112]: int x86_cache_alignment;
..........[     113]: int x86_power;
..........[     114]: unsigned long loops_per_jiffy;
..........[     116]: u16 x86_max_cores;
..........[     117]: u16 apicid;
..........[     118]: u16 initial_apicid;
..........[     119]: u16 x86_clflush_size;
..........[     121]: u16 booted_cores;
..........[     123]: u16 phys_proc_id;
..........[     125]: u16 cpu_core_id;
..........[     127]: u8 compute_unit_id;
..........[     129]: u16 cpu_index;
..........[     130]: u32 microcode;
..........[     131]: } __attribute__((__aligned__((1 << (6)))));
..........[     147]: extern struct cpuinfo_x86 boot_cpu_data;
..........[     148]: extern struct cpuinfo_x86 new_cpu_data;
..........[     150]: extern struct tss_struct doublefault_tss;
..........[     151]: extern __u32 cpu_caps_cleared[10];
..........[     152]: extern __u32 cpu_caps_set[10];
..........[     155]: extern __attribute__((section(".data..percpu" "..shared_aligned"))) __typeof__(struct cpuinfo_x86) cpu_info \
..........                __attribute__((__aligned__((1 << (6)))));
..........[     162]: extern const struct seq_operations cpuinfo_op;
..........[     166]: extern void cpu_detect(struct cpuinfo_x86 *c);
..........[     167]: extern void fpu_detect(struct cpuinfo_x86 *c);
..........[     169]: extern void early_cpu_init(void);
..........[     170]: extern void identify_boot_cpu(void);
..........[     171]: extern void identify_secondary_cpu(struct cpuinfo_x86 *);
..........[     172]: extern void print_cpu_info(struct cpuinfo_x86 *);
..........[     173]: void print_cpu_msr(struct cpuinfo_x86 *);
..........[     174]: extern void init_scattered_cpuid_features(struct cpuinfo_x86 *c);
..........[     175]: extern unsigned int init_intel_cacheinfo(struct cpuinfo_x86 *c);
..........[     176]: extern void init_amd_cacheinfo(struct cpuinfo_x86 *c);
..........[     178]: extern void detect_extended_topology(struct cpuinfo_x86 *c);
..........[     179]: extern void detect_ht(struct cpuinfo_x86 *c);
..........[     184]: static inline __attribute__((no_instrument_function)) int have_cpuid_p(void)
..........[     185]: {
..........[     186]: return 1;
..........[     187]: }
..........[     189]: static inline __attribute__((no_instrument_function)) void native_cpuid(unsigned int *eax, unsigned int *ebx,
..........[     190]: unsigned int *ecx, unsigned int *edx)
..........[     191]: {
..........[     193]: asm volatile("cpuid"
..........[     194]: : "=a" (*eax),
..........[     195]: "=b" (*ebx),
..........[     196]: "=c" (*ecx),
..........[     197]: "=d" (*edx)
..........[     198]: : "0" (*eax), "2" (*ecx)
..........[     199]: : "memory");
..........[     200]: }
..........[     202]: static inline __attribute__((no_instrument_function)) void load_cr3(pgd_t *pgdir)
..........[     203]: {
..........[     204]: write_cr3(__phys_addr_nodebug((unsigned long)(pgdir)));
..........[     205]: }
..........[     241]: struct x86_hw_tss {
..........[     242]: u32 reserved1;
..........[     243]: u64 sp0;
..........[     244]: u64 sp1;
..........[     245]: u64 sp2;
..........[     246]: u64 reserved2;
..........[     247]: u64 ist[7];
..........[     248]: u32 reserved3;
..........[     249]: u32 reserved4;
..........[     250]: u16 reserved5;
..........[     251]: u16 io_bitmap_base;
..........[     253]: } __attribute__((packed)) __attribute__((__aligned__((1 << (6)))));
..........[     265]: struct tss_struct {
..........[     269]: struct x86_hw_tss x86_tss;
..........[     277]: unsigned long io_bitmap[((65536/8)/sizeof(long)) + 1];
..........[     282]: unsigned long stack[64];
..........[     284]: } __attribute__((__aligned__((1 << (6)))));
..........[     286]: extern __attribute__((section(".data..percpu" "..shared_aligned"))) __typeof__(struct tss_struct) init_tss \
..........                __attribute__((__aligned__((1 << (6)))));
..........[     291]: struct orig_ist {
..........[     292]: unsigned long ist[7];
..........[     293]: };
..........[     297]: struct i387_fsave_struct {
..........[     298]: u32 cwd;
..........[     299]: u32 swd;
..........[     300]: u32 twd;
..........[     301]: u32 fip;
..........[     302]: u32 fcs;
..........[     303]: u32 foo;
..........[     304]: u32 fos;
..........[     307]: u32 st_space[20];
..........[     310]: u32 status;
..........[     311]: };
..........[     313]: struct i387_fxsave_struct {
..........[     314]: u16 cwd;
..........[     315]: u16 swd;
..........[     316]: u16 twd;
..........[     317]: u16 fop;
..........[     318]: union {
..........[     319]: struct {
..........[     320]: u64 rip;
..........[     321]: u64 rdp;
..........[     322]: };
..........[     323]: struct {
..........[     324]: u32 fip;
..........[     325]: u32 fcs;
..........[     326]: u32 foo;
..........[     327]: u32 fos;
..........[     328]: };
..........[     329]: };
..........[     330]: u32 mxcsr;
..........[     331]: u32 mxcsr_mask;
..........[     334]: u32 st_space[32];
..........[     337]: u32 xmm_space[64];
..........[     339]: u32 padding[12];
..........[     341]: union {
..........[     342]: u32 padding1[12];
..........[     343]: u32 sw_reserved[12];
..........[     344]: };
..........[     346]: } __attribute__((aligned(16)));
..........[     348]: struct i387_soft_struct {
..........[     349]: u32 cwd;
..........[     350]: u32 swd;
..........[     351]: u32 twd;
..........[     352]: u32 fip;
..........[     353]: u32 fcs;
..........[     354]: u32 foo;
..........[     355]: u32 fos;
..........[     357]: u32 st_space[20];
..........[     358]: u8 ftop;
..........[     359]: u8 changed;
..........[     360]: u8 lookahead;
..........[     361]: u8 no_update;
..........[     362]: u8 rm;
..........[     363]: u8 alimit;
..........[     364]: struct math_emu_info *info;
..........[     365]: u32 entry_eip;
..........[     366]: };
..........[     368]: struct ymmh_struct {
..........[     370]: u32 ymmh_space[64];
..........[     371]: };
..........[     373]: struct xsave_hdr_struct {
..........[     374]: u64 xstate_bv;
..........[     375]: u64 reserved1[2];
..........[     376]: u64 reserved2[5];
..........[     377]: } __attribute__((packed));
..........[     379]: struct xsave_struct {
..........[     380]: struct i387_fxsave_struct i387;
..........[     381]: struct xsave_hdr_struct xsave_hdr;
..........[     382]: struct ymmh_struct ymmh;
..........[     384]: } __attribute__ ((packed, aligned (64)));
..........[     386]: union thread_xstate {
..........[     387]: struct i387_fsave_struct fsave;
..........[     388]: struct i387_fxsave_struct fxsave;
..........[     389]: struct i387_soft_struct soft;
..........[     390]: struct xsave_struct xsave;
..........[     391]: };
..........[     393]: struct fpu {
..........[     394]: unsigned int last_cpu;
..........[     395]: unsigned int has_fpu;
..........[     396]: union thread_xstate *state;
..........[     397]: };
..........[     400]: extern __attribute__((section(".data..percpu" ""))) __typeof__(struct orig_ist) orig_ist;
..........[     402]: union irq_stack_union {
..........[     403]: char irq_stack[(((1UL) << 12) << 2)];
..........[     409]: struct {
..........[     410]: char gs_base[40];
..........[     411]: unsigned long stack_canary;
..........[     412]: };
..........[     413]: };
..........[     415]: extern __attribute__((section(".data..percpu" "..first"))) __typeof__(union irq_stack_union) irq_stack_union \
..........                ;
..........[     416]: extern typeof(irq_stack_union) init_per_cpu__irq_stack_union;
..........[     418]: extern __attribute__((section(".data..percpu" ""))) __typeof__(char *) irq_stack_ptr;
..........[     419]: extern __attribute__((section(".data..percpu" ""))) __typeof__(unsigned int) irq_count;
..........[     420]: extern void ignore_sysret(void);
..........[     437]: extern unsigned int xstate_size;
..........[     438]: extern void free_thread_xstate(struct task_struct *);
..........[     439]: extern struct kmem_cache *task_xstate_cachep;
..........[     441]: struct perf_event;
..........[     443]: struct thread_struct {
..........[     445]: struct desc_struct tls_array[3];
..........[     446]: unsigned long sp0;
..........[     447]: unsigned long sp;
..........[     451]: unsigned long usersp;
..........[     452]: unsigned short es;
..........[     453]: unsigned short ds;
..........[     454]: unsigned short fsindex;
..........[     455]: unsigned short gsindex;
..........[     461]: unsigned long fs;
..........[     463]: unsigned long gs;
..........[     465]: struct perf_event *ptrace_bps[4];
..........[     467]: unsigned long debugreg6;
..........[     469]: unsigned long ptrace_dr7;
..........[     471]: unsigned long cr2;
..........[     472]: unsigned long trap_nr;
..........[     473]: unsigned long error_code;
..........[     475]: struct fpu fpu;
..........[     487]: unsigned long *io_bitmap_ptr;
..........[     488]: unsigned long iopl;
..........[     490]: unsigned io_bitmap_max;
..........[     499]: unsigned char fpu_counter;
..........[     500]: };
..........[     505]: static inline __attribute__((no_instrument_function)) void native_set_iopl_mask(unsigned mask)
..........[     506]: {
..........[     519]: }
..........[     521]: static inline __attribute__((no_instrument_function)) void
..........[     522]: native_load_sp0(struct tss_struct *tss, struct thread_struct *thread)
..........[     523]: {
..........[     524]: tss->x86_tss.sp0 = thread->sp0;
..........[     532]: }
..........[     534]: static inline __attribute__((no_instrument_function)) void native_swapgs(void)
..........[     535]: {
..........[     537]: asm volatile("swapgs" ::: "memory");
..........[     539]: }
..........[     547]: static inline __attribute__((no_instrument_function)) void load_sp0(struct tss_struct *tss,
..........[     548]: struct thread_struct *thread)
..........[     549]: {
..........[     550]: native_load_sp0(tss, thread);
..........[     551]: }
..........[     562]: extern unsigned long mmu_cr4_features;
..........[     563]: extern u32 *trampoline_cr4_features;
..........[     565]: static inline __attribute__((no_instrument_function)) void set_in_cr4(unsigned long mask)
..........[     566]: {
..........[     567]: unsigned long cr4;
..........[     569]: mmu_cr4_features |= mask;
..........[     570]: if (trampoline_cr4_features)
..........[     571]: *trampoline_cr4_features = mmu_cr4_features;
..........[     572]: cr4 = read_cr4();
..........[     573]: cr4 |= mask;
..........[     574]: write_cr4(cr4);
..........[     575]: }
..........[     577]: static inline __attribute__((no_instrument_function)) void clear_in_cr4(unsigned long mask)
..........[     578]: {
..........[     579]: unsigned long cr4;
..........[     581]: mmu_cr4_features &= ~mask;
..........[     582]: if (trampoline_cr4_features)
..........[     583]: *trampoline_cr4_features = mmu_cr4_features;
..........[     584]: cr4 = read_cr4();
..........[     585]: cr4 &= ~mask;
..........[     586]: write_cr4(cr4);
..........[     587]: }
..........[     589]: typedef struct {
..........[     590]: unsigned long seg;
..........[     591]: } mm_segment_t;
..........[     595]: extern void release_thread(struct task_struct *);
..........[     597]: unsigned long get_wchan(struct task_struct *p);
..........[     604]: static inline __attribute__((no_instrument_function)) void cpuid(unsigned int op,
..........[     605]: unsigned int *eax, unsigned int *ebx,
..........[     606]: unsigned int *ecx, unsigned int *edx)
..........[     607]: {
..........[     608]: *eax = op;
..........[     609]: *ecx = 0;
..........[     610]: native_cpuid(eax, ebx, ecx, edx);
..........[     611]: }
..........[     614]: static inline __attribute__((no_instrument_function)) void cpuid_count(unsigned int op, int count,
..........[     615]: unsigned int *eax, unsigned int *ebx,
..........[     616]: unsigned int *ecx, unsigned int *edx)
..........[     617]: {
..........[     618]: *eax = op;
..........[     619]: *ecx = count;
..........[     620]: native_cpuid(eax, ebx, ecx, edx);
..........[     621]: }
..........[     626]: static inline __attribute__((no_instrument_function)) unsigned int cpuid_eax(unsigned int op)
..........[     627]: {
..........[     628]: unsigned int eax, ebx, ecx, edx;
..........[     630]: cpuid(op, &eax, &ebx, &ecx, &edx);
..........[     632]: return eax;
..........[     633]: }
..........[     635]: static inline __attribute__((no_instrument_function)) unsigned int cpuid_ebx(unsigned int op)
..........[     636]: {
..........[     637]: unsigned int eax, ebx, ecx, edx;
..........[     639]: cpuid(op, &eax, &ebx, &ecx, &edx);
..........[     641]: return ebx;
..........[     642]: }
..........[     644]: static inline __attribute__((no_instrument_function)) unsigned int cpuid_ecx(unsigned int op)
..........[     645]: {
..........[     646]: unsigned int eax, ebx, ecx, edx;
..........[     648]: cpuid(op, &eax, &ebx, &ecx, &edx);
..........[     650]: return ecx;
..........[     651]: }
..........[     653]: static inline __attribute__((no_instrument_function)) unsigned int cpuid_edx(unsigned int op)
..........[     654]: {
..........[     655]: unsigned int eax, ebx, ecx, edx;
..........[     657]: cpuid(op, &eax, &ebx, &ecx, &edx);
..........[     659]: return edx;
..........[     660]: }
..........[     663]: static inline __attribute__((no_instrument_function)) void rep_nop(void)
..........[     664]: {
..........[     665]: asm volatile("rep; nop" ::: "memory");
..........[     666]: }
..........[     668]: static inline __attribute__((no_instrument_function)) void cpu_relax(void)
..........[     669]: {
..........[     670]: rep_nop();
..........[     671]: }
..........[     674]: static inline __attribute__((no_instrument_function)) void sync_core(void)
..........[     675]: {
..........[     676]: int tmp;
..........[     696]: asm volatile("cpuid"
..........[     697]: : "=a" (tmp)
..........[     698]: : "0" (1)
..........[     699]: : "ebx", "ecx", "edx", "memory");
..........[     701]: }
..........[     703]: static inline __attribute__((no_instrument_function)) void __monitor(const void *eax, unsigned long ecx,
..........[     704]: unsigned long edx)
..........[     705]: {
..........[     707]: asm volatile(".byte 0x0f, 0x01, 0xc8;"
..........[     708]: :: "a" (eax), "c" (ecx), "d"(edx));
..........[     709]: }
..........[     711]: static inline __attribute__((no_instrument_function)) void __mwait(unsigned long eax, unsigned long ecx)
..........[     712]: {
..........[     714]: asm volatile(".byte 0x0f, 0x01, 0xc9;"
..........[     715]: :: "a" (eax), "c" (ecx));
..........[     716]: }
..........[     718]: static inline __attribute__((no_instrument_function)) void __sti_mwait(unsigned long eax, unsigned long ecx)
..........[     719]: {
..........[     720]: do { } while (0);
..........[     722]: asm volatile("sti; .byte 0x0f, 0x01, 0xc9;"
..........[     723]: :: "a" (eax), "c" (ecx));
..........[     724]: }
..........[     726]: extern void select_idle_routine(const struct cpuinfo_x86 *c);
..........[     727]: extern void init_amd_e400_c1e_mask(void);
..........[     729]: extern unsigned long boot_option_idle_override;
..........[     730]: extern bool amd_e400_c1e_detected;
..........[     732]: enum idle_boot_override {IDLE_NO_OVERRIDE=0, IDLE_HALT, IDLE_NOMWAIT,
..........[     733]: IDLE_POLL};
..........[     735]: extern void enable_sep_cpu(void);
..........[     736]: extern int sysenter_setup(void);
..........[     738]: extern void early_trap_init(void);
..........[     739]: void early_trap_pf_init(void);
..........[     742]: extern struct desc_ptr early_gdt_descr;
..........[     744]: extern void cpu_set_gdt(int);
..........[     745]: extern void switch_to_new_gdt(int);
..........[     746]: extern void load_percpu_segment(int);
..........[     747]: extern void cpu_init(void);
..........[     749]: static inline __attribute__((no_instrument_function)) unsigned long get_debugctlmsr(void)
..........[     750]: {
..........[     751]: unsigned long debugctlmsr = 0;
..........[     757]: rdmsrl(0x000001d9, debugctlmsr);
..........[     759]: return debugctlmsr;
..........[     760]: }
..........[     762]: static inline __attribute__((no_instrument_function)) void update_debugctlmsr(unsigned long debugctlmsr)
..........[     763]: {
..........[     768]: wrmsrl(0x000001d9, debugctlmsr);
..........[     769]: }
..........[     771]: extern void set_task_blockstep(struct task_struct *task, bool on);
..........[     777]: extern unsigned int machine_id;
..........[     778]: extern unsigned int machine_submodel_id;
..........[     779]: extern unsigned int BIOS_revision;
..........[     782]: extern int bootloader_type;
..........[     783]: extern int bootloader_version;
..........[     785]: extern char ignore_fpu_irq;
..........[     804]: static inline __attribute__((no_instrument_function)) void prefetch(const void *x)
..........[     805]: {
..........[     809]: asm volatile ("661:\n\t" "prefetcht0 (%1)" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
..........                " .long " "663""1""f - .\n" " .word " "(0*32+25)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
..........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
..........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
..........                "prefetchnta (%1)" "\n" "664""1" ":\n\t" ".popsection" : : "i" (0),"r"( x));
..........[     810]: }
..........[     817]: static inline __attribute__((no_instrument_function)) void prefetchw(const void *x)
..........[     818]: {
..........[     822]: asm volatile ("661:\n\t" "prefetcht0 (%1)" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
..........                " .long " "663""1""f - .\n" " .word " "(1*32+31)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
..........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
..........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
..........                "prefetchw (%1)" "\n" "664""1" ":\n\t" ".popsection" : : "i" (0),"r"( x));
..........[     823]: }
..........[     825]: static inline __attribute__((no_instrument_function)) void spin_lock_prefetch(const void *x)
..........[     826]: {
..........[     827]: prefetchw(x);
..........[     828]: }
..........[     925]: extern unsigned long KSTK_ESP(struct task_struct *task);
..........[     930]: extern __attribute__((section(".data..percpu" ""))) __typeof__(unsigned long) old_rsp;
..........[     934]: extern void start_thread(struct pt_regs *regs, unsigned long new_ip,
..........[     935]: unsigned long new_sp);
..........[     949]: extern int get_tsc_mode(unsigned long adr);
..........[     950]: extern int set_tsc_mode(unsigned int val);
..........[     952]: extern u16 amd_get_nb_id(int cpu);
..........[     954]: static inline __attribute__((no_instrument_function)) uint32_t hypervisor_cpuid_base(const char *sig, uint32_t \
..........                leaves)
..........[     955]: {
..........[     956]: uint32_t base, eax, signature[3];
..........[     958]: for (base = 0x40000000; base < 0x40010000; base += 0x100) {
..........[     959]: cpuid(base, &eax, &signature[0], &signature[1], &signature[2]);
..........[     961]: if (!memcmp(sig, signature, 12) &&
..........[     962]: (leaves == 0 || ((eax - base) >= leaves)))
..........[     963]: return base;
..........[     964]: }
..........[     966]: return 0;
..........[     967]: }
..........[     969]: extern unsigned long arch_align_stack(unsigned long sp);
..........[     970]: extern void free_init_pages(char *what, unsigned long begin, unsigned long end);
..........[     972]: void default_idle(void);
..........[     979]: void stop_this_cpu(void *dummy);
..........[     980]: void df_debug(struct pt_regs *regs, long error_code);
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/processor.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/thread_info.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/atomic.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/atomic.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/atomic.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/atomic.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cmpxchg.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cmpxchg.h
............[      11]: extern void __xchg_wrong_size(void)
............[      12]: ;
............[      13]: extern void __cmpxchg_wrong_size(void)
............[      14]: ;
............[      15]: extern void __xadd_wrong_size(void)
............[      16]: ;
............[      17]: extern void __add_wrong_size(void)
............[      18]: ;
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cmpxchg.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cmpxchg_64.h
.............[       4]: static inline __attribute__((no_instrument_function)) void set_64bit(volatile u64 *ptr, u64 val)
.............[       5]: {
.............[       6]: *ptr = val;
.............[       7]: }
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cmpxchg_64.h
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cmpxchg.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/atomic.h
...........[      24]: static inline __attribute__((no_instrument_function)) int atomic_read(const atomic_t *v)
...........[      25]: {
...........[      26]: return (*(volatile int *)&(v)->counter);
...........[      27]: }
...........[      36]: static inline __attribute__((no_instrument_function)) void atomic_set(atomic_t *v, int i)
...........[      37]: {
...........[      38]: v->counter = i;
...........[      39]: }
...........[      48]: static inline __attribute__((no_instrument_function)) void atomic_add(int i, atomic_t *v)
...........[      49]: {
...........[      50]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "addl %1,%0"
...........[      51]: : "+m" (v->counter)
...........[      52]: : "ir" (i));
...........[      53]: }
...........[      62]: static inline __attribute__((no_instrument_function)) void atomic_sub(int i, atomic_t *v)
...........[      63]: {
...........[      64]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "subl %1,%0"
...........[      65]: : "+m" (v->counter)
...........[      66]: : "ir" (i));
...........[      67]: }
...........[      78]: static inline __attribute__((no_instrument_function)) int atomic_sub_and_test(int i, atomic_t *v)
...........[      79]: {
...........[      80]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "subl" " %2, " "%0" "; set" "e" " %1" : "+m" (v->counter), "=qm" (c) : "er"( i) : "memory"); return \
...........                c != 0; } while (0);
...........[      81]: }
...........[      89]: static inline __attribute__((no_instrument_function)) void atomic_inc(atomic_t *v)
...........[      90]: {
...........[      91]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "incl %0"
...........[      92]: : "+m" (v->counter));
...........[      93]: }
...........[     101]: static inline __attribute__((no_instrument_function)) void atomic_dec(atomic_t *v)
...........[     102]: {
...........[     103]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "decl %0"
...........[     104]: : "+m" (v->counter));
...........[     105]: }
...........[     115]: static inline __attribute__((no_instrument_function)) int atomic_dec_and_test(atomic_t *v)
...........[     116]: {
...........[     117]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "decl" " " "%0" "; set" "e" " %1" : "+m" (v->counter), "=qm" (c) : : "memory"); return c != 0; } while \
...........                (0);
...........[     118]: }
...........[     128]: static inline __attribute__((no_instrument_function)) int atomic_inc_and_test(atomic_t *v)
...........[     129]: {
...........[     130]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "incl" " " "%0" "; set" "e" " %1" : "+m" (v->counter), "=qm" (c) : : "memory"); return c != 0; } while \
...........                (0);
...........[     131]: }
...........[     142]: static inline __attribute__((no_instrument_function)) int atomic_add_negative(int i, atomic_t *v)
...........[     143]: {
...........[     144]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "addl" " %2, " "%0" "; set" "s" " %1" : "+m" (v->counter), "=qm" (c) : "er"( i) : "memory"); return \
...........                c != 0; } while (0);
...........[     145]: }
...........[     154]: static inline __attribute__((no_instrument_function)) int atomic_add_return(int i, atomic_t *v)
...........[     155]: {
...........[     156]: return i + ({ __typeof__ (*(((&v->counter)))) __ret = (((i))); switch (sizeof(*(((&v->counter))))) { case 1: asm volatile \
...........                (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" \
...........                "b %b0, %1\n" : "+q" (__ret), "+m" (*(((&v->counter)))) : : "memory", "cc"); break; case 2: asm volatile (".pushsection .smp_locks,\"a\"\n" \
...........                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "w %w0, %1\n" : "+r" (__ret), "+m" \
...........                (*(((&v->counter)))) : : "memory", "cc"); break; case 4: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
...........                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "l %0, %1\n" : "+r" (__ret), "+m" (*(((&v->counter\
...........                )))) : : "memory", "cc"); break; case 8: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" \
...........                ".popsection\n" "671:" "\n\tlock; " "xadd" "q %q0, %1\n" : "+r" (__ret), "+m" (*(((&v->counter)))) : : "memory", \
...........                "cc"); break; default: __xadd_wrong_size(); } __ret; });
...........[     157]: }
...........[     166]: static inline __attribute__((no_instrument_function)) int atomic_sub_return(int i, atomic_t *v)
...........[     167]: {
...........[     168]: return atomic_add_return(-i, v);
...........[     169]: }
...........[     174]: static inline __attribute__((no_instrument_function)) int atomic_cmpxchg(atomic_t *v, int old, int new)
...........[     175]: {
...........[     176]: return ({ __typeof__(*((&v->counter))) __ret; __typeof__(*((&v->counter))) __old = ((old)); __typeof__(*((&v\
...........                ->counter))) __new = ((new)); switch ((sizeof(*(&v->counter)))) { case 1: { volatile u8 *__ptr = (volatile u8 *)((&v\
...........                ->counter)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
...........                "671:" "\n\tlock; " "cmpxchgb %2,%1" : "=a" (__ret), "+m" (*__ptr) : "q" (__new), "0" (__old) : "memory"); break; } case \
...........                2: { volatile u16 *__ptr = (volatile u16 *)((&v->counter)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
...........                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgw %2,%1" : "=a" (__ret), "+m" (*__ptr) : "r" (__new\
...........                ), "0" (__old) : "memory"); break; } case 4: { volatile u32 *__ptr = (volatile u32 *)((&v->counter)); asm volatile(".pushsection .smp_locks,\"a\"\n" \
...........                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgl %2,%1" : "=a" (__ret), "+m" (*__ptr\
...........                ) : "r" (__new), "0" (__old) : "memory"); break; } case 8: { volatile u64 *__ptr = (volatile u64 *)((&v->counter)); asm volatile\
...........                (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgq %2,%1" \
...........                : "=a" (__ret), "+m" (*__ptr) : "r" (__new), "0" (__old) : "memory"); break; } default: __cmpxchg_wrong_size(); } __ret\
...........                ; });
...........[     177]: }
...........[     179]: static inline __attribute__((no_instrument_function)) int atomic_xchg(atomic_t *v, int new)
...........[     180]: {
...........[     181]: return ({ __typeof__ (*((&v->counter))) __ret = ((new)); switch (sizeof(*((&v->counter)))) { case 1: asm volatile \
...........                ("" "xchg" "b %b0, %1\n" : "+q" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; case 2: asm volatile ("" \
...........                "xchg" "w %w0, %1\n" : "+r" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; case 4: asm volatile ("" "xchg" \
...........                "l %0, %1\n" : "+r" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; case 8: asm volatile ("" "xchg" "q %q0, %1\n" \
...........                : "+r" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; default: __xchg_wrong_size(); } __ret; });
...........[     182]: }
...........[     193]: static inline __attribute__((no_instrument_function)) int __atomic_add_unless(atomic_t *v, int a, int u)
...........[     194]: {
...........[     195]: int c, old;
...........[     196]: c = atomic_read(v);
...........[     197]: for (;;) {
...........[     198]: if (__builtin_expect(!!(c ==( u)), 0))
...........[     199]: break;
...........[     200]: old = atomic_cmpxchg((v), c, c + (a));
...........[     201]: if (__builtin_expect(!!(old == c), 1))
...........[     202]: break;
...........[     203]: c = old;
...........[     204]: }
...........[     205]: return c;
...........[     206]: }
...........[     215]: static inline __attribute__((no_instrument_function)) short int atomic_inc_short(short int *v)
...........[     216]: {
...........[     217]: asm(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "addw $1, %0" : "+m" (*v));
...........[     218]: return *v;
...........[     219]: }
...........[     230]: static inline __attribute__((no_instrument_function)) void atomic_or_long(unsigned long *v1, unsigned long v2\
...........                )
...........[     231]: {
...........[     232]: asm(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
...........                "orq %1, %0" : "+m" (*v1) : "r" (v2));
...........[     233]: }
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/atomic.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/atomic64_64.h
............[      19]: static inline __attribute__((no_instrument_function)) long atomic64_read(const atomic64_t *v)
............[      20]: {
............[      21]: return (*(volatile long *)&(v)->counter);
............[      22]: }
............[      31]: static inline __attribute__((no_instrument_function)) void atomic64_set(atomic64_t *v, long i)
............[      32]: {
............[      33]: v->counter = i;
............[      34]: }
............[      43]: static inline __attribute__((no_instrument_function)) void atomic64_add(long i, atomic64_t *v)
............[      44]: {
............[      45]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
............                "addq %1,%0"
............[      46]: : "=m" (v->counter)
............[      47]: : "er" (i), "m" (v->counter));
............[      48]: }
............[      57]: static inline __attribute__((no_instrument_function)) void atomic64_sub(long i, atomic64_t *v)
............[      58]: {
............[      59]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
............                "subq %1,%0"
............[      60]: : "=m" (v->counter)
............[      61]: : "er" (i), "m" (v->counter));
............[      62]: }
............[      73]: static inline __attribute__((no_instrument_function)) int atomic64_sub_and_test(long i, atomic64_t *v)
............[      74]: {
............[      75]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
............                "671:" "\n\tlock; " "subq" " %2, " "%0" "; set" "e" " %1" : "+m" (v->counter), "=qm" (c) : "er"( i) : "memory"); return \
............                c != 0; } while (0);
............[      76]: }
............[      84]: static inline __attribute__((no_instrument_function)) void atomic64_inc(atomic64_t *v)
............[      85]: {
............[      86]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
............                "incq %0"
............[      87]: : "=m" (v->counter)
............[      88]: : "m" (v->counter));
............[      89]: }
............[      97]: static inline __attribute__((no_instrument_function)) void atomic64_dec(atomic64_t *v)
............[      98]: {
............[      99]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
............                "decq %0"
............[     100]: : "=m" (v->counter)
............[     101]: : "m" (v->counter));
............[     102]: }
............[     112]: static inline __attribute__((no_instrument_function)) int atomic64_dec_and_test(atomic64_t *v)
............[     113]: {
............[     114]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
............                "671:" "\n\tlock; " "decq" " " "%0" "; set" "e" " %1" : "+m" (v->counter), "=qm" (c) : : "memory"); return c != 0; } while \
............                (0);
............[     115]: }
............[     125]: static inline __attribute__((no_instrument_function)) int atomic64_inc_and_test(atomic64_t *v)
............[     126]: {
............[     127]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
............                "671:" "\n\tlock; " "incq" " " "%0" "; set" "e" " %1" : "+m" (v->counter), "=qm" (c) : : "memory"); return c != 0; } while \
............                (0);
............[     128]: }
............[     139]: static inline __attribute__((no_instrument_function)) int atomic64_add_negative(long i, atomic64_t *v)
............[     140]: {
............[     141]: do { char c; asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
............                "671:" "\n\tlock; " "addq" " %2, " "%0" "; set" "s" " %1" : "+m" (v->counter), "=qm" (c) : "er"( i) : "memory"); return \
............                c != 0; } while (0);
............[     142]: }
............[     151]: static inline __attribute__((no_instrument_function)) long atomic64_add_return(long i, atomic64_t *v)
............[     152]: {
............[     153]: return i + ({ __typeof__ (*(((&v->counter)))) __ret = (((i))); switch (sizeof(*(((&v->counter))))) { case 1: asm volatile \
............                (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" \
............                "b %b0, %1\n" : "+q" (__ret), "+m" (*(((&v->counter)))) : : "memory", "cc"); break; case 2: asm volatile (".pushsection .smp_locks,\"a\"\n" \
............                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "w %w0, %1\n" : "+r" (__ret), "+m" \
............                (*(((&v->counter)))) : : "memory", "cc"); break; case 4: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
............                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "l %0, %1\n" : "+r" (__ret), "+m" (*(((&v->counter\
............                )))) : : "memory", "cc"); break; case 8: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" \
............                ".popsection\n" "671:" "\n\tlock; " "xadd" "q %q0, %1\n" : "+r" (__ret), "+m" (*(((&v->counter)))) : : "memory", \
............                "cc"); break; default: __xadd_wrong_size(); } __ret; });
............[     154]: }
............[     156]: static inline __attribute__((no_instrument_function)) long atomic64_sub_return(long i, atomic64_t *v)
............[     157]: {
............[     158]: return atomic64_add_return(-i, v);
............[     159]: }
............[     164]: static inline __attribute__((no_instrument_function)) long atomic64_cmpxchg(atomic64_t *v, long old, long new\
............                )
............[     165]: {
............[     166]: return ({ __typeof__(*((&v->counter))) __ret; __typeof__(*((&v->counter))) __old = ((old)); __typeof__(*((&v\
............                ->counter))) __new = ((new)); switch ((sizeof(*(&v->counter)))) { case 1: { volatile u8 *__ptr = (volatile u8 *)((&v\
............                ->counter)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
............                "671:" "\n\tlock; " "cmpxchgb %2,%1" : "=a" (__ret), "+m" (*__ptr) : "q" (__new), "0" (__old) : "memory"); break; } case \
............                2: { volatile u16 *__ptr = (volatile u16 *)((&v->counter)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
............                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgw %2,%1" : "=a" (__ret), "+m" (*__ptr) : "r" (__new\
............                ), "0" (__old) : "memory"); break; } case 4: { volatile u32 *__ptr = (volatile u32 *)((&v->counter)); asm volatile(".pushsection .smp_locks,\"a\"\n" \
............                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgl %2,%1" : "=a" (__ret), "+m" (*__ptr\
............                ) : "r" (__new), "0" (__old) : "memory"); break; } case 8: { volatile u64 *__ptr = (volatile u64 *)((&v->counter)); asm volatile\
............                (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgq %2,%1" \
............                : "=a" (__ret), "+m" (*__ptr) : "r" (__new), "0" (__old) : "memory"); break; } default: __cmpxchg_wrong_size(); } __ret\
............                ; });
............[     167]: }
............[     169]: static inline __attribute__((no_instrument_function)) long atomic64_xchg(atomic64_t *v, long new)
............[     170]: {
............[     171]: return ({ __typeof__ (*((&v->counter))) __ret = ((new)); switch (sizeof(*((&v->counter)))) { case 1: asm volatile \
............                ("" "xchg" "b %b0, %1\n" : "+q" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; case 2: asm volatile ("" \
............                "xchg" "w %w0, %1\n" : "+r" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; case 4: asm volatile ("" "xchg" \
............                "l %0, %1\n" : "+r" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; case 8: asm volatile ("" "xchg" "q %q0, %1\n" \
............                : "+r" (__ret), "+m" (*((&v->counter))) : : "memory", "cc"); break; default: __xchg_wrong_size(); } __ret; });
............[     172]: }
............[     183]: static inline __attribute__((no_instrument_function)) int atomic64_add_unless(atomic64_t *v, long a, long u)
............[     184]: {
............[     185]: long c, old;
............[     186]: c = atomic64_read(v);
............[     187]: for (;;) {
............[     188]: if (__builtin_expect(!!(c ==( u)), 0))
............[     189]: break;
............[     190]: old = atomic64_cmpxchg((v), c, c + (a));
............[     191]: if (__builtin_expect(!!(old == c), 1))
............[     192]: break;
............[     193]: c = old;
............[     194]: }
............[     195]: return c != (u);
............[     196]: }
............[     207]: static inline __attribute__((no_instrument_function)) long atomic64_dec_if_positive(atomic64_t *v)
............[     208]: {
............[     209]: long c, old, dec;
............[     210]: c = atomic64_read(v);
............[     211]: for (;;) {
............[     212]: dec = c - 1;
............[     213]: if (__builtin_expect(!!(dec < 0), 0))
............[     214]: break;
............[     215]: old = atomic64_cmpxchg((v), c, dec);
............[     216]: if (__builtin_expect(!!(old == c), 1))
............[     217]: break;
............[     218]: c = old;
............[     219]: }
............[     220]: return dec;
............[     221]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/atomic64_64.h
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/atomic.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/atomic.h
..........[      15]: static inline __attribute__((no_instrument_function)) int atomic_add_unless(atomic_t *v, int a, int u)
..........[      16]: {
..........[      17]: return __atomic_add_unless(v, a, u) != u;
..........[      18]: }
..........[      44]: static inline __attribute__((no_instrument_function)) int atomic_inc_not_zero_hint(atomic_t *v, int hint)
..........[      45]: {
..........[      46]: int val, c = hint;
..........[      49]: if (!hint)
..........[      50]: return atomic_add_unless((v), 1, 0);
..........[      52]: do {
..........[      53]: val = atomic_cmpxchg(v, c, c + 1);
..........[      54]: if (val == c)
..........[      55]: return 1;
..........[      56]: c = val;
..........[      57]: } while (c);
..........[      59]: return 0;
..........[      60]: }
..........[      64]: static inline __attribute__((no_instrument_function)) int atomic_inc_unless_negative(atomic_t *p)
..........[      65]: {
..........[      66]: int v, v1;
..........[      67]: for (v = 0; v >= 0; v = v1) {
..........[      68]: v1 = atomic_cmpxchg(p, v, v + 1);
..........[      69]: if (__builtin_expect(!!(v1 == v), 1))
..........[      70]: return 1;
..........[      71]: }
..........[      72]: return 0;
..........[      73]: }
..........[      77]: static inline __attribute__((no_instrument_function)) int atomic_dec_unless_positive(atomic_t *p)
..........[      78]: {
..........[      79]: int v, v1;
..........[      80]: for (v = 0; v <= 0; v = v1) {
..........[      81]: v1 = atomic_cmpxchg(p, v, v - 1);
..........[      82]: if (__builtin_expect(!!(v1 == v), 1))
..........[      83]: return 1;
..........[      84]: }
..........[      85]: return 0;
..........[      86]: }
..........[      97]: static inline __attribute__((no_instrument_function)) int atomic_dec_if_positive(atomic_t *v)
..........[      98]: {
..........[      99]: int c, old, dec;
..........[     100]: c = atomic_read(v);
..........[     101]: for (;;) {
..........[     102]: dec = c - 1;
..........[     103]: if (__builtin_expect(!!(dec < 0), 0))
..........[     104]: break;
..........[     105]: old = atomic_cmpxchg((v), c, dec);
..........[     106]: if (__builtin_expect(!!(old == c), 1))
..........[     107]: break;
..........[     108]: c = old;
..........[     109]: }
..........[     110]: return dec;
..........[     111]: }
..........[     115]: static inline __attribute__((no_instrument_function)) void atomic_or(int i, atomic_t *v)
..........[     116]: {
..........[     117]: int old;
..........[     118]: int new;
..........[     120]: do {
..........[     121]: old = atomic_read(v);
..........[     122]: new = old | i;
..........[     123]: } while (atomic_cmpxchg(v, old, new) != old);
..........[     124]: }
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/atomic.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/atomic-long.h
...........[      23]: typedef atomic64_t atomic_long_t;
...........[      27]: static inline __attribute__((no_instrument_function)) long atomic_long_read(atomic_long_t *l)
...........[      28]: {
...........[      29]: atomic64_t *v = (atomic64_t *)l;
...........[      31]: return (long)atomic64_read(v);
...........[      32]: }
...........[      34]: static inline __attribute__((no_instrument_function)) void atomic_long_set(atomic_long_t *l, long i)
...........[      35]: {
...........[      36]: atomic64_t *v = (atomic64_t *)l;
...........[      38]: atomic64_set(v, i);
...........[      39]: }
...........[      41]: static inline __attribute__((no_instrument_function)) void atomic_long_inc(atomic_long_t *l)
...........[      42]: {
...........[      43]: atomic64_t *v = (atomic64_t *)l;
...........[      45]: atomic64_inc(v);
...........[      46]: }
...........[      48]: static inline __attribute__((no_instrument_function)) void atomic_long_dec(atomic_long_t *l)
...........[      49]: {
...........[      50]: atomic64_t *v = (atomic64_t *)l;
...........[      52]: atomic64_dec(v);
...........[      53]: }
...........[      55]: static inline __attribute__((no_instrument_function)) void atomic_long_add(long i, atomic_long_t *l)
...........[      56]: {
...........[      57]: atomic64_t *v = (atomic64_t *)l;
...........[      59]: atomic64_add(i, v);
...........[      60]: }
...........[      62]: static inline __attribute__((no_instrument_function)) void atomic_long_sub(long i, atomic_long_t *l)
...........[      63]: {
...........[      64]: atomic64_t *v = (atomic64_t *)l;
...........[      66]: atomic64_sub(i, v);
...........[      67]: }
...........[      69]: static inline __attribute__((no_instrument_function)) int atomic_long_sub_and_test(long i, atomic_long_t *l\
...........                )
...........[      70]: {
...........[      71]: atomic64_t *v = (atomic64_t *)l;
...........[      73]: return atomic64_sub_and_test(i, v);
...........[      74]: }
...........[      76]: static inline __attribute__((no_instrument_function)) int atomic_long_dec_and_test(atomic_long_t *l)
...........[      77]: {
...........[      78]: atomic64_t *v = (atomic64_t *)l;
...........[      80]: return atomic64_dec_and_test(v);
...........[      81]: }
...........[      83]: static inline __attribute__((no_instrument_function)) int atomic_long_inc_and_test(atomic_long_t *l)
...........[      84]: {
...........[      85]: atomic64_t *v = (atomic64_t *)l;
...........[      87]: return atomic64_inc_and_test(v);
...........[      88]: }
...........[      90]: static inline __attribute__((no_instrument_function)) int atomic_long_add_negative(long i, atomic_long_t *l\
...........                )
...........[      91]: {
...........[      92]: atomic64_t *v = (atomic64_t *)l;
...........[      94]: return atomic64_add_negative(i, v);
...........[      95]: }
...........[      97]: static inline __attribute__((no_instrument_function)) long atomic_long_add_return(long i, atomic_long_t *l)
...........[      98]: {
...........[      99]: atomic64_t *v = (atomic64_t *)l;
...........[     101]: return (long)atomic64_add_return(i, v);
...........[     102]: }
...........[     104]: static inline __attribute__((no_instrument_function)) long atomic_long_sub_return(long i, atomic_long_t *l)
...........[     105]: {
...........[     106]: atomic64_t *v = (atomic64_t *)l;
...........[     108]: return (long)atomic64_sub_return(i, v);
...........[     109]: }
...........[     111]: static inline __attribute__((no_instrument_function)) long atomic_long_inc_return(atomic_long_t *l)
...........[     112]: {
...........[     113]: atomic64_t *v = (atomic64_t *)l;
...........[     115]: return (long)(atomic64_add_return(1, (v)));
...........[     116]: }
...........[     118]: static inline __attribute__((no_instrument_function)) long atomic_long_dec_return(atomic_long_t *l)
...........[     119]: {
...........[     120]: atomic64_t *v = (atomic64_t *)l;
...........[     122]: return (long)(atomic64_sub_return(1, (v)));
...........[     123]: }
...........[     125]: static inline __attribute__((no_instrument_function)) long atomic_long_add_unless(atomic_long_t *l, long a, \
...........                long u)
...........[     126]: {
...........[     127]: atomic64_t *v = (atomic64_t *)l;
...........[     129]: return (long)atomic64_add_unless(v, a, u);
...........[     130]: }
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/atomic-long.h
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/atomic.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/thread_info.h
.........[      25]: struct thread_info {
.........[      26]: struct task_struct *task;
.........[      27]: struct exec_domain *exec_domain;
.........[      28]: __u32 flags;
.........[      29]: __u32 status;
.........[      30]: __u32 cpu;
.........[      31]: int saved_preempt_count;
.........[      32]: mm_segment_t addr_limit;
.........[      33]: struct restart_block restart_block;
.........[      34]: void *sysenter_return;
.........[      41]: unsigned int sig_on_uaccess_error:1;
.........[      42]: unsigned int uaccess_err:1;
.........[      43]: };
.........[     200]: extern __attribute__((section(".data..percpu" ""))) __typeof__(unsigned long) kernel_stack;
.........[     202]: static inline __attribute__((no_instrument_function)) struct thread_info *current_thread_info(void)
.........[     203]: {
.........[     204]: struct thread_info *ti;
.........[     205]: ti = (void *)(({ typeof(kernel_stack) pfo_ret__; switch (sizeof(kernel_stack)) { case 1: asm("mov" "b ""%%""gs"":" \
.........                "%P" "1"",%0" : "=q" (pfo_ret__) : "p"( &(kernel_stack))); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : \
.........                "=r" (pfo_ret__) : "p"( &(kernel_stack))); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__\
.........                ) : "p"( &(kernel_stack))); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "p"( &(kernel_stack\
.........                ))); break; default: __bad_percpu_size(); } pfo_ret__; }) +
.........[     206]: (5*8) - (((1UL) << 12) << 1));
.........[     207]: return ti;
.........[     208]: }
.........[     241]: static inline __attribute__((no_instrument_function)) void set_restore_sigmask(void)
.........[     242]: {
.........[     243]: struct thread_info *ti = current_thread_info();
.........[     244]: ti->status |= 0x0008;
.........[     245]: ({ int __ret_warn_on = !!(!(__builtin_constant_p((2)) ? constant_test_bit((2), (( unsigned long *)&ti->flags)) \
.........                : variable_test_bit((2), (( unsigned long *)&ti->flags)))); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null\
.........                (__FILE__, __LINE__); __builtin_expect(!!(__ret_warn_on), 0); });
.........[     246]: }
.........[     247]: static inline __attribute__((no_instrument_function)) void clear_restore_sigmask(void)
.........[     248]: {
.........[     249]: current_thread_info()->status &= ~0x0008;
.........[     250]: }
.........[     251]: static inline __attribute__((no_instrument_function)) bool test_restore_sigmask(void)
.........[     252]: {
.........[     253]: return current_thread_info()->status & 0x0008;
.........[     254]: }
.........[     255]: static inline __attribute__((no_instrument_function)) bool test_and_clear_restore_sigmask(void)
.........[     256]: {
.........[     257]: struct thread_info *ti = current_thread_info();
.........[     258]: if (!(ti->status & 0x0008))
.........[     259]: return false;
.........[     260]: ti->status &= ~0x0008;
.........[     261]: return true;
.........[     262]: }
.........[     264]: static inline __attribute__((no_instrument_function)) bool is_ia32_task(void)
.........[     265]: {
.........[     270]: if (current_thread_info()->status & 0x0002)
.........[     271]: return true;
.........[     273]: return false;
.........[     274]: }
.........[     278]: extern void arch_task_cache_init(void);
.........[     279]: extern int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src);
.........[     280]: extern void arch_release_task_struct(struct task_struct *tsk);
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/thread_info.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/thread_info.h
........[      71]: static inline __attribute__((no_instrument_function)) void set_ti_thread_flag(struct thread_info *ti, int flag\
........                )
........[      72]: {
........[      73]: set_bit(flag, (unsigned long *)&ti->flags);
........[      74]: }
........[      76]: static inline __attribute__((no_instrument_function)) void clear_ti_thread_flag(struct thread_info *ti, int \
........                flag)
........[      77]: {
........[      78]: clear_bit(flag, (unsigned long *)&ti->flags);
........[      79]: }
........[      81]: static inline __attribute__((no_instrument_function)) int test_and_set_ti_thread_flag(struct thread_info *\
........                ti, int flag)
........[      82]: {
........[      83]: return test_and_set_bit(flag, (unsigned long *)&ti->flags);
........[      84]: }
........[      86]: static inline __attribute__((no_instrument_function)) int test_and_clear_ti_thread_flag(struct thread_info \
........                *ti, int flag)
........[      87]: {
........[      88]: return test_and_clear_bit(flag, (unsigned long *)&ti->flags);
........[      89]: }
........[      91]: static inline __attribute__((no_instrument_function)) int test_ti_thread_flag(struct thread_info *ti, int flag\
........                )
........[      92]: {
........[      93]: return (__builtin_constant_p((flag)) ? constant_test_bit((flag), ((unsigned long *)&ti->flags)) : variable_test_bit\
........                ((flag), ((unsigned long *)&ti->flags)));
........[      94]: }
........[     107]: static inline __attribute__((no_instrument_function)) void set_need_resched(void)
........[     108]: {
........[     119]: }
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/thread_info.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/preempt.h
.......[       8]: extern __attribute__((section(".data..percpu" ""))) __typeof__(int) __preempt_count;
.......[      20]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int preempt_count(void\
.......                )
.......[      21]: {
.......[      22]: return ({ typeof((__preempt_count)) pfo_ret__; switch (sizeof((__preempt_count))) { case 1: asm("mov" "b ""%%"\
.......                "gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"(__preempt_count)); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"\
.......                ",%0" : "=r" (pfo_ret__) : "m"(__preempt_count)); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__\
.......                ) : "m"(__preempt_count)); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"(__preempt_count\
.......                )); break; default: __bad_percpu_size(); } pfo_ret__; }) & ~0x80000000;
.......[      23]: }
.......[      25]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void preempt_count_set\
.......                (int pc)
.......[      26]: {
.......[      27]: do { typedef typeof((__preempt_count)) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = (pc); (void)pto_tmp__; } switch \
.......                (sizeof((__preempt_count))) { case 1: asm("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "qi" ((pto_T__\
.......                )(pc))); break; case 2: asm("mov" "w %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" ((pto_T__)(pc))); \
.......                break; case 4: asm("mov" "l %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" ((pto_T__)(pc))); break; case \
.......                8: asm("mov" "q %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "re" ((pto_T__)(pc))); break; default: __bad_percpu_size\
.......                (); } } while (0);
.......[      28]: }
.......[      54]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void set_preempt_need_resched\
.......                (void)
.......[      55]: {
.......[      56]: do { typedef typeof((__preempt_count)) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = (~0x80000000); (void)pto_tmp__\
.......                ; } switch (sizeof((__preempt_count))) { case 1: asm("and" "b %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) \
.......                : "qi" ((pto_T__)(~0x80000000))); break; case 2: asm("and" "w %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)\
.......                ) : "ri" ((pto_T__)(~0x80000000))); break; case 4: asm("and" "l %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                )) : "ri" ((pto_T__)(~0x80000000))); break; case 8: asm("and" "q %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                )) : "re" ((pto_T__)(~0x80000000))); break; default: __bad_percpu_size(); } } while (0);
.......[      57]: }
.......[      59]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void clear_preempt_need_resched\
.......                (void)
.......[      60]: {
.......[      61]: do { typedef typeof((__preempt_count)) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = (0x80000000); (void)pto_tmp__\
.......                ; } switch (sizeof((__preempt_count))) { case 1: asm("or" "b %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : \
.......                "qi" ((pto_T__)(0x80000000))); break; case 2: asm("or" "w %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" \
.......                ((pto_T__)(0x80000000))); break; case 4: asm("or" "l %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" (\
.......                (pto_T__)(0x80000000))); break; case 8: asm("or" "q %1,""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "re" ((\
.......                pto_T__)(0x80000000))); break; default: __bad_percpu_size(); } } while (0);
.......[      62]: }
.......[      64]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) bool test_preempt_need_resched\
.......                (void)
.......[      65]: {
.......[      66]: return !(({ typeof((__preempt_count)) pfo_ret__; switch (sizeof((__preempt_count))) { case 1: asm("mov" "b ""%%"\
.......                "gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"(__preempt_count)); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"\
.......                ",%0" : "=r" (pfo_ret__) : "m"(__preempt_count)); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__\
.......                ) : "m"(__preempt_count)); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"(__preempt_count\
.......                )); break; default: __bad_percpu_size(); } pfo_ret__; }) & 0x80000000);
.......[      67]: }
.......[      73]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void __preempt_count_add\
.......                (int val)
.......[      74]: {
.......[      75]: do { typedef typeof((__preempt_count)) pao_T__; const int pao_ID__ = (__builtin_constant_p(val) && ((val) == 1 || (\
.......                val) == -1)) ? (int)(val) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = (val); (void)pao_tmp__; } switch (sizeof((__preempt_count\
.......                ))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else if (pao_ID__ == -1) \
.......                asm("decb ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                )) : "qi" ((pao_T__)(val))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                ))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else asm("addw %1, ""%%"\
.......                "gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" ((pao_T__)(val))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%"\
.......                "gs"":" "%P" "0" : "+m" ((__preempt_count))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                ))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" ((pao_T__)(val))); break; case 8: \
.......                if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else if (pao_ID__ == -1) asm("decq "\
.......                "%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                )) : "re" ((pao_T__)(val))); break; default: __bad_percpu_size(); } } while (0);
.......[      76]: }
.......[      78]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void __preempt_count_sub\
.......                (int val)
.......[      79]: {
.......[      80]: do { typedef typeof((__preempt_count)) pao_T__; const int pao_ID__ = (__builtin_constant_p(-val) && ((-val) == 1 || \
.......                (-val) == -1)) ? (int)(-val) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = (-val); (void)pao_tmp__; } switch (sizeof((__preempt_count\
.......                ))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else if (pao_ID__ == -1) \
.......                asm("decb ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                )) : "qi" ((pao_T__)(-val))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count\
.......                ))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else asm("addw %1, ""%%"\
.......                "gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" ((pao_T__)(-val))); break; case 4: if (pao_ID__ == 1) asm("incl "\
.......                "%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((\
.......                __preempt_count))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count)) : "ri" ((pao_T__)(-val\
.......                ))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else if (pao_ID__ \
.......                == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" ((__preempt_count))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" \
.......                ((__preempt_count)) : "re" ((pao_T__)(-val))); break; default: __bad_percpu_size(); } } while (0);
.......[      81]: }
.......[      88]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) bool __preempt_count_dec_and_test\
.......                (void)
.......[      89]: {
.......[      90]: do { char c; asm volatile ("decl" " " "%%""gs"":" "%P" "0" "; set" "e" " %1" : "+m" (__preempt_count), "=qm" (c) : : "memory"\
.......                ); return c != 0; } while (0);
.......[      91]: }
.......[      96]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) bool should_resched(\
.......                void)
.......[      97]: {
.......[      98]: return __builtin_expect(!!(!({ typeof((__preempt_count)) pfo_ret__; switch (sizeof((__preempt_count))) { case \
.......                1: asm("mov" "b ""%%""gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"(__preempt_count)); break; case 2: asm("mov" "w "\
.......                "%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"(__preempt_count)); break; case 4: asm("mov" "l ""%%""gs"":" "%P" \
.......                "1"",%0" : "=r" (pfo_ret__) : "m"(__preempt_count)); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" \
.......                (pfo_ret__) : "m"(__preempt_count)); break; default: __bad_percpu_size(); } pfo_ret__; })), 0);
.......[      99]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/preempt.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/preempt.h
......[     121]: struct preempt_notifier;
......[     137]: struct preempt_ops {
......[     138]: void (*sched_in)(struct preempt_notifier *notifier, int cpu);
......[     139]: void (*sched_out)(struct preempt_notifier *notifier,
......[     140]: struct task_struct *next);
......[     141]: };
......[     150]: struct preempt_notifier {
......[     151]: struct hlist_node link;
......[     152]: struct preempt_ops *ops;
......[     153]: };
......[     155]: void preempt_notifier_register(struct preempt_notifier *notifier);
......[     156]: void preempt_notifier_unregister(struct preempt_notifier *notifier);
......[     158]: static inline __attribute__((no_instrument_function)) void preempt_notifier_init(struct preempt_notifier *\
......                notifier,
......[     159]: struct preempt_ops *ops)
......[     160]: {
......[     161]: INIT_HLIST_NODE(&notifier->link);
......[     162]: notifier->ops = ops;
......[     163]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/preempt.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bottom_half.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bottom_half.h
......[       4]: extern void local_bh_disable(void);
......[       5]: extern void _local_bh_enable(void);
......[       6]: extern void local_bh_enable(void);
......[       7]: extern void local_bh_enable_ip(unsigned long ip);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bottom_half.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/barrier.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/barrier.h
......[     110]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void rdtsc_barrier(void\
......                )
......[     111]: {
......[     112]: asm volatile ("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
......                " .long " "663""1""f - .\n" " .word " "(3*32+17)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
......                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
......                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
......                "mfence" "\n" "664""1" ":\n\t" ".popsection" : : : "memory");
......[     113]: asm volatile ("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
......                " .long " "663""1""f - .\n" " .word " "(3*32+18)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
......                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
......                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
......                "lfence" "\n" "664""1" ":\n\t" ".popsection" : : : "memory");
......[     114]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/barrier.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_types.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_types.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock_types.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock_types.h
.......[      15]: typedef u8 __ticket_t;
.......[      16]: typedef u16 __ticketpair_t;
.......[      26]: typedef struct arch_spinlock {
.......[      27]: union {
.......[      28]: __ticketpair_t head_tail;
.......[      29]: struct __raw_tickets {
.......[      30]: __ticket_t head, tail;
.......[      31]: } tickets;
.......[      32]: };
.......[      33]: } arch_spinlock_t;
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock_types.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/rwlock.h
........[       9]: typedef union {
........[      10]: s32 lock;
........[      11]: s32 write;
........[      12]: } arch_rwlock_t;
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/rwlock.h
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock_types.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_types.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/lockdep.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/lockdep.h
.......[      12]: struct task_struct;
.......[      13]: struct lockdep_map;
.......[      16]: extern int prove_locking;
.......[      17]: extern int lock_stat;
.......[     370]: static inline __attribute__((no_instrument_function)) void lockdep_off(void)
.......[     371]: {
.......[     372]: }
.......[     374]: static inline __attribute__((no_instrument_function)) void lockdep_on(void)
.......[     375]: {
.......[     376]: }
.......[     411]: struct lock_class_key { };
.......[     465]: static inline __attribute__((no_instrument_function)) void print_irqtrace_events(struct task_struct *curr)
.......[     466]: {
.......[     467]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/lockdep.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_types.h
......[      20]: typedef struct raw_spinlock {
......[      21]: arch_spinlock_t raw_lock;
......[      32]: } raw_spinlock_t;
......[      64]: typedef struct spinlock {
......[      65]: union {
......[      66]: struct raw_spinlock rlock;
......[      75]: };
......[      76]: } spinlock_t;
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_types.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwlock_types.h
.......[      11]: typedef struct {
.......[      12]: arch_rwlock_t raw_lock;
.......[      23]: } rwlock_t;
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwlock_types.h
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_types.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/jump_label.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/jump_label.h
.......[      53]: extern bool static_key_initialized;
.......[      74]: enum jump_label_type {
.......[      75]: JUMP_LABEL_DISABLE = 0,
.......[      76]: JUMP_LABEL_ENABLE,
.......[      77]: };
.......[      79]: struct module;
.......[     132]: struct static_key {
.......[     133]: atomic_t enabled;
.......[     134]: };
.......[     136]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void jump_label_init\
.......                (void)
.......[     137]: {
.......[     138]: static_key_initialized = true;
.......[     139]: }
.......[     141]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) bool static_key_false\
.......                (struct static_key *key)
.......[     142]: {
.......[     143]: if (__builtin_expect(!!(atomic_read(&key->enabled) > 0), 0))
.......[     144]: return true;
.......[     145]: return false;
.......[     146]: }
.......[     148]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) bool static_key_true\
.......                (struct static_key *key)
.......[     149]: {
.......[     150]: if (__builtin_expect(!!(atomic_read(&key->enabled) > 0), 1))
.......[     151]: return true;
.......[     152]: return false;
.......[     153]: }
.......[     155]: static inline __attribute__((no_instrument_function)) void static_key_slow_inc(struct static_key *key)
.......[     156]: {
.......[     157]: ({ int __ret_warn_on = !!(!static_key_initialized); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_fmt\
.......                (__FILE__, __LINE__, "%s used before call to jump_label_init"); __builtin_expect(!!(__ret_warn_on), 0); }\
.......                );
.......[     158]: atomic_inc(&key->enabled);
.......[     159]: }
.......[     161]: static inline __attribute__((no_instrument_function)) void static_key_slow_dec(struct static_key *key)
.......[     162]: {
.......[     163]: ({ int __ret_warn_on = !!(!static_key_initialized); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_fmt\
.......                (__FILE__, __LINE__, "%s used before call to jump_label_init"); __builtin_expect(!!(__ret_warn_on), 0); }\
.......                );
.......[     164]: atomic_dec(&key->enabled);
.......[     165]: }
.......[     167]: static inline __attribute__((no_instrument_function)) int jump_label_text_reserved(void *start, void *end)
.......[     168]: {
.......[     169]: return 0;
.......[     170]: }
.......[     172]: static inline __attribute__((no_instrument_function)) void jump_label_lock(void) {}
.......[     173]: static inline __attribute__((no_instrument_function)) void jump_label_unlock(void) {}
.......[     175]: static inline __attribute__((no_instrument_function)) int jump_label_apply_nops(struct module *mod)
.......[     176]: {
.......[     177]: return 0;
.......[     178]: }
.......[     190]: static inline __attribute__((no_instrument_function)) bool static_key_enabled(struct static_key *key)
.......[     191]: {
.......[     192]: return (atomic_read(&key->enabled) > 0);
.......[     193]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/jump_label.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock.h
......[      43]: extern struct static_key paravirt_ticketlocks_enabled;
......[      44]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) bool static_key_false\
......                (struct static_key *key);
......[      54]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void __ticket_lock_spinning\
......                (arch_spinlock_t *lock,
......[      55]: __ticket_t ticket)
......[      56]: {
......[      57]: }
......[      58]: static inline __attribute__((no_instrument_function)) void __ticket_unlock_kick(arch_spinlock_t *lock,
......[      59]: __ticket_t ticket)
......[      60]: {
......[      61]: }
......[      65]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int arch_spin_value_unlocked\
......                (arch_spinlock_t lock)
......[      66]: {
......[      67]: return lock.tickets.head == lock.tickets.tail;
......[      68]: }
......[      83]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void arch_spin_lock(\
......                arch_spinlock_t *lock)
......[      84]: {
......[      85]: register struct __raw_tickets inc = { .tail = ((__ticket_t)1) };
......[      87]: inc = ({ __typeof__ (*(((&lock->tickets)))) __ret = (((inc))); switch (sizeof(*(((&lock->tickets))))) { case 1: asm \
......                volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
......                "xadd" "b %b0, %1\n" : "+q" (__ret), "+m" (*(((&lock->tickets)))) : : "memory", "cc"); break; case 2: asm volatile (\
......                ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" \
......                "w %w0, %1\n" : "+r" (__ret), "+m" (*(((&lock->tickets)))) : : "memory", "cc"); break; case 4: asm volatile (".pushsection .smp_locks,\"a\"\n" \
......                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "l %0, %1\n" : "+r" (__ret), "+m" (\
......                *(((&lock->tickets)))) : : "memory", "cc"); break; case 8: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
......                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "q %q0, %1\n" : "+r" (__ret), "+m" (*(((&lock->tickets\
......                )))) : : "memory", "cc"); break; default: __xadd_wrong_size(); } __ret; });
......[      88]: if (__builtin_expect(!!(inc.head == inc.tail), 1))
......[      89]: goto out;
......[      91]: inc.tail &= ~((__ticket_t)0);
......[      92]: for (;;) {
......[      93]: unsigned count = (1 << 15);
......[      95]: do {
......[      96]: if ((*(volatile typeof(lock->tickets.head) *)&(lock->tickets.head)) == inc.tail)
......[      97]: goto out;
......[      98]: cpu_relax();
......[      99]: } while (--count);
......[     100]: __ticket_lock_spinning(lock, inc.tail);
......[     101]: }
......[     102]: out: __asm__ __volatile__("": : :"memory");
......[     103]: }
......[     105]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int arch_spin_trylock\
......                (arch_spinlock_t *lock)
......[     106]: {
......[     107]: arch_spinlock_t old, new;
......[     109]: old.tickets = (*(volatile typeof(lock->tickets) *)&(lock->tickets));
......[     110]: if (old.tickets.head != (old.tickets.tail & ~((__ticket_t)0)))
......[     111]: return 0;
......[     113]: new.head_tail = old.head_tail + (((__ticket_t)1) << (sizeof(__ticket_t) * 8));
......[     116]: return ({ __typeof__(*((&lock->head_tail))) __ret; __typeof__(*((&lock->head_tail))) __old = ((old.head_tail\
......                )); __typeof__(*((&lock->head_tail))) __new = ((new.head_tail)); switch ((sizeof(*(&lock->head_tail)))) { case \
......                1: { volatile u8 *__ptr = (volatile u8 *)((&lock->head_tail)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
......                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgb %2,%1" : "=a" (__ret), "+m" (*__ptr) : "q" (__new\
......                ), "0" (__old) : "memory"); break; } case 2: { volatile u16 *__ptr = (volatile u16 *)((&lock->head_tail)); asm volatile\
......                (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgw %2,%1" \
......                : "=a" (__ret), "+m" (*__ptr) : "r" (__new), "0" (__old) : "memory"); break; } case 4: { volatile u32 *__ptr = (volatile u32 \
......                *)((&lock->head_tail)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
......                "671:" "\n\tlock; " "cmpxchgl %2,%1" : "=a" (__ret), "+m" (*__ptr) : "r" (__new), "0" (__old) : "memory"); break; } case \
......                8: { volatile u64 *__ptr = (volatile u64 *)((&lock->head_tail)); asm volatile(".pushsection .smp_locks,\"a\"\n" \
......                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgq %2,%1" : "=a" (__ret), "+m" (*__ptr\
......                ) : "r" (__new), "0" (__old) : "memory"); break; } default: __cmpxchg_wrong_size(); } __ret; }) == old.head_tail;
......[     117]: }
......[     119]: static inline __attribute__((no_instrument_function)) void __ticket_unlock_slowpath(arch_spinlock_t *lock\
......                ,
......[     120]: arch_spinlock_t old)
......[     121]: {
......[     122]: arch_spinlock_t new;
......[     124]: ((void)sizeof(char[1 - 2*!!(((__ticket_t)64) != 64)]));
......[     127]: old.tickets.head += ((__ticket_t)1);
......[     130]: new.head_tail = old.head_tail & ~(((__ticket_t)0) << (sizeof(__ticket_t) * 8));
......[     136]: if (new.tickets.head != new.tickets.tail ||
......[     138]: ({ __typeof__(*((&lock->head_tail))) __ret; __typeof__(*((&lock->head_tail))) __old = ((old.head_tail)); __typeof__\
......                (*((&lock->head_tail))) __new = ((new.head_tail)); switch ((sizeof(*(&lock->head_tail)))) { case 1: { volatile \
......                u8 *__ptr = (volatile u8 *)((&lock->head_tail)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
......                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgb %2,%1" : "=a" (__ret), "+m" (*__ptr) : "q" (__new\
......                ), "0" (__old) : "memory"); break; } case 2: { volatile u16 *__ptr = (volatile u16 *)((&lock->head_tail)); asm volatile\
......                (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgw %2,%1" \
......                : "=a" (__ret), "+m" (*__ptr) : "r" (__new), "0" (__old) : "memory"); break; } case 4: { volatile u32 *__ptr = (volatile u32 \
......                *)((&lock->head_tail)); asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
......                "671:" "\n\tlock; " "cmpxchgl %2,%1" : "=a" (__ret), "+m" (*__ptr) : "r" (__new), "0" (__old) : "memory"); break; } case \
......                8: { volatile u64 *__ptr = (volatile u64 *)((&lock->head_tail)); asm volatile(".pushsection .smp_locks,\"a\"\n" \
......                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "cmpxchgq %2,%1" : "=a" (__ret), "+m" (*__ptr\
......                ) : "r" (__new), "0" (__old) : "memory"); break; } default: __cmpxchg_wrong_size(); } __ret; }) != old.head_tail) {
......[     143]: __ticket_unlock_kick(lock, old.tickets.head);
......[     144]: }
......[     145]: }
......[     147]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void arch_spin_unlock\
......                (arch_spinlock_t *lock)
......[     148]: {
......[     149]: if (((__ticket_t)0) &&
......[     150]: static_key_false(&paravirt_ticketlocks_enabled)) {
......[     151]: arch_spinlock_t prev;
......[     153]: prev = *lock;
......[     154]: ({ __typeof__ (*((&lock->tickets.head))) __ret = ((((__ticket_t)1))); switch (sizeof(*((&lock->tickets.head\
......                )))) { case 1: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
......                "671:" "\n\tlock; " "addb %b1, %0\n" : "+m" (*((&lock->tickets.head))) : "qi" ((((__ticket_t)1))) : "memory", "cc"\
......                ); break; case 2: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
......                "671:" "\n\tlock; " "addw %w1, %0\n" : "+m" (*((&lock->tickets.head))) : "ri" ((((__ticket_t)1))) : "memory", "cc"\
......                ); break; case 4: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
......                "671:" "\n\tlock; " "addl %1, %0\n" : "+m" (*((&lock->tickets.head))) : "ri" ((((__ticket_t)1))) : "memory", "cc"\
......                ); break; case 8: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" \
......                "671:" "\n\tlock; " "addq %1, %0\n" : "+m" (*((&lock->tickets.head))) : "ri" ((((__ticket_t)1))) : "memory", "cc"\
......                ); break; default: __add_wrong_size(); } __ret; });
......[     158]: if (__builtin_expect(!!(lock->tickets.tail & ((__ticket_t)0)), 0))
......[     159]: __ticket_unlock_slowpath(lock, prev);
......[     160]: } else
......[     161]: ({ __typeof__ (*(&lock->tickets.head)) __ret = (((__ticket_t)1)); switch (sizeof(*(&lock->tickets.head))) { case \
......                1: asm volatile ( "addb %b1, %0\n" : "+m" (*(&lock->tickets.head)) : "qi" (((__ticket_t)1)) : "memory", "cc"); break\
......                ; case 2: asm volatile ( "addw %w1, %0\n" : "+m" (*(&lock->tickets.head)) : "ri" (((__ticket_t)1)) : "memory", "cc"\
......                ); break; case 4: asm volatile ( "addl %1, %0\n" : "+m" (*(&lock->tickets.head)) : "ri" (((__ticket_t)1)) : "memory"\
......                , "cc"); break; case 8: asm volatile ( "addq %1, %0\n" : "+m" (*(&lock->tickets.head)) : "ri" (((__ticket_t)1)) : "memory"\
......                , "cc"); break; default: __add_wrong_size(); } __ret; });
......[     162]: }
......[     164]: static inline __attribute__((no_instrument_function)) int arch_spin_is_locked(arch_spinlock_t *lock)
......[     165]: {
......[     166]: struct __raw_tickets tmp = (*(volatile typeof(lock->tickets) *)&(lock->tickets));
......[     168]: return tmp.tail != tmp.head;
......[     169]: }
......[     171]: static inline __attribute__((no_instrument_function)) int arch_spin_is_contended(arch_spinlock_t *lock)
......[     172]: {
......[     173]: struct __raw_tickets tmp = (*(volatile typeof(lock->tickets) *)&(lock->tickets));
......[     175]: return (__ticket_t)(tmp.tail - tmp.head) > ((__ticket_t)1);
......[     176]: }
......[     179]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void arch_spin_lock_flags\
......                (arch_spinlock_t *lock,
......[     180]: unsigned long flags)
......[     181]: {
......[     182]: arch_spin_lock(lock);
......[     183]: }
......[     185]: static inline __attribute__((no_instrument_function)) void arch_spin_unlock_wait(arch_spinlock_t *lock)
......[     186]: {
......[     187]: while (arch_spin_is_locked(lock))
......[     188]: cpu_relax();
......[     189]: }
......[     209]: static inline __attribute__((no_instrument_function)) int arch_read_can_lock(arch_rwlock_t *lock)
......[     210]: {
......[     211]: return lock->lock > 0;
......[     212]: }
......[     218]: static inline __attribute__((no_instrument_function)) int arch_write_can_lock(arch_rwlock_t *lock)
......[     219]: {
......[     220]: return lock->write == 0x00100000;
......[     221]: }
......[     223]: static inline __attribute__((no_instrument_function)) void arch_read_lock(arch_rwlock_t *rw)
......[     224]: {
......[     225]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
......                " " "decl" " " " (%0)\n\t"
......[     226]: "jns 1f\n"
......[     227]: "call __read_lock_failed\n\t"
......[     228]: "1:\n"
......[     229]: ::"D" (rw) : "memory");
......[     230]: }
......[     232]: static inline __attribute__((no_instrument_function)) void arch_write_lock(arch_rwlock_t *rw)
......[     233]: {
......[     234]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
......                " " "subl %1" "," "(%0)\n\t"
......[     235]: "jz 1f\n"
......[     236]: "call __write_lock_failed\n\t"
......[     237]: "1:\n"
......[     238]: ::"D" (&rw->write), "i" (0x00100000)
......[     239]: : "memory");
......[     240]: }
......[     242]: static inline __attribute__((no_instrument_function)) int arch_read_trylock(arch_rwlock_t *lock)
......[     243]: {
......[     244]: atomic_t *count = (atomic_t *)lock;
......[     246]: if ((atomic_sub_return(1, count)) >= 0)
......[     247]: return 1;
......[     248]: atomic_inc(count);
......[     249]: return 0;
......[     250]: }
......[     252]: static inline __attribute__((no_instrument_function)) int arch_write_trylock(arch_rwlock_t *lock)
......[     253]: {
......[     254]: atomic_t *count = (atomic_t *)&lock->write;
......[     256]: if (atomic_sub_and_test(0x00100000, count))
......[     257]: return 1;
......[     258]: atomic_add(0x00100000, count);
......[     259]: return 0;
......[     260]: }
......[     262]: static inline __attribute__((no_instrument_function)) void arch_read_unlock(arch_rwlock_t *rw)
......[     263]: {
......[     264]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
......                " " "incl" " " " %0"
......[     265]: :"+m" (rw->lock) : : "memory");
......[     266]: }
......[     268]: static inline __attribute__((no_instrument_function)) void arch_write_unlock(arch_rwlock_t *rw)
......[     269]: {
......[     270]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
......                " " "addl %1" "," "%0"
......[     271]: : "+m" (rw->write) : "i" (0x00100000) : "memory");
......[     272]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/spinlock.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....[     145]: static inline __attribute__((no_instrument_function)) void do_raw_spin_lock(raw_spinlock_t *lock)
.....[     146]: {
.....[     147]: (void)0;
.....[     148]: arch_spin_lock(&lock->raw_lock);
.....[     149]: }
.....[     151]: static inline __attribute__((no_instrument_function)) void
.....[     152]: do_raw_spin_lock_flags(raw_spinlock_t *lock, unsigned long *flags)
.....[     153]: {
.....[     154]: (void)0;
.....[     155]: arch_spin_lock_flags(&lock->raw_lock, *flags);
.....[     156]: }
.....[     158]: static inline __attribute__((no_instrument_function)) int do_raw_spin_trylock(raw_spinlock_t *lock)
.....[     159]: {
.....[     160]: return arch_spin_trylock(&(lock)->raw_lock);
.....[     161]: }
.....[     163]: static inline __attribute__((no_instrument_function)) void do_raw_spin_unlock(raw_spinlock_t *lock)
.....[     164]: {
.....[     165]: arch_spin_unlock(&lock->raw_lock);
.....[     166]: (void)0;
.....[     167]: }
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_api_smp.h
......[      18]: int in_lock_functions(unsigned long addr);
......[      22]: void __attribute__((section(".spinlock.text"))) _raw_spin_lock(raw_spinlock_t *lock) ;
......[      23]: void __attribute__((section(".spinlock.text"))) _raw_spin_lock_nested(raw_spinlock_t *lock, int subclass)
......[      24]: ;
......[      25]: void __attribute__((section(".spinlock.text")))
......[      26]: _raw_spin_lock_nest_lock(raw_spinlock_t *lock, struct lockdep_map *map)
......[      27]: ;
......[      28]: void __attribute__((section(".spinlock.text"))) _raw_spin_lock_bh(raw_spinlock_t *lock) ;
......[      29]: void __attribute__((section(".spinlock.text"))) _raw_spin_lock_irq(raw_spinlock_t *lock)
......[      30]: ;
......[      32]: unsigned long __attribute__((section(".spinlock.text"))) _raw_spin_lock_irqsave(raw_spinlock_t *lock)
......[      33]: ;
......[      34]: unsigned long __attribute__((section(".spinlock.text")))
......[      35]: _raw_spin_lock_irqsave_nested(raw_spinlock_t *lock, int subclass)
......[      36]: ;
......[      37]: int __attribute__((section(".spinlock.text"))) _raw_spin_trylock(raw_spinlock_t *lock);
......[      38]: int __attribute__((section(".spinlock.text"))) _raw_spin_trylock_bh(raw_spinlock_t *lock);
......[      39]: void __attribute__((section(".spinlock.text"))) _raw_spin_unlock(raw_spinlock_t *lock) ;
......[      40]: void __attribute__((section(".spinlock.text"))) _raw_spin_unlock_bh(raw_spinlock_t *lock) ;
......[      41]: void __attribute__((section(".spinlock.text"))) _raw_spin_unlock_irq(raw_spinlock_t *lock) ;
......[      42]: void __attribute__((section(".spinlock.text")))
......[      43]: _raw_spin_unlock_irqrestore(raw_spinlock_t *lock, unsigned long flags)
......[      44]: ;
......[      86]: static inline __attribute__((no_instrument_function)) int __raw_spin_trylock(raw_spinlock_t *lock)
......[      87]: {
......[      88]: __asm__ __volatile__("": : :"memory");
......[      89]: if (do_raw_spin_trylock(lock)) {
......[      90]: do { } while (0);
......[      91]: return 1;
......[      92]: }
......[      93]: __asm__ __volatile__("": : :"memory");
......[      94]: return 0;
......[      95]: }
......[     104]: static inline __attribute__((no_instrument_function)) unsigned long __raw_spin_lock_irqsave(raw_spinlock_t \
......                *lock)
......[     105]: {
......[     106]: unsigned long flags;
......[     108]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = arch_local_irq_save\
......                (); } while (0); do { } while (0); } while (0);
......[     109]: __asm__ __volatile__("": : :"memory");
......[     110]: do { } while (0);
......[     119]: do_raw_spin_lock_flags(lock, &flags);
......[     121]: return flags;
......[     122]: }
......[     124]: static inline __attribute__((no_instrument_function)) void __raw_spin_lock_irq(raw_spinlock_t *lock)
......[     125]: {
......[     126]: do { arch_local_irq_disable(); do { } while (0); } while (0);
......[     127]: __asm__ __volatile__("": : :"memory");
......[     128]: do { } while (0);
......[     129]: do_raw_spin_lock(lock);
......[     130]: }
......[     132]: static inline __attribute__((no_instrument_function)) void __raw_spin_lock_bh(raw_spinlock_t *lock)
......[     133]: {
......[     134]: local_bh_disable();
......[     135]: __asm__ __volatile__("": : :"memory");
......[     136]: do { } while (0);
......[     137]: do_raw_spin_lock(lock);
......[     138]: }
......[     140]: static inline __attribute__((no_instrument_function)) void __raw_spin_lock(raw_spinlock_t *lock)
......[     141]: {
......[     142]: __asm__ __volatile__("": : :"memory");
......[     143]: do { } while (0);
......[     144]: do_raw_spin_lock(lock);
......[     145]: }
......[     149]: static inline __attribute__((no_instrument_function)) void __raw_spin_unlock(raw_spinlock_t *lock)
......[     150]: {
......[     151]: do { } while (0);
......[     152]: do_raw_spin_unlock(lock);
......[     153]: __asm__ __volatile__("": : :"memory");
......[     154]: }
......[     156]: static inline __attribute__((no_instrument_function)) void __raw_spin_unlock_irqrestore(raw_spinlock_t *lock\
......                ,
......[     157]: unsigned long flags)
......[     158]: {
......[     159]: do { } while (0);
......[     160]: do_raw_spin_unlock(lock);
......[     161]: do { if (({ ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_irqs_disabled_flags\
......                (flags); })) { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_local_irq_restore\
......                (flags); } while (0); do { } while (0); } else { do { } while (0); do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void\
......                )(&__dummy == &__dummy2); 1; }); arch_local_irq_restore(flags); } while (0); } } while (0);
......[     162]: __asm__ __volatile__("": : :"memory");
......[     163]: }
......[     165]: static inline __attribute__((no_instrument_function)) void __raw_spin_unlock_irq(raw_spinlock_t *lock)
......[     166]: {
......[     167]: do { } while (0);
......[     168]: do_raw_spin_unlock(lock);
......[     169]: do { do { } while (0); arch_local_irq_enable(); } while (0);
......[     170]: __asm__ __volatile__("": : :"memory");
......[     171]: }
......[     173]: static inline __attribute__((no_instrument_function)) void __raw_spin_unlock_bh(raw_spinlock_t *lock)
......[     174]: {
......[     175]: do { } while (0);
......[     176]: do_raw_spin_unlock(lock);
......[     177]: __asm__ __volatile__("": : :"memory");
......[     178]: local_bh_enable_ip((unsigned long)__builtin_return_address(0));
......[     179]: }
......[     181]: static inline __attribute__((no_instrument_function)) int __raw_spin_trylock_bh(raw_spinlock_t *lock)
......[     182]: {
......[     183]: local_bh_disable();
......[     184]: __asm__ __volatile__("": : :"memory");
......[     185]: if (do_raw_spin_trylock(lock)) {
......[     186]: do { } while (0);
......[     187]: return 1;
......[     188]: }
......[     189]: __asm__ __volatile__("": : :"memory");
......[     190]: local_bh_enable_ip((unsigned long)__builtin_return_address(0));
......[     191]: return 0;
......[     192]: }
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_api_smp.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwlock_api_smp.h
.......[      18]: void __attribute__((section(".spinlock.text"))) _raw_read_lock(rwlock_t *lock) ;
.......[      19]: void __attribute__((section(".spinlock.text"))) _raw_write_lock(rwlock_t *lock) ;
.......[      20]: void __attribute__((section(".spinlock.text"))) _raw_read_lock_bh(rwlock_t *lock) ;
.......[      21]: void __attribute__((section(".spinlock.text"))) _raw_write_lock_bh(rwlock_t *lock) ;
.......[      22]: void __attribute__((section(".spinlock.text"))) _raw_read_lock_irq(rwlock_t *lock) ;
.......[      23]: void __attribute__((section(".spinlock.text"))) _raw_write_lock_irq(rwlock_t *lock) ;
.......[      24]: unsigned long __attribute__((section(".spinlock.text"))) _raw_read_lock_irqsave(rwlock_t *lock)
.......[      25]: ;
.......[      26]: unsigned long __attribute__((section(".spinlock.text"))) _raw_write_lock_irqsave(rwlock_t *lock)
.......[      27]: ;
.......[      28]: int __attribute__((section(".spinlock.text"))) _raw_read_trylock(rwlock_t *lock);
.......[      29]: int __attribute__((section(".spinlock.text"))) _raw_write_trylock(rwlock_t *lock);
.......[      30]: void __attribute__((section(".spinlock.text"))) _raw_read_unlock(rwlock_t *lock) ;
.......[      31]: void __attribute__((section(".spinlock.text"))) _raw_write_unlock(rwlock_t *lock) ;
.......[      32]: void __attribute__((section(".spinlock.text"))) _raw_read_unlock_bh(rwlock_t *lock) ;
.......[      33]: void __attribute__((section(".spinlock.text"))) _raw_write_unlock_bh(rwlock_t *lock) ;
.......[      34]: void __attribute__((section(".spinlock.text"))) _raw_read_unlock_irq(rwlock_t *lock) ;
.......[      35]: void __attribute__((section(".spinlock.text"))) _raw_write_unlock_irq(rwlock_t *lock) ;
.......[      36]: void __attribute__((section(".spinlock.text")))
.......[      37]: _raw_read_unlock_irqrestore(rwlock_t *lock, unsigned long flags)
.......[      38]: ;
.......[      39]: void __attribute__((section(".spinlock.text")))
.......[      40]: _raw_write_unlock_irqrestore(rwlock_t *lock, unsigned long flags)
.......[      41]: ;
.......[     117]: static inline __attribute__((no_instrument_function)) int __raw_read_trylock(rwlock_t *lock)
.......[     118]: {
.......[     119]: __asm__ __volatile__("": : :"memory");
.......[     120]: if (arch_read_trylock(&(lock)->raw_lock)) {
.......[     121]: do { } while (0);
.......[     122]: return 1;
.......[     123]: }
.......[     124]: __asm__ __volatile__("": : :"memory");
.......[     125]: return 0;
.......[     126]: }
.......[     128]: static inline __attribute__((no_instrument_function)) int __raw_write_trylock(rwlock_t *lock)
.......[     129]: {
.......[     130]: __asm__ __volatile__("": : :"memory");
.......[     131]: if (arch_write_trylock(&(lock)->raw_lock)) {
.......[     132]: do { } while (0);
.......[     133]: return 1;
.......[     134]: }
.......[     135]: __asm__ __volatile__("": : :"memory");
.......[     136]: return 0;
.......[     137]: }
.......[     146]: static inline __attribute__((no_instrument_function)) void __raw_read_lock(rwlock_t *lock)
.......[     147]: {
.......[     148]: __asm__ __volatile__("": : :"memory");
.......[     149]: do { } while (0);
.......[     150]: do {(void)0; arch_read_lock(&(lock)->raw_lock); } while (0);
.......[     151]: }
.......[     153]: static inline __attribute__((no_instrument_function)) unsigned long __raw_read_lock_irqsave(rwlock_t *lock\
.......                )
.......[     154]: {
.......[     155]: unsigned long flags;
.......[     157]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = arch_local_irq_save\
.......                (); } while (0); do { } while (0); } while (0);
.......[     158]: __asm__ __volatile__("": : :"memory");
.......[     159]: do { } while (0);
.......[     161]: do {(void)0; arch_read_lock(&((lock))->raw_lock); } while (0);
.......[     162]: return flags;
.......[     163]: }
.......[     165]: static inline __attribute__((no_instrument_function)) void __raw_read_lock_irq(rwlock_t *lock)
.......[     166]: {
.......[     167]: do { arch_local_irq_disable(); do { } while (0); } while (0);
.......[     168]: __asm__ __volatile__("": : :"memory");
.......[     169]: do { } while (0);
.......[     170]: do {(void)0; arch_read_lock(&(lock)->raw_lock); } while (0);
.......[     171]: }
.......[     173]: static inline __attribute__((no_instrument_function)) void __raw_read_lock_bh(rwlock_t *lock)
.......[     174]: {
.......[     175]: local_bh_disable();
.......[     176]: __asm__ __volatile__("": : :"memory");
.......[     177]: do { } while (0);
.......[     178]: do {(void)0; arch_read_lock(&(lock)->raw_lock); } while (0);
.......[     179]: }
.......[     181]: static inline __attribute__((no_instrument_function)) unsigned long __raw_write_lock_irqsave(rwlock_t *lock\
.......                )
.......[     182]: {
.......[     183]: unsigned long flags;
.......[     185]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = arch_local_irq_save\
.......                (); } while (0); do { } while (0); } while (0);
.......[     186]: __asm__ __volatile__("": : :"memory");
.......[     187]: do { } while (0);
.......[     189]: do {(void)0; arch_write_lock(&((lock))->raw_lock); } while (0);
.......[     190]: return flags;
.......[     191]: }
.......[     193]: static inline __attribute__((no_instrument_function)) void __raw_write_lock_irq(rwlock_t *lock)
.......[     194]: {
.......[     195]: do { arch_local_irq_disable(); do { } while (0); } while (0);
.......[     196]: __asm__ __volatile__("": : :"memory");
.......[     197]: do { } while (0);
.......[     198]: do {(void)0; arch_write_lock(&(lock)->raw_lock); } while (0);
.......[     199]: }
.......[     201]: static inline __attribute__((no_instrument_function)) void __raw_write_lock_bh(rwlock_t *lock)
.......[     202]: {
.......[     203]: local_bh_disable();
.......[     204]: __asm__ __volatile__("": : :"memory");
.......[     205]: do { } while (0);
.......[     206]: do {(void)0; arch_write_lock(&(lock)->raw_lock); } while (0);
.......[     207]: }
.......[     209]: static inline __attribute__((no_instrument_function)) void __raw_write_lock(rwlock_t *lock)
.......[     210]: {
.......[     211]: __asm__ __volatile__("": : :"memory");
.......[     212]: do { } while (0);
.......[     213]: do {(void)0; arch_write_lock(&(lock)->raw_lock); } while (0);
.......[     214]: }
.......[     218]: static inline __attribute__((no_instrument_function)) void __raw_write_unlock(rwlock_t *lock)
.......[     219]: {
.......[     220]: do { } while (0);
.......[     221]: do {arch_write_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     222]: __asm__ __volatile__("": : :"memory");
.......[     223]: }
.......[     225]: static inline __attribute__((no_instrument_function)) void __raw_read_unlock(rwlock_t *lock)
.......[     226]: {
.......[     227]: do { } while (0);
.......[     228]: do {arch_read_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     229]: __asm__ __volatile__("": : :"memory");
.......[     230]: }
.......[     232]: static inline __attribute__((no_instrument_function)) void
.......[     233]: __raw_read_unlock_irqrestore(rwlock_t *lock, unsigned long flags)
.......[     234]: {
.......[     235]: do { } while (0);
.......[     236]: do {arch_read_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     237]: do { if (({ ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_irqs_disabled_flags\
.......                (flags); })) { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_local_irq_restore\
.......                (flags); } while (0); do { } while (0); } else { do { } while (0); do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void\
.......                )(&__dummy == &__dummy2); 1; }); arch_local_irq_restore(flags); } while (0); } } while (0);
.......[     238]: __asm__ __volatile__("": : :"memory");
.......[     239]: }
.......[     241]: static inline __attribute__((no_instrument_function)) void __raw_read_unlock_irq(rwlock_t *lock)
.......[     242]: {
.......[     243]: do { } while (0);
.......[     244]: do {arch_read_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     245]: do { do { } while (0); arch_local_irq_enable(); } while (0);
.......[     246]: __asm__ __volatile__("": : :"memory");
.......[     247]: }
.......[     249]: static inline __attribute__((no_instrument_function)) void __raw_read_unlock_bh(rwlock_t *lock)
.......[     250]: {
.......[     251]: do { } while (0);
.......[     252]: do {arch_read_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     253]: __asm__ __volatile__("": : :"memory");
.......[     254]: local_bh_enable_ip((unsigned long)__builtin_return_address(0));
.......[     255]: }
.......[     257]: static inline __attribute__((no_instrument_function)) void __raw_write_unlock_irqrestore(rwlock_t *lock,
.......[     258]: unsigned long flags)
.......[     259]: {
.......[     260]: do { } while (0);
.......[     261]: do {arch_write_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     262]: do { if (({ ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_irqs_disabled_flags\
.......                (flags); })) { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_local_irq_restore\
.......                (flags); } while (0); do { } while (0); } else { do { } while (0); do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void\
.......                )(&__dummy == &__dummy2); 1; }); arch_local_irq_restore(flags); } while (0); } } while (0);
.......[     263]: __asm__ __volatile__("": : :"memory");
.......[     264]: }
.......[     266]: static inline __attribute__((no_instrument_function)) void __raw_write_unlock_irq(rwlock_t *lock)
.......[     267]: {
.......[     268]: do { } while (0);
.......[     269]: do {arch_write_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     270]: do { do { } while (0); arch_local_irq_enable(); } while (0);
.......[     271]: __asm__ __volatile__("": : :"memory");
.......[     272]: }
.......[     274]: static inline __attribute__((no_instrument_function)) void __raw_write_unlock_bh(rwlock_t *lock)
.......[     275]: {
.......[     276]: do { } while (0);
.......[     277]: do {arch_write_unlock(&(lock)->raw_lock); (void)0; } while (0);
.......[     278]: __asm__ __volatile__("": : :"memory");
.......[     279]: local_bh_enable_ip((unsigned long)__builtin_return_address(0));
.......[     280]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwlock_api_smp.h
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock_api_smp.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
.....[     280]: static inline __attribute__((no_instrument_function)) raw_spinlock_t *spinlock_check(spinlock_t *lock)
.....[     281]: {
.....[     282]: return &lock->rlock;
.....[     283]: }
.....[     291]: static inline __attribute__((no_instrument_function)) void spin_lock(spinlock_t *lock)
.....[     292]: {
.....[     293]: _raw_spin_lock(&lock->rlock);
.....[     294]: }
.....[     296]: static inline __attribute__((no_instrument_function)) void spin_lock_bh(spinlock_t *lock)
.....[     297]: {
.....[     298]: _raw_spin_lock_bh(&lock->rlock);
.....[     299]: }
.....[     301]: static inline __attribute__((no_instrument_function)) int spin_trylock(spinlock_t *lock)
.....[     302]: {
.....[     303]: return (_raw_spin_trylock(&lock->rlock));
.....[     304]: }
.....[     316]: static inline __attribute__((no_instrument_function)) void spin_lock_irq(spinlock_t *lock)
.....[     317]: {
.....[     318]: _raw_spin_lock_irq(&lock->rlock);
.....[     319]: }
.....[     331]: static inline __attribute__((no_instrument_function)) void spin_unlock(spinlock_t *lock)
.....[     332]: {
.....[     333]: __raw_spin_unlock(&lock->rlock);
.....[     334]: }
.....[     336]: static inline __attribute__((no_instrument_function)) void spin_unlock_bh(spinlock_t *lock)
.....[     337]: {
.....[     338]: _raw_spin_unlock_bh(&lock->rlock);
.....[     339]: }
.....[     341]: static inline __attribute__((no_instrument_function)) void spin_unlock_irq(spinlock_t *lock)
.....[     342]: {
.....[     343]: __raw_spin_unlock_irq(&lock->rlock);
.....[     344]: }
.....[     346]: static inline __attribute__((no_instrument_function)) void spin_unlock_irqrestore(spinlock_t *lock, unsigned \
.....                long flags)
.....[     347]: {
.....[     348]: do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); _raw_spin_unlock_irqrestore\
.....                (&lock->rlock, flags); } while (0);
.....[     349]: }
.....[     351]: static inline __attribute__((no_instrument_function)) int spin_trylock_bh(spinlock_t *lock)
.....[     352]: {
.....[     353]: return (_raw_spin_trylock_bh(&lock->rlock));
.....[     354]: }
.....[     356]: static inline __attribute__((no_instrument_function)) int spin_trylock_irq(spinlock_t *lock)
.....[     357]: {
.....[     358]: return ({ do { arch_local_irq_disable(); do { } while (0); } while (0); (_raw_spin_trylock(&lock->rlock)) ? 1 : ({ do { \
.....                do { } while (0); arch_local_irq_enable(); } while (0); 0; }); });
.....[     359]: }
.....[     366]: static inline __attribute__((no_instrument_function)) void spin_unlock_wait(spinlock_t *lock)
.....[     367]: {
.....[     368]: arch_spin_unlock_wait(&(&lock->rlock)->raw_lock);
.....[     369]: }
.....[     371]: static inline __attribute__((no_instrument_function)) int spin_is_locked(spinlock_t *lock)
.....[     372]: {
.....[     373]: return arch_spin_is_locked(&(&lock->rlock)->raw_lock);
.....[     374]: }
.....[     376]: static inline __attribute__((no_instrument_function)) int spin_is_contended(spinlock_t *lock)
.....[     377]: {
.....[     378]: return arch_spin_is_contended(&(&lock->rlock)->raw_lock);
.....[     379]: }
.....[     381]: static inline __attribute__((no_instrument_function)) int spin_can_lock(spinlock_t *lock)
.....[     382]: {
.....[     383]: return (!arch_spin_is_locked(&(&lock->rlock)->raw_lock));
.....[     384]: }
.....[     401]: extern int _atomic_dec_and_lock(atomic_t *atomic, spinlock_t *lock);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/spinlock.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/wait.h
....[      12]: typedef struct __wait_queue wait_queue_t;
....[      13]: typedef int (*wait_queue_func_t)(wait_queue_t *wait, unsigned mode, int flags, void *key);
....[      14]: int default_wake_function(wait_queue_t *wait, unsigned mode, int flags, void *key);
....[      16]: struct __wait_queue {
....[      17]: unsigned int flags;
....[      19]: void *private;
....[      20]: wait_queue_func_t func;
....[      21]: struct list_head task_list;
....[      22]: };
....[      24]: struct wait_bit_key {
....[      25]: void *flags;
....[      26]: int bit_nr;
....[      28]: };
....[      30]: struct wait_bit_queue {
....[      31]: struct wait_bit_key key;
....[      32]: wait_queue_t wait;
....[      33]: };
....[      35]: struct __wait_queue_head {
....[      36]: spinlock_t lock;
....[      37]: struct list_head task_list;
....[      38]: };
....[      39]: typedef struct __wait_queue_head wait_queue_head_t;
....[      41]: struct task_struct;
....[      68]: extern void __init_waitqueue_head(wait_queue_head_t *q, const char *name, struct lock_class_key *);
....[      86]: static inline __attribute__((no_instrument_function)) void init_waitqueue_entry(wait_queue_t *q, struct task_struct \
....                *p)
....[      87]: {
....[      88]: q->flags = 0;
....[      89]: q->private = p;
....[      90]: q->func = default_wake_function;
....[      91]: }
....[      93]: static inline __attribute__((no_instrument_function)) void
....[      94]: init_waitqueue_func_entry(wait_queue_t *q, wait_queue_func_t func)
....[      95]: {
....[      96]: q->flags = 0;
....[      97]: q->private = ((void *)0);
....[      98]: q->func = func;
....[      99]: }
....[     101]: static inline __attribute__((no_instrument_function)) int waitqueue_active(wait_queue_head_t *q)
....[     102]: {
....[     103]: return !list_empty(&q->task_list);
....[     104]: }
....[     106]: extern void add_wait_queue(wait_queue_head_t *q, wait_queue_t *wait);
....[     107]: extern void add_wait_queue_exclusive(wait_queue_head_t *q, wait_queue_t *wait);
....[     108]: extern void remove_wait_queue(wait_queue_head_t *q, wait_queue_t *wait);
....[     110]: static inline __attribute__((no_instrument_function)) void __add_wait_queue(wait_queue_head_t *head, wait_queue_t \
....                *new)
....[     111]: {
....[     112]: list_add(&new->task_list, &head->task_list);
....[     113]: }
....[     118]: static inline __attribute__((no_instrument_function)) void
....[     119]: __add_wait_queue_exclusive(wait_queue_head_t *q, wait_queue_t *wait)
....[     120]: {
....[     121]: wait->flags |= 0x01;
....[     122]: __add_wait_queue(q, wait);
....[     123]: }
....[     125]: static inline __attribute__((no_instrument_function)) void __add_wait_queue_tail(wait_queue_head_t *head,
....[     126]: wait_queue_t *new)
....[     127]: {
....[     128]: list_add_tail(&new->task_list, &head->task_list);
....[     129]: }
....[     131]: static inline __attribute__((no_instrument_function)) void
....[     132]: __add_wait_queue_tail_exclusive(wait_queue_head_t *q, wait_queue_t *wait)
....[     133]: {
....[     134]: wait->flags |= 0x01;
....[     135]: __add_wait_queue_tail(q, wait);
....[     136]: }
....[     138]: static inline __attribute__((no_instrument_function)) void
....[     139]: __remove_wait_queue(wait_queue_head_t *head, wait_queue_t *old)
....[     140]: {
....[     141]: list_del(&old->task_list);
....[     142]: }
....[     144]: void __wake_up(wait_queue_head_t *q, unsigned int mode, int nr, void *key);
....[     145]: void __wake_up_locked_key(wait_queue_head_t *q, unsigned int mode, void *key);
....[     146]: void __wake_up_sync_key(wait_queue_head_t *q, unsigned int mode, int nr, void *key);
....[     147]: void __wake_up_locked(wait_queue_head_t *q, unsigned int mode, int nr);
....[     148]: void __wake_up_sync(wait_queue_head_t *q, unsigned int mode, int nr);
....[     149]: void __wake_up_bit(wait_queue_head_t *, void *, int);
....[     150]: int __wait_on_bit(wait_queue_head_t *, struct wait_bit_queue *, int (*)(void *), unsigned);
....[     151]: int __wait_on_bit_lock(wait_queue_head_t *, struct wait_bit_queue *, int (*)(void *), unsigned);
....[     152]: void wake_up_bit(void *, int);
....[     153]: void wake_up_atomic_t(atomic_t *);
....[     154]: int out_of_line_wait_on_bit(void *, int, int (*)(void *), unsigned);
....[     155]: int out_of_line_wait_on_bit_lock(void *, int, int (*)(void *), unsigned);
....[     156]: int out_of_line_wait_on_atomic_t(atomic_t *, int (*)(atomic_t *), unsigned);
....[     157]: wait_queue_head_t *bit_waitqueue(void *, int);
....[     812]: extern void sleep_on(wait_queue_head_t *q);
....[     813]: extern long sleep_on_timeout(wait_queue_head_t *q, signed long timeout);
....[     814]: extern void interruptible_sleep_on(wait_queue_head_t *q);
....[     815]: extern long interruptible_sleep_on_timeout(wait_queue_head_t *q, signed long timeout);
....[     820]: void prepare_to_wait(wait_queue_head_t *q, wait_queue_t *wait, int state);
....[     821]: void prepare_to_wait_exclusive(wait_queue_head_t *q, wait_queue_t *wait, int state);
....[     822]: long prepare_to_wait_event(wait_queue_head_t *q, wait_queue_t *wait, int state);
....[     823]: void finish_wait(wait_queue_head_t *q, wait_queue_t *wait);
....[     824]: void abort_exclusive_wait(wait_queue_head_t *q, wait_queue_t *wait, unsigned int mode, void *key);
....[     825]: int autoremove_wake_function(wait_queue_t *wait, unsigned mode, int sync, void *key);
....[     826]: int wake_bit_function(wait_queue_t *wait, unsigned mode, int sync, void *key);
....[     870]: static inline __attribute__((no_instrument_function)) int
....[     871]: wait_on_bit(void *word, int bit, int (*action)(void *), unsigned mode)
....[     872]: {
....[     873]: if (!(__builtin_constant_p((bit)) ? constant_test_bit((bit), (word)) : variable_test_bit((bit), (word))))
....[     874]: return 0;
....[     875]: return out_of_line_wait_on_bit(word, bit, action, mode);
....[     876]: }
....[     894]: static inline __attribute__((no_instrument_function)) int
....[     895]: wait_on_bit_lock(void *word, int bit, int (*action)(void *), unsigned mode)
....[     896]: {
....[     897]: if (!test_and_set_bit(bit, word))
....[     898]: return 0;
....[     899]: return out_of_line_wait_on_bit_lock(word, bit, action, mode);
....[     900]: }
....[     912]: static inline __attribute__((no_instrument_function))
....[     913]: int wait_on_atomic_t(atomic_t *val, int (*action)(atomic_t *), unsigned mode)
....[     914]: {
....[     915]: if (atomic_read(val) == 0)
....[     916]: return 0;
....[     917]: return out_of_line_wait_on_atomic_t(val, action, mode);
....[     918]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/wait.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kdev_t.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kdev_t.h
....[      23]: static inline __attribute__((no_instrument_function)) int old_valid_dev(dev_t dev)
....[      24]: {
....[      25]: return ((unsigned int) ((dev) >> 20)) < 256 && ((unsigned int) ((dev) & ((1U << 20) - 1))) < 256;
....[      26]: }
....[      28]: static inline __attribute__((no_instrument_function)) u16 old_encode_dev(dev_t dev)
....[      29]: {
....[      30]: return (((unsigned int) ((dev) >> 20)) << 8) | ((unsigned int) ((dev) & ((1U << 20) - 1)));
....[      31]: }
....[      33]: static inline __attribute__((no_instrument_function)) dev_t old_decode_dev(u16 val)
....[      34]: {
....[      35]: return ((((val >> 8) & 255) << 20) | (val & 255));
....[      36]: }
....[      38]: static inline __attribute__((no_instrument_function)) int new_valid_dev(dev_t dev)
....[      39]: {
....[      40]: return 1;
....[      41]: }
....[      43]: static inline __attribute__((no_instrument_function)) u32 new_encode_dev(dev_t dev)
....[      44]: {
....[      45]: unsigned major = ((unsigned int) ((dev) >> 20));
....[      46]: unsigned minor = ((unsigned int) ((dev) & ((1U << 20) - 1)));
....[      47]: return (minor & 0xff) | (major << 8) | ((minor & ~0xff) << 12);
....[      48]: }
....[      50]: static inline __attribute__((no_instrument_function)) dev_t new_decode_dev(u32 dev)
....[      51]: {
....[      52]: unsigned major = (dev & 0xfff00) >> 8;
....[      53]: unsigned minor = (dev & 0xff) | ((dev >> 12) & 0xfff00);
....[      54]: return (((major) << 20) | (minor));
....[      55]: }
....[      57]: static inline __attribute__((no_instrument_function)) int huge_valid_dev(dev_t dev)
....[      58]: {
....[      59]: return 1;
....[      60]: }
....[      62]: static inline __attribute__((no_instrument_function)) u64 huge_encode_dev(dev_t dev)
....[      63]: {
....[      64]: return new_encode_dev(dev);
....[      65]: }
....[      67]: static inline __attribute__((no_instrument_function)) dev_t huge_decode_dev(u64 dev)
....[      68]: {
....[      69]: return new_decode_dev(dev);
....[      70]: }
....[      72]: static inline __attribute__((no_instrument_function)) int sysv_valid_dev(dev_t dev)
....[      73]: {
....[      74]: return ((unsigned int) ((dev) >> 20)) < (1<<14) && ((unsigned int) ((dev) & ((1U << 20) - 1))) < (1<<18);
....[      75]: }
....[      77]: static inline __attribute__((no_instrument_function)) u32 sysv_encode_dev(dev_t dev)
....[      78]: {
....[      79]: return ((unsigned int) ((dev) & ((1U << 20) - 1))) | (((unsigned int) ((dev) >> 20)) << 18);
....[      80]: }
....[      82]: static inline __attribute__((no_instrument_function)) unsigned sysv_major(u32 dev)
....[      83]: {
....[      84]: return (dev >> 18) & 0x3fff;
....[      85]: }
....[      87]: static inline __attribute__((no_instrument_function)) unsigned sysv_minor(u32 dev)
....[      88]: {
....[      89]: return dev & 0x3ffff;
....[      90]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kdev_t.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dcache.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dcache.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/seqlock.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/seqlock.h
.......[      46]: typedef struct seqcount {
.......[      47]: unsigned sequence;
.......[      51]: } seqcount_t;
.......[      53]: static inline __attribute__((no_instrument_function)) void __seqcount_init(seqcount_t *s, const char *name,
.......[      54]: struct lock_class_key *key)
.......[      55]: {
.......[      59]: do { (void)(name); (void)(key); } while (0);
.......[      60]: s->sequence = 0;
.......[      61]: }
.......[     106]: static inline __attribute__((no_instrument_function)) unsigned __read_seqcount_begin(const seqcount_t *s)
.......[     107]: {
.......[     108]: unsigned ret;
.......[     110]: repeat:
.......[     111]: ret = (*(volatile typeof(s->sequence) *)&(s->sequence));
.......[     112]: if (__builtin_expect(!!(ret & 1), 0)) {
.......[     113]: cpu_relax();
.......[     114]: goto repeat;
.......[     115]: }
.......[     116]: return ret;
.......[     117]: }
.......[     128]: static inline __attribute__((no_instrument_function)) unsigned raw_read_seqcount_begin(const seqcount_t *s\
.......                )
.......[     129]: {
.......[     130]: unsigned ret = __read_seqcount_begin(s);
.......[     131]: __asm__ __volatile__("": : :"memory");
.......[     132]: return ret;
.......[     133]: }
.......[     144]: static inline __attribute__((no_instrument_function)) unsigned read_seqcount_begin(const seqcount_t *s)
.......[     145]: {
.......[     146]: ;
.......[     147]: return raw_read_seqcount_begin(s);
.......[     148]: }
.......[     164]: static inline __attribute__((no_instrument_function)) unsigned raw_seqcount_begin(const seqcount_t *s)
.......[     165]: {
.......[     166]: unsigned ret = (*(volatile typeof(s->sequence) *)&(s->sequence));
.......[     168]: ;
.......[     169]: __asm__ __volatile__("": : :"memory");
.......[     170]: return ret & ~1;
.......[     171]: }
.......[     187]: static inline __attribute__((no_instrument_function)) int __read_seqcount_retry(const seqcount_t *s, unsigned \
.......                start)
.......[     188]: {
.......[     189]: return __builtin_expect(!!(s->sequence != start), 0);
.......[     190]: }
.......[     202]: static inline __attribute__((no_instrument_function)) int read_seqcount_retry(const seqcount_t *s, unsigned \
.......                start)
.......[     203]: {
.......[     204]: __asm__ __volatile__("": : :"memory");
.......[     205]: return __read_seqcount_retry(s, start);
.......[     206]: }
.......[     210]: static inline __attribute__((no_instrument_function)) void raw_write_seqcount_begin(seqcount_t *s)
.......[     211]: {
.......[     212]: s->sequence++;
.......[     213]: __asm__ __volatile__("": : :"memory");
.......[     214]: }
.......[     216]: static inline __attribute__((no_instrument_function)) void raw_write_seqcount_end(seqcount_t *s)
.......[     217]: {
.......[     218]: __asm__ __volatile__("": : :"memory");
.......[     219]: s->sequence++;
.......[     220]: }
.......[     226]: static inline __attribute__((no_instrument_function)) void write_seqcount_begin_nested(seqcount_t *s, int subclass\
.......                )
.......[     227]: {
.......[     228]: raw_write_seqcount_begin(s);
.......[     229]: do { } while (0);
.......[     230]: }
.......[     232]: static inline __attribute__((no_instrument_function)) void write_seqcount_begin(seqcount_t *s)
.......[     233]: {
.......[     234]: write_seqcount_begin_nested(s, 0);
.......[     235]: }
.......[     237]: static inline __attribute__((no_instrument_function)) void write_seqcount_end(seqcount_t *s)
.......[     238]: {
.......[     239]: do { } while (0);
.......[     240]: raw_write_seqcount_end(s);
.......[     241]: }
.......[     250]: static inline __attribute__((no_instrument_function)) void write_seqcount_barrier(seqcount_t *s)
.......[     251]: {
.......[     252]: __asm__ __volatile__("": : :"memory");
.......[     253]: s->sequence+=2;
.......[     254]: }
.......[     256]: typedef struct {
.......[     257]: struct seqcount seqcount;
.......[     258]: spinlock_t lock;
.......[     259]: } seqlock_t;
.......[     283]: static inline __attribute__((no_instrument_function)) unsigned read_seqbegin(const seqlock_t *sl)
.......[     284]: {
.......[     285]: return read_seqcount_begin(&sl->seqcount);
.......[     286]: }
.......[     288]: static inline __attribute__((no_instrument_function)) unsigned read_seqretry(const seqlock_t *sl, unsigned start\
.......                )
.......[     289]: {
.......[     290]: return read_seqcount_retry(&sl->seqcount, start);
.......[     291]: }
.......[     298]: static inline __attribute__((no_instrument_function)) void write_seqlock(seqlock_t *sl)
.......[     299]: {
.......[     300]: spin_lock(&sl->lock);
.......[     301]: write_seqcount_begin(&sl->seqcount);
.......[     302]: }
.......[     304]: static inline __attribute__((no_instrument_function)) void write_sequnlock(seqlock_t *sl)
.......[     305]: {
.......[     306]: write_seqcount_end(&sl->seqcount);
.......[     307]: spin_unlock(&sl->lock);
.......[     308]: }
.......[     310]: static inline __attribute__((no_instrument_function)) void write_seqlock_bh(seqlock_t *sl)
.......[     311]: {
.......[     312]: spin_lock_bh(&sl->lock);
.......[     313]: write_seqcount_begin(&sl->seqcount);
.......[     314]: }
.......[     316]: static inline __attribute__((no_instrument_function)) void write_sequnlock_bh(seqlock_t *sl)
.......[     317]: {
.......[     318]: write_seqcount_end(&sl->seqcount);
.......[     319]: spin_unlock_bh(&sl->lock);
.......[     320]: }
.......[     322]: static inline __attribute__((no_instrument_function)) void write_seqlock_irq(seqlock_t *sl)
.......[     323]: {
.......[     324]: spin_lock_irq(&sl->lock);
.......[     325]: write_seqcount_begin(&sl->seqcount);
.......[     326]: }
.......[     328]: static inline __attribute__((no_instrument_function)) void write_sequnlock_irq(seqlock_t *sl)
.......[     329]: {
.......[     330]: write_seqcount_end(&sl->seqcount);
.......[     331]: spin_unlock_irq(&sl->lock);
.......[     332]: }
.......[     334]: static inline __attribute__((no_instrument_function)) unsigned long __write_seqlock_irqsave(seqlock_t *sl)
.......[     335]: {
.......[     336]: unsigned long flags;
.......[     338]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = _raw_spin_lock_irqsave\
.......                (spinlock_check(&sl->lock)); } while (0); } while (0);
.......[     339]: write_seqcount_begin(&sl->seqcount);
.......[     340]: return flags;
.......[     341]: }
.......[     346]: static inline __attribute__((no_instrument_function)) void
.......[     347]: write_sequnlock_irqrestore(seqlock_t *sl, unsigned long flags)
.......[     348]: {
.......[     349]: write_seqcount_end(&sl->seqcount);
.......[     350]: spin_unlock_irqrestore(&sl->lock, flags);
.......[     351]: }
.......[     358]: static inline __attribute__((no_instrument_function)) void read_seqlock_excl(seqlock_t *sl)
.......[     359]: {
.......[     360]: spin_lock(&sl->lock);
.......[     361]: }
.......[     363]: static inline __attribute__((no_instrument_function)) void read_sequnlock_excl(seqlock_t *sl)
.......[     364]: {
.......[     365]: spin_unlock(&sl->lock);
.......[     366]: }
.......[     378]: static inline __attribute__((no_instrument_function)) void read_seqbegin_or_lock(seqlock_t *lock, int *seq)
.......[     379]: {
.......[     380]: if (!(*seq & 1))
.......[     381]: *seq = read_seqbegin(lock);
.......[     382]: else
.......[     383]: read_seqlock_excl(lock);
.......[     384]: }
.......[     386]: static inline __attribute__((no_instrument_function)) int need_seqretry(seqlock_t *lock, int seq)
.......[     387]: {
.......[     388]: return !(seq & 1) && read_seqretry(lock, seq);
.......[     389]: }
.......[     391]: static inline __attribute__((no_instrument_function)) void done_seqretry(seqlock_t *lock, int seq)
.......[     392]: {
.......[     393]: if (seq & 1)
.......[     394]: read_sequnlock_excl(lock);
.......[     395]: }
.......[     397]: static inline __attribute__((no_instrument_function)) void read_seqlock_excl_bh(seqlock_t *sl)
.......[     398]: {
.......[     399]: spin_lock_bh(&sl->lock);
.......[     400]: }
.......[     402]: static inline __attribute__((no_instrument_function)) void read_sequnlock_excl_bh(seqlock_t *sl)
.......[     403]: {
.......[     404]: spin_unlock_bh(&sl->lock);
.......[     405]: }
.......[     407]: static inline __attribute__((no_instrument_function)) void read_seqlock_excl_irq(seqlock_t *sl)
.......[     408]: {
.......[     409]: spin_lock_irq(&sl->lock);
.......[     410]: }
.......[     412]: static inline __attribute__((no_instrument_function)) void read_sequnlock_excl_irq(seqlock_t *sl)
.......[     413]: {
.......[     414]: spin_unlock_irq(&sl->lock);
.......[     415]: }
.......[     417]: static inline __attribute__((no_instrument_function)) unsigned long __read_seqlock_excl_irqsave(seqlock_t \
.......                *sl)
.......[     418]: {
.......[     419]: unsigned long flags;
.......[     421]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = _raw_spin_lock_irqsave\
.......                (spinlock_check(&sl->lock)); } while (0); } while (0);
.......[     422]: return flags;
.......[     423]: }
.......[     428]: static inline __attribute__((no_instrument_function)) void
.......[     429]: read_sequnlock_excl_irqrestore(seqlock_t *sl, unsigned long flags)
.......[     430]: {
.......[     431]: spin_unlock_irqrestore(&sl->lock, flags);
.......[     432]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/seqlock.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/completion.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/completion.h
.......[      25]: struct completion {
.......[      26]: unsigned int done;
.......[      27]: wait_queue_head_t wait;
.......[      28]: };
.......[      73]: static inline __attribute__((no_instrument_function)) void init_completion(struct completion *x)
.......[      74]: {
.......[      75]: x->done = 0;
.......[      76]: do { static struct lock_class_key __key; __init_waitqueue_head((&x->wait), "&x->wait", &__key); } while (0);
.......[      77]: }
.......[      86]: static inline __attribute__((no_instrument_function)) void reinit_completion(struct completion *x)
.......[      87]: {
.......[      88]: x->done = 0;
.......[      89]: }
.......[      91]: extern void wait_for_completion(struct completion *);
.......[      92]: extern void wait_for_completion_io(struct completion *);
.......[      93]: extern int wait_for_completion_interruptible(struct completion *x);
.......[      94]: extern int wait_for_completion_killable(struct completion *x);
.......[      95]: extern unsigned long wait_for_completion_timeout(struct completion *x,
.......[      96]: unsigned long timeout);
.......[      97]: extern unsigned long wait_for_completion_io_timeout(struct completion *x,
.......[      98]: unsigned long timeout);
.......[      99]: extern long wait_for_completion_interruptible_timeout(
.......[     100]: struct completion *x, unsigned long timeout);
.......[     101]: extern long wait_for_completion_killable_timeout(
.......[     102]: struct completion *x, unsigned long timeout);
.......[     103]: extern bool try_wait_for_completion(struct completion *x);
.......[     104]: extern bool completion_done(struct completion *x);
.......[     106]: extern void complete(struct completion *);
.......[     107]: extern void complete_all(struct completion *);
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/completion.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/debugobjects.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/debugobjects.h
.......[       7]: enum debug_obj_state {
.......[       8]: ODEBUG_STATE_NONE,
.......[       9]: ODEBUG_STATE_INIT,
.......[      10]: ODEBUG_STATE_INACTIVE,
.......[      11]: ODEBUG_STATE_ACTIVE,
.......[      12]: ODEBUG_STATE_DESTROYED,
.......[      13]: ODEBUG_STATE_NOTAVAILABLE,
.......[      14]: ODEBUG_STATE_MAX,
.......[      15]: };
.......[      17]: struct debug_obj_descr;
.......[      27]: struct debug_obj {
.......[      28]: struct hlist_node node;
.......[      29]: enum debug_obj_state state;
.......[      30]: unsigned int astate;
.......[      31]: void *object;
.......[      32]: struct debug_obj_descr *descr;
.......[      33]: };
.......[      52]: struct debug_obj_descr {
.......[      53]: const char *name;
.......[      54]: void *(*debug_hint) (void *addr);
.......[      55]: int (*fixup_init) (void *addr, enum debug_obj_state state);
.......[      56]: int (*fixup_activate) (void *addr, enum debug_obj_state state);
.......[      57]: int (*fixup_destroy) (void *addr, enum debug_obj_state state);
.......[      58]: int (*fixup_free) (void *addr, enum debug_obj_state state);
.......[      59]: int (*fixup_assert_init)(void *addr, enum debug_obj_state state);
.......[      60]: };
.......[      84]: static inline __attribute__((no_instrument_function)) void
.......[      85]: debug_object_init (void *addr, struct debug_obj_descr *descr) { }
.......[      86]: static inline __attribute__((no_instrument_function)) void
.......[      87]: debug_object_init_on_stack(void *addr, struct debug_obj_descr *descr) { }
.......[      88]: static inline __attribute__((no_instrument_function)) int
.......[      89]: debug_object_activate (void *addr, struct debug_obj_descr *descr) { return 0; }
.......[      90]: static inline __attribute__((no_instrument_function)) void
.......[      91]: debug_object_deactivate(void *addr, struct debug_obj_descr *descr) { }
.......[      92]: static inline __attribute__((no_instrument_function)) void
.......[      93]: debug_object_destroy (void *addr, struct debug_obj_descr *descr) { }
.......[      94]: static inline __attribute__((no_instrument_function)) void
.......[      95]: debug_object_free (void *addr, struct debug_obj_descr *descr) { }
.......[      96]: static inline __attribute__((no_instrument_function)) void
.......[      97]: debug_object_assert_init(void *addr, struct debug_obj_descr *descr) { }
.......[      99]: static inline __attribute__((no_instrument_function)) void debug_objects_early_init(void) { }
.......[     100]: static inline __attribute__((no_instrument_function)) void debug_objects_mem_init(void) { }
.......[     106]: static inline __attribute__((no_instrument_function)) void
.......[     107]: debug_check_no_obj_freed(const void *address, unsigned long size) { }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/debugobjects.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
......[      53]: extern void rcutorture_record_test_transition(void);
......[      54]: extern void rcutorture_record_progress(unsigned long vernum);
......[      55]: extern void do_trace_rcu_torture_read(const char *rcutorturename,
......[      56]: struct callback_head *rhp,
......[      57]: unsigned long secs,
......[      58]: unsigned long c_old,
......[      59]: unsigned long c);
......[     152]: extern void call_rcu_bh(struct callback_head *head,
......[     153]: void (*func)(struct callback_head *head));
......[     174]: extern void call_rcu_sched(struct callback_head *head,
......[     175]: void (*func)(struct callback_head *rcu));
......[     177]: extern void synchronize_sched(void);
......[     196]: static inline __attribute__((no_instrument_function)) void __rcu_read_lock(void)
......[     197]: {
......[     198]: __asm__ __volatile__("": : :"memory");
......[     199]: }
......[     201]: static inline __attribute__((no_instrument_function)) void __rcu_read_unlock(void)
......[     202]: {
......[     203]: __asm__ __volatile__("": : :"memory");
......[     204]: }
......[     206]: static inline __attribute__((no_instrument_function)) void synchronize_rcu(void)
......[     207]: {
......[     208]: synchronize_sched();
......[     209]: }
......[     211]: static inline __attribute__((no_instrument_function)) int rcu_preempt_depth(void)
......[     212]: {
......[     213]: return 0;
......[     214]: }
......[     219]: extern void rcu_init(void);
......[     220]: extern void rcu_sched_qs(int cpu);
......[     221]: extern void rcu_bh_qs(int cpu);
......[     222]: extern void rcu_check_callbacks(int cpu, int user);
......[     223]: struct notifier_block;
......[     224]: extern void rcu_idle_enter(void);
......[     225]: extern void rcu_idle_exit(void);
......[     226]: extern void rcu_irq_enter(void);
......[     227]: extern void rcu_irq_exit(void);
......[     233]: static inline __attribute__((no_instrument_function)) void rcu_user_enter(void) { }
......[     234]: static inline __attribute__((no_instrument_function)) void rcu_user_exit(void) { }
......[     235]: static inline __attribute__((no_instrument_function)) void rcu_user_hooks_switch(struct task_struct *prev,
......[     236]: struct task_struct *next) { }
......[     265]: extern bool __rcu_is_watching(void);
......[     273]: typedef void call_rcu_func_t(struct callback_head *head,
......[     274]: void (*func)(struct callback_head *head));
......[     275]: void wait_rcu_gp(call_rcu_func_t crf);
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcutree.h
.......[      33]: extern void rcu_note_context_switch(int cpu);
.......[      34]: extern int rcu_needs_cpu(int cpu, unsigned long *delta_jiffies);
.......[      35]: extern void rcu_cpu_stall_reset(void);
.......[      42]: static inline __attribute__((no_instrument_function)) void rcu_virt_note_context_switch(int cpu)
.......[      43]: {
.......[      44]: rcu_note_context_switch(cpu);
.......[      45]: }
.......[      47]: extern void synchronize_rcu_bh(void);
.......[      48]: extern void synchronize_sched_expedited(void);
.......[      49]: extern void synchronize_rcu_expedited(void);
.......[      51]: void kfree_call_rcu(struct callback_head *head, void (*func)(struct callback_head *rcu));
.......[      69]: static inline __attribute__((no_instrument_function)) void synchronize_rcu_bh_expedited(void)
.......[      70]: {
.......[      71]: synchronize_sched_expedited();
.......[      72]: }
.......[      74]: extern void rcu_barrier(void);
.......[      75]: extern void rcu_barrier_bh(void);
.......[      76]: extern void rcu_barrier_sched(void);
.......[      78]: extern unsigned long rcutorture_testseq;
.......[      79]: extern unsigned long rcutorture_vernum;
.......[      80]: extern long rcu_batches_completed(void);
.......[      81]: extern long rcu_batches_completed_bh(void);
.......[      82]: extern long rcu_batches_completed_sched(void);
.......[      84]: extern void rcu_force_quiescent_state(void);
.......[      85]: extern void rcu_bh_force_quiescent_state(void);
.......[      86]: extern void rcu_sched_force_quiescent_state(void);
.......[      88]: extern void exit_rcu(void);
.......[      90]: extern void rcu_scheduler_starting(void);
.......[      91]: extern int rcu_scheduler_active __attribute__((__section__(".data..read_mostly")));
.......[      93]: extern bool rcu_is_watching(void);
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcutree.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
......[     295]: static inline __attribute__((no_instrument_function)) void init_rcu_head_on_stack(struct callback_head *head\
......                )
......[     296]: {
......[     297]: }
......[     299]: static inline __attribute__((no_instrument_function)) void destroy_rcu_head_on_stack(struct callback_head \
......                *head)
......[     300]: {
......[     301]: }
......[     307]: static inline __attribute__((no_instrument_function)) bool rcu_lockdep_current_cpu_online(void)
......[     308]: {
......[     309]: return 1;
......[     310]: }
......[     425]: static inline __attribute__((no_instrument_function)) int rcu_read_lock_held(void)
......[     426]: {
......[     427]: return 1;
......[     428]: }
......[     430]: static inline __attribute__((no_instrument_function)) int rcu_read_lock_bh_held(void)
......[     431]: {
......[     432]: return 1;
......[     433]: }
......[     441]: static inline __attribute__((no_instrument_function)) int rcu_read_lock_sched_held(void)
......[     442]: {
......[     443]: return 1;
......[     444]: }
......[     769]: static inline __attribute__((no_instrument_function)) void rcu_read_lock(void)
......[     770]: {
......[     771]: __rcu_read_lock();
......[     772]: (void)0;
......[     773]: do { } while (0);
......[     775]: do { } while (0);
......[     776]: }
......[     793]: static inline __attribute__((no_instrument_function)) void rcu_read_unlock(void)
......[     794]: {
......[     796]: do { } while (0);
......[     797]: do { } while (0);
......[     798]: (void)0;
......[     799]: __rcu_read_unlock();
......[     800]: }
......[     819]: static inline __attribute__((no_instrument_function)) void rcu_read_lock_bh(void)
......[     820]: {
......[     821]: local_bh_disable();
......[     822]: (void)0;
......[     823]: do { } while (0);
......[     825]: do { } while (0);
......[     826]: }
......[     833]: static inline __attribute__((no_instrument_function)) void rcu_read_unlock_bh(void)
......[     834]: {
......[     836]: do { } while (0);
......[     837]: do { } while (0);
......[     838]: (void)0;
......[     839]: local_bh_enable();
......[     840]: }
......[     855]: static inline __attribute__((no_instrument_function)) void rcu_read_lock_sched(void)
......[     856]: {
......[     857]: __asm__ __volatile__("": : :"memory");
......[     858]: (void)0;
......[     859]: do { } while (0);
......[     861]: do { } while (0);
......[     862]: }
......[     865]: static inline __attribute__((no_instrument_function)) __attribute__((no_instrument_function)) void rcu_read_lock_sched_notrace\
......                (void)
......[     866]: {
......[     867]: __asm__ __volatile__("": : :"memory");
......[     868]: (void)0;
......[     869]: }
......[     876]: static inline __attribute__((no_instrument_function)) void rcu_read_unlock_sched(void)
......[     877]: {
......[     879]: do { } while (0);
......[     880]: do { } while (0);
......[     881]: (void)0;
......[     882]: __asm__ __volatile__("": : :"memory");
......[     883]: }
......[     886]: static inline __attribute__((no_instrument_function)) __attribute__((no_instrument_function)) void rcu_read_unlock_sched_notrace\
......                (void)
......[     887]: {
......[     888]: (void)0;
......[     889]: __asm__ __volatile__("": : :"memory");
......[     890]: }
......[    1010]: static inline __attribute__((no_instrument_function)) bool rcu_is_nocb_cpu(int cpu) { return false; }
......[    1020]: static inline __attribute__((no_instrument_function)) bool rcu_sys_is_idle(void)
......[    1021]: {
......[    1022]: return false;
......[    1023]: }
......[    1025]: static inline __attribute__((no_instrument_function)) void rcu_sysidle_force_exit(void)
......[    1026]: {
......[    1027]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rcupdate.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist.h
.....[      30]: static inline __attribute__((no_instrument_function)) void INIT_LIST_HEAD_RCU(struct list_head *list)
.....[      31]: {
.....[      32]: (*(volatile typeof(list->next) *)&(list->next)) = list;
.....[      33]: (*(volatile typeof(list->prev) *)&(list->prev)) = list;
.....[      34]: }
.....[      49]: static inline __attribute__((no_instrument_function)) void __list_add_rcu(struct list_head *new,
.....[      50]: struct list_head *prev, struct list_head *next)
.....[      51]: {
.....[      52]: new->next = next;
.....[      53]: new->prev = prev;
.....[      54]: do { __asm__ __volatile__("": : :"memory"); (((*((struct list_head **)(&(prev)->next))))) = (typeof(*(new)) *)(\
.....                (new)); } while (0);
.....[      55]: next->prev = new;
.....[      56]: }
.....[      78]: static inline __attribute__((no_instrument_function)) void list_add_rcu(struct list_head *new, struct list_head \
.....                *head)
.....[      79]: {
.....[      80]: __list_add_rcu(new, head, head->next);
.....[      81]: }
.....[      99]: static inline __attribute__((no_instrument_function)) void list_add_tail_rcu(struct list_head *new,
.....[     100]: struct list_head *head)
.....[     101]: {
.....[     102]: __list_add_rcu(new, head->prev, head);
.....[     103]: }
.....[     129]: static inline __attribute__((no_instrument_function)) void list_del_rcu(struct list_head *entry)
.....[     130]: {
.....[     131]: __list_del_entry(entry);
.....[     132]: entry->prev = ((void *) 0x00200200 + (0xdead000000000000UL));
.....[     133]: }
.....[     155]: static inline __attribute__((no_instrument_function)) void hlist_del_init_rcu(struct hlist_node *n)
.....[     156]: {
.....[     157]: if (!hlist_unhashed(n)) {
.....[     158]: __hlist_del(n);
.....[     159]: n->pprev = ((void *)0);
.....[     160]: }
.....[     161]: }
.....[     171]: static inline __attribute__((no_instrument_function)) void list_replace_rcu(struct list_head *old,
.....[     172]: struct list_head *new)
.....[     173]: {
.....[     174]: new->next = old->next;
.....[     175]: new->prev = old->prev;
.....[     176]: do { __asm__ __volatile__("": : :"memory"); (((*((struct list_head **)(&(new->prev)->next))))) = (typeof(*(new\
.....                )) *)((new)); } while (0);
.....[     177]: new->next->prev = new;
.....[     178]: old->prev = ((void *) 0x00200200 + (0xdead000000000000UL));
.....[     179]: }
.....[     198]: static inline __attribute__((no_instrument_function)) void list_splice_init_rcu(struct list_head *list,
.....[     199]: struct list_head *head,
.....[     200]: void (*sync)(void))
.....[     201]: {
.....[     202]: struct list_head *first = list->next;
.....[     203]: struct list_head *last = list->prev;
.....[     204]: struct list_head *at = head->next;
.....[     206]: if (list_empty(list))
.....[     207]: return;
.....[     215]: INIT_LIST_HEAD_RCU(list);
.....[     224]: sync();
.....[     234]: last->next = at;
.....[     235]: do { __asm__ __volatile__("": : :"memory"); (((*((struct list_head **)(&(head)->next))))) = (typeof(*(first)) *\
.....                )((first)); } while (0);
.....[     236]: first->prev = head;
.....[     237]: at->prev = last;
.....[     238]: }
.....[     342]: static inline __attribute__((no_instrument_function)) void hlist_del_rcu(struct hlist_node *n)
.....[     343]: {
.....[     344]: __hlist_del(n);
.....[     345]: n->pprev = ((void *) 0x00200200 + (0xdead000000000000UL));
.....[     346]: }
.....[     355]: static inline __attribute__((no_instrument_function)) void hlist_replace_rcu(struct hlist_node *old,
.....[     356]: struct hlist_node *new)
.....[     357]: {
.....[     358]: struct hlist_node *next = old->next;
.....[     360]: new->next = next;
.....[     361]: new->pprev = old->pprev;
.....[     362]: do { __asm__ __volatile__("": : :"memory"); ((*(struct hlist_node **)new->pprev)) = (typeof(*(new)) *)((new)); } \
.....                while (0);
.....[     363]: if (next)
.....[     364]: new->next->pprev = &new->next;
.....[     365]: old->pprev = ((void *) 0x00200200 + (0xdead000000000000UL));
.....[     366]: }
.....[     394]: static inline __attribute__((no_instrument_function)) void hlist_add_head_rcu(struct hlist_node *n,
.....[     395]: struct hlist_head *h)
.....[     396]: {
.....[     397]: struct hlist_node *first = h->first;
.....[     399]: n->next = first;
.....[     400]: n->pprev = &h->first;
.....[     401]: do { __asm__ __volatile__("": : :"memory"); (((*((struct hlist_node **)(&(h)->first))))) = (typeof(*(n)) *)((n)\
.....                ); } while (0);
.....[     402]: if (first)
.....[     403]: first->pprev = &n->next;
.....[     404]: }
.....[     424]: static inline __attribute__((no_instrument_function)) void hlist_add_before_rcu(struct hlist_node *n,
.....[     425]: struct hlist_node *next)
.....[     426]: {
.....[     427]: n->pprev = next->pprev;
.....[     428]: n->next = next;
.....[     429]: do { __asm__ __volatile__("": : :"memory"); (((*((struct hlist_node **)((n)->pprev))))) = (typeof(*(n)) *)((n))\
.....                ; } while (0);
.....[     430]: next->pprev = &n->next;
.....[     431]: }
.....[     451]: static inline __attribute__((no_instrument_function)) void hlist_add_after_rcu(struct hlist_node *prev,
.....[     452]: struct hlist_node *n)
.....[     453]: {
.....[     454]: n->next = prev->next;
.....[     455]: n->pprev = &prev->next;
.....[     456]: do { __asm__ __volatile__("": : :"memory"); (((*((struct hlist_node **)(&(prev)->next))))) = (typeof(*(n)) *)((\
.....                n)); } while (0);
.....[     457]: if (n->next)
.....[     458]: n->next->pprev = &n->next;
.....[     459]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dcache.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist_bl.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist_bl.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_bl.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_bl.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bit_spinlock.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bit_spinlock.h
.......[      15]: static inline __attribute__((no_instrument_function)) void bit_spin_lock(int bitnum, unsigned long *addr)
.......[      16]: {
.......[      24]: __asm__ __volatile__("": : :"memory");
.......[      26]: while (__builtin_expect(!!(test_and_set_bit_lock(bitnum, addr)), 0)) {
.......[      27]: __asm__ __volatile__("": : :"memory");
.......[      28]: do {
.......[      29]: cpu_relax();
.......[      30]: } while ((__builtin_constant_p((bitnum)) ? constant_test_bit((bitnum), (addr)) : variable_test_bit((bitnum)\
.......                , (addr))));
.......[      31]: __asm__ __volatile__("": : :"memory");
.......[      32]: }
.......[      34]: (void)0;
.......[      35]: }
.......[      40]: static inline __attribute__((no_instrument_function)) int bit_spin_trylock(int bitnum, unsigned long *addr)
.......[      41]: {
.......[      42]: __asm__ __volatile__("": : :"memory");
.......[      44]: if (__builtin_expect(!!(test_and_set_bit_lock(bitnum, addr)), 0)) {
.......[      45]: __asm__ __volatile__("": : :"memory");
.......[      46]: return 0;
.......[      47]: }
.......[      49]: (void)0;
.......[      50]: return 1;
.......[      51]: }
.......[      56]: static inline __attribute__((no_instrument_function)) void bit_spin_unlock(int bitnum, unsigned long *addr)
.......[      57]: {
.......[      62]: clear_bit_unlock(bitnum, addr);
.......[      64]: __asm__ __volatile__("": : :"memory");
.......[      65]: (void)0;
.......[      66]: }
.......[      73]: static inline __attribute__((no_instrument_function)) void __bit_spin_unlock(int bitnum, unsigned long *addr\
.......                )
.......[      74]: {
.......[      79]: __clear_bit_unlock(bitnum, addr);
.......[      81]: __asm__ __volatile__("": : :"memory");
.......[      82]: (void)0;
.......[      83]: }
.......[      88]: static inline __attribute__((no_instrument_function)) int bit_spin_is_locked(int bitnum, unsigned long *addr\
.......                )
.......[      89]: {
.......[      91]: return (__builtin_constant_p((bitnum)) ? constant_test_bit((bitnum), (addr)) : variable_test_bit((bitnum), \
.......                (addr)));
.......[      97]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/bit_spinlock.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_bl.h
......[      33]: struct hlist_bl_head {
......[      34]: struct hlist_bl_node *first;
......[      35]: };
......[      37]: struct hlist_bl_node {
......[      38]: struct hlist_bl_node *next, **pprev;
......[      39]: };
......[      43]: static inline __attribute__((no_instrument_function)) void INIT_HLIST_BL_NODE(struct hlist_bl_node *h)
......[      44]: {
......[      45]: h->next = ((void *)0);
......[      46]: h->pprev = ((void *)0);
......[      47]: }
......[      51]: static inline __attribute__((no_instrument_function)) int hlist_bl_unhashed(const struct hlist_bl_node *h)
......[      52]: {
......[      53]: return !h->pprev;
......[      54]: }
......[      56]: static inline __attribute__((no_instrument_function)) struct hlist_bl_node *hlist_bl_first(struct hlist_bl_head \
......                *h)
......[      57]: {
......[      58]: return (struct hlist_bl_node *)
......[      59]: ((unsigned long)h->first & ~1UL);
......[      60]: }
......[      62]: static inline __attribute__((no_instrument_function)) void hlist_bl_set_first(struct hlist_bl_head *h,
......[      63]: struct hlist_bl_node *n)
......[      64]: {
......[      65]: ;
......[      67]: ;
......[      68]: h->first = (struct hlist_bl_node *)((unsigned long)n | 1UL);
......[      69]: }
......[      71]: static inline __attribute__((no_instrument_function)) int hlist_bl_empty(const struct hlist_bl_head *h)
......[      72]: {
......[      73]: return !((unsigned long)h->first & ~1UL);
......[      74]: }
......[      76]: static inline __attribute__((no_instrument_function)) void hlist_bl_add_head(struct hlist_bl_node *n,
......[      77]: struct hlist_bl_head *h)
......[      78]: {
......[      79]: struct hlist_bl_node *first = hlist_bl_first(h);
......[      81]: n->next = first;
......[      82]: if (first)
......[      83]: first->pprev = &n->next;
......[      84]: n->pprev = &h->first;
......[      85]: hlist_bl_set_first(h, n);
......[      86]: }
......[      88]: static inline __attribute__((no_instrument_function)) void __hlist_bl_del(struct hlist_bl_node *n)
......[      89]: {
......[      90]: struct hlist_bl_node *next = n->next;
......[      91]: struct hlist_bl_node **pprev = n->pprev;
......[      93]: ;
......[      96]: *pprev = (struct hlist_bl_node *)
......[      97]: ((unsigned long)next |
......[      98]: ((unsigned long)*pprev & 1UL));
......[      99]: if (next)
......[     100]: next->pprev = pprev;
......[     101]: }
......[     103]: static inline __attribute__((no_instrument_function)) void hlist_bl_del(struct hlist_bl_node *n)
......[     104]: {
......[     105]: __hlist_bl_del(n);
......[     106]: n->next = ((void *) 0x00100100 + (0xdead000000000000UL));
......[     107]: n->pprev = ((void *) 0x00200200 + (0xdead000000000000UL));
......[     108]: }
......[     110]: static inline __attribute__((no_instrument_function)) void hlist_bl_del_init(struct hlist_bl_node *n)
......[     111]: {
......[     112]: if (!hlist_bl_unhashed(n)) {
......[     113]: __hlist_bl_del(n);
......[     114]: INIT_HLIST_BL_NODE(n);
......[     115]: }
......[     116]: }
......[     118]: static inline __attribute__((no_instrument_function)) void hlist_bl_lock(struct hlist_bl_head *b)
......[     119]: {
......[     120]: bit_spin_lock(0, (unsigned long *)b);
......[     121]: }
......[     123]: static inline __attribute__((no_instrument_function)) void hlist_bl_unlock(struct hlist_bl_head *b)
......[     124]: {
......[     125]: __bit_spin_unlock(0, (unsigned long *)b);
......[     126]: }
......[     128]: static inline __attribute__((no_instrument_function)) bool hlist_bl_is_locked(struct hlist_bl_head *b)
......[     129]: {
......[     130]: return bit_spin_is_locked(0, (unsigned long *)b);
......[     131]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_bl.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist_bl.h
.....[      10]: static inline __attribute__((no_instrument_function)) void hlist_bl_set_first_rcu(struct hlist_bl_head *h,
.....[      11]: struct hlist_bl_node *n)
.....[      12]: {
.....[      13]: ;
.....[      15]: ;
.....[      17]: do { __asm__ __volatile__("": : :"memory"); ((h->first)) = (typeof(*((struct hlist_bl_node *)((unsigned long)n | \
.....                1UL))) *)(((struct hlist_bl_node *)((unsigned long)n | 1UL))); } while (0);
.....[      18]: }
.....[      20]: static inline __attribute__((no_instrument_function)) struct hlist_bl_node *hlist_bl_first_rcu(struct hlist_bl_head \
.....                *h)
.....[      21]: {
.....[      22]: return (struct hlist_bl_node *)
.....[      23]: ((unsigned long)({ typeof(*(h->first)) *_________p1 = (typeof(*(h->first))* )(*(volatile typeof((h->first)) \
.....                *)&((h->first))); do { } while (0); ; do { } while (0); ((typeof(*(h->first)) *)(_________p1)); }) & ~1UL);
.....[      24]: }
.....[      46]: static inline __attribute__((no_instrument_function)) void hlist_bl_del_init_rcu(struct hlist_bl_node *n)
.....[      47]: {
.....[      48]: if (!hlist_bl_unhashed(n)) {
.....[      49]: __hlist_bl_del(n);
.....[      50]: n->pprev = ((void *)0);
.....[      51]: }
.....[      52]: }
.....[      73]: static inline __attribute__((no_instrument_function)) void hlist_bl_del_rcu(struct hlist_bl_node *n)
.....[      74]: {
.....[      75]: __hlist_bl_del(n);
.....[      76]: n->pprev = ((void *) 0x00200200 + (0xdead000000000000UL));
.....[      77]: }
.....[      98]: static inline __attribute__((no_instrument_function)) void hlist_bl_add_head_rcu(struct hlist_bl_node *n,
.....[      99]: struct hlist_bl_head *h)
.....[     100]: {
.....[     101]: struct hlist_bl_node *first;
.....[     104]: first = hlist_bl_first(h);
.....[     106]: n->next = first;
.....[     107]: if (first)
.....[     108]: first->pprev = &n->next;
.....[     109]: n->pprev = &h->first;
.....[     112]: hlist_bl_set_first_rcu(h, n);
.....[     113]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rculist_bl.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dcache.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/lockref.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/lockref.h
.....[      24]: struct lockref {
.....[      25]: union {
.....[      27]: __u64 __attribute__((aligned(8))) lock_count;
.....[      29]: struct {
.....[      30]: spinlock_t lock;
.....[      31]: unsigned int count;
.....[      32]: };
.....[      33]: };
.....[      34]: };
.....[      36]: extern void lockref_get(struct lockref *);
.....[      37]: extern int lockref_get_not_zero(struct lockref *);
.....[      38]: extern int lockref_get_or_lock(struct lockref *);
.....[      39]: extern int lockref_put_or_lock(struct lockref *);
.....[      41]: extern void lockref_mark_dead(struct lockref *);
.....[      42]: extern int lockref_get_not_dead(struct lockref *);
.....[      45]: static inline __attribute__((no_instrument_function)) int __lockref_is_dead(const struct lockref *l)
.....[      46]: {
.....[      47]: return ((int)l->count < 0);
.....[      48]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/lockref.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dcache.h
....[      14]: struct nameidata;
....[      15]: struct path;
....[      16]: struct vfsmount;
....[      45]: struct qstr {
....[      46]: union {
....[      47]: struct {
....[      48]: u32 hash; u32 len;;
....[      49]: };
....[      50]: u64 hash_len;
....[      51]: };
....[      52]: const unsigned char *name;
....[      53]: };
....[      59]: struct dentry_stat_t {
....[      60]: long nr_dentry;
....[      61]: long nr_unused;
....[      62]: long age_limit;
....[      63]: long want_pages;
....[      64]: long dummy[2];
....[      65]: };
....[      66]: extern struct dentry_stat_t dentry_stat;
....[      73]: static inline __attribute__((no_instrument_function)) unsigned long
....[      74]: partial_name_hash(unsigned long c, unsigned long prevhash)
....[      75]: {
....[      76]: return (prevhash + (c << 4) + (c >> 4)) * 11;
....[      77]: }
....[      83]: static inline __attribute__((no_instrument_function)) unsigned long end_name_hash(unsigned long hash)
....[      84]: {
....[      85]: return (unsigned int) hash;
....[      86]: }
....[      89]: extern unsigned int full_name_hash(const unsigned char *, unsigned int);
....[     108]: struct dentry {
....[     110]: unsigned int d_flags;
....[     111]: seqcount_t d_seq;
....[     112]: struct hlist_bl_node d_hash;
....[     113]: struct dentry *d_parent;
....[     114]: struct qstr d_name;
....[     115]: struct inode *d_inode;
....[     117]: unsigned char d_iname[32];
....[     120]: struct lockref d_lockref;
....[     121]: const struct dentry_operations *d_op;
....[     122]: struct super_block *d_sb;
....[     123]: unsigned long d_time;
....[     124]: void *d_fsdata;
....[     126]: struct list_head d_lru;
....[     130]: union {
....[     131]: struct list_head d_child;
....[     132]: struct callback_head d_rcu;
....[     133]: } d_u;
....[     134]: struct list_head d_subdirs;
....[     135]: struct hlist_node d_alias;
....[     136]: };
....[     144]: enum dentry_d_lock_class
....[     145]: {
....[     146]: DENTRY_D_LOCK_NORMAL,
....[     147]: DENTRY_D_LOCK_NESTED
....[     148]: };
....[     150]: struct dentry_operations {
....[     151]: int (*d_revalidate)(struct dentry *, unsigned int);
....[     152]: int (*d_weak_revalidate)(struct dentry *, unsigned int);
....[     153]: int (*d_hash)(const struct dentry *, struct qstr *);
....[     154]: int (*d_compare)(const struct dentry *, const struct dentry *,
....[     155]: unsigned int, const char *, const struct qstr *);
....[     156]: int (*d_delete)(const struct dentry *);
....[     157]: void (*d_release)(struct dentry *);
....[     158]: void (*d_prune)(struct dentry *);
....[     159]: void (*d_iput)(struct dentry *, struct inode *);
....[     160]: char *(*d_dname)(struct dentry *, char *, int);
....[     161]: struct vfsmount *(*d_automount)(struct path *);
....[     162]: int (*d_manage)(struct dentry *, bool);
....[     163]: } __attribute__((__aligned__((1 << (6)))));
....[     224]: extern seqlock_t rename_lock;
....[     226]: static inline __attribute__((no_instrument_function)) int dname_external(const struct dentry *dentry)
....[     227]: {
....[     228]: return dentry->d_name.name != dentry->d_iname;
....[     229]: }
....[     234]: extern void d_instantiate(struct dentry *, struct inode *);
....[     235]: extern struct dentry * d_instantiate_unique(struct dentry *, struct inode *);
....[     236]: extern struct dentry * d_materialise_unique(struct dentry *, struct inode *);
....[     237]: extern int d_instantiate_no_diralias(struct dentry *, struct inode *);
....[     238]: extern void __d_drop(struct dentry *dentry);
....[     239]: extern void d_drop(struct dentry *dentry);
....[     240]: extern void d_delete(struct dentry *);
....[     241]: extern void d_set_d_op(struct dentry *dentry, const struct dentry_operations *op);
....[     244]: extern struct dentry * d_alloc(struct dentry *, const struct qstr *);
....[     245]: extern struct dentry * d_alloc_pseudo(struct super_block *, const struct qstr *);
....[     246]: extern struct dentry * d_splice_alias(struct inode *, struct dentry *);
....[     247]: extern struct dentry * d_add_ci(struct dentry *, struct inode *, struct qstr *);
....[     248]: extern struct dentry *d_find_any_alias(struct inode *inode);
....[     249]: extern struct dentry * d_obtain_alias(struct inode *);
....[     250]: extern void shrink_dcache_sb(struct super_block *);
....[     251]: extern void shrink_dcache_parent(struct dentry *);
....[     252]: extern void shrink_dcache_for_umount(struct super_block *);
....[     253]: extern int d_invalidate(struct dentry *);
....[     256]: extern struct dentry * d_make_root(struct inode *);
....[     259]: extern void d_genocide(struct dentry *);
....[     261]: extern void d_tmpfile(struct dentry *, struct inode *);
....[     263]: extern struct dentry *d_find_alias(struct inode *);
....[     264]: extern void d_prune_aliases(struct inode *);
....[     267]: extern int have_submounts(struct dentry *);
....[     268]: extern int check_submounts_and_drop(struct dentry *);
....[     273]: extern void d_rehash(struct dentry *);
....[     284]: static inline __attribute__((no_instrument_function)) void d_add(struct dentry *entry, struct inode *inode)
....[     285]: {
....[     286]: d_instantiate(entry, inode);
....[     287]: d_rehash(entry);
....[     288]: }
....[     298]: static inline __attribute__((no_instrument_function)) struct dentry *d_add_unique(struct dentry *entry, struct \
....                inode *inode)
....[     299]: {
....[     300]: struct dentry *res;
....[     302]: res = d_instantiate_unique(entry, inode);
....[     303]: d_rehash(res != ((void *)0) ? res : entry);
....[     304]: return res;
....[     305]: }
....[     307]: extern void dentry_update_name_case(struct dentry *, struct qstr *);
....[     310]: extern void d_move(struct dentry *, struct dentry *);
....[     311]: extern struct dentry *d_ancestor(struct dentry *, struct dentry *);
....[     314]: extern struct dentry *d_lookup(const struct dentry *, const struct qstr *);
....[     315]: extern struct dentry *d_hash_and_lookup(struct dentry *, struct qstr *);
....[     316]: extern struct dentry *__d_lookup(const struct dentry *, const struct qstr *);
....[     317]: extern struct dentry *__d_lookup_rcu(const struct dentry *parent,
....[     318]: const struct qstr *name, unsigned *seq);
....[     320]: static inline __attribute__((no_instrument_function)) unsigned d_count(const struct dentry *dentry)
....[     321]: {
....[     322]: return dentry->d_lockref.count;
....[     323]: }
....[     326]: extern int d_validate(struct dentry *, struct dentry *);
....[     331]: extern char *dynamic_dname(struct dentry *, char *, int, const char *, ...);
....[     332]: extern char *simple_dname(struct dentry *, char *, int);
....[     334]: extern char *__d_path(const struct path *, const struct path *, char *, int);
....[     335]: extern char *d_absolute_path(const struct path *, char *, int);
....[     336]: extern char *d_path(const struct path *, char *, int);
....[     337]: extern char *dentry_path_raw(struct dentry *, char *, int);
....[     338]: extern char *dentry_path(struct dentry *, char *, int);
....[     350]: static inline __attribute__((no_instrument_function)) struct dentry *dget_dlock(struct dentry *dentry)
....[     351]: {
....[     352]: if (dentry)
....[     353]: dentry->d_lockref.count++;
....[     354]: return dentry;
....[     355]: }
....[     357]: static inline __attribute__((no_instrument_function)) struct dentry *dget(struct dentry *dentry)
....[     358]: {
....[     359]: if (dentry)
....[     360]: lockref_get(&dentry->d_lockref);
....[     361]: return dentry;
....[     362]: }
....[     364]: extern struct dentry *dget_parent(struct dentry *dentry);
....[     373]: static inline __attribute__((no_instrument_function)) int d_unhashed(const struct dentry *dentry)
....[     374]: {
....[     375]: return hlist_bl_unhashed(&dentry->d_hash);
....[     376]: }
....[     378]: static inline __attribute__((no_instrument_function)) int d_unlinked(const struct dentry *dentry)
....[     379]: {
....[     380]: return d_unhashed(dentry) && !((dentry) == (dentry)->d_parent);
....[     381]: }
....[     383]: static inline __attribute__((no_instrument_function)) int cant_mount(const struct dentry *dentry)
....[     384]: {
....[     385]: return (dentry->d_flags & 0x00000100);
....[     386]: }
....[     388]: static inline __attribute__((no_instrument_function)) void dont_mount(struct dentry *dentry)
....[     389]: {
....[     390]: spin_lock(&dentry->d_lockref.lock);
....[     391]: dentry->d_flags |= 0x00000100;
....[     392]: spin_unlock(&dentry->d_lockref.lock);
....[     393]: }
....[     395]: extern void dput(struct dentry *);
....[     397]: static inline __attribute__((no_instrument_function)) bool d_managed(const struct dentry *dentry)
....[     398]: {
....[     399]: return dentry->d_flags & (0x00010000|0x00020000|0x00040000);
....[     400]: }
....[     402]: static inline __attribute__((no_instrument_function)) bool d_mountpoint(const struct dentry *dentry)
....[     403]: {
....[     404]: return dentry->d_flags & 0x00010000;
....[     405]: }
....[     410]: static inline __attribute__((no_instrument_function)) void __d_set_type(struct dentry *dentry, unsigned type\
....                )
....[     411]: {
....[     412]: dentry->d_flags = (dentry->d_flags & ~0x00700000) | type;
....[     413]: }
....[     415]: static inline __attribute__((no_instrument_function)) void __d_clear_type(struct dentry *dentry)
....[     416]: {
....[     417]: __d_set_type(dentry, 0x00000000);
....[     418]: }
....[     420]: static inline __attribute__((no_instrument_function)) void d_set_type(struct dentry *dentry, unsigned type)
....[     421]: {
....[     422]: spin_lock(&dentry->d_lockref.lock);
....[     423]: __d_set_type(dentry, type);
....[     424]: spin_unlock(&dentry->d_lockref.lock);
....[     425]: }
....[     427]: static inline __attribute__((no_instrument_function)) unsigned __d_entry_type(const struct dentry *dentry)
....[     428]: {
....[     429]: return dentry->d_flags & 0x00700000;
....[     430]: }
....[     432]: static inline __attribute__((no_instrument_function)) bool d_is_directory(const struct dentry *dentry)
....[     433]: {
....[     434]: return __d_entry_type(dentry) == 0x00100000;
....[     435]: }
....[     437]: static inline __attribute__((no_instrument_function)) bool d_is_autodir(const struct dentry *dentry)
....[     438]: {
....[     439]: return __d_entry_type(dentry) == 0x00200000;
....[     440]: }
....[     442]: static inline __attribute__((no_instrument_function)) bool d_is_symlink(const struct dentry *dentry)
....[     443]: {
....[     444]: return __d_entry_type(dentry) == 0x00300000;
....[     445]: }
....[     447]: static inline __attribute__((no_instrument_function)) bool d_is_file(const struct dentry *dentry)
....[     448]: {
....[     449]: return __d_entry_type(dentry) == 0x00400000;
....[     450]: }
....[     452]: static inline __attribute__((no_instrument_function)) bool d_is_negative(const struct dentry *dentry)
....[     453]: {
....[     454]: return __d_entry_type(dentry) == 0x00000000;
....[     455]: }
....[     457]: static inline __attribute__((no_instrument_function)) bool d_is_positive(const struct dentry *dentry)
....[     458]: {
....[     459]: return !d_is_negative(dentry);
....[     460]: }
....[     462]: extern int sysctl_vfs_cache_pressure;
....[     464]: static inline __attribute__((no_instrument_function)) unsigned long vfs_pressure_ratio(unsigned long val)
....[     465]: {
....[     466]: return ( { typeof(val) quot = (val) / (100); typeof(val) rem = (val) % (100); (quot * (sysctl_vfs_cache_pressure)) + ((\
....                rem * (sysctl_vfs_cache_pressure)) / (100)); } );
....[     467]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dcache.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/path.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/path.h
....[       4]: struct dentry;
....[       5]: struct vfsmount;
....[       7]: struct path {
....[       8]: struct vfsmount *mnt;
....[       9]: struct dentry *dentry;
....[      10]: };
....[      12]: extern void path_get(const struct path *);
....[      13]: extern void path_put(const struct path *);
....[      15]: static inline __attribute__((no_instrument_function)) int path_equal(const struct path *path1, const struct path \
....                *path2)
....[      16]: {
....[      17]: return path1->mnt == path2->mnt && path1->dentry == path2->dentry;
....[      18]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/path.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stat.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stat.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/stat.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/stat.h
.....[      80]: struct stat {
.....[      81]: unsigned long st_dev;
.....[      82]: unsigned long st_ino;
.....[      83]: unsigned long st_nlink;
.....[      85]: unsigned int st_mode;
.....[      86]: unsigned int st_uid;
.....[      87]: unsigned int st_gid;
.....[      88]: unsigned int __pad0;
.....[      89]: unsigned long st_rdev;
.....[      90]: long st_size;
.....[      91]: long st_blksize;
.....[      92]: long st_blocks;
.....[      94]: unsigned long st_atime;
.....[      95]: unsigned long st_atime_nsec;
.....[      96]: unsigned long st_mtime;
.....[      97]: unsigned long st_mtime_nsec;
.....[      98]: unsigned long st_ctime;
.....[      99]: unsigned long st_ctime_nsec;
.....[     100]: long __attribute__((unused))[3];
.....[     101]: };
.....[     114]: struct __old_kernel_stat {
.....[     115]: unsigned short st_dev;
.....[     116]: unsigned short st_ino;
.....[     117]: unsigned short st_mode;
.....[     118]: unsigned short st_nlink;
.....[     119]: unsigned short st_uid;
.....[     120]: unsigned short st_gid;
.....[     121]: unsigned short st_rdev;
.....[     128]: unsigned int st_size;
.....[     129]: unsigned int st_atime;
.....[     130]: unsigned int st_mtime;
.....[     131]: unsigned int st_ctime;
.....[     133]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/stat.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stat.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/time.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/time.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/time.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/time.h
......[      15]: struct timeval {
......[      16]: __kernel_time_t tv_sec;
......[      17]: __kernel_suseconds_t tv_usec;
......[      18]: };
......[      20]: struct timezone {
......[      21]: int tz_minuteswest;
......[      22]: int tz_dsttime;
......[      23]: };
......[      34]: struct itimerspec {
......[      35]: struct timespec it_interval;
......[      36]: struct timespec it_value;
......[      37]: };
......[      39]: struct itimerval {
......[      40]: struct timeval it_interval;
......[      41]: struct timeval it_value;
......[      42]: };
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/time.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/time.h
.....[       9]: extern struct timezone sys_tz;
.....[      22]: static inline __attribute__((no_instrument_function)) int timespec_equal(const struct timespec *a,
.....[      23]: const struct timespec *b)
.....[      24]: {
.....[      25]: return (a->tv_sec == b->tv_sec) && (a->tv_nsec == b->tv_nsec);
.....[      26]: }
.....[      33]: static inline __attribute__((no_instrument_function)) int timespec_compare(const struct timespec *lhs, const \
.....                struct timespec *rhs)
.....[      34]: {
.....[      35]: if (lhs->tv_sec < rhs->tv_sec)
.....[      36]: return -1;
.....[      37]: if (lhs->tv_sec > rhs->tv_sec)
.....[      38]: return 1;
.....[      39]: return lhs->tv_nsec - rhs->tv_nsec;
.....[      40]: }
.....[      42]: static inline __attribute__((no_instrument_function)) int timeval_compare(const struct timeval *lhs, const struct \
.....                timeval *rhs)
.....[      43]: {
.....[      44]: if (lhs->tv_sec < rhs->tv_sec)
.....[      45]: return -1;
.....[      46]: if (lhs->tv_sec > rhs->tv_sec)
.....[      47]: return 1;
.....[      48]: return lhs->tv_usec - rhs->tv_usec;
.....[      49]: }
.....[      51]: extern unsigned long mktime(const unsigned int year, const unsigned int mon,
.....[      52]: const unsigned int day, const unsigned int hour,
.....[      53]: const unsigned int min, const unsigned int sec);
.....[      55]: extern void set_normalized_timespec(struct timespec *ts, time_t sec, s64 nsec);
.....[      62]: extern struct timespec timespec_add_safe(const struct timespec lhs,
.....[      63]: const struct timespec rhs);
.....[      66]: static inline __attribute__((no_instrument_function)) struct timespec timespec_add(struct timespec lhs,
.....[      67]: struct timespec rhs)
.....[      68]: {
.....[      69]: struct timespec ts_delta;
.....[      70]: set_normalized_timespec(&ts_delta, lhs.tv_sec + rhs.tv_sec,
.....[      71]: lhs.tv_nsec + rhs.tv_nsec);
.....[      72]: return ts_delta;
.....[      73]: }
.....[      78]: static inline __attribute__((no_instrument_function)) struct timespec timespec_sub(struct timespec lhs,
.....[      79]: struct timespec rhs)
.....[      80]: {
.....[      81]: struct timespec ts_delta;
.....[      82]: set_normalized_timespec(&ts_delta, lhs.tv_sec - rhs.tv_sec,
.....[      83]: lhs.tv_nsec - rhs.tv_nsec);
.....[      84]: return ts_delta;
.....[      85]: }
.....[      97]: static inline __attribute__((no_instrument_function)) bool timespec_valid(const struct timespec *ts)
.....[      98]: {
.....[     100]: if (ts->tv_sec < 0)
.....[     101]: return false;
.....[     103]: if ((unsigned long)ts->tv_nsec >= 1000000000L)
.....[     104]: return false;
.....[     105]: return true;
.....[     106]: }
.....[     108]: static inline __attribute__((no_instrument_function)) bool timespec_valid_strict(const struct timespec *ts)
.....[     109]: {
.....[     110]: if (!timespec_valid(ts))
.....[     111]: return false;
.....[     113]: if ((unsigned long long)ts->tv_sec >= (((s64)~((u64)1 << 63)) / 1000000000L))
.....[     114]: return false;
.....[     115]: return true;
.....[     116]: }
.....[     118]: extern bool persistent_clock_exist;
.....[     120]: static inline __attribute__((no_instrument_function)) bool has_persistent_clock(void)
.....[     121]: {
.....[     122]: return persistent_clock_exist;
.....[     123]: }
.....[     125]: extern void read_persistent_clock(struct timespec *ts);
.....[     126]: extern void read_boot_clock(struct timespec *ts);
.....[     127]: extern int persistent_clock_is_local;
.....[     128]: extern int update_persistent_clock(struct timespec now);
.....[     129]: void timekeeping_init(void);
.....[     130]: extern int timekeeping_suspended;
.....[     132]: unsigned long get_seconds(void);
.....[     133]: struct timespec current_kernel_time(void);
.....[     134]: struct timespec __current_kernel_time(void);
.....[     135]: struct timespec get_monotonic_coarse(void);
.....[     136]: void get_xtime_and_monotonic_and_sleep_offset(struct timespec *xtim,
.....[     137]: struct timespec *wtom, struct timespec *sleep);
.....[     138]: void timekeeping_inject_sleeptime(struct timespec *delta);
.....[     156]: extern void do_gettimeofday(struct timeval *tv);
.....[     157]: extern int do_settimeofday(const struct timespec *tv);
.....[     158]: extern int do_sys_settimeofday(const struct timespec *tv,
.....[     159]: const struct timezone *tz);
.....[     161]: extern long do_utimes(int dfd, const char *filename, struct timespec *times, int flags);
.....[     162]: struct itimerval;
.....[     163]: extern int do_setitimer(int which, struct itimerval *value,
.....[     164]: struct itimerval *ovalue);
.....[     165]: extern unsigned int alarm_setitimer(unsigned int seconds);
.....[     166]: extern int do_getitimer(int which, struct itimerval *value);
.....[     167]: extern int __getnstimeofday(struct timespec *tv);
.....[     168]: extern void getnstimeofday(struct timespec *tv);
.....[     169]: extern void getrawmonotonic(struct timespec *ts);
.....[     170]: extern void getnstime_raw_and_real(struct timespec *ts_raw,
.....[     171]: struct timespec *ts_real);
.....[     172]: extern void getboottime(struct timespec *ts);
.....[     173]: extern void monotonic_to_bootbased(struct timespec *ts);
.....[     174]: extern void get_monotonic_boottime(struct timespec *ts);
.....[     176]: extern struct timespec timespec_trunc(struct timespec t, unsigned gran);
.....[     177]: extern int timekeeping_valid_for_hres(void);
.....[     178]: extern u64 timekeeping_max_deferment(void);
.....[     179]: extern int timekeeping_inject_offset(struct timespec *ts);
.....[     180]: extern s32 timekeeping_get_tai_offset(void);
.....[     181]: extern void timekeeping_set_tai_offset(s32 tai_offset);
.....[     182]: extern void timekeeping_clocktai(struct timespec *ts);
.....[     184]: struct tms;
.....[     185]: extern void do_sys_times(struct tms *);
.....[     191]: struct tm {
.....[     196]: int tm_sec;
.....[     198]: int tm_min;
.....[     200]: int tm_hour;
.....[     202]: int tm_mday;
.....[     204]: int tm_mon;
.....[     206]: long tm_year;
.....[     208]: int tm_wday;
.....[     210]: int tm_yday;
.....[     211]: };
.....[     213]: void time_to_tm(time_t totalsecs, int offset, struct tm *result);
.....[     222]: static inline __attribute__((no_instrument_function)) s64 timespec_to_ns(const struct timespec *ts)
.....[     223]: {
.....[     224]: return ((s64) ts->tv_sec * 1000000000L) + ts->tv_nsec;
.....[     225]: }
.....[     234]: static inline __attribute__((no_instrument_function)) s64 timeval_to_ns(const struct timeval *tv)
.....[     235]: {
.....[     236]: return ((s64) tv->tv_sec * 1000000000L) +
.....[     237]: tv->tv_usec * 1000L;
.....[     238]: }
.....[     246]: extern struct timespec ns_to_timespec(const s64 nsec);
.....[     254]: extern struct timeval ns_to_timeval(const s64 nsec);
.....[     264]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void timespec_add_ns\
.....                (struct timespec *a, u64 ns)
.....[     265]: {
.....[     266]: a->tv_sec += __iter_div_u64_rem(a->tv_nsec + ns, 1000000000L, &ns);
.....[     267]: a->tv_nsec = ns;
.....[     268]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/time.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stat.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uidgid.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uidgid.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/highuid.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/highuid.h
......[      34]: extern int overflowuid;
......[      35]: extern int overflowgid;
......[      37]: extern void __bad_uid(void);
......[      38]: extern void __bad_gid(void);
......[      81]: extern int fs_overflowuid;
......[      82]: extern int fs_overflowgid;
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/highuid.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uidgid.h
.....[      17]: struct user_namespace;
.....[      18]: extern struct user_namespace init_user_ns;
.....[      46]: typedef uid_t kuid_t;
.....[      47]: typedef gid_t kgid_t;
.....[      49]: static inline __attribute__((no_instrument_function)) uid_t __kuid_val(kuid_t uid)
.....[      50]: {
.....[      51]: return uid;
.....[      52]: }
.....[      54]: static inline __attribute__((no_instrument_function)) gid_t __kgid_val(kgid_t gid)
.....[      55]: {
.....[      56]: return gid;
.....[      57]: }
.....[      70]: static inline __attribute__((no_instrument_function)) bool uid_eq(kuid_t left, kuid_t right)
.....[      71]: {
.....[      72]: return __kuid_val(left) == __kuid_val(right);
.....[      73]: }
.....[      75]: static inline __attribute__((no_instrument_function)) bool gid_eq(kgid_t left, kgid_t right)
.....[      76]: {
.....[      77]: return __kgid_val(left) == __kgid_val(right);
.....[      78]: }
.....[      80]: static inline __attribute__((no_instrument_function)) bool uid_gt(kuid_t left, kuid_t right)
.....[      81]: {
.....[      82]: return __kuid_val(left) > __kuid_val(right);
.....[      83]: }
.....[      85]: static inline __attribute__((no_instrument_function)) bool gid_gt(kgid_t left, kgid_t right)
.....[      86]: {
.....[      87]: return __kgid_val(left) > __kgid_val(right);
.....[      88]: }
.....[      90]: static inline __attribute__((no_instrument_function)) bool uid_gte(kuid_t left, kuid_t right)
.....[      91]: {
.....[      92]: return __kuid_val(left) >= __kuid_val(right);
.....[      93]: }
.....[      95]: static inline __attribute__((no_instrument_function)) bool gid_gte(kgid_t left, kgid_t right)
.....[      96]: {
.....[      97]: return __kgid_val(left) >= __kgid_val(right);
.....[      98]: }
.....[     100]: static inline __attribute__((no_instrument_function)) bool uid_lt(kuid_t left, kuid_t right)
.....[     101]: {
.....[     102]: return __kuid_val(left) < __kuid_val(right);
.....[     103]: }
.....[     105]: static inline __attribute__((no_instrument_function)) bool gid_lt(kgid_t left, kgid_t right)
.....[     106]: {
.....[     107]: return __kgid_val(left) < __kgid_val(right);
.....[     108]: }
.....[     110]: static inline __attribute__((no_instrument_function)) bool uid_lte(kuid_t left, kuid_t right)
.....[     111]: {
.....[     112]: return __kuid_val(left) <= __kuid_val(right);
.....[     113]: }
.....[     115]: static inline __attribute__((no_instrument_function)) bool gid_lte(kgid_t left, kgid_t right)
.....[     116]: {
.....[     117]: return __kgid_val(left) <= __kgid_val(right);
.....[     118]: }
.....[     120]: static inline __attribute__((no_instrument_function)) bool uid_valid(kuid_t uid)
.....[     121]: {
.....[     122]: return !uid_eq(uid, ((kuid_t) -1 ));
.....[     123]: }
.....[     125]: static inline __attribute__((no_instrument_function)) bool gid_valid(kgid_t gid)
.....[     126]: {
.....[     127]: return !gid_eq(gid, ((kgid_t) -1 ));
.....[     128]: }
.....[     152]: static inline __attribute__((no_instrument_function)) kuid_t make_kuid(struct user_namespace *from, uid_t uid\
.....                )
.....[     153]: {
.....[     154]: return ((kuid_t) uid );
.....[     155]: }
.....[     157]: static inline __attribute__((no_instrument_function)) kgid_t make_kgid(struct user_namespace *from, gid_t gid\
.....                )
.....[     158]: {
.....[     159]: return ((kgid_t) gid );
.....[     160]: }
.....[     162]: static inline __attribute__((no_instrument_function)) uid_t from_kuid(struct user_namespace *to, kuid_t kuid\
.....                )
.....[     163]: {
.....[     164]: return __kuid_val(kuid);
.....[     165]: }
.....[     167]: static inline __attribute__((no_instrument_function)) gid_t from_kgid(struct user_namespace *to, kgid_t kgid\
.....                )
.....[     168]: {
.....[     169]: return __kgid_val(kgid);
.....[     170]: }
.....[     172]: static inline __attribute__((no_instrument_function)) uid_t from_kuid_munged(struct user_namespace *to, kuid_t \
.....                kuid)
.....[     173]: {
.....[     174]: uid_t uid = from_kuid(to, kuid);
.....[     175]: if (uid == (uid_t)-1)
.....[     176]: uid = overflowuid;
.....[     177]: return uid;
.....[     178]: }
.....[     180]: static inline __attribute__((no_instrument_function)) gid_t from_kgid_munged(struct user_namespace *to, kgid_t \
.....                kgid)
.....[     181]: {
.....[     182]: gid_t gid = from_kgid(to, kgid);
.....[     183]: if (gid == (gid_t)-1)
.....[     184]: gid = overflowgid;
.....[     185]: return gid;
.....[     186]: }
.....[     188]: static inline __attribute__((no_instrument_function)) bool kuid_has_mapping(struct user_namespace *ns, kuid_t \
.....                uid)
.....[     189]: {
.....[     190]: return true;
.....[     191]: }
.....[     193]: static inline __attribute__((no_instrument_function)) bool kgid_has_mapping(struct user_namespace *ns, kgid_t \
.....                gid)
.....[     194]: {
.....[     195]: return true;
.....[     196]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uidgid.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stat.h
....[      21]: struct kstat {
....[      22]: u64 ino;
....[      23]: dev_t dev;
....[      24]: umode_t mode;
....[      25]: unsigned int nlink;
....[      26]: kuid_t uid;
....[      27]: kgid_t gid;
....[      28]: dev_t rdev;
....[      29]: loff_t size;
....[      30]: struct timespec atime;
....[      31]: struct timespec mtime;
....[      32]: struct timespec ctime;
....[      33]: unsigned long blksize;
....[      34]: unsigned long long blocks;
....[      35]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stat.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_lru.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_lru.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/nodemask.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/nodemask.h
.....[      98]: typedef struct { unsigned long bits[((((1 << 6)) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))]; } nodemask_t;
.....[      99]: extern nodemask_t _unused_nodemask_arg_;
.....[     111]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void __node_set(int node\
.....                , volatile nodemask_t *dstp)
.....[     112]: {
.....[     113]: set_bit(node, dstp->bits);
.....[     114]: }
.....[     117]: static inline __attribute__((no_instrument_function)) void __node_clear(int node, volatile nodemask_t *dstp)
.....[     118]: {
.....[     119]: clear_bit(node, dstp->bits);
.....[     120]: }
.....[     123]: static inline __attribute__((no_instrument_function)) void __nodes_setall(nodemask_t *dstp, int nbits)
.....[     124]: {
.....[     125]: bitmap_fill(dstp->bits, nbits);
.....[     126]: }
.....[     129]: static inline __attribute__((no_instrument_function)) void __nodes_clear(nodemask_t *dstp, int nbits)
.....[     130]: {
.....[     131]: bitmap_zero(dstp->bits, nbits);
.....[     132]: }
.....[     139]: static inline __attribute__((no_instrument_function)) int __node_test_and_set(int node, nodemask_t *addr)
.....[     140]: {
.....[     141]: return test_and_set_bit(node, addr->bits);
.....[     142]: }
.....[     146]: static inline __attribute__((no_instrument_function)) void __nodes_and(nodemask_t *dstp, const nodemask_t *src1p\
.....                ,
.....[     147]: const nodemask_t *src2p, int nbits)
.....[     148]: {
.....[     149]: bitmap_and(dstp->bits, src1p->bits, src2p->bits, nbits);
.....[     150]: }
.....[     154]: static inline __attribute__((no_instrument_function)) void __nodes_or(nodemask_t *dstp, const nodemask_t *src1p\
.....                ,
.....[     155]: const nodemask_t *src2p, int nbits)
.....[     156]: {
.....[     157]: bitmap_or(dstp->bits, src1p->bits, src2p->bits, nbits);
.....[     158]: }
.....[     162]: static inline __attribute__((no_instrument_function)) void __nodes_xor(nodemask_t *dstp, const nodemask_t *src1p\
.....                ,
.....[     163]: const nodemask_t *src2p, int nbits)
.....[     164]: {
.....[     165]: bitmap_xor(dstp->bits, src1p->bits, src2p->bits, nbits);
.....[     166]: }
.....[     170]: static inline __attribute__((no_instrument_function)) void __nodes_andnot(nodemask_t *dstp, const nodemask_t \
.....                *src1p,
.....[     171]: const nodemask_t *src2p, int nbits)
.....[     172]: {
.....[     173]: bitmap_andnot(dstp->bits, src1p->bits, src2p->bits, nbits);
.....[     174]: }
.....[     178]: static inline __attribute__((no_instrument_function)) void __nodes_complement(nodemask_t *dstp,
.....[     179]: const nodemask_t *srcp, int nbits)
.....[     180]: {
.....[     181]: bitmap_complement(dstp->bits, srcp->bits, nbits);
.....[     182]: }
.....[     186]: static inline __attribute__((no_instrument_function)) int __nodes_equal(const nodemask_t *src1p,
.....[     187]: const nodemask_t *src2p, int nbits)
.....[     188]: {
.....[     189]: return bitmap_equal(src1p->bits, src2p->bits, nbits);
.....[     190]: }
.....[     194]: static inline __attribute__((no_instrument_function)) int __nodes_intersects(const nodemask_t *src1p,
.....[     195]: const nodemask_t *src2p, int nbits)
.....[     196]: {
.....[     197]: return bitmap_intersects(src1p->bits, src2p->bits, nbits);
.....[     198]: }
.....[     202]: static inline __attribute__((no_instrument_function)) int __nodes_subset(const nodemask_t *src1p,
.....[     203]: const nodemask_t *src2p, int nbits)
.....[     204]: {
.....[     205]: return bitmap_subset(src1p->bits, src2p->bits, nbits);
.....[     206]: }
.....[     209]: static inline __attribute__((no_instrument_function)) int __nodes_empty(const nodemask_t *srcp, int nbits)
.....[     210]: {
.....[     211]: return bitmap_empty(srcp->bits, nbits);
.....[     212]: }
.....[     215]: static inline __attribute__((no_instrument_function)) int __nodes_full(const nodemask_t *srcp, int nbits)
.....[     216]: {
.....[     217]: return bitmap_full(srcp->bits, nbits);
.....[     218]: }
.....[     221]: static inline __attribute__((no_instrument_function)) int __nodes_weight(const nodemask_t *srcp, int nbits)
.....[     222]: {
.....[     223]: return bitmap_weight(srcp->bits, nbits);
.....[     224]: }
.....[     228]: static inline __attribute__((no_instrument_function)) void __nodes_shift_right(nodemask_t *dstp,
.....[     229]: const nodemask_t *srcp, int n, int nbits)
.....[     230]: {
.....[     231]: bitmap_shift_right(dstp->bits, srcp->bits, n, nbits);
.....[     232]: }
.....[     236]: static inline __attribute__((no_instrument_function)) void __nodes_shift_left(nodemask_t *dstp,
.....[     237]: const nodemask_t *srcp, int n, int nbits)
.....[     238]: {
.....[     239]: bitmap_shift_left(dstp->bits, srcp->bits, n, nbits);
.....[     240]: }
.....[     246]: static inline __attribute__((no_instrument_function)) int __first_node(const nodemask_t *srcp)
.....[     247]: {
.....[     248]: return ({ int __min1 = ((1 << 6)); int __min2 = (find_first_bit(srcp->bits, (1 << 6))); __min1 < __min2 ? __min1: __min2\
.....                ; });
.....[     249]: }
.....[     252]: static inline __attribute__((no_instrument_function)) int __next_node(int n, const nodemask_t *srcp)
.....[     253]: {
.....[     254]: return ({ int __min1 = ((1 << 6)); int __min2 = (find_next_bit(srcp->bits, (1 << 6), n+1)); __min1 < __min2 ? __min1: __min2\
.....                ; });
.....[     255]: }
.....[     257]: static inline __attribute__((no_instrument_function)) void init_nodemask_of_node(nodemask_t *mask, int node\
.....                )
.....[     258]: {
.....[     259]: __nodes_clear(&(*mask), (1 << 6));
.....[     260]: __node_set((node), &(*mask));
.....[     261]: }
.....[     275]: static inline __attribute__((no_instrument_function)) int __first_unset_node(const nodemask_t *maskp)
.....[     276]: {
.....[     277]: return ({ int __min1 = ((1 << 6)); int __min2 = (find_first_zero_bit(maskp->bits, (1 << 6))); __min1 < __min2 ? __min1: \
.....                __min2; });
.....[     279]: }
.....[     309]: static inline __attribute__((no_instrument_function)) int __nodemask_scnprintf(char *buf, int len,
.....[     310]: const nodemask_t *srcp, int nbits)
.....[     311]: {
.....[     312]: return bitmap_scnprintf(buf, len, srcp->bits, nbits);
.....[     313]: }
.....[     317]: static inline __attribute__((no_instrument_function)) int __nodemask_parse_user(const char *buf, int len,
.....[     318]: nodemask_t *dstp, int nbits)
.....[     319]: {
.....[     320]: return bitmap_parse_user(buf, len, dstp->bits, nbits);
.....[     321]: }
.....[     325]: static inline __attribute__((no_instrument_function)) int __nodelist_scnprintf(char *buf, int len,
.....[     326]: const nodemask_t *srcp, int nbits)
.....[     327]: {
.....[     328]: return bitmap_scnlistprintf(buf, len, srcp->bits, nbits);
.....[     329]: }
.....[     332]: static inline __attribute__((no_instrument_function)) int __nodelist_parse(const char *buf, nodemask_t *dstp\
.....                , int nbits)
.....[     333]: {
.....[     334]: return bitmap_parselist(buf, dstp->bits, nbits);
.....[     335]: }
.....[     339]: static inline __attribute__((no_instrument_function)) int __node_remap(int oldbit,
.....[     340]: const nodemask_t *oldp, const nodemask_t *newp, int nbits)
.....[     341]: {
.....[     342]: return bitmap_bitremap(oldbit, oldp->bits, newp->bits, nbits);
.....[     343]: }
.....[     347]: static inline __attribute__((no_instrument_function)) void __nodes_remap(nodemask_t *dstp, const nodemask_t \
.....                *srcp,
.....[     348]: const nodemask_t *oldp, const nodemask_t *newp, int nbits)
.....[     349]: {
.....[     350]: bitmap_remap(dstp->bits, srcp->bits, oldp->bits, newp->bits, nbits);
.....[     351]: }
.....[     355]: static inline __attribute__((no_instrument_function)) void __nodes_onto(nodemask_t *dstp, const nodemask_t *\
.....                origp,
.....[     356]: const nodemask_t *relmapp, int nbits)
.....[     357]: {
.....[     358]: bitmap_onto(dstp->bits, origp->bits, relmapp->bits, nbits);
.....[     359]: }
.....[     363]: static inline __attribute__((no_instrument_function)) void __nodes_fold(nodemask_t *dstp, const nodemask_t *\
.....                origp,
.....[     364]: int sz, int nbits)
.....[     365]: {
.....[     366]: bitmap_fold(dstp->bits, origp->bits, sz, nbits);
.....[     367]: }
.....[     383]: enum node_states {
.....[     384]: N_POSSIBLE,
.....[     385]: N_ONLINE,
.....[     386]: N_NORMAL_MEMORY,
.....[     390]: N_HIGH_MEMORY = N_NORMAL_MEMORY,
.....[     395]: N_MEMORY = N_HIGH_MEMORY,
.....[     397]: N_CPU,
.....[     398]: NR_NODE_STATES
.....[     399]: };
.....[     406]: extern nodemask_t node_states[NR_NODE_STATES];
.....[     409]: static inline __attribute__((no_instrument_function)) int node_state(int node, enum node_states state)
.....[     410]: {
.....[     411]: return (__builtin_constant_p(((node))) ? constant_test_bit(((node)), ((node_states[state]).bits)) : variable_test_bit\
.....                (((node)), ((node_states[state]).bits)));
.....[     412]: }
.....[     414]: static inline __attribute__((no_instrument_function)) void node_set_state(int node, enum node_states state)
.....[     415]: {
.....[     416]: __node_set(node, &node_states[state]);
.....[     417]: }
.....[     419]: static inline __attribute__((no_instrument_function)) void node_clear_state(int node, enum node_states state\
.....                )
.....[     420]: {
.....[     421]: __node_clear(node, &node_states[state]);
.....[     422]: }
.....[     424]: static inline __attribute__((no_instrument_function)) int num_node_state(enum node_states state)
.....[     425]: {
.....[     426]: return __nodes_weight(&(node_states[state]), (1 << 6));
.....[     427]: }
.....[     435]: extern int nr_node_ids;
.....[     436]: extern int nr_online_nodes;
.....[     438]: static inline __attribute__((no_instrument_function)) void node_set_online(int nid)
.....[     439]: {
.....[     440]: node_set_state(nid, N_ONLINE);
.....[     441]: nr_online_nodes = num_node_state(N_ONLINE);
.....[     442]: }
.....[     444]: static inline __attribute__((no_instrument_function)) void node_set_offline(int nid)
.....[     445]: {
.....[     446]: node_clear_state(nid, N_ONLINE);
.....[     447]: nr_online_nodes = num_node_state(N_ONLINE);
.....[     448]: }
.....[     484]: extern int node_random(const nodemask_t *maskp);
.....[     518]: struct nodemask_scratch {
.....[     519]: nodemask_t mask1;
.....[     520]: nodemask_t mask2;
.....[     521]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/nodemask.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_lru.h
....[      14]: enum lru_status {
....[      15]: LRU_REMOVED,
....[      16]: LRU_ROTATE,
....[      17]: LRU_SKIP,
....[      18]: LRU_RETRY,
....[      20]: };
....[      22]: struct list_lru_node {
....[      23]: spinlock_t lock;
....[      24]: struct list_head list;
....[      26]: long nr_items;
....[      27]: } __attribute__((__aligned__((1 << (6)))));
....[      29]: struct list_lru {
....[      30]: struct list_lru_node *node;
....[      31]: nodemask_t active_nodes;
....[      32]: };
....[      34]: void list_lru_destroy(struct list_lru *lru);
....[      35]: int list_lru_init(struct list_lru *lru);
....[      53]: bool list_lru_add(struct list_lru *lru, struct list_head *item);
....[      66]: bool list_lru_del(struct list_lru *lru, struct list_head *item);
....[      77]: unsigned long list_lru_count_node(struct list_lru *lru, int nid);
....[      78]: static inline __attribute__((no_instrument_function)) unsigned long list_lru_count(struct list_lru *lru)
....[      79]: {
....[      80]: long count = 0;
....[      81]: int nid;
....[      83]: for ((nid) = __first_node(&(lru->active_nodes)); (nid) < (1 << 6); (nid) = __next_node(((nid)), &((lru->active_nodes\
....                ))))
....[      84]: count += list_lru_count_node(lru, nid);
....[      86]: return count;
....[      87]: }
....[      89]: typedef enum lru_status
....[      90]: (*list_lru_walk_cb)(struct list_head *item, spinlock_t *lock, void *cb_arg);
....[     112]: unsigned long list_lru_walk_node(struct list_lru *lru, int nid,
....[     113]: list_lru_walk_cb isolate, void *cb_arg,
....[     114]: unsigned long *nr_to_walk);
....[     116]: static inline __attribute__((no_instrument_function)) unsigned long
....[     117]: list_lru_walk(struct list_lru *lru, list_lru_walk_cb isolate,
....[     118]: void *cb_arg, unsigned long nr_to_walk)
....[     119]: {
....[     120]: long isolated = 0;
....[     121]: int nid;
....[     123]: for ((nid) = __first_node(&(lru->active_nodes)); (nid) < (1 << 6); (nid) = __next_node(((nid)), &((lru->active_nodes\
....                )))) {
....[     124]: isolated += list_lru_walk_node(lru, nid, isolate,
....[     125]: cb_arg, &nr_to_walk);
....[     126]: if (nr_to_walk <= 0)
....[     127]: break;
....[     128]: }
....[     129]: return isolated;
....[     130]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/list_lru.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/llist.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/llist.h
....[      61]: struct llist_head {
....[      62]: struct llist_node *first;
....[      63]: };
....[      65]: struct llist_node {
....[      66]: struct llist_node *next;
....[      67]: };
....[      76]: static inline __attribute__((no_instrument_function)) void init_llist_head(struct llist_head *list)
....[      77]: {
....[      78]: list->first = ((void *)0);
....[      79]: }
....[     158]: static inline __attribute__((no_instrument_function)) bool llist_empty(const struct llist_head *head)
....[     159]: {
....[     160]: return (*(volatile typeof(head->first) *)&(head->first)) == ((void *)0);
....[     161]: }
....[     163]: static inline __attribute__((no_instrument_function)) struct llist_node *llist_next(struct llist_node *node\
....                )
....[     164]: {
....[     165]: return node->next;
....[     166]: }
....[     168]: extern bool llist_add_batch(struct llist_node *new_first,
....[     169]: struct llist_node *new_last,
....[     170]: struct llist_head *head);
....[     178]: static inline __attribute__((no_instrument_function)) bool llist_add(struct llist_node *new, struct llist_head \
....                *head)
....[     179]: {
....[     180]: return llist_add_batch(new, new, head);
....[     181]: }
....[     191]: static inline __attribute__((no_instrument_function)) struct llist_node *llist_del_all(struct llist_head *head\
....                )
....[     192]: {
....[     193]: return ({ __typeof__ (*((&head->first))) __ret = ((((void *)0))); switch (sizeof(*((&head->first)))) { case 1: asm \
....                volatile ("" "xchg" "b %b0, %1\n" : "+q" (__ret), "+m" (*((&head->first))) : : "memory", "cc"); break; case 2: asm volatile \
....                ("" "xchg" "w %w0, %1\n" : "+r" (__ret), "+m" (*((&head->first))) : : "memory", "cc"); break; case 4: asm volatile ("" \
....                "xchg" "l %0, %1\n" : "+r" (__ret), "+m" (*((&head->first))) : : "memory", "cc"); break; case 8: asm volatile ("" "xchg" \
....                "q %q0, %1\n" : "+r" (__ret), "+m" (*((&head->first))) : : "memory", "cc"); break; default: __xchg_wrong_size(); \
....                } __ret; });
....[     194]: }
....[     196]: extern struct llist_node *llist_del_first(struct llist_head *head);
....[     198]: struct llist_node *llist_reverse_order(struct llist_node *head);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/llist.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/radix-tree.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/radix-tree.h
....[      54]: static inline __attribute__((no_instrument_function)) int radix_tree_is_indirect_ptr(void *ptr)
....[      55]: {
....[      56]: return (int)((unsigned long)ptr & 1);
....[      57]: }
....[      64]: struct radix_tree_root {
....[      65]: unsigned int height;
....[      66]: gfp_t gfp_mask;
....[      67]: struct radix_tree_node *rnode;
....[      68]: };
....[     150]: static inline __attribute__((no_instrument_function)) void *radix_tree_deref_slot(void **pslot)
....[     151]: {
....[     152]: return ({ typeof(*(*pslot)) *_________p1 = (typeof(*(*pslot))* )(*(volatile typeof((*pslot)) *)&((*pslot))); \
....                do { } while (0); ; do { } while (0); ((typeof(*(*pslot)) *)(_________p1)); });
....[     153]: }
....[     165]: static inline __attribute__((no_instrument_function)) void *radix_tree_deref_slot_protected(void **pslot,
....[     166]: spinlock_t *treelock)
....[     167]: {
....[     168]: return ({ do { } while (0); ; ((typeof(*(*pslot)) *)((*pslot))); });
....[     169]: }
....[     178]: static inline __attribute__((no_instrument_function)) int radix_tree_deref_retry(void *arg)
....[     179]: {
....[     180]: return __builtin_expect(!!((unsigned long)arg & 1), 0);
....[     181]: }
....[     188]: static inline __attribute__((no_instrument_function)) int radix_tree_exceptional_entry(void *arg)
....[     189]: {
....[     191]: return (unsigned long)arg & 2;
....[     192]: }
....[     199]: static inline __attribute__((no_instrument_function)) int radix_tree_exception(void *arg)
....[     200]: {
....[     201]: return __builtin_expect(!!((unsigned long)arg &( 1 | 2)), 0);
....[     203]: }
....[     213]: static inline __attribute__((no_instrument_function)) void radix_tree_replace_slot(void **pslot, void *item\
....                )
....[     214]: {
....[     215]: do { if (__builtin_expect(!!(radix_tree_is_indirect_ptr(item)), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" \
....                "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__\
....                ), "i" (sizeof(struct bug_entry))); do { } while (1); } while (0); } while(0);
....[     216]: do { __asm__ __volatile__("": : :"memory"); ((*pslot)) = (typeof(*(item)) *)((item)); } while (0);
....[     217]: }
....[     219]: int radix_tree_insert(struct radix_tree_root *, unsigned long, void *);
....[     220]: void *radix_tree_lookup(struct radix_tree_root *, unsigned long);
....[     221]: void **radix_tree_lookup_slot(struct radix_tree_root *, unsigned long);
....[     222]: void *radix_tree_delete(struct radix_tree_root *, unsigned long);
....[     223]: unsigned int
....[     224]: radix_tree_gang_lookup(struct radix_tree_root *root, void **results,
....[     225]: unsigned long first_index, unsigned int max_items);
....[     226]: unsigned int radix_tree_gang_lookup_slot(struct radix_tree_root *root,
....[     227]: void ***results, unsigned long *indices,
....[     228]: unsigned long first_index, unsigned int max_items);
....[     229]: unsigned long radix_tree_next_hole(struct radix_tree_root *root,
....[     230]: unsigned long index, unsigned long max_scan);
....[     231]: unsigned long radix_tree_prev_hole(struct radix_tree_root *root,
....[     232]: unsigned long index, unsigned long max_scan);
....[     233]: int radix_tree_preload(gfp_t gfp_mask);
....[     234]: int radix_tree_maybe_preload(gfp_t gfp_mask);
....[     235]: void radix_tree_init(void);
....[     236]: void *radix_tree_tag_set(struct radix_tree_root *root,
....[     237]: unsigned long index, unsigned int tag);
....[     238]: void *radix_tree_tag_clear(struct radix_tree_root *root,
....[     239]: unsigned long index, unsigned int tag);
....[     240]: int radix_tree_tag_get(struct radix_tree_root *root,
....[     241]: unsigned long index, unsigned int tag);
....[     242]: unsigned int
....[     243]: radix_tree_gang_lookup_tag(struct radix_tree_root *root, void **results,
....[     244]: unsigned long first_index, unsigned int max_items,
....[     245]: unsigned int tag);
....[     246]: unsigned int
....[     247]: radix_tree_gang_lookup_tag_slot(struct radix_tree_root *root, void ***results,
....[     248]: unsigned long first_index, unsigned int max_items,
....[     249]: unsigned int tag);
....[     250]: unsigned long radix_tree_range_tag_if_tagged(struct radix_tree_root *root,
....[     251]: unsigned long *first_indexp, unsigned long last_index,
....[     252]: unsigned long nr_to_tag,
....[     253]: unsigned int fromtag, unsigned int totag);
....[     254]: int radix_tree_tagged(struct radix_tree_root *root, unsigned int tag);
....[     255]: unsigned long radix_tree_locate_item(struct radix_tree_root *root, void *item);
....[     257]: static inline __attribute__((no_instrument_function)) void radix_tree_preload_end(void)
....[     258]: {
....[     259]: __asm__ __volatile__("": : :"memory");
....[     260]: }
....[     276]: struct radix_tree_iter {
....[     277]: unsigned long index;
....[     278]: unsigned long next_index;
....[     279]: unsigned long tags;
....[     280]: };
....[     293]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void **
....[     294]: radix_tree_iter_init(struct radix_tree_iter *iter, unsigned long start)
....[     295]: {
....[     304]: iter->index = 0;
....[     305]: iter->next_index = start;
....[     306]: return ((void *)0);
....[     307]: }
....[     322]: void **radix_tree_next_chunk(struct radix_tree_root *root,
....[     323]: struct radix_tree_iter *iter, unsigned flags);
....[     331]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) unsigned
....[     332]: radix_tree_chunk_size(struct radix_tree_iter *iter)
....[     333]: {
....[     334]: return iter->next_index - iter->index;
....[     335]: }
....[     348]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void **
....[     349]: radix_tree_next_slot(void **slot, struct radix_tree_iter *iter, unsigned flags)
....[     350]: {
....[     351]: if (flags & 0x0100) {
....[     352]: iter->tags >>= 1;
....[     353]: if (__builtin_expect(!!(iter->tags & 1ul), 1)) {
....[     354]: iter->index++;
....[     355]: return slot + 1;
....[     356]: }
....[     357]: if (!(flags & 0x0200) && __builtin_expect(!!(iter->tags), 1)) {
....[     358]: unsigned offset = __ffs(iter->tags);
....[     360]: iter->tags >>= offset;
....[     361]: iter->index += offset + 1;
....[     362]: return slot + offset + 1;
....[     363]: }
....[     364]: } else {
....[     365]: unsigned size = radix_tree_chunk_size(iter) - 1;
....[     367]: while (size--) {
....[     368]: slot++;
....[     369]: iter->index++;
....[     370]: if (__builtin_expect(!!(*slot), 1))
....[     371]: return slot;
....[     372]: if (flags & 0x0200) {
....[     374]: iter->next_index = 0;
....[     375]: break;
....[     376]: }
....[     377]: }
....[     378]: }
....[     379]: return ((void *)0);
....[     380]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/radix-tree.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rbtree.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rbtree.h
....[      35]: struct rb_node {
....[      36]: unsigned long __rb_parent_color;
....[      37]: struct rb_node *rb_right;
....[      38]: struct rb_node *rb_left;
....[      39]: } __attribute__((aligned(sizeof(long))));
....[      42]: struct rb_root {
....[      43]: struct rb_node *rb_node;
....[      44]: };
....[      61]: extern void rb_insert_color(struct rb_node *, struct rb_root *);
....[      62]: extern void rb_erase(struct rb_node *, struct rb_root *);
....[      66]: extern struct rb_node *rb_next(const struct rb_node *);
....[      67]: extern struct rb_node *rb_prev(const struct rb_node *);
....[      68]: extern struct rb_node *rb_first(const struct rb_root *);
....[      69]: extern struct rb_node *rb_last(const struct rb_root *);
....[      72]: extern struct rb_node *rb_first_postorder(const struct rb_root *);
....[      73]: extern struct rb_node *rb_next_postorder(const struct rb_node *);
....[      76]: extern void rb_replace_node(struct rb_node *victim, struct rb_node *new,
....[      77]: struct rb_root *root);
....[      79]: static inline __attribute__((no_instrument_function)) void rb_link_node(struct rb_node * node, struct rb_node \
....                * parent,
....[      80]: struct rb_node ** rb_link)
....[      81]: {
....[      82]: node->__rb_parent_color = (unsigned long)parent;
....[      83]: node->rb_left = node->rb_right = ((void *)0);
....[      85]: *rb_link = node;
....[      86]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rbtree.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pid.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pid.h
....[       6]: enum pid_type
....[       7]: {
....[       8]: PIDTYPE_PID,
....[       9]: PIDTYPE_PGID,
....[      10]: PIDTYPE_SID,
....[      11]: PIDTYPE_MAX
....[      12]: };
....[      50]: struct upid {
....[      52]: int nr;
....[      53]: struct pid_namespace *ns;
....[      54]: struct hlist_node pid_chain;
....[      55]: };
....[      57]: struct pid
....[      58]: {
....[      59]: atomic_t count;
....[      60]: unsigned int level;
....[      62]: struct hlist_head tasks[PIDTYPE_MAX];
....[      63]: struct callback_head rcu;
....[      64]: struct upid numbers[1];
....[      65]: };
....[      67]: extern struct pid init_struct_pid;
....[      69]: struct pid_link
....[      70]: {
....[      71]: struct hlist_node node;
....[      72]: struct pid *pid;
....[      73]: };
....[      75]: static inline __attribute__((no_instrument_function)) struct pid *get_pid(struct pid *pid)
....[      76]: {
....[      77]: if (pid)
....[      78]: atomic_inc(&pid->count);
....[      79]: return pid;
....[      80]: }
....[      82]: extern void put_pid(struct pid *pid);
....[      83]: extern struct task_struct *pid_task(struct pid *pid, enum pid_type);
....[      84]: extern struct task_struct *get_pid_task(struct pid *pid, enum pid_type);
....[      86]: extern struct pid *get_task_pid(struct task_struct *task, enum pid_type type);
....[      91]: extern void attach_pid(struct task_struct *task, enum pid_type);
....[      92]: extern void detach_pid(struct task_struct *task, enum pid_type);
....[      93]: extern void change_pid(struct task_struct *task, enum pid_type,
....[      94]: struct pid *pid);
....[      95]: extern void transfer_pid(struct task_struct *old, struct task_struct *new,
....[      96]: enum pid_type);
....[      98]: struct pid_namespace;
....[      99]: extern struct pid_namespace init_pid_ns;
....[     110]: extern struct pid *find_pid_ns(int nr, struct pid_namespace *ns);
....[     111]: extern struct pid *find_vpid(int nr);
....[     116]: extern struct pid *find_get_pid(int nr);
....[     117]: extern struct pid *find_ge_pid(int nr, struct pid_namespace *);
....[     118]: int next_pidmap(struct pid_namespace *pid_ns, unsigned int last);
....[     120]: extern struct pid *alloc_pid(struct pid_namespace *ns);
....[     121]: extern void free_pid(struct pid *pid);
....[     122]: extern void disable_pid_allocation(struct pid_namespace *ns);
....[     134]: static inline __attribute__((no_instrument_function)) struct pid_namespace *ns_of_pid(struct pid *pid)
....[     135]: {
....[     136]: struct pid_namespace *ns = ((void *)0);
....[     137]: if (pid)
....[     138]: ns = pid->numbers[pid->level].ns;
....[     139]: return ns;
....[     140]: }
....[     148]: static inline __attribute__((no_instrument_function)) bool is_child_reaper(struct pid *pid)
....[     149]: {
....[     150]: return pid->numbers[pid->level].nr == 1;
....[     151]: }
....[     164]: static inline __attribute__((no_instrument_function)) pid_t pid_nr(struct pid *pid)
....[     165]: {
....[     166]: pid_t nr = 0;
....[     167]: if (pid)
....[     168]: nr = pid->numbers[0].nr;
....[     169]: return nr;
....[     170]: }
....[     172]: pid_t pid_nr_ns(struct pid *pid, struct pid_namespace *ns);
....[     173]: pid_t pid_vnr(struct pid *pid);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pid.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mutex.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mutex.h
....[      49]: struct mutex {
....[      51]: atomic_t count;
....[      52]: spinlock_t wait_lock;
....[      53]: struct list_head wait_list;
....[      55]: struct task_struct *owner;
....[      58]: void *spin_mlock;
....[      67]: };
....[      73]: struct mutex_waiter {
....[      74]: struct list_head list;
....[      75]: struct task_struct *task;
....[      79]: };
....[      99]: static inline __attribute__((no_instrument_function)) void mutex_destroy(struct mutex *lock) {}
....[     119]: extern void __mutex_init(struct mutex *lock, const char *name,
....[     120]: struct lock_class_key *key);
....[     128]: static inline __attribute__((no_instrument_function)) int mutex_is_locked(struct mutex *lock)
....[     129]: {
....[     130]: return atomic_read(&lock->count) != 1;
....[     131]: }
....[     157]: extern void mutex_lock(struct mutex *lock);
....[     158]: extern int mutex_lock_interruptible(struct mutex *lock);
....[     159]: extern int mutex_lock_killable(struct mutex *lock);
....[     173]: extern int mutex_trylock(struct mutex *lock);
....[     174]: extern void mutex_unlock(struct mutex *lock);
....[     176]: extern int atomic_dec_and_mutex_lock(atomic_t *cnt, struct mutex *lock);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mutex.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/capability.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/capability.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/capability.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/capability.h
.....[      18]: struct task_struct;
.....[      40]: typedef struct __user_cap_header_struct {
.....[      41]: __u32 version;
.....[      42]: int pid;
.....[      43]: } *cap_user_header_t;
.....[      45]: typedef struct __user_cap_data_struct {
.....[      46]: __u32 effective;
.....[      47]: __u32 permitted;
.....[      48]: __u32 inheritable;
.....[      49]: } *cap_user_data_t;
.....[      69]: struct vfs_cap_data {
.....[      70]: __le32 magic_etc;
.....[      71]: struct {
.....[      72]: __le32 permitted;
.....[      73]: __le32 inheritable;
.....[      74]: } data[2];
.....[      75]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/capability.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/capability.h
....[      21]: extern int file_caps_enabled;
....[      23]: typedef struct kernel_cap_struct {
....[      24]: __u32 cap[2];
....[      25]: } kernel_cap_t;
....[      28]: struct cpu_vfs_cap_data {
....[      29]: __u32 magic_etc;
....[      30]: kernel_cap_t permitted;
....[      31]: kernel_cap_t inheritable;
....[      32]: };
....[      38]: struct file;
....[      39]: struct inode;
....[      40]: struct dentry;
....[      41]: struct user_namespace;
....[      43]: struct user_namespace *current_user_ns(void);
....[      45]: extern const kernel_cap_t __cap_empty_set;
....[      46]: extern const kernel_cap_t __cap_init_eff_set;
....[     114]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_combine(const kernel_cap_t a,
....[     115]: const kernel_cap_t b)
....[     116]: {
....[     117]: kernel_cap_t dest;
....[     118]: do { unsigned __capi; for (__capi = 0; __capi < 2; ++__capi) { dest.cap[__capi] = a.cap[__capi] | b.cap[__capi]; } } while \
....                (0);
....[     119]: return dest;
....[     120]: }
....[     122]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_intersect(const kernel_cap_t a,
....[     123]: const kernel_cap_t b)
....[     124]: {
....[     125]: kernel_cap_t dest;
....[     126]: do { unsigned __capi; for (__capi = 0; __capi < 2; ++__capi) { dest.cap[__capi] = a.cap[__capi] & b.cap[__capi]; } } while \
....                (0);
....[     127]: return dest;
....[     128]: }
....[     130]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_drop(const kernel_cap_t a,
....[     131]: const kernel_cap_t drop)
....[     132]: {
....[     133]: kernel_cap_t dest;
....[     134]: do { unsigned __capi; for (__capi = 0; __capi < 2; ++__capi) { dest.cap[__capi] = a.cap[__capi] &~ drop.cap[__capi]; } \
....                } while (0);
....[     135]: return dest;
....[     136]: }
....[     138]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_invert(const kernel_cap_t c)
....[     139]: {
....[     140]: kernel_cap_t dest;
....[     141]: do { unsigned __capi; for (__capi = 0; __capi < 2; ++__capi) { dest.cap[__capi] = ~ c.cap[__capi]; } } while (0);
....[     142]: return dest;
....[     143]: }
....[     145]: static inline __attribute__((no_instrument_function)) int cap_isclear(const kernel_cap_t a)
....[     146]: {
....[     147]: unsigned __capi;
....[     148]: for (__capi = 0; __capi < 2; ++__capi) {
....[     149]: if (a.cap[__capi] != 0)
....[     150]: return 0;
....[     151]: }
....[     152]: return 1;
....[     153]: }
....[     162]: static inline __attribute__((no_instrument_function)) int cap_issubset(const kernel_cap_t a, const kernel_cap_t \
....                set)
....[     163]: {
....[     164]: kernel_cap_t dest;
....[     165]: dest = cap_drop(a, set);
....[     166]: return cap_isclear(dest);
....[     167]: }
....[     171]: static inline __attribute__((no_instrument_function)) int cap_is_fs_cap(int cap)
....[     172]: {
....[     173]: const kernel_cap_t __cap_fs_set = ((kernel_cap_t){{ ((1 << ((0) & 31)) | (1 << ((27) & 31)) | (1 << ((1) & 31)) | (1 << ((2) & \
....                31)) | (1 << ((3) & 31)) | (1 << ((4) & 31))) | (1 << ((9) & 31)), ((1 << ((32) & 31))) } });
....[     174]: return !!((1 << ((cap) & 31)) & __cap_fs_set.cap[((cap) >> 5)]);
....[     175]: }
....[     177]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_drop_fs_set(const kernel_cap_t a)
....[     178]: {
....[     179]: const kernel_cap_t __cap_fs_set = ((kernel_cap_t){{ ((1 << ((0) & 31)) | (1 << ((27) & 31)) | (1 << ((1) & 31)) | (1 << ((2) & \
....                31)) | (1 << ((3) & 31)) | (1 << ((4) & 31))) | (1 << ((9) & 31)), ((1 << ((32) & 31))) } });
....[     180]: return cap_drop(a, __cap_fs_set);
....[     181]: }
....[     183]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_raise_fs_set(const kernel_cap_t a,
....[     184]: const kernel_cap_t permitted)
....[     185]: {
....[     186]: const kernel_cap_t __cap_fs_set = ((kernel_cap_t){{ ((1 << ((0) & 31)) | (1 << ((27) & 31)) | (1 << ((1) & 31)) | (1 << ((2) & \
....                31)) | (1 << ((3) & 31)) | (1 << ((4) & 31))) | (1 << ((9) & 31)), ((1 << ((32) & 31))) } });
....[     187]: return cap_combine(a,
....[     188]: cap_intersect(permitted, __cap_fs_set));
....[     189]: }
....[     191]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_drop_nfsd_set(const kernel_cap_t a)
....[     192]: {
....[     193]: const kernel_cap_t __cap_fs_set = ((kernel_cap_t){{ ((1 << ((0) & 31)) | (1 << ((27) & 31)) | (1 << ((1) & 31)) | (1 << ((2) & \
....                31)) | (1 << ((3) & 31)) | (1 << ((4) & 31))) | (1 << ((24) & 31)), ((1 << ((32) & 31))) } });
....[     194]: return cap_drop(a, __cap_fs_set);
....[     195]: }
....[     197]: static inline __attribute__((no_instrument_function)) kernel_cap_t cap_raise_nfsd_set(const kernel_cap_t a\
....                ,
....[     198]: const kernel_cap_t permitted)
....[     199]: {
....[     200]: const kernel_cap_t __cap_nfsd_set = ((kernel_cap_t){{ ((1 << ((0) & 31)) | (1 << ((27) & 31)) | (1 << ((1) & 31)) | (1 << ((2\
....                ) & 31)) | (1 << ((3) & 31)) | (1 << ((4) & 31))) | (1 << ((24) & 31)), ((1 << ((32) & 31))) } });
....[     201]: return cap_combine(a,
....[     202]: cap_intersect(permitted, __cap_nfsd_set));
....[     203]: }
....[     205]: extern bool has_capability(struct task_struct *t, int cap);
....[     206]: extern bool has_ns_capability(struct task_struct *t,
....[     207]: struct user_namespace *ns, int cap);
....[     208]: extern bool has_capability_noaudit(struct task_struct *t, int cap);
....[     209]: extern bool has_ns_capability_noaudit(struct task_struct *t,
....[     210]: struct user_namespace *ns, int cap);
....[     211]: extern bool capable(int cap);
....[     212]: extern bool ns_capable(struct user_namespace *ns, int cap);
....[     213]: extern bool inode_capable(const struct inode *inode, int cap);
....[     214]: extern bool file_ns_capable(const struct file *file, struct user_namespace *ns, int cap);
....[     217]: extern int get_vfs_caps_from_disk(const struct dentry *dentry, struct cpu_vfs_cap_data *cpu_caps);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/capability.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/semaphore.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/semaphore.h
....[      16]: struct semaphore {
....[      17]: raw_spinlock_t lock;
....[      18]: unsigned int count;
....[      19]: struct list_head wait_list;
....[      20]: };
....[      32]: static inline __attribute__((no_instrument_function)) void sema_init(struct semaphore *sem, int val)
....[      33]: {
....[      34]: static struct lock_class_key __key;
....[      35]: *sem = (struct semaphore) { .lock = (raw_spinlock_t) { .raw_lock = { { 0 } }, }, .count = val, .wait_list = { &((*sem).wait_list\
....                ), &((*sem).wait_list) }, };
....[      36]: do { (void)("semaphore->lock"); (void)(&__key); } while (0);
....[      37]: }
....[      39]: extern void down(struct semaphore *sem);
....[      40]: extern int down_interruptible(struct semaphore *sem);
....[      41]: extern int down_killable(struct semaphore *sem);
....[      42]: extern int down_trylock(struct semaphore *sem);
....[      43]: extern int down_timeout(struct semaphore *sem, long jiffies);
....[      44]: extern void up(struct semaphore *sem);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/semaphore.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fiemap.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fiemap.h
....[      16]: struct fiemap_extent {
....[      17]: __u64 fe_logical;
....[      19]: __u64 fe_physical;
....[      21]: __u64 fe_length;
....[      22]: __u64 fe_reserved64[2];
....[      23]: __u32 fe_flags;
....[      24]: __u32 fe_reserved[3];
....[      25]: };
....[      27]: struct fiemap {
....[      28]: __u64 fm_start;
....[      30]: __u64 fm_length;
....[      32]: __u32 fm_flags;
....[      33]: __u32 fm_mapped_extents;
....[      34]: __u32 fm_extent_count;
....[      35]: __u32 fm_reserved;
....[      36]: struct fiemap_extent fm_extents[0];
....[      37]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fiemap.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/shrinker.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/shrinker.h
....[      11]: struct shrink_control {
....[      12]: gfp_t gfp_mask;
....[      19]: unsigned long nr_to_scan;
....[      22]: nodemask_t nodes_to_scan;
....[      24]: int nid;
....[      25]: };
....[      48]: struct shrinker {
....[      49]: unsigned long (*count_objects)(struct shrinker *,
....[      50]: struct shrink_control *sc);
....[      51]: unsigned long (*scan_objects)(struct shrinker *,
....[      52]: struct shrink_control *sc);
....[      54]: int seeks;
....[      55]: long batch;
....[      56]: unsigned long flags;
....[      59]: struct list_head list;
....[      61]: atomic_long_t *nr_deferred;
....[      62]: };
....[      68]: extern int register_shrinker(struct shrinker *);
....[      69]: extern void unregister_shrinker(struct shrinker *);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/shrinker.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/migrate_mode.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/migrate_mode.h
....[      10]: enum migrate_mode {
....[      11]: MIGRATE_ASYNC,
....[      12]: MIGRATE_SYNC_LIGHT,
....[      13]: MIGRATE_SYNC,
....[      14]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/migrate_mode.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-rwsem.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-rwsem.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwsem.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwsem.h
.....[      19]: struct rw_semaphore;
.....[      25]: struct rw_semaphore {
.....[      26]: long count;
.....[      27]: raw_spinlock_t wait_lock;
.....[      28]: struct list_head wait_list;
.....[      32]: };
.....[      34]: extern struct rw_semaphore *rwsem_down_read_failed(struct rw_semaphore *sem);
.....[      35]: extern struct rw_semaphore *rwsem_down_write_failed(struct rw_semaphore *sem);
.....[      36]: extern struct rw_semaphore *rwsem_wake(struct rw_semaphore *);
.....[      37]: extern struct rw_semaphore *rwsem_downgrade_wake(struct rw_semaphore *sem);
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwsem.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/rwsem.h
......[      63]: static inline __attribute__((no_instrument_function)) void __down_read(struct rw_semaphore *sem)
......[      64]: {
......[      65]: asm volatile("# beginning down_read\n\t"
......[      66]: ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " " " \
......                "incq" " " "(%1)\n\t"
......[      68]: "  jns        1f\n"
......[      69]: "  call call_rwsem_down_read_failed\n"
......[      70]: "1:\n\t"
......[      71]: "# ending down_read\n\t"
......[      72]: : "+m" (sem->count)
......[      73]: : "a" (sem)
......[      74]: : "memory", "cc");
......[      75]: }
......[      80]: static inline __attribute__((no_instrument_function)) int __down_read_trylock(struct rw_semaphore *sem)
......[      81]: {
......[      82]: long result, tmp;
......[      83]: asm volatile("# beginning __down_read_trylock\n\t"
......[      84]: "  mov          %0,%1\n\t"
......[      85]: "1:\n\t"
......[      86]: "  mov          %1,%2\n\t"
......[      87]: "  add          %3,%2\n\t"
......[      88]: "  jle	     2f\n\t"
......[      89]: ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "  cmpxchg  %2,%0\n\t"
......[      90]: "  jnz	     1b\n\t"
......[      91]: "2:\n\t"
......[      92]: "# ending __down_read_trylock\n\t"
......[      93]: : "+m" (sem->count), "=&a" (result), "=&r" (tmp)
......[      94]: : "i" (0x00000001L)
......[      95]: : "memory", "cc");
......[      96]: return result >= 0 ? 1 : 0;
......[      97]: }
......[     102]: static inline __attribute__((no_instrument_function)) void __down_write_nested(struct rw_semaphore *sem, int \
......                subclass)
......[     103]: {
......[     104]: long tmp;
......[     105]: asm volatile("# beginning down_write\n\t"
......[     106]: ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "  xadd      %1,(%2)\n\t"
......[     108]: "  test " " " "%k1" " " "," " " "%k1" " " "\n\t"
......[     110]: "  jz        1f\n"
......[     111]: "  call call_rwsem_down_write_failed\n"
......[     112]: "1:\n"
......[     113]: "# ending down_write"
......[     114]: : "+m" (sem->count), "=d" (tmp)
......[     115]: : "a" (sem), "1" (((-0xffffffffL-1) + 0x00000001L))
......[     116]: : "memory", "cc");
......[     117]: }
......[     119]: static inline __attribute__((no_instrument_function)) void __down_write(struct rw_semaphore *sem)
......[     120]: {
......[     121]: __down_write_nested(sem, 0);
......[     122]: }
......[     127]: static inline __attribute__((no_instrument_function)) int __down_write_trylock(struct rw_semaphore *sem)
......[     128]: {
......[     129]: long result, tmp;
......[     130]: asm volatile("# beginning __down_write_trylock\n\t"
......[     131]: "  mov          %0,%1\n\t"
......[     132]: "1:\n\t"
......[     133]: "  test " " " "%k1" " " "," " " "%k1" " " "\n\t"
......[     135]: "  jnz          2f\n\t"
......[     136]: "  mov          %1,%2\n\t"
......[     137]: "  add          %3,%2\n\t"
......[     138]: ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "  cmpxchg  %2,%0\n\t"
......[     139]: "  jnz	     1b\n\t"
......[     140]: "2:\n\t"
......[     141]: "  sete         %b1\n\t"
......[     142]: "  movzbl       %b1, %k1\n\t"
......[     143]: "# ending __down_write_trylock\n\t"
......[     144]: : "+m" (sem->count), "=&a" (result), "=&r" (tmp)
......[     145]: : "er" (((-0xffffffffL-1) + 0x00000001L))
......[     146]: : "memory", "cc");
......[     147]: return result;
......[     148]: }
......[     153]: static inline __attribute__((no_instrument_function)) void __up_read(struct rw_semaphore *sem)
......[     154]: {
......[     155]: long tmp;
......[     156]: asm volatile("# beginning __up_read\n\t"
......[     157]: ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "  xadd      %1,(%2)\n\t"
......[     159]: "  jns        1f\n\t"
......[     160]: "  call call_rwsem_wake\n"
......[     161]: "1:\n"
......[     162]: "# ending __up_read\n"
......[     163]: : "+m" (sem->count), "=d" (tmp)
......[     164]: : "a" (sem), "1" (-0x00000001L)
......[     165]: : "memory", "cc");
......[     166]: }
......[     171]: static inline __attribute__((no_instrument_function)) void __up_write(struct rw_semaphore *sem)
......[     172]: {
......[     173]: long tmp;
......[     174]: asm volatile("# beginning __up_write\n\t"
......[     175]: ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "  xadd      %1,(%2)\n\t"
......[     177]: "  jns        1f\n\t"
......[     178]: "  call call_rwsem_wake\n"
......[     179]: "1:\n\t"
......[     180]: "# ending __up_write\n"
......[     181]: : "+m" (sem->count), "=d" (tmp)
......[     182]: : "a" (sem), "1" (-((-0xffffffffL-1) + 0x00000001L))
......[     183]: : "memory", "cc");
......[     184]: }
......[     189]: static inline __attribute__((no_instrument_function)) void __downgrade_write(struct rw_semaphore *sem)
......[     190]: {
......[     191]: asm volatile("# beginning __downgrade_write\n\t"
......[     192]: ".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " " " \
......                "addq" " " "%2,(%1)\n\t"
......[     197]: "  jns       1f\n\t"
......[     198]: "  call call_rwsem_downgrade_wake\n"
......[     199]: "1:\n\t"
......[     200]: "# ending __downgrade_write\n"
......[     201]: : "+m" (sem->count)
......[     202]: : "a" (sem), "er" (-(-0xffffffffL-1))
......[     203]: : "memory", "cc");
......[     204]: }
......[     209]: static inline __attribute__((no_instrument_function)) void rwsem_atomic_add(long delta, struct rw_semaphore \
......                *sem)
......[     210]: {
......[     211]: asm volatile(".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
......                " " "addq" " " "%1,%0"
......[     212]: : "+m" (sem->count)
......[     213]: : "er" (delta));
......[     214]: }
......[     219]: static inline __attribute__((no_instrument_function)) long rwsem_atomic_update(long delta, struct rw_semaphore \
......                *sem)
......[     220]: {
......[     221]: return delta + ({ __typeof__ (*(((&sem->count)))) __ret = (((delta))); switch (sizeof(*(((&sem->count))))) { case \
......                1: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " \
......                "xadd" "b %b0, %1\n" : "+q" (__ret), "+m" (*(((&sem->count)))) : : "memory", "cc"); break; case 2: asm volatile (".pushsection .smp_locks,\"a\"\n" \
......                ".balign 4\n" ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "w %w0, %1\n" : "+r" (__ret), "+m" \
......                (*(((&sem->count)))) : : "memory", "cc"); break; case 4: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" \
......                ".long 671f - .\n" ".popsection\n" "671:" "\n\tlock; " "xadd" "l %0, %1\n" : "+r" (__ret), "+m" (*(((&sem->count\
......                )))) : : "memory", "cc"); break; case 8: asm volatile (".pushsection .smp_locks,\"a\"\n" ".balign 4\n" ".long 671f - .\n" \
......                ".popsection\n" "671:" "\n\tlock; " "xadd" "q %q0, %1\n" : "+r" (__ret), "+m" (*(((&sem->count)))) : : "memory", \
......                "cc"); break; default: __xadd_wrong_size(); } __ret; });
......[     222]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/rwsem.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwsem.h
.....[      43]: static inline __attribute__((no_instrument_function)) int rwsem_is_locked(struct rw_semaphore *sem)
.....[      44]: {
.....[      45]: return sem->count != 0;
.....[      46]: }
.....[      67]: extern void __init_rwsem(struct rw_semaphore *sem, const char *name,
.....[      68]: struct lock_class_key *key);
.....[      80]: extern void down_read(struct rw_semaphore *sem);
.....[      85]: extern int down_read_trylock(struct rw_semaphore *sem);
.....[      90]: extern void down_write(struct rw_semaphore *sem);
.....[      95]: extern int down_write_trylock(struct rw_semaphore *sem);
.....[     100]: extern void up_read(struct rw_semaphore *sem);
.....[     105]: extern void up_write(struct rw_semaphore *sem);
.....[     110]: extern void downgrade_write(struct rw_semaphore *sem);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rwsem.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-rwsem.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/smp.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/smp.h
......[      15]: extern void cpu_idle(void);
......[      17]: typedef void (*smp_call_func_t)(void *info);
......[      18]: struct call_single_data {
......[      19]: struct list_head list;
......[      20]: smp_call_func_t func;
......[      21]: void *info;
......[      22]: u16 flags;
......[      23]: };
......[      26]: extern unsigned int total_cpus;
......[      28]: int smp_call_function_single(int cpuid, smp_call_func_t func, void *info,
......[      29]: int wait);
......[      34]: int on_each_cpu(smp_call_func_t func, void *info, int wait);
......[      40]: void on_each_cpu_mask(const struct cpumask *mask, smp_call_func_t func,
......[      41]: void *info, bool wait);
......[      48]: void on_each_cpu_cond(bool (*cond_func)(int cpu, void *info),
......[      49]: smp_call_func_t func, void *info, bool wait,
......[      50]: gfp_t gfp_flags);
......[      52]: void __smp_call_function_single(int cpuid, struct call_single_data *data,
......[      53]: int wait);
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/smp.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smp.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smp.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec_def.h
.........[      21]: struct mpf_intel {
.........[      22]: char signature[4];
.........[      23]: unsigned int physptr;
.........[      24]: unsigned char length;
.........[      25]: unsigned char specification;
.........[      26]: unsigned char checksum;
.........[      27]: unsigned char feature1;
.........[      28]: unsigned char feature2;
.........[      29]: unsigned char feature3;
.........[      30]: unsigned char feature4;
.........[      31]: unsigned char feature5;
.........[      32]: };
.........[      36]: struct mpc_table {
.........[      37]: char signature[4];
.........[      38]: unsigned short length;
.........[      39]: char spec;
.........[      40]: char checksum;
.........[      41]: char oem[8];
.........[      42]: char productid[12];
.........[      43]: unsigned int oemptr;
.........[      44]: unsigned short oemsize;
.........[      45]: unsigned short oemcount;
.........[      46]: unsigned int lapic;
.........[      47]: unsigned int reserved;
.........[      48]: };
.........[      67]: struct mpc_cpu {
.........[      68]: unsigned char type;
.........[      69]: unsigned char apicid;
.........[      70]: unsigned char apicver;
.........[      71]: unsigned char cpuflag;
.........[      72]: unsigned int cpufeature;
.........[      73]: unsigned int featureflag;
.........[      74]: unsigned int reserved[2];
.........[      75]: };
.........[      77]: struct mpc_bus {
.........[      78]: unsigned char type;
.........[      79]: unsigned char busid;
.........[      80]: unsigned char bustype[6];
.........[      81]: };
.........[     105]: struct mpc_ioapic {
.........[     106]: unsigned char type;
.........[     107]: unsigned char apicid;
.........[     108]: unsigned char apicver;
.........[     109]: unsigned char flags;
.........[     110]: unsigned int apicaddr;
.........[     111]: };
.........[     113]: struct mpc_intsrc {
.........[     114]: unsigned char type;
.........[     115]: unsigned char irqtype;
.........[     116]: unsigned short irqflag;
.........[     117]: unsigned char srcbus;
.........[     118]: unsigned char srcbusirq;
.........[     119]: unsigned char dstapic;
.........[     120]: unsigned char dstirq;
.........[     121]: };
.........[     123]: enum mp_irq_source_types {
.........[     124]: mp_INT = 0,
.........[     125]: mp_NMI = 1,
.........[     126]: mp_SMI = 2,
.........[     127]: mp_ExtINT = 3
.........[     128]: };
.........[     136]: struct mpc_lintsrc {
.........[     137]: unsigned char type;
.........[     138]: unsigned char irqtype;
.........[     139]: unsigned short irqflag;
.........[     140]: unsigned char srcbusid;
.........[     141]: unsigned char srcbusirq;
.........[     142]: unsigned char destapic;
.........[     143]: unsigned char destapiclint;
.........[     144]: };
.........[     148]: struct mpc_oemtable {
.........[     149]: char signature[4];
.........[     150]: unsigned short length;
.........[     151]: char rev;
.........[     152]: char checksum;
.........[     153]: char mpc[8];
.........[     154]: };
.........[     168]: enum mp_bustype {
.........[     169]: MP_BUS_ISA = 1,
.........[     170]: MP_BUS_EISA,
.........[     171]: MP_BUS_PCI,
.........[     172]: };
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec_def.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/x86_init.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/x86_init.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/screen_info.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/screen_info.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/screen_info.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/screen_info.h
............[      10]: struct screen_info {
............[      11]: __u8 orig_x;
............[      12]: __u8 orig_y;
............[      13]: __u16 ext_mem_k;
............[      14]: __u16 orig_video_page;
............[      15]: __u8 orig_video_mode;
............[      16]: __u8 orig_video_cols;
............[      17]: __u8 flags;
............[      18]: __u8 unused2;
............[      19]: __u16 orig_video_ega_bx;
............[      20]: __u16 unused3;
............[      21]: __u8 orig_video_lines;
............[      22]: __u8 orig_video_isVGA;
............[      23]: __u16 orig_video_points;
............[      26]: __u16 lfb_width;
............[      27]: __u16 lfb_height;
............[      28]: __u16 lfb_depth;
............[      29]: __u32 lfb_base;
............[      30]: __u32 lfb_size;
............[      31]: __u16 cl_magic, cl_offset;
............[      32]: __u16 lfb_linelength;
............[      33]: __u8 red_size;
............[      34]: __u8 red_pos;
............[      35]: __u8 green_size;
............[      36]: __u8 green_pos;
............[      37]: __u8 blue_size;
............[      38]: __u8 blue_pos;
............[      39]: __u8 rsvd_size;
............[      40]: __u8 rsvd_pos;
............[      41]: __u16 vesapm_seg;
............[      42]: __u16 vesapm_off;
............[      43]: __u16 pages;
............[      44]: __u16 vesa_attributes;
............[      45]: __u32 capabilities;
............[      46]: __u8 _reserved[6];
............[      47]: } __attribute__((packed));
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/screen_info.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/screen_info.h
...........[       6]: extern struct screen_info screen_info;
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/screen_info.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/apm_bios.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/apm_bios.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/apm_bios.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/apm_bios.h
............[      21]: typedef unsigned short apm_event_t;
............[      22]: typedef unsigned short apm_eventinfo_t;
............[      24]: struct apm_bios_info {
............[      25]: __u16 version;
............[      26]: __u16 cseg;
............[      27]: __u32 offset;
............[      28]: __u16 cseg_16;
............[      29]: __u16 dseg;
............[      30]: __u16 flags;
............[      31]: __u16 cseg_len;
............[      32]: __u16 cseg_16_len;
............[      33]: __u16 dseg_len;
............[      34]: };
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/apm_bios.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/apm_bios.h
...........[      35]: struct apm_info {
...........[      36]: struct apm_bios_info bios;
...........[      37]: unsigned short connection_version;
...........[      38]: int get_power_status_broken;
...........[      39]: int get_power_status_swabinminutes;
...........[      40]: int allow_ints;
...........[      41]: int forbid_idle;
...........[      42]: int realmode_power_off;
...........[      43]: int disabled;
...........[      44]: };
...........[      94]: extern struct apm_info apm_info;
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/apm_bios.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/edd.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/edd.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/edd.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/edd.h
............[      71]: struct edd_device_params {
............[      72]: __u16 length;
............[      73]: __u16 info_flags;
............[      74]: __u32 num_default_cylinders;
............[      75]: __u32 num_default_heads;
............[      76]: __u32 sectors_per_track;
............[      77]: __u64 number_of_sectors;
............[      78]: __u16 bytes_per_sector;
............[      79]: __u32 dpte_ptr;
............[      80]: __u16 key;
............[      81]: __u8 device_path_info_length;
............[      82]: __u8 reserved2;
............[      83]: __u16 reserved3;
............[      84]: __u8 host_bus_type[4];
............[      85]: __u8 interface_type[8];
............[      86]: union {
............[      87]: struct {
............[      88]: __u16 base_address;
............[      89]: __u16 reserved1;
............[      90]: __u32 reserved2;
............[      91]: } __attribute__ ((packed)) isa;
............[      92]: struct {
............[      93]: __u8 bus;
............[      94]: __u8 slot;
............[      95]: __u8 function;
............[      96]: __u8 channel;
............[      97]: __u32 reserved;
............[      98]: } __attribute__ ((packed)) pci;
............[     100]: struct {
............[     101]: __u64 reserved;
............[     102]: } __attribute__ ((packed)) ibnd;
............[     103]: struct {
............[     104]: __u64 reserved;
............[     105]: } __attribute__ ((packed)) xprs;
............[     106]: struct {
............[     107]: __u64 reserved;
............[     108]: } __attribute__ ((packed)) htpt;
............[     109]: struct {
............[     110]: __u64 reserved;
............[     111]: } __attribute__ ((packed)) unknown;
............[     112]: } interface_path;
............[     113]: union {
............[     114]: struct {
............[     115]: __u8 device;
............[     116]: __u8 reserved1;
............[     117]: __u16 reserved2;
............[     118]: __u32 reserved3;
............[     119]: __u64 reserved4;
............[     120]: } __attribute__ ((packed)) ata;
............[     121]: struct {
............[     122]: __u8 device;
............[     123]: __u8 lun;
............[     124]: __u8 reserved1;
............[     125]: __u8 reserved2;
............[     126]: __u32 reserved3;
............[     127]: __u64 reserved4;
............[     128]: } __attribute__ ((packed)) atapi;
............[     129]: struct {
............[     130]: __u16 id;
............[     131]: __u64 lun;
............[     132]: __u16 reserved1;
............[     133]: __u32 reserved2;
............[     134]: } __attribute__ ((packed)) scsi;
............[     135]: struct {
............[     136]: __u64 serial_number;
............[     137]: __u64 reserved;
............[     138]: } __attribute__ ((packed)) usb;
............[     139]: struct {
............[     140]: __u64 eui;
............[     141]: __u64 reserved;
............[     142]: } __attribute__ ((packed)) i1394;
............[     143]: struct {
............[     144]: __u64 wwid;
............[     145]: __u64 lun;
............[     146]: } __attribute__ ((packed)) fibre;
............[     147]: struct {
............[     148]: __u64 identity_tag;
............[     149]: __u64 reserved;
............[     150]: } __attribute__ ((packed)) i2o;
............[     151]: struct {
............[     152]: __u32 array_number;
............[     153]: __u32 reserved1;
............[     154]: __u64 reserved2;
............[     155]: } __attribute__ ((packed)) raid;
............[     156]: struct {
............[     157]: __u8 device;
............[     158]: __u8 reserved1;
............[     159]: __u16 reserved2;
............[     160]: __u32 reserved3;
............[     161]: __u64 reserved4;
............[     162]: } __attribute__ ((packed)) sata;
............[     163]: struct {
............[     164]: __u64 reserved1;
............[     165]: __u64 reserved2;
............[     166]: } __attribute__ ((packed)) unknown;
............[     167]: } device_path;
............[     168]: __u8 reserved4;
............[     169]: __u8 checksum;
............[     170]: } __attribute__ ((packed));
............[     172]: struct edd_info {
............[     173]: __u8 device;
............[     174]: __u8 version;
............[     175]: __u16 interface_support;
............[     176]: __u16 legacy_max_cylinder;
............[     177]: __u8 legacy_max_head;
............[     178]: __u8 legacy_sectors_per_track;
............[     179]: struct edd_device_params params;
............[     180]: } __attribute__ ((packed));
............[     182]: struct edd {
............[     183]: unsigned int mbr_signature[16];
............[     184]: struct edd_info edd_info[6];
............[     185]: unsigned char mbr_signature_nr;
............[     186]: unsigned char edd_info_nr;
............[     187]: };
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/edd.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/edd.h
...........[      36]: extern struct edd edd;
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/edd.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/e820.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/e820.h
...........[      52]: struct e820entry {
...........[      53]: __u64 addr;
...........[      54]: __u64 size;
...........[      55]: __u32 type;
...........[      56]: } __attribute__((packed));
...........[      58]: struct e820map {
...........[      59]: __u32 nr_map;
...........[      60]: struct e820entry map[E820_X_MAX];
...........[      61]: };
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/e820.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ist.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ist.h
...........[      22]: struct ist_info {
...........[      23]: __u32 signature;
...........[      24]: __u32 command;
...........[      25]: __u32 event;
...........[      26]: __u32 perf_level;
...........[      27]: };
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ist.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/video/edid.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/video/edid.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/video/edid.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/video/edid.h
............[       4]: struct edid_info {
............[       5]: unsigned char dummy[128];
............[       6]: };
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/video/edid.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/video/edid.h
...........[       7]: extern struct edid_info edid_info;
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/video/edid.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
..........[      38]: struct setup_data {
..........[      39]: __u64 next;
..........[      40]: __u32 type;
..........[      41]: __u32 len;
..........[      42]: __u8 data[0];
..........[      43]: };
..........[      45]: struct setup_header {
..........[      46]: __u8 setup_sects;
..........[      47]: __u16 root_flags;
..........[      48]: __u32 syssize;
..........[      49]: __u16 ram_size;
..........[      50]: __u16 vid_mode;
..........[      51]: __u16 root_dev;
..........[      52]: __u16 boot_flag;
..........[      53]: __u16 jump;
..........[      54]: __u32 header;
..........[      55]: __u16 version;
..........[      56]: __u32 realmode_swtch;
..........[      57]: __u16 start_sys;
..........[      58]: __u16 kernel_version;
..........[      59]: __u8 type_of_loader;
..........[      60]: __u8 loadflags;
..........[      61]: __u16 setup_move_size;
..........[      62]: __u32 code32_start;
..........[      63]: __u32 ramdisk_image;
..........[      64]: __u32 ramdisk_size;
..........[      65]: __u32 bootsect_kludge;
..........[      66]: __u16 heap_end_ptr;
..........[      67]: __u8 ext_loader_ver;
..........[      68]: __u8 ext_loader_type;
..........[      69]: __u32 cmd_line_ptr;
..........[      70]: __u32 initrd_addr_max;
..........[      71]: __u32 kernel_alignment;
..........[      72]: __u8 relocatable_kernel;
..........[      73]: __u8 min_alignment;
..........[      74]: __u16 xloadflags;
..........[      75]: __u32 cmdline_size;
..........[      76]: __u32 hardware_subarch;
..........[      77]: __u64 hardware_subarch_data;
..........[      78]: __u32 payload_offset;
..........[      79]: __u32 payload_length;
..........[      80]: __u64 setup_data;
..........[      81]: __u64 pref_address;
..........[      82]: __u32 init_size;
..........[      83]: __u32 handover_offset;
..........[      84]: } __attribute__((packed));
..........[      86]: struct sys_desc_table {
..........[      87]: __u16 length;
..........[      88]: __u8 table[14];
..........[      89]: };
..........[      92]: struct olpc_ofw_header {
..........[      93]: __u32 ofw_magic;
..........[      94]: __u32 ofw_version;
..........[      95]: __u32 cif_handler;
..........[      96]: __u32 irq_desc_table;
..........[      97]: } __attribute__((packed));
..........[      99]: struct efi_info {
..........[     100]: __u32 efi_loader_signature;
..........[     101]: __u32 efi_systab;
..........[     102]: __u32 efi_memdesc_size;
..........[     103]: __u32 efi_memdesc_version;
..........[     104]: __u32 efi_memmap;
..........[     105]: __u32 efi_memmap_size;
..........[     106]: __u32 efi_systab_hi;
..........[     107]: __u32 efi_memmap_hi;
..........[     108]: };
..........[     111]: struct boot_params {
..........[     112]: struct screen_info screen_info;
..........[     113]: struct apm_bios_info apm_bios_info;
..........[     114]: __u8 _pad2[4];
..........[     115]: __u64 tboot_addr;
..........[     116]: struct ist_info ist_info;
..........[     117]: __u8 _pad3[16];
..........[     118]: __u8 hd0_info[16];
..........[     119]: __u8 hd1_info[16];
..........[     120]: struct sys_desc_table sys_desc_table;
..........[     121]: struct olpc_ofw_header olpc_ofw_header;
..........[     122]: __u32 ext_ramdisk_image;
..........[     123]: __u32 ext_ramdisk_size;
..........[     124]: __u32 ext_cmd_line_ptr;
..........[     125]: __u8 _pad4[116];
..........[     126]: struct edid_info edid_info;
..........[     127]: struct efi_info efi_info;
..........[     128]: __u32 alt_mem_k;
..........[     129]: __u32 scratch;
..........[     130]: __u8 e820_entries;
..........[     131]: __u8 eddbuf_entries;
..........[     132]: __u8 edd_mbr_sig_buf_entries;
..........[     133]: __u8 kbd_status;
..........[     134]: __u8 _pad5[3];
..........[     146]: __u8 sentinel;
..........[     147]: __u8 _pad6[1];
..........[     148]: struct setup_header hdr;
..........[     149]: __u8 _pad7[0x290-0x1f1-sizeof(struct setup_header)];
..........[     150]: __u32 edd_mbr_sig_buffer[16];
..........[     151]: struct e820entry e820_map[128];
..........[     152]: __u8 _pad8[48];
..........[     153]: struct edd_info eddbuf[6];
..........[     154]: __u8 _pad9[276];
..........[     155]: } __attribute__((packed));
..........[     157]: enum {
..........[     158]: X86_SUBARCH_PC = 0,
..........[     159]: X86_SUBARCH_LGUEST,
..........[     160]: X86_SUBARCH_XEN,
..........[     161]: X86_SUBARCH_INTEL_MID,
..........[     162]: X86_SUBARCH_CE4100,
..........[     163]: X86_NR_SUBARCHS,
..........[     164]: };
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/x86_init.h
.........[       7]: struct mpc_bus;
.........[       8]: struct mpc_cpu;
.........[       9]: struct mpc_table;
.........[      10]: struct cpuinfo_x86;
.........[      23]: struct x86_init_mpparse {
.........[      24]: void (*mpc_record)(unsigned int mode);
.........[      25]: void (*setup_ioapic_ids)(void);
.........[      26]: int (*mpc_apic_id)(struct mpc_cpu *m);
.........[      27]: void (*smp_read_mpc_oem)(struct mpc_table *mpc);
.........[      28]: void (*mpc_oem_pci_bus)(struct mpc_bus *m);
.........[      29]: void (*mpc_oem_bus_info)(struct mpc_bus *m, char *name);
.........[      30]: void (*find_smp_config)(void);
.........[      31]: void (*get_smp_config)(unsigned int early);
.........[      32]: };
.........[      42]: struct x86_init_resources {
.........[      43]: void (*probe_roms)(void);
.........[      44]: void (*reserve_resources)(void);
.........[      45]: char *(*memory_setup)(void);
.........[      46]: };
.........[      55]: struct x86_init_irqs {
.........[      56]: void (*pre_vector_init)(void);
.........[      57]: void (*intr_init)(void);
.........[      58]: void (*trap_init)(void);
.........[      59]: };
.........[      66]: struct x86_init_oem {
.........[      67]: void (*arch_setup)(void);
.........[      68]: void (*banner)(void);
.........[      69]: };
.........[      78]: struct x86_init_paging {
.........[      79]: void (*pagetable_init)(void);
.........[      80]: };
.........[      90]: struct x86_init_timers {
.........[      91]: void (*setup_percpu_clockev)(void);
.........[      92]: void (*tsc_pre_init)(void);
.........[      93]: void (*timer_init)(void);
.........[      94]: void (*wallclock_init)(void);
.........[      95]: };
.........[     101]: struct x86_init_iommu {
.........[     102]: int (*iommu_init)(void);
.........[     103]: };
.........[     112]: struct x86_init_pci {
.........[     113]: int (*arch_init)(void);
.........[     114]: int (*init)(void);
.........[     115]: void (*init_irq)(void);
.........[     116]: void (*fixup_irqs)(void);
.........[     117]: };
.........[     123]: struct x86_init_ops {
.........[     124]: struct x86_init_resources resources;
.........[     125]: struct x86_init_mpparse mpparse;
.........[     126]: struct x86_init_irqs irqs;
.........[     127]: struct x86_init_oem oem;
.........[     128]: struct x86_init_paging paging;
.........[     129]: struct x86_init_timers timers;
.........[     130]: struct x86_init_iommu iommu;
.........[     131]: struct x86_init_pci pci;
.........[     132]: };
.........[     139]: struct x86_cpuinit_ops {
.........[     140]: void (*setup_percpu_clockev)(void);
.........[     141]: void (*early_percpu_clock_init)(void);
.........[     142]: void (*fixup_cpu_id)(struct cpuinfo_x86 *c, int node);
.........[     143]: };
.........[     145]: struct timespec;
.........[     159]: struct x86_platform_ops {
.........[     160]: unsigned long (*calibrate_tsc)(void);
.........[     161]: void (*get_wallclock)(struct timespec *ts);
.........[     162]: int (*set_wallclock)(const struct timespec *ts);
.........[     163]: void (*iommu_shutdown)(void);
.........[     164]: bool (*is_untracked_pat_range)(u64 start, u64 end);
.........[     165]: void (*nmi_init)(void);
.........[     166]: unsigned char (*get_nmi_reason)(void);
.........[     167]: int (*i8042_detect)(void);
.........[     168]: void (*save_sched_clock_state)(void);
.........[     169]: void (*restore_sched_clock_state)(void);
.........[     170]: void (*apic_post_init)(void);
.........[     171]: };
.........[     173]: struct pci_dev;
.........[     174]: struct msi_msg;
.........[     175]: struct msi_desc;
.........[     177]: struct x86_msi_ops {
.........[     178]: int (*setup_msi_irqs)(struct pci_dev *dev, int nvec, int type);
.........[     179]: void (*compose_msi_msg)(struct pci_dev *dev, unsigned int irq,
.........[     180]: unsigned int dest, struct msi_msg *msg,
.........[     181]: u8 hpet_id);
.........[     182]: void (*teardown_msi_irq)(unsigned int irq);
.........[     183]: void (*teardown_msi_irqs)(struct pci_dev *dev);
.........[     184]: void (*restore_msi_irqs)(struct pci_dev *dev, int irq);
.........[     185]: int (*setup_hpet_msi)(unsigned int irq, unsigned int id);
.........[     186]: u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag);
.........[     187]: u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag);
.........[     188]: };
.........[     190]: struct IO_APIC_route_entry;
.........[     191]: struct io_apic_irq_attr;
.........[     192]: struct irq_data;
.........[     193]: struct cpumask;
.........[     195]: struct x86_io_apic_ops {
.........[     196]: void (*init) (void);
.........[     197]: unsigned int (*read) (unsigned int apic, unsigned int reg);
.........[     198]: void (*write) (unsigned int apic, unsigned int reg, unsigned int value);
.........[     199]: void (*modify) (unsigned int apic, unsigned int reg, unsigned int value);
.........[     200]: void (*disable)(void);
.........[     201]: void (*print_entries)(unsigned int apic, unsigned int nr_entries);
.........[     202]: int (*set_affinity)(struct irq_data *data,
.........[     203]: const struct cpumask *mask,
.........[     204]: bool force);
.........[     205]: int (*setup_entry)(int irq, struct IO_APIC_route_entry *entry,
.........[     206]: unsigned int destination, int vector,
.........[     207]: struct io_apic_irq_attr *attr);
.........[     208]: void (*eoi_ioapic_pin)(int apic, int pin, int vector);
.........[     209]: };
.........[     211]: extern struct x86_init_ops x86_init;
.........[     212]: extern struct x86_cpuinit_ops x86_cpuinit;
.........[     213]: extern struct x86_platform_ops x86_platform;
.........[     214]: extern struct x86_msi_ops x86_msi;
.........[     215]: extern struct x86_io_apic_ops x86_io_apic_ops;
.........[     216]: extern void x86_init_noop(void);
.........[     217]: extern void x86_init_uint_noop(unsigned int unused);
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/x86_init.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apicdef.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apicdef.h
.........[     178]: struct local_apic {
.........[     180]: struct { unsigned int __reserved[4]; } __reserved_01;
.........[     182]: struct { unsigned int __reserved[4]; } __reserved_02;
.........[     184]: struct {
.........[     185]: unsigned int __reserved_1 : 24,
.........[     186]: phys_apic_id : 4,
.........[     187]: __reserved_2 : 4;
.........[     188]: unsigned int __reserved[3];
.........[     189]: } id;
.........[     191]: const
.........[     192]: struct {
.........[     193]: unsigned int version : 8,
.........[     194]: __reserved_1 : 8,
.........[     195]: max_lvt : 8,
.........[     196]: __reserved_2 : 8;
.........[     197]: unsigned int __reserved[3];
.........[     198]: } version;
.........[     200]: struct { unsigned int __reserved[4]; } __reserved_03;
.........[     202]: struct { unsigned int __reserved[4]; } __reserved_04;
.........[     204]: struct { unsigned int __reserved[4]; } __reserved_05;
.........[     206]: struct { unsigned int __reserved[4]; } __reserved_06;
.........[     208]: struct {
.........[     209]: unsigned int priority : 8,
.........[     210]: __reserved_1 : 24;
.........[     211]: unsigned int __reserved_2[3];
.........[     212]: } tpr;
.........[     214]: const
.........[     215]: struct {
.........[     216]: unsigned int priority : 8,
.........[     217]: __reserved_1 : 24;
.........[     218]: unsigned int __reserved_2[3];
.........[     219]: } apr;
.........[     221]: const
.........[     222]: struct {
.........[     223]: unsigned int priority : 8,
.........[     224]: __reserved_1 : 24;
.........[     225]: unsigned int __reserved_2[3];
.........[     226]: } ppr;
.........[     228]: struct {
.........[     229]: unsigned int eoi;
.........[     230]: unsigned int __reserved[3];
.........[     231]: } eoi;
.........[     233]: struct { unsigned int __reserved[4]; } __reserved_07;
.........[     235]: struct {
.........[     236]: unsigned int __reserved_1 : 24,
.........[     237]: logical_dest : 8;
.........[     238]: unsigned int __reserved_2[3];
.........[     239]: } ldr;
.........[     241]: struct {
.........[     242]: unsigned int __reserved_1 : 28,
.........[     243]: model : 4;
.........[     244]: unsigned int __reserved_2[3];
.........[     245]: } dfr;
.........[     247]: struct {
.........[     248]: unsigned int spurious_vector : 8,
.........[     249]: apic_enabled : 1,
.........[     250]: focus_cpu : 1,
.........[     251]: __reserved_2 : 22;
.........[     252]: unsigned int __reserved_3[3];
.........[     253]: } svr;
.........[     255]: struct {
.........[     256]: unsigned int bitfield;
.........[     257]: unsigned int __reserved[3];
.........[     258]: } isr [8];
.........[     260]: struct {
.........[     261]: unsigned int bitfield;
.........[     262]: unsigned int __reserved[3];
.........[     263]: } tmr [8];
.........[     265]: struct {
.........[     266]: unsigned int bitfield;
.........[     267]: unsigned int __reserved[3];
.........[     268]: } irr [8];
.........[     270]: union {
.........[     271]: struct {
.........[     272]: unsigned int send_cs_error : 1,
.........[     273]: receive_cs_error : 1,
.........[     274]: send_accept_error : 1,
.........[     275]: receive_accept_error : 1,
.........[     276]: __reserved_1 : 1,
.........[     277]: send_illegal_vector : 1,
.........[     278]: receive_illegal_vector : 1,
.........[     279]: illegal_register_address : 1,
.........[     280]: __reserved_2 : 24;
.........[     281]: unsigned int __reserved_3[3];
.........[     282]: } error_bits;
.........[     283]: struct {
.........[     284]: unsigned int errors;
.........[     285]: unsigned int __reserved_3[3];
.........[     286]: } all_errors;
.........[     287]: } esr;
.........[     289]: struct { unsigned int __reserved[4]; } __reserved_08;
.........[     291]: struct { unsigned int __reserved[4]; } __reserved_09;
.........[     293]: struct { unsigned int __reserved[4]; } __reserved_10;
.........[     295]: struct { unsigned int __reserved[4]; } __reserved_11;
.........[     297]: struct { unsigned int __reserved[4]; } __reserved_12;
.........[     299]: struct { unsigned int __reserved[4]; } __reserved_13;
.........[     301]: struct { unsigned int __reserved[4]; } __reserved_14;
.........[     303]: struct {
.........[     304]: unsigned int vector : 8,
.........[     305]: delivery_mode : 3,
.........[     306]: destination_mode : 1,
.........[     307]: delivery_status : 1,
.........[     308]: __reserved_1 : 1,
.........[     309]: level : 1,
.........[     310]: trigger : 1,
.........[     311]: __reserved_2 : 2,
.........[     312]: shorthand : 2,
.........[     313]: __reserved_3 : 12;
.........[     314]: unsigned int __reserved_4[3];
.........[     315]: } icr1;
.........[     317]: struct {
.........[     318]: union {
.........[     319]: unsigned int __reserved_1 : 24,
.........[     320]: phys_dest : 4,
.........[     321]: __reserved_2 : 4;
.........[     322]: unsigned int __reserved_3 : 24,
.........[     323]: logical_dest : 8;
.........[     324]: } dest;
.........[     325]: unsigned int __reserved_4[3];
.........[     326]: } icr2;
.........[     328]: struct {
.........[     329]: unsigned int vector : 8,
.........[     330]: __reserved_1 : 4,
.........[     331]: delivery_status : 1,
.........[     332]: __reserved_2 : 3,
.........[     333]: mask : 1,
.........[     334]: timer_mode : 1,
.........[     335]: __reserved_3 : 14;
.........[     336]: unsigned int __reserved_4[3];
.........[     337]: } lvt_timer;
.........[     339]: struct {
.........[     340]: unsigned int vector : 8,
.........[     341]: delivery_mode : 3,
.........[     342]: __reserved_1 : 1,
.........[     343]: delivery_status : 1,
.........[     344]: __reserved_2 : 3,
.........[     345]: mask : 1,
.........[     346]: __reserved_3 : 15;
.........[     347]: unsigned int __reserved_4[3];
.........[     348]: } lvt_thermal;
.........[     350]: struct {
.........[     351]: unsigned int vector : 8,
.........[     352]: delivery_mode : 3,
.........[     353]: __reserved_1 : 1,
.........[     354]: delivery_status : 1,
.........[     355]: __reserved_2 : 3,
.........[     356]: mask : 1,
.........[     357]: __reserved_3 : 15;
.........[     358]: unsigned int __reserved_4[3];
.........[     359]: } lvt_pc;
.........[     361]: struct {
.........[     362]: unsigned int vector : 8,
.........[     363]: delivery_mode : 3,
.........[     364]: __reserved_1 : 1,
.........[     365]: delivery_status : 1,
.........[     366]: polarity : 1,
.........[     367]: remote_irr : 1,
.........[     368]: trigger : 1,
.........[     369]: mask : 1,
.........[     370]: __reserved_2 : 15;
.........[     371]: unsigned int __reserved_3[3];
.........[     372]: } lvt_lint0;
.........[     374]: struct {
.........[     375]: unsigned int vector : 8,
.........[     376]: delivery_mode : 3,
.........[     377]: __reserved_1 : 1,
.........[     378]: delivery_status : 1,
.........[     379]: polarity : 1,
.........[     380]: remote_irr : 1,
.........[     381]: trigger : 1,
.........[     382]: mask : 1,
.........[     383]: __reserved_2 : 15;
.........[     384]: unsigned int __reserved_3[3];
.........[     385]: } lvt_lint1;
.........[     387]: struct {
.........[     388]: unsigned int vector : 8,
.........[     389]: __reserved_1 : 4,
.........[     390]: delivery_status : 1,
.........[     391]: __reserved_2 : 3,
.........[     392]: mask : 1,
.........[     393]: __reserved_3 : 15;
.........[     394]: unsigned int __reserved_4[3];
.........[     395]: } lvt_error;
.........[     397]: struct {
.........[     398]: unsigned int initial_count;
.........[     399]: unsigned int __reserved_2[3];
.........[     400]: } timer_icr;
.........[     402]: const
.........[     403]: struct {
.........[     404]: unsigned int curr_count;
.........[     405]: unsigned int __reserved_2[3];
.........[     406]: } timer_ccr;
.........[     408]: struct { unsigned int __reserved[4]; } __reserved_16;
.........[     410]: struct { unsigned int __reserved[4]; } __reserved_17;
.........[     412]: struct { unsigned int __reserved[4]; } __reserved_18;
.........[     414]: struct { unsigned int __reserved[4]; } __reserved_19;
.........[     416]: struct {
.........[     417]: unsigned int divisor : 4,
.........[     418]: __reserved_1 : 28;
.........[     419]: unsigned int __reserved_2[3];
.........[     420]: } timer_dcr;
.........[     422]: struct { unsigned int __reserved[4]; } __reserved_20;
.........[     424]: } __attribute__ ((packed));
.........[     434]: enum ioapic_irq_destination_types {
.........[     435]: dest_Fixed = 0,
.........[     436]: dest_LowestPrio = 1,
.........[     437]: dest_SMI = 2,
.........[     438]: dest__reserved_1 = 3,
.........[     439]: dest_NMI = 4,
.........[     440]: dest_INIT = 5,
.........[     441]: dest__reserved_2 = 6,
.........[     442]: dest_ExtINT = 7
.........[     443]: };
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apicdef.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec.h
........[      10]: extern int apic_version[];
........[      11]: extern int pic_mode;
........[      47]: extern unsigned long mp_bus_not_pci[(((256) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
........[      49]: extern unsigned int boot_cpu_physical_apicid;
........[      50]: extern unsigned int max_physical_apicid;
........[      51]: extern int mpc_default_type;
........[      52]: extern unsigned long mp_lapic_addr;
........[      55]: extern int smp_found_config;
........[      60]: static inline __attribute__((no_instrument_function)) void get_smp_config(void)
........[      61]: {
........[      62]: x86_init.mpparse.get_smp_config(0);
........[      63]: }
........[      65]: static inline __attribute__((no_instrument_function)) void early_get_smp_config(void)
........[      66]: {
........[      67]: x86_init.mpparse.get_smp_config(1);
........[      68]: }
........[      70]: static inline __attribute__((no_instrument_function)) void find_smp_config(void)
........[      71]: {
........[      72]: x86_init.mpparse.find_smp_config();
........[      73]: }
........[      76]: extern void early_reserve_e820_mpc_new(void);
........[      77]: extern int enable_update_mptable;
........[      78]: extern int default_mpc_apic_id(struct mpc_cpu *m);
........[      79]: extern void default_smp_read_mpc_oem(struct mpc_table *mpc);
........[      81]: extern void default_mpc_oem_bus_info(struct mpc_bus *m, char *str);
........[      85]: extern void default_find_smp_config(void);
........[      86]: extern void default_get_smp_config(unsigned int early);
........[      97]: int generic_processor_info(int apicid, int version);
........[      99]: extern void mp_register_ioapic(int id, u32 address, u32 gsi_base);
........[     100]: extern void mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger,
........[     101]: u32 gsi);
........[     102]: extern void mp_config_acpi_legacy_irqs(void);
........[     103]: struct device;
........[     104]: extern int mp_register_gsi(struct device *dev, u32 gsi, int edge_level,
........[     105]: int active_high_low);
........[     110]: struct physid_mask {
........[     111]: unsigned long mask[(((32768) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
........[     112]: };
........[     114]: typedef struct physid_mask physid_mask_t;
........[     149]: static inline __attribute__((no_instrument_function)) unsigned long physids_coerce(physid_mask_t *map)
........[     150]: {
........[     151]: return map->mask[0];
........[     152]: }
........[     154]: static inline __attribute__((no_instrument_function)) void physids_promote(unsigned long physids, physid_mask_t \
........                *map)
........[     155]: {
........[     156]: bitmap_zero((*map).mask, 32768);
........[     157]: map->mask[0] = physids;
........[     158]: }
........[     160]: static inline __attribute__((no_instrument_function)) void physid_set_mask_of_physid(int physid, physid_mask_t \
........                *map)
........[     161]: {
........[     162]: bitmap_zero((*map).mask, 32768);
........[     163]: set_bit(physid, (*map).mask);
........[     164]: }
........[     169]: extern physid_mask_t phys_cpu_present_map;
........[     171]: extern int generic_mps_oem_check(struct mpc_table *, char *, char *);
........[     173]: extern int default_acpi_madt_oem_check(char *, char *);
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mpspec.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smp.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apic.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apic.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pm.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pm.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/workqueue.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/workqueue.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timer.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timer.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ktime.h
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ktime.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/jiffies.h
............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/jiffies.h
.............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timex.h
.............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timex.h
..............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/timex.h
...............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/timex.h
...............[      64]: struct timex {
...............[      65]: unsigned int modes;
...............[      66]: long offset;
...............[      67]: long freq;
...............[      68]: long maxerror;
...............[      69]: long esterror;
...............[      70]: int status;
...............[      71]: long constant;
...............[      72]: long precision;
...............[      73]: long tolerance;
...............[      76]: struct timeval time;
...............[      77]: long tick;
...............[      79]: long ppsfreq;
...............[      80]: long jitter;
...............[      81]: int shift;
...............[      82]: long stabil;
...............[      83]: long jitcnt;
...............[      84]: long calcnt;
...............[      85]: long errcnt;
...............[      86]: long stbcnt;
...............[      88]: int tai;
...............[      90]: int :32; int :32; int :32; int :32;
...............[      91]: int :32; int :32; int :32; int :32;
...............[      92]: int :32; int :32; int :32;
...............[      93]: };
...............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/timex.h
.............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timex.h
..............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/timex.h
..............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/timex.h
...............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/tsc.h
................#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/tsc.h
................[      15]: typedef unsigned long long cycles_t;
................[      17]: extern unsigned int cpu_khz;
................[      18]: extern unsigned int tsc_khz;
................[      20]: extern void disable_TSC(void);
................[      22]: static inline __attribute__((no_instrument_function)) cycles_t get_cycles(void)
................[      23]: {
................[      24]: unsigned long long ret = 0;
................[      30]: rdtscll(ret);
................[      32]: return ret;
................[      33]: }
................[      35]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) cycles_t vget_cycles\
................                (void)
................[      36]: {
................[      45]: return (cycles_t)__native_read_tsc();
................[      46]: }
................[      48]: extern void tsc_init(void);
................[      49]: extern void mark_tsc_unstable(char *reason);
................[      50]: extern int unsynchronized_tsc(void);
................[      51]: extern int check_tsc_unstable(void);
................[      52]: extern int check_tsc_disabled(void);
................[      53]: extern unsigned long native_calibrate_tsc(void);
................[      55]: extern int tsc_clocksource_reliable;
................[      61]: extern void check_tsc_sync_source(int cpu);
................[      62]: extern void check_tsc_sync_target(void);
................[      64]: extern int notsc_setup(char *);
................[      65]: extern void tsc_save_sched_clock_state(void);
................[      66]: extern void tsc_restore_sched_clock_state(void);
................#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/tsc.h
...............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/timex.h
..............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timex.h
..............[     139]: extern unsigned long tick_usec;
..............[     140]: extern unsigned long tick_nsec;
..............[     154]: extern int do_adjtimex(struct timex *);
..............[     155]: extern void hardpps(const struct timespec *, const struct timespec *);
..............[     157]: int read_current_timer(unsigned long *timer_val);
..............[     158]: void ntp_notify_cmos_timer(void);
..............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timex.h
.............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/jiffies.h
.............[      57]: extern int register_refined_jiffies(long clock_tick_rate);
.............[      76]: extern u64 __attribute__((section(".data"))) jiffies_64;
.............[      77]: extern unsigned long volatile __attribute__((section(".data"))) jiffies;
.............[      82]: static inline __attribute__((no_instrument_function)) u64 get_jiffies_64(void)
.............[      83]: {
.............[      84]: return (u64)jiffies;
.............[      85]: }
.............[     182]: extern unsigned long preset_lpj;
.............[     295]: extern unsigned int jiffies_to_msecs(const unsigned long j);
.............[     296]: extern unsigned int jiffies_to_usecs(const unsigned long j);
.............[     297]: extern unsigned long msecs_to_jiffies(const unsigned int m);
.............[     298]: extern unsigned long usecs_to_jiffies(const unsigned int u);
.............[     299]: extern unsigned long timespec_to_jiffies(const struct timespec *value);
.............[     300]: extern void jiffies_to_timespec(const unsigned long jiffies,
.............[     301]: struct timespec *value);
.............[     302]: extern unsigned long timeval_to_jiffies(const struct timeval *value);
.............[     303]: extern void jiffies_to_timeval(const unsigned long jiffies,
.............[     304]: struct timeval *value);
.............[     306]: extern clock_t jiffies_to_clock_t(unsigned long x);
.............[     307]: static inline __attribute__((no_instrument_function)) clock_t jiffies_delta_to_clock_t(long delta)
.............[     308]: {
.............[     309]: return jiffies_to_clock_t(({ typeof(0L) _max1 = (0L); typeof(delta) _max2 = (delta); (void) (&_max1 == &_max2); _max1 \
.............                > _max2 ? _max1 : _max2; }));
.............[     310]: }
.............[     312]: extern unsigned long clock_t_to_jiffies(unsigned long x);
.............[     313]: extern u64 jiffies_64_to_clock_t(u64 x);
.............[     314]: extern u64 nsec_to_clock_t(u64 x);
.............[     315]: extern u64 nsecs_to_jiffies64(u64 n);
.............[     316]: extern unsigned long nsecs_to_jiffies(u64 n);
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/jiffies.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ktime.h
............[      46]: union ktime {
............[      47]: s64 tv64;
............[      57]: };
............[      59]: typedef union ktime ktime_t;
............[      74]: static inline __attribute__((no_instrument_function)) ktime_t ktime_set(const long secs, const unsigned long nsecs\
............                )
............[      75]: {
............[      77]: if (__builtin_expect(!!(secs >= (((s64)~((u64)1 << 63)) / 1000000000L)), 0))
............[      78]: return (ktime_t){ .tv64 = ((s64)~((u64)1 << 63)) };
............[      80]: return (ktime_t) { .tv64 = (s64)secs * 1000000000L + (s64)nsecs };
............[      81]: }
............[     106]: static inline __attribute__((no_instrument_function)) ktime_t timespec_to_ktime(struct timespec ts)
............[     107]: {
............[     108]: return ktime_set(ts.tv_sec, ts.tv_nsec);
............[     109]: }
............[     112]: static inline __attribute__((no_instrument_function)) ktime_t timeval_to_ktime(struct timeval tv)
............[     113]: {
............[     114]: return ktime_set(tv.tv_sec, tv.tv_usec * 1000L);
............[     115]: }
............[     283]: static inline __attribute__((no_instrument_function)) int ktime_equal(const ktime_t cmp1, const ktime_t cmp2)
............[     284]: {
............[     285]: return cmp1.tv64 == cmp2.tv64;
............[     286]: }
............[     298]: static inline __attribute__((no_instrument_function)) int ktime_compare(const ktime_t cmp1, const ktime_t cmp2\
............                )
............[     299]: {
............[     300]: if (cmp1.tv64 < cmp2.tv64)
............[     301]: return -1;
............[     302]: if (cmp1.tv64 > cmp2.tv64)
............[     303]: return 1;
............[     304]: return 0;
............[     305]: }
............[     307]: static inline __attribute__((no_instrument_function)) s64 ktime_to_us(const ktime_t kt)
............[     308]: {
............[     309]: struct timeval tv = ns_to_timeval((kt).tv64);
............[     310]: return (s64) tv.tv_sec * 1000000L + tv.tv_usec;
............[     311]: }
............[     313]: static inline __attribute__((no_instrument_function)) s64 ktime_to_ms(const ktime_t kt)
............[     314]: {
............[     315]: struct timeval tv = ns_to_timeval((kt).tv64);
............[     316]: return (s64) tv.tv_sec * 1000L + tv.tv_usec / 1000L;
............[     317]: }
............[     319]: static inline __attribute__((no_instrument_function)) s64 ktime_us_delta(const ktime_t later, const ktime_t earlier\
............                )
............[     320]: {
............[     321]: return ktime_to_us(({ (ktime_t){ .tv64 = (later).tv64 - (earlier).tv64 }; }));
............[     322]: }
............[     324]: static inline __attribute__((no_instrument_function)) ktime_t ktime_add_us(const ktime_t kt, const u64 usec)
............[     325]: {
............[     326]: return ({ (ktime_t){ .tv64 = (kt).tv64 + (usec * 1000L) }; });
............[     327]: }
............[     329]: static inline __attribute__((no_instrument_function)) ktime_t ktime_add_ms(const ktime_t kt, const u64 msec)
............[     330]: {
............[     331]: return ({ (ktime_t){ .tv64 = (kt).tv64 + (msec * 1000000L) }; });
............[     332]: }
............[     334]: static inline __attribute__((no_instrument_function)) ktime_t ktime_sub_us(const ktime_t kt, const u64 usec)
............[     335]: {
............[     336]: return ({ (ktime_t){ .tv64 = (kt).tv64 - (usec * 1000L) }; });
............[     337]: }
............[     339]: extern ktime_t ktime_add_safe(const ktime_t lhs, const ktime_t rhs);
............[     349]: static inline __attribute__((no_instrument_function)) bool ktime_to_timespec_cond(const ktime_t kt,
............[     350]: struct timespec *ts)
............[     351]: {
............[     352]: if (kt.tv64) {
............[     353]: *ts = ns_to_timespec((kt).tv64);
............[     354]: return true;
............[     355]: } else {
............[     356]: return false;
............[     357]: }
............[     358]: }
............[     370]: extern void ktime_get_ts(struct timespec *ts);
............[     375]: static inline __attribute__((no_instrument_function)) ktime_t ns_to_ktime(u64 ns)
............[     376]: {
............[     377]: static const ktime_t ktime_zero = { .tv64 = 0 };
............[     379]: return ({ (ktime_t){ .tv64 = (ktime_zero).tv64 + (ns) }; });
............[     380]: }
............[     382]: static inline __attribute__((no_instrument_function)) ktime_t ms_to_ktime(u64 ms)
............[     383]: {
............[     384]: static const ktime_t ktime_zero = { .tv64 = 0 };
............[     386]: return ktime_add_ms(ktime_zero, ms);
............[     387]: }
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ktime.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timer.h
...........[      10]: struct tvec_base;
...........[      12]: struct timer_list {
...........[      17]: struct list_head entry;
...........[      18]: unsigned long expires;
...........[      19]: struct tvec_base *base;
...........[      21]: void (*function)(unsigned long);
...........[      22]: unsigned long data;
...........[      24]: int slack;
...........[      27]: int start_pid;
...........[      28]: void *start_site;
...........[      29]: char start_comm[16];
...........[      34]: };
...........[      36]: extern struct tvec_base boot_tvec_bases;
...........[      94]: void init_timer_key(struct timer_list *timer, unsigned int flags,
...........[      95]: const char *name, struct lock_class_key *key);
...........[     103]: static inline __attribute__((no_instrument_function)) void destroy_timer_on_stack(struct timer_list *timer\
...........                ) { }
...........[     104]: static inline __attribute__((no_instrument_function)) void init_timer_on_stack_key(struct timer_list *timer\
...........                ,
...........[     105]: unsigned int flags, const char *name,
...........[     106]: struct lock_class_key *key)
...........[     107]: {
...........[     108]: init_timer_key(timer, flags, name, key);
...........[     109]: }
...........[     169]: static inline __attribute__((no_instrument_function)) int timer_pending(const struct timer_list * timer)
...........[     170]: {
...........[     171]: return timer->entry.next != ((void *)0);
...........[     172]: }
...........[     174]: extern void add_timer_on(struct timer_list *timer, int cpu);
...........[     175]: extern int del_timer(struct timer_list * timer);
...........[     176]: extern int mod_timer(struct timer_list *timer, unsigned long expires);
...........[     177]: extern int mod_timer_pending(struct timer_list *timer, unsigned long expires);
...........[     178]: extern int mod_timer_pinned(struct timer_list *timer, unsigned long expires);
...........[     180]: extern void set_timer_slack(struct timer_list *time, int slack_hz);
...........[     195]: extern unsigned long get_next_timer_interrupt(unsigned long now);
...........[     202]: extern int timer_stats_active;
...........[     206]: extern void init_timer_stats(void);
...........[     208]: extern void timer_stats_update_stats(void *timer, pid_t pid, void *startf,
...........[     209]: void *timerf, char *comm,
...........[     210]: unsigned int timer_flag);
...........[     212]: extern void __timer_stats_timer_set_start_info(struct timer_list *timer,
...........[     213]: void *addr);
...........[     215]: static inline __attribute__((no_instrument_function)) void timer_stats_timer_set_start_info(struct timer_list \
...........                *timer)
...........[     216]: {
...........[     217]: if (__builtin_expect(!!(!timer_stats_active), 1))
...........[     218]: return;
...........[     219]: __timer_stats_timer_set_start_info(timer, __builtin_return_address(0));
...........[     220]: }
...........[     222]: static inline __attribute__((no_instrument_function)) void timer_stats_timer_clear_start_info(struct timer_list \
...........                *timer)
...........[     223]: {
...........[     224]: timer->start_site = ((void *)0);
...........[     225]: }
...........[     240]: extern void add_timer(struct timer_list *timer);
...........[     242]: extern int try_to_del_timer_sync(struct timer_list *timer);
...........[     245]: extern int del_timer_sync(struct timer_list *timer);
...........[     252]: extern void init_timers(void);
...........[     253]: extern void run_local_timers(void);
...........[     254]: struct hrtimer;
...........[     255]: extern enum hrtimer_restart it_real_fn(struct hrtimer *);
...........[     257]: unsigned long __round_jiffies(unsigned long j, int cpu);
...........[     258]: unsigned long __round_jiffies_relative(unsigned long j, int cpu);
...........[     259]: unsigned long round_jiffies(unsigned long j);
...........[     260]: unsigned long round_jiffies_relative(unsigned long j);
...........[     262]: unsigned long __round_jiffies_up(unsigned long j, int cpu);
...........[     263]: unsigned long __round_jiffies_up_relative(unsigned long j, int cpu);
...........[     264]: unsigned long round_jiffies_up(unsigned long j);
...........[     265]: unsigned long round_jiffies_up_relative(unsigned long j);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timer.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/workqueue.h
..........[      16]: struct workqueue_struct;
..........[      18]: struct work_struct;
..........[      19]: typedef void (*work_func_t)(struct work_struct *work);
..........[      20]: void delayed_work_timer_fn(unsigned long __data);
..........[      28]: enum {
..........[      29]: WORK_STRUCT_PENDING_BIT = 0,
..........[      30]: WORK_STRUCT_DELAYED_BIT = 1,
..........[      31]: WORK_STRUCT_PWQ_BIT = 2,
..........[      32]: WORK_STRUCT_LINKED_BIT = 3,
..........[      37]: WORK_STRUCT_COLOR_SHIFT = 4,
..........[      40]: WORK_STRUCT_COLOR_BITS = 4,
..........[      42]: WORK_STRUCT_PENDING = 1 << WORK_STRUCT_PENDING_BIT,
..........[      43]: WORK_STRUCT_DELAYED = 1 << WORK_STRUCT_DELAYED_BIT,
..........[      44]: WORK_STRUCT_PWQ = 1 << WORK_STRUCT_PWQ_BIT,
..........[      45]: WORK_STRUCT_LINKED = 1 << WORK_STRUCT_LINKED_BIT,
..........[      49]: WORK_STRUCT_STATIC = 0,
..........[      56]: WORK_NR_COLORS = (1 << WORK_STRUCT_COLOR_BITS) - 1,
..........[      57]: WORK_NO_COLOR = WORK_NR_COLORS,
..........[      60]: WORK_CPU_UNBOUND = 64,
..........[      61]: WORK_CPU_END = 64 + 1,
..........[      68]: WORK_STRUCT_FLAG_BITS = WORK_STRUCT_COLOR_SHIFT +
..........[      69]: WORK_STRUCT_COLOR_BITS,
..........[      72]: WORK_OFFQ_FLAG_BASE = WORK_STRUCT_COLOR_SHIFT,
..........[      74]: WORK_OFFQ_CANCELING = (1 << WORK_OFFQ_FLAG_BASE),
..........[      81]: WORK_OFFQ_FLAG_BITS = 1,
..........[      82]: WORK_OFFQ_POOL_SHIFT = WORK_OFFQ_FLAG_BASE + WORK_OFFQ_FLAG_BITS,
..........[      83]: WORK_OFFQ_LEFT = 64 - WORK_OFFQ_POOL_SHIFT,
..........[      84]: WORK_OFFQ_POOL_BITS = WORK_OFFQ_LEFT <= 31 ? WORK_OFFQ_LEFT : 31,
..........[      85]: WORK_OFFQ_POOL_NONE = (1LU << WORK_OFFQ_POOL_BITS) - 1,
..........[      88]: WORK_STRUCT_FLAG_MASK = (1UL << WORK_STRUCT_FLAG_BITS) - 1,
..........[      89]: WORK_STRUCT_WQ_DATA_MASK = ~WORK_STRUCT_FLAG_MASK,
..........[      90]: WORK_STRUCT_NO_POOL = (unsigned long)WORK_OFFQ_POOL_NONE << WORK_OFFQ_POOL_SHIFT,
..........[      93]: WORK_BUSY_PENDING = 1 << 0,
..........[      94]: WORK_BUSY_RUNNING = 1 << 1,
..........[      97]: WORKER_DESC_LEN = 24,
..........[      98]: };
..........[     100]: struct work_struct {
..........[     101]: atomic_long_t data;
..........[     102]: struct list_head entry;
..........[     103]: work_func_t func;
..........[     107]: };
..........[     113]: struct delayed_work {
..........[     114]: struct work_struct work;
..........[     115]: struct timer_list timer;
..........[     118]: struct workqueue_struct *wq;
..........[     119]: int cpu;
..........[     120]: };
..........[     130]: struct workqueue_attrs {
..........[     131]: int nice;
..........[     132]: cpumask_var_t cpumask;
..........[     133]: bool no_numa;
..........[     134]: };
..........[     136]: static inline __attribute__((no_instrument_function)) struct delayed_work *to_delayed_work(struct work_struct \
..........                *work)
..........[     137]: {
..........[     138]: return ({ const typeof( ((struct delayed_work *)0)->work ) *__mptr = (work); (struct delayed_work *)( (char *)__mptr \
..........                - __builtin_offsetof(struct delayed_work,work) );});
..........[     139]: }
..........[     141]: struct execute_work {
..........[     142]: struct work_struct work;
..........[     143]: };
..........[     199]: static inline __attribute__((no_instrument_function)) void __init_work(struct work_struct *work, int onstack\
..........                ) { }
..........[     200]: static inline __attribute__((no_instrument_function)) void destroy_work_on_stack(struct work_struct *work) \
..........                { }
..........[     201]: static inline __attribute__((no_instrument_function)) unsigned int work_static(struct work_struct *work) { return \
..........                0; }
..........[     297]: enum {
..........[     302]: WQ_NON_REENTRANT = 1 << 0,
..........[     304]: WQ_UNBOUND = 1 << 1,
..........[     305]: WQ_FREEZABLE = 1 << 2,
..........[     306]: WQ_MEM_RECLAIM = 1 << 3,
..........[     307]: WQ_HIGHPRI = 1 << 4,
..........[     308]: WQ_CPU_INTENSIVE = 1 << 5,
..........[     309]: WQ_SYSFS = 1 << 6,
..........[     336]: WQ_POWER_EFFICIENT = 1 << 7,
..........[     338]: __WQ_DRAINING = 1 << 16,
..........[     339]: __WQ_ORDERED = 1 << 17,
..........[     341]: WQ_MAX_ACTIVE = 512,
..........[     342]: WQ_MAX_UNBOUND_PER_CPU = 4,
..........[     343]: WQ_DFL_ACTIVE = WQ_MAX_ACTIVE / 2,
..........[     344]: };
..........[     375]: extern struct workqueue_struct *system_wq;
..........[     376]: extern struct workqueue_struct *system_long_wq;
..........[     377]: extern struct workqueue_struct *system_unbound_wq;
..........[     378]: extern struct workqueue_struct *system_freezable_wq;
..........[     379]: extern struct workqueue_struct *system_power_efficient_wq;
..........[     380]: extern struct workqueue_struct *system_freezable_power_efficient_wq;
..........[     382]: static inline __attribute__((no_instrument_function)) struct workqueue_struct * __system_nrt_wq(void)
..........[     383]: {
..........[     384]: return system_wq;
..........[     385]: }
..........[     387]: static inline __attribute__((no_instrument_function)) struct workqueue_struct * __system_nrt_freezable_wq(\
..........                void)
..........[     388]: {
..........[     389]: return system_freezable_wq;
..........[     390]: }
..........[     396]: extern struct workqueue_struct *
..........[     397]: __alloc_workqueue_key(const char *fmt, unsigned int flags, int max_active,
..........[     398]: struct lock_class_key *key, const char *lock_name, ...) __attribute__((format(printf, 1, 6)));
..........[     460]: extern void destroy_workqueue(struct workqueue_struct *wq);
..........[     462]: struct workqueue_attrs *alloc_workqueue_attrs(gfp_t gfp_mask);
..........[     463]: void free_workqueue_attrs(struct workqueue_attrs *attrs);
..........[     464]: int apply_workqueue_attrs(struct workqueue_struct *wq,
..........[     465]: const struct workqueue_attrs *attrs);
..........[     467]: extern bool queue_work_on(int cpu, struct workqueue_struct *wq,
..........[     468]: struct work_struct *work);
..........[     469]: extern bool queue_delayed_work_on(int cpu, struct workqueue_struct *wq,
..........[     470]: struct delayed_work *work, unsigned long delay);
..........[     471]: extern bool mod_delayed_work_on(int cpu, struct workqueue_struct *wq,
..........[     472]: struct delayed_work *dwork, unsigned long delay);
..........[     474]: extern void flush_workqueue(struct workqueue_struct *wq);
..........[     475]: extern void drain_workqueue(struct workqueue_struct *wq);
..........[     476]: extern void flush_scheduled_work(void);
..........[     478]: extern int schedule_on_each_cpu(work_func_t func);
..........[     480]: int execute_in_process_context(work_func_t fn, struct execute_work *);
..........[     482]: extern bool flush_work(struct work_struct *work);
..........[     483]: extern bool cancel_work_sync(struct work_struct *work);
..........[     485]: extern bool flush_delayed_work(struct delayed_work *dwork);
..........[     486]: extern bool cancel_delayed_work(struct delayed_work *dwork);
..........[     487]: extern bool cancel_delayed_work_sync(struct delayed_work *dwork);
..........[     489]: extern void workqueue_set_max_active(struct workqueue_struct *wq,
..........[     490]: int max_active);
..........[     491]: extern bool current_is_workqueue_rescuer(void);
..........[     492]: extern bool workqueue_congested(int cpu, struct workqueue_struct *wq);
..........[     493]: extern unsigned int work_busy(struct work_struct *work);
..........[     494]: extern __attribute__((format(printf, 1, 2))) void set_worker_desc(const char *fmt, ...);
..........[     495]: extern void print_worker_info(const char *log_lvl, struct task_struct *task);
..........[     507]: static inline __attribute__((no_instrument_function)) bool queue_work(struct workqueue_struct *wq,
..........[     508]: struct work_struct *work)
..........[     509]: {
..........[     510]: return queue_work_on(WORK_CPU_UNBOUND, wq, work);
..........[     511]: }
..........[     521]: static inline __attribute__((no_instrument_function)) bool queue_delayed_work(struct workqueue_struct *wq,
..........[     522]: struct delayed_work *dwork,
..........[     523]: unsigned long delay)
..........[     524]: {
..........[     525]: return queue_delayed_work_on(WORK_CPU_UNBOUND, wq, dwork, delay);
..........[     526]: }
..........[     536]: static inline __attribute__((no_instrument_function)) bool mod_delayed_work(struct workqueue_struct *wq,
..........[     537]: struct delayed_work *dwork,
..........[     538]: unsigned long delay)
..........[     539]: {
..........[     540]: return mod_delayed_work_on(WORK_CPU_UNBOUND, wq, dwork, delay);
..........[     541]: }
..........[     550]: static inline __attribute__((no_instrument_function)) bool schedule_work_on(int cpu, struct work_struct *work\
..........                )
..........[     551]: {
..........[     552]: return queue_work_on(cpu, system_wq, work);
..........[     553]: }
..........[     566]: static inline __attribute__((no_instrument_function)) bool schedule_work(struct work_struct *work)
..........[     567]: {
..........[     568]: return queue_work(system_wq, work);
..........[     569]: }
..........[     580]: static inline __attribute__((no_instrument_function)) bool schedule_delayed_work_on(int cpu, struct delayed_work \
..........                *dwork,
..........[     581]: unsigned long delay)
..........[     582]: {
..........[     583]: return queue_delayed_work_on(cpu, system_wq, dwork, delay);
..........[     584]: }
..........[     594]: static inline __attribute__((no_instrument_function)) bool schedule_delayed_work(struct delayed_work *dwork\
..........                ,
..........[     595]: unsigned long delay)
..........[     596]: {
..........[     597]: return queue_delayed_work(system_wq, dwork, delay);
..........[     598]: }
..........[     603]: static inline __attribute__((no_instrument_function)) bool keventd_up(void)
..........[     604]: {
..........[     605]: return system_wq != ((void *)0);
..........[     606]: }
..........[     613]: static inline __attribute__((no_instrument_function)) bool __cancel_delayed_work(struct delayed_work *work\
..........                )
..........[     614]: {
..........[     615]: bool ret;
..........[     617]: ret = del_timer(&work->timer);
..........[     618]: if (ret)
..........[     619]: clear_bit(WORK_STRUCT_PENDING_BIT, ((unsigned long *)(&(&work->work)->data)));
..........[     620]: return ret;
..........[     621]: }
..........[     624]: static inline __attribute__((no_instrument_function)) bool flush_work_sync(struct work_struct *work)
..........[     625]: {
..........[     626]: return flush_work(work);
..........[     627]: }
..........[     630]: static inline __attribute__((no_instrument_function)) bool flush_delayed_work_sync(struct delayed_work *dwork\
..........                )
..........[     631]: {
..........[     632]: return flush_delayed_work(dwork);
..........[     633]: }
..........[     641]: long work_on_cpu(int cpu, long (*fn)(void *), void *arg);
..........[     645]: extern void freeze_workqueues_begin(void);
..........[     646]: extern bool freeze_workqueues_busy(void);
..........[     647]: extern void thaw_workqueues(void);
..........[     651]: int workqueue_sysfs_register(struct workqueue_struct *wq);
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/workqueue.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pm.h
.........[      34]: extern void (*pm_power_off)(void);
.........[      35]: extern void (*pm_power_off_prepare)(void);
.........[      37]: struct device;
.........[      39]: extern void pm_vt_switch_required(struct device *dev, bool required);
.........[      40]: extern void pm_vt_switch_unregister(struct device *dev);
.........[      54]: struct device;
.........[      57]: extern const char power_group_name[];
.........[      62]: typedef struct pm_message {
.........[      63]: int event;
.........[      64]: } pm_message_t;
.........[     276]: struct dev_pm_ops {
.........[     277]: int (*prepare)(struct device *dev);
.........[     278]: void (*complete)(struct device *dev);
.........[     279]: int (*suspend)(struct device *dev);
.........[     280]: int (*resume)(struct device *dev);
.........[     281]: int (*freeze)(struct device *dev);
.........[     282]: int (*thaw)(struct device *dev);
.........[     283]: int (*poweroff)(struct device *dev);
.........[     284]: int (*restore)(struct device *dev);
.........[     285]: int (*suspend_late)(struct device *dev);
.........[     286]: int (*resume_early)(struct device *dev);
.........[     287]: int (*freeze_late)(struct device *dev);
.........[     288]: int (*thaw_early)(struct device *dev);
.........[     289]: int (*poweroff_late)(struct device *dev);
.........[     290]: int (*restore_early)(struct device *dev);
.........[     291]: int (*suspend_noirq)(struct device *dev);
.........[     292]: int (*resume_noirq)(struct device *dev);
.........[     293]: int (*freeze_noirq)(struct device *dev);
.........[     294]: int (*thaw_noirq)(struct device *dev);
.........[     295]: int (*poweroff_noirq)(struct device *dev);
.........[     296]: int (*restore_noirq)(struct device *dev);
.........[     297]: int (*runtime_suspend)(struct device *dev);
.........[     298]: int (*runtime_resume)(struct device *dev);
.........[     299]: int (*runtime_idle)(struct device *dev);
.........[     300]: };
.........[     470]: enum rpm_status {
.........[     471]: RPM_ACTIVE = 0,
.........[     472]: RPM_RESUMING,
.........[     473]: RPM_SUSPENDED,
.........[     474]: RPM_SUSPENDING,
.........[     475]: };
.........[     492]: enum rpm_request {
.........[     493]: RPM_REQ_NONE = 0,
.........[     494]: RPM_REQ_IDLE,
.........[     495]: RPM_REQ_SUSPEND,
.........[     496]: RPM_REQ_AUTOSUSPEND,
.........[     497]: RPM_REQ_RESUME,
.........[     498]: };
.........[     500]: struct wakeup_source;
.........[     502]: struct pm_domain_data {
.........[     503]: struct list_head list_node;
.........[     504]: struct device *dev;
.........[     505]: };
.........[     507]: struct pm_subsys_data {
.........[     508]: spinlock_t lock;
.........[     509]: unsigned int refcount;
.........[     516]: };
.........[     518]: struct dev_pm_info {
.........[     519]: pm_message_t power_state;
.........[     520]: unsigned int can_wakeup:1;
.........[     521]: unsigned int async_suspend:1;
.........[     522]: bool is_prepared:1;
.........[     523]: bool is_suspended:1;
.........[     524]: bool ignore_children:1;
.........[     525]: bool early_init:1;
.........[     526]: spinlock_t lock;
.........[     528]: struct list_head entry;
.........[     529]: struct completion completion;
.........[     530]: struct wakeup_source *wakeup;
.........[     531]: bool wakeup_path:1;
.........[     532]: bool syscore:1;
.........[     537]: struct timer_list suspend_timer;
.........[     538]: unsigned long timer_expires;
.........[     539]: struct work_struct work;
.........[     540]: wait_queue_head_t wait_queue;
.........[     541]: atomic_t usage_count;
.........[     542]: atomic_t child_count;
.........[     543]: unsigned int disable_depth:3;
.........[     544]: unsigned int idle_notification:1;
.........[     545]: unsigned int request_pending:1;
.........[     546]: unsigned int deferred_resume:1;
.........[     547]: unsigned int run_wake:1;
.........[     548]: unsigned int runtime_auto:1;
.........[     549]: unsigned int no_callbacks:1;
.........[     550]: unsigned int irq_safe:1;
.........[     551]: unsigned int use_autosuspend:1;
.........[     552]: unsigned int timer_autosuspends:1;
.........[     553]: unsigned int memalloc_noio:1;
.........[     554]: enum rpm_request request;
.........[     555]: enum rpm_status runtime_status;
.........[     556]: int runtime_error;
.........[     557]: int autosuspend_delay;
.........[     558]: unsigned long last_busy;
.........[     559]: unsigned long active_jiffies;
.........[     560]: unsigned long suspended_jiffies;
.........[     561]: unsigned long accounting_timestamp;
.........[     563]: struct pm_subsys_data *subsys_data;
.........[     564]: struct dev_pm_qos *qos;
.........[     565]: };
.........[     567]: extern void update_pm_runtime_accounting(struct device *dev);
.........[     568]: extern int dev_pm_get_subsys_data(struct device *dev);
.........[     569]: extern int dev_pm_put_subsys_data(struct device *dev);
.........[     576]: struct dev_pm_domain {
.........[     577]: struct dev_pm_ops ops;
.........[     578]: };
.........[     635]: extern void device_pm_lock(void);
.........[     636]: extern void dpm_resume_start(pm_message_t state);
.........[     637]: extern void dpm_resume_end(pm_message_t state);
.........[     638]: extern void dpm_resume(pm_message_t state);
.........[     639]: extern void dpm_complete(pm_message_t state);
.........[     641]: extern void device_pm_unlock(void);
.........[     642]: extern int dpm_suspend_end(pm_message_t state);
.........[     643]: extern int dpm_suspend_start(pm_message_t state);
.........[     644]: extern int dpm_suspend(pm_message_t state);
.........[     645]: extern int dpm_prepare(pm_message_t state);
.........[     647]: extern void __suspend_report_result(const char *function, void *fn, int ret);
.........[     654]: extern int device_pm_wait_for_dev(struct device *sub, struct device *dev);
.........[     655]: extern void dpm_for_each_dev(void *data, void (*fn)(struct device *, void *));
.........[     657]: extern int pm_generic_prepare(struct device *dev);
.........[     658]: extern int pm_generic_suspend_late(struct device *dev);
.........[     659]: extern int pm_generic_suspend_noirq(struct device *dev);
.........[     660]: extern int pm_generic_suspend(struct device *dev);
.........[     661]: extern int pm_generic_resume_early(struct device *dev);
.........[     662]: extern int pm_generic_resume_noirq(struct device *dev);
.........[     663]: extern int pm_generic_resume(struct device *dev);
.........[     664]: extern int pm_generic_freeze_noirq(struct device *dev);
.........[     665]: extern int pm_generic_freeze_late(struct device *dev);
.........[     666]: extern int pm_generic_freeze(struct device *dev);
.........[     667]: extern int pm_generic_thaw_noirq(struct device *dev);
.........[     668]: extern int pm_generic_thaw_early(struct device *dev);
.........[     669]: extern int pm_generic_thaw(struct device *dev);
.........[     670]: extern int pm_generic_restore_noirq(struct device *dev);
.........[     671]: extern int pm_generic_restore_early(struct device *dev);
.........[     672]: extern int pm_generic_restore(struct device *dev);
.........[     673]: extern int pm_generic_poweroff_noirq(struct device *dev);
.........[     674]: extern int pm_generic_poweroff_late(struct device *dev);
.........[     675]: extern int pm_generic_poweroff(struct device *dev);
.........[     676]: extern void pm_generic_complete(struct device *dev);
.........[     710]: enum dpm_order {
.........[     711]: DPM_ORDER_NONE,
.........[     712]: DPM_ORDER_DEV_AFTER_PARENT,
.........[     713]: DPM_ORDER_PARENT_BEFORE_DEV,
.........[     714]: DPM_ORDER_DEV_LAST,
.........[     715]: };
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pm.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apic.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/fixmap.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/fixmap.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/acpi.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/acpi.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/numa.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/numa.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/topology.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/topology.h
............[      51]: extern __attribute__((section(".data..percpu" ""))) __typeof__(int) x86_cpu_to_node_map; extern __typeof__\
............                (int) *x86_cpu_to_node_map_early_ptr; extern __typeof__(int) x86_cpu_to_node_map_early_map[];
............[      65]: static inline __attribute__((no_instrument_function)) int early_cpu_to_node(int cpu)
............[      66]: {
............[      67]: return *((x86_cpu_to_node_map_early_ptr) ? &(x86_cpu_to_node_map_early_ptr)[cpu] : &(*({ do { const void *__vpp_verify \
............                = (typeof(((&(x86_cpu_to_node_map))) + 0))((void *)0); (void)__vpp_verify; } while (0); ({ unsigned long __ptr; __asm__ \
............                ("" : "=r"(__ptr) : "0"((typeof(*(&(x86_cpu_to_node_map))) *)(&(x86_cpu_to_node_map)))); (typeof((typeof(*\
............                (&(x86_cpu_to_node_map))) *)(&(x86_cpu_to_node_map)))) (__ptr + (((__per_cpu_offset[cpu])))); }); })));
............[      68]: }
............[      73]: extern cpumask_var_t node_to_cpumask_map[(1 << 6)];
............[      79]: static inline __attribute__((no_instrument_function)) const struct cpumask *cpumask_of_node(int node)
............[      80]: {
............[      81]: return node_to_cpumask_map[node];
............[      82]: }
............[      85]: extern void setup_node_to_cpumask_map(void);
............[      95]: extern int __node_distance(int, int);
............[     120]: extern const struct cpumask *cpu_coregroup_mask(int cpu);
............[     129]: static inline __attribute__((no_instrument_function)) void arch_fix_phys_package_id(int num, u32 slot)
............[     130]: {
............[     131]: }
............[     133]: struct pci_bus;
............[     134]: void x86_pci_root_bus_resources(int bus, struct list_head *resources);
............[     143]: extern int get_mp_bus_to_node(int busnum);
............[     144]: extern void set_mp_bus_to_node(int busnum, int node);
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/topology.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/numa.h
...........[      21]: extern int numa_off;
...........[      31]: extern s16 __apicid_to_node[32768];
...........[      32]: extern nodemask_t numa_nodes_parsed __attribute__ ((__section__(".init.data")));
...........[      34]: extern int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) numa_add_memblk\
...........                (int nodeid, u64 start, u64 end);
...........[      35]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) numa_set_distance\
...........                (int from, int to, int distance);
...........[      37]: static inline __attribute__((no_instrument_function)) void set_apicid_to_node(int apicid, s16 node)
...........[      38]: {
...........[      39]: __apicid_to_node[apicid] = node;
...........[      40]: }
...........[      42]: extern int numa_cpu_node(int cpu);
...........[      60]: extern void numa_set_node(int cpu, int node);
...........[      61]: extern void numa_clear_node(int cpu);
...........[      62]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) init_cpu_to_node\
...........                (void);
...........[      63]: extern void numa_add_cpu(int cpu);
...........[      64]: extern void numa_remove_cpu(int cpu);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/numa.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/acpi.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmu.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmu.h
...........[      11]: typedef struct {
...........[      12]: void *ldt;
...........[      13]: int size;
...........[      17]: unsigned short ia32_compat;
...........[      20]: struct mutex lock;
...........[      21]: void *vdso;
...........[      22]: } mm_context_t;
...........[      25]: void leave_mm(int cpu);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmu.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/acpi.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/realmode.h
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/realmode.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io.h
............[      53]: static inline __attribute__((no_instrument_function)) unsigned char readb(const volatile void *addr) { unsigned \
............                char ret; asm volatile("mov" "b" " %1,%0":"=q" (ret) :"m" (*(volatile unsigned char *)addr) :"memory"); return ret\
............                ; }
............[      54]: static inline __attribute__((no_instrument_function)) unsigned short readw(const volatile void *addr) { unsigned \
............                short ret; asm volatile("mov" "w" " %1,%0":"=r" (ret) :"m" (*(volatile unsigned short *)addr) :"memory"); return ret\
............                ; }
............[      55]: static inline __attribute__((no_instrument_function)) unsigned int readl(const volatile void *addr) { unsigned \
............                int ret; asm volatile("mov" "l" " %1,%0":"=r" (ret) :"m" (*(volatile unsigned int *)addr) :"memory"); return ret; }
............[      57]: static inline __attribute__((no_instrument_function)) unsigned char __readb(const volatile void *addr) { unsigned \
............                char ret; asm volatile("mov" "b" " %1,%0":"=q" (ret) :"m" (*(volatile unsigned char *)addr) ); return ret; }
............[      58]: static inline __attribute__((no_instrument_function)) unsigned short __readw(const volatile void *addr) { unsigned \
............                short ret; asm volatile("mov" "w" " %1,%0":"=r" (ret) :"m" (*(volatile unsigned short *)addr) ); return ret; }
............[      59]: static inline __attribute__((no_instrument_function)) unsigned int __readl(const volatile void *addr) { unsigned \
............                int ret; asm volatile("mov" "l" " %1,%0":"=r" (ret) :"m" (*(volatile unsigned int *)addr) ); return ret; }
............[      61]: static inline __attribute__((no_instrument_function)) void writeb(unsigned char val, volatile void *addr) { asm \
............                volatile("mov" "b" " %0,%1": :"q" (val), "m" (*(volatile unsigned char *)addr) :"memory"); }
............[      62]: static inline __attribute__((no_instrument_function)) void writew(unsigned short val, volatile void *addr) { asm \
............                volatile("mov" "w" " %0,%1": :"r" (val), "m" (*(volatile unsigned short *)addr) :"memory"); }
............[      63]: static inline __attribute__((no_instrument_function)) void writel(unsigned int val, volatile void *addr) { asm volatile\
............                ("mov" "l" " %0,%1": :"r" (val), "m" (*(volatile unsigned int *)addr) :"memory"); }
............[      65]: static inline __attribute__((no_instrument_function)) void __writeb(unsigned char val, volatile void *addr) { asm \
............                volatile("mov" "b" " %0,%1": :"q" (val), "m" (*(volatile unsigned char *)addr) ); }
............[      66]: static inline __attribute__((no_instrument_function)) void __writew(unsigned short val, volatile void *addr) { \
............                asm volatile("mov" "w" " %0,%1": :"r" (val), "m" (*(volatile unsigned short *)addr) ); }
............[      67]: static inline __attribute__((no_instrument_function)) void __writel(unsigned int val, volatile void *addr) { asm \
............                volatile("mov" "l" " %0,%1": :"r" (val), "m" (*(volatile unsigned int *)addr) ); }
............[      84]: static inline __attribute__((no_instrument_function)) unsigned long readq(const volatile void *addr) { unsigned \
............                long ret; asm volatile("mov" "q" " %1,%0":"=r" (ret) :"m" (*(volatile unsigned long *)addr) :"memory"); return ret\
............                ; }
............[      85]: static inline __attribute__((no_instrument_function)) void writeq(unsigned long val, volatile void *addr) { asm \
............                volatile("mov" "q" " %0,%1": :"r" (val), "m" (*(volatile unsigned long *)addr) :"memory"); }
............[     111]: static inline __attribute__((no_instrument_function)) phys_addr_t virt_to_phys(volatile void *address)
............[     112]: {
............[     113]: return __phys_addr_nodebug((unsigned long)(address));
............[     114]: }
............[     129]: static inline __attribute__((no_instrument_function)) void *phys_to_virt(phys_addr_t address)
............[     130]: {
............[     131]: return ((void *)((unsigned long)(address)+((unsigned long)(0xffff880000000000UL))));
............[     132]: }
............[     144]: static inline __attribute__((no_instrument_function)) unsigned int isa_virt_to_bus(volatile void *address)
............[     145]: {
............[     146]: return (unsigned int)virt_to_phys(address);
............[     147]: }
............[     174]: extern void *ioremap_nocache(resource_size_t offset, unsigned long size);
............[     175]: extern void *ioremap_cache(resource_size_t offset, unsigned long size);
............[     176]: extern void *ioremap_prot(resource_size_t offset, unsigned long size,
............[     177]: unsigned long prot_val);
............[     182]: static inline __attribute__((no_instrument_function)) void *ioremap(resource_size_t offset, unsigned long size\
............                )
............[     183]: {
............[     184]: return ioremap_nocache(offset, size);
............[     185]: }
............[     187]: extern void iounmap(volatile void *addr);
............[     189]: extern void set_iounmap_nonlazy(void);
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/iomap.h
.............[      28]: extern unsigned int ioread8(void *);
.............[      29]: extern unsigned int ioread16(void *);
.............[      30]: extern unsigned int ioread16be(void *);
.............[      31]: extern unsigned int ioread32(void *);
.............[      32]: extern unsigned int ioread32be(void *);
.............[      34]: extern void iowrite8(u8, void *);
.............[      35]: extern void iowrite16(u16, void *);
.............[      36]: extern void iowrite16be(u16, void *);
.............[      37]: extern void iowrite32(u32, void *);
.............[      38]: extern void iowrite32be(u32, void *);
.............[      51]: extern void ioread8_rep(void *port, void *buf, unsigned long count);
.............[      52]: extern void ioread16_rep(void *port, void *buf, unsigned long count);
.............[      53]: extern void ioread32_rep(void *port, void *buf, unsigned long count);
.............[      55]: extern void iowrite8_rep(void *port, const void *buf, unsigned long count);
.............[      56]: extern void iowrite16_rep(void *port, const void *buf, unsigned long count);
.............[      57]: extern void iowrite32_rep(void *port, const void *buf, unsigned long count);
.............[      61]: extern void *ioport_map(unsigned long port, unsigned int nr);
.............[      62]: extern void ioport_unmap(void *);
.............[      71]: struct pci_dev;
.............[      72]: extern void pci_iounmap(struct pci_dev *dev, void *);
............#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/iomap.h
.............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/pci_iomap.h
..............[      14]: struct pci_dev;
..............[      17]: extern void *pci_iomap(struct pci_dev *dev, int bar, unsigned long max);
..............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/pci_iomap.h
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/iomap.h
...........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io.h
............# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vmalloc.h
.............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vmalloc.h
.............[      10]: struct vm_area_struct;
.............[      29]: struct vm_struct {
.............[      30]: struct vm_struct *next;
.............[      31]: void *addr;
.............[      32]: unsigned long size;
.............[      33]: unsigned long flags;
.............[      34]: struct page **pages;
.............[      35]: unsigned int nr_pages;
.............[      36]: phys_addr_t phys_addr;
.............[      37]: const void *caller;
.............[      38]: };
.............[      40]: struct vmap_area {
.............[      41]: unsigned long va_start;
.............[      42]: unsigned long va_end;
.............[      43]: unsigned long flags;
.............[      44]: struct rb_node rb_node;
.............[      45]: struct list_head list;
.............[      46]: struct list_head purge_list;
.............[      47]: struct vm_struct *vm;
.............[      48]: struct callback_head callback_head;
.............[      49]: };
.............[      54]: extern void vm_unmap_ram(const void *mem, unsigned int count);
.............[      55]: extern void *vm_map_ram(struct page **pages, unsigned int count,
.............[      56]: int node, pgprot_t prot);
.............[      57]: extern void vm_unmap_aliases(void);
.............[      60]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) vmalloc_init\
.............                (void);
.............[      67]: extern void *vmalloc(unsigned long size);
.............[      68]: extern void *vzalloc(unsigned long size);
.............[      69]: extern void *vmalloc_user(unsigned long size);
.............[      70]: extern void *vmalloc_node(unsigned long size, int node);
.............[      71]: extern void *vzalloc_node(unsigned long size, int node);
.............[      72]: extern void *vmalloc_exec(unsigned long size);
.............[      73]: extern void *vmalloc_32(unsigned long size);
.............[      74]: extern void *vmalloc_32_user(unsigned long size);
.............[      75]: extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot);
.............[      76]: extern void *__vmalloc_node_range(unsigned long size, unsigned long align,
.............[      77]: unsigned long start, unsigned long end, gfp_t gfp_mask,
.............[      78]: pgprot_t prot, int node, const void *caller);
.............[      79]: extern void vfree(const void *addr);
.............[      81]: extern void *vmap(struct page **pages, unsigned int count,
.............[      82]: unsigned long flags, pgprot_t prot);
.............[      83]: extern void vunmap(const void *addr);
.............[      85]: extern int remap_vmalloc_range_partial(struct vm_area_struct *vma,
.............[      86]: unsigned long uaddr, void *kaddr,
.............[      87]: unsigned long size);
.............[      89]: extern int remap_vmalloc_range(struct vm_area_struct *vma, void *addr,
.............[      90]: unsigned long pgoff);
.............[      91]: void vmalloc_sync_all(void);
.............[      97]: static inline __attribute__((no_instrument_function)) size_t get_vm_area_size(const struct vm_struct *area)
.............[      98]: {
.............[     100]: return area->size - ((1UL) << 12);
.............[     101]: }
.............[     103]: extern struct vm_struct *get_vm_area(unsigned long size, unsigned long flags);
.............[     104]: extern struct vm_struct *get_vm_area_caller(unsigned long size,
.............[     105]: unsigned long flags, const void *caller);
.............[     106]: extern struct vm_struct *__get_vm_area(unsigned long size, unsigned long flags,
.............[     107]: unsigned long start, unsigned long end);
.............[     108]: extern struct vm_struct *__get_vm_area_caller(unsigned long size,
.............[     109]: unsigned long flags,
.............[     110]: unsigned long start, unsigned long end,
.............[     111]: const void *caller);
.............[     112]: extern struct vm_struct *remove_vm_area(const void *addr);
.............[     113]: extern struct vm_struct *find_vm_area(const void *addr);
.............[     115]: extern int map_vm_area(struct vm_struct *area, pgprot_t prot,
.............[     116]: struct page ***pages);
.............[     118]: extern int map_kernel_range_noflush(unsigned long start, unsigned long size,
.............[     119]: pgprot_t prot, struct page **pages);
.............[     120]: extern void unmap_kernel_range_noflush(unsigned long addr, unsigned long size);
.............[     121]: extern void unmap_kernel_range(unsigned long addr, unsigned long size);
.............[     140]: extern struct vm_struct *alloc_vm_area(size_t size, pte_t **ptes);
.............[     141]: extern void free_vm_area(struct vm_struct *area);
.............[     144]: extern long vread(char *buf, char *addr, unsigned long count);
.............[     145]: extern long vwrite(char *buf, char *addr, unsigned long count);
.............[     150]: extern struct list_head vmap_area_list;
.............[     151]: extern __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) void vm_area_add_early\
.............                (struct vm_struct *vm);
.............[     152]: extern __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) void vm_area_register_early\
.............                (struct vm_struct *vm, size_t align);
.............[     156]: struct vm_struct **pcpu_get_vm_areas(const unsigned long *offsets,
.............[     157]: const size_t *sizes, int nr_vms,
.............[     158]: size_t align);
.............[     160]: void pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms);
.............[     177]: struct vmalloc_info {
.............[     178]: unsigned long used;
.............[     179]: unsigned long largest_chunk;
.............[     180]: };
.............[     184]: extern void get_vmalloc_info(struct vmalloc_info *vmi);
.............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vmalloc.h
............#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io.h
............[     202]: static inline __attribute__((no_instrument_function)) void
............[     203]: memset_io(volatile void *addr, unsigned char val, size_t count)
............[     204]: {
............[     205]: memset((void *)addr, val, count);
............[     206]: }
............[     208]: static inline __attribute__((no_instrument_function)) void
............[     209]: memcpy_fromio(void *dst, const volatile void *src, size_t count)
............[     210]: {
............[     211]: ({ size_t __len = (count); void *__ret; if (__builtin_constant_p(count) && __len >= 64) __ret = __memcpy((dst), ((const \
............                void *)src), __len); else __ret = __builtin_memcpy((dst), ((const void *)src), __len); __ret; });
............[     212]: }
............[     214]: static inline __attribute__((no_instrument_function)) void
............[     215]: memcpy_toio(volatile void *dst, const void *src, size_t count)
............[     216]: {
............[     217]: ({ size_t __len = (count); void *__ret; if (__builtin_constant_p(count) && __len >= 64) __ret = __memcpy(((void *)dst\
............                ), (src), __len); else __ret = __builtin_memcpy(((void *)dst), (src), __len); __ret; });
............[     218]: }
............[     238]: static inline __attribute__((no_instrument_function)) void flush_write_buffers(void)
............[     239]: {
............[     243]: }
............[     247]: extern void native_io_delay(void);
............[     249]: extern int io_delay_type;
............[     250]: extern void io_delay_init(void);
............[     256]: static inline __attribute__((no_instrument_function)) void slow_down_io(void)
............[     257]: {
............[     258]: native_io_delay();
............[     264]: }
............[     308]: static inline __attribute__((no_instrument_function)) void outb(unsigned char value, int port) { asm volatile("out" \
............                "b" " %" "b" "0, %w1" : : "a"(value), "Nd"(port)); } static inline __attribute__((no_instrument_function)) unsigned \
............                char inb(int port) { unsigned char value; asm volatile("in" "b" " %w1, %" "b" "0" : "=a"(value) : "Nd"(port)); return \
............                value; } static inline __attribute__((no_instrument_function)) void outb_p(unsigned char value, int port) { outb\
............                (value, port); slow_down_io(); } static inline __attribute__((no_instrument_function)) unsigned char inb_p(int \
............                port) { unsigned char value = inb(port); slow_down_io(); return value; } static inline __attribute__((no_instrument_function\
............                )) void outsb(int port, const void *addr, unsigned long count) { asm volatile("rep; outs" "b" : "+S"(addr), "+c"(count\
............                ) : "d"(port)); } static inline __attribute__((no_instrument_function)) void insb(int port, void *addr, unsigned \
............                long count) { asm volatile("rep; ins" "b" : "+D"(addr), "+c"(count) : "d"(port)); }
............[     309]: static inline __attribute__((no_instrument_function)) void outw(unsigned short value, int port) { asm volatile(\
............                "out" "w" " %" "w" "0, %w1" : : "a"(value), "Nd"(port)); } static inline __attribute__((no_instrument_function)) \
............                unsigned short inw(int port) { unsigned short value; asm volatile("in" "w" " %w1, %" "w" "0" : "=a"(value) : "Nd"(port\
............                )); return value; } static inline __attribute__((no_instrument_function)) void outw_p(unsigned short value, int \
............                port) { outw(value, port); slow_down_io(); } static inline __attribute__((no_instrument_function)) unsigned short \
............                inw_p(int port) { unsigned short value = inw(port); slow_down_io(); return value; } static inline __attribute__((no_instrument_function\
............                )) void outsw(int port, const void *addr, unsigned long count) { asm volatile("rep; outs" "w" : "+S"(addr), "+c"(count\
............                ) : "d"(port)); } static inline __attribute__((no_instrument_function)) void insw(int port, void *addr, unsigned \
............                long count) { asm volatile("rep; ins" "w" : "+D"(addr), "+c"(count) : "d"(port)); }
............[     310]: static inline __attribute__((no_instrument_function)) void outl(unsigned int value, int port) { asm volatile("out" \
............                "l" " %" "" "0, %w1" : : "a"(value), "Nd"(port)); } static inline __attribute__((no_instrument_function)) unsigned \
............                int inl(int port) { unsigned int value; asm volatile("in" "l" " %w1, %" "" "0" : "=a"(value) : "Nd"(port)); return value\
............                ; } static inline __attribute__((no_instrument_function)) void outl_p(unsigned int value, int port) { outl(value\
............                , port); slow_down_io(); } static inline __attribute__((no_instrument_function)) unsigned int inl_p(int port) { \
............                unsigned int value = inl(port); slow_down_io(); return value; } static inline __attribute__((no_instrument_function\
............                )) void outsl(int port, const void *addr, unsigned long count) { asm volatile("rep; outs" "l" : "+S"(addr), "+c"(count\
............                ) : "d"(port)); } static inline __attribute__((no_instrument_function)) void insl(int port, void *addr, unsigned \
............                long count) { asm volatile("rep; ins" "l" : "+D"(addr), "+c"(count) : "d"(port)); }
............[     312]: extern void *xlate_dev_mem_ptr(unsigned long phys);
............[     313]: extern void unxlate_dev_mem_ptr(unsigned long phys, void *addr);
............[     315]: extern int ioremap_change_attr(unsigned long vaddr, unsigned long size,
............[     316]: unsigned long prot_val);
............[     317]: extern void *ioremap_wc(resource_size_t offset, unsigned long size);
............[     324]: extern void early_ioremap_init(void);
............[     325]: extern void early_ioremap_reset(void);
............[     326]: extern void *early_ioremap(resource_size_t phys_addr,
............[     327]: unsigned long size);
............[     328]: extern void *early_memremap(resource_size_t phys_addr,
............[     329]: unsigned long size);
............[     330]: extern void early_iounmap(void *addr, unsigned long size);
............[     331]: extern void fixup_early_ioremap(void);
............[     332]: extern bool is_early_ioremap_ptep(pte_t *ptep);
............[     349]: extern int arch_phys_wc_add(unsigned long base,
............[     350]: unsigned long size);
............[     351]: extern void arch_phys_wc_del(int handle);
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/realmode.h
...........[       8]: struct real_mode_header {
...........[       9]: u32 text_start;
...........[      10]: u32 ro_end;
...........[      12]: u32 trampoline_start;
...........[      13]: u32 trampoline_status;
...........[      14]: u32 trampoline_header;
...........[      16]: u32 trampoline_pgd;
...........[      20]: u32 wakeup_start;
...........[      21]: u32 wakeup_header;
...........[      24]: u32 machine_real_restart_asm;
...........[      26]: u32 machine_real_restart_seg;
...........[      28]: };
...........[      31]: struct trampoline_header {
...........[      38]: u64 start;
...........[      39]: u64 efer;
...........[      40]: u32 cr4;
...........[      42]: };
...........[      44]: extern struct real_mode_header *real_mode_header;
...........[      45]: extern unsigned char real_mode_blob_end[];
...........[      47]: extern unsigned long init_rsp;
...........[      48]: extern unsigned long initial_code;
...........[      49]: extern unsigned long initial_gs;
...........[      51]: extern unsigned char real_mode_blob[];
...........[      52]: extern unsigned char real_mode_relocs[];
...........[      58]: extern unsigned char secondary_startup_64[];
...........[      61]: void reserve_real_mode(void);
...........[      62]: void setup_real_mode(void);
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/realmode.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/acpi.h
..........[      55]: int __acpi_acquire_global_lock(unsigned int *lock);
..........[      56]: int __acpi_release_global_lock(unsigned int *lock);
..........[      81]: extern int acpi_lapic;
..........[      82]: extern int acpi_ioapic;
..........[      83]: extern int acpi_noirq;
..........[      84]: extern int acpi_strict;
..........[      85]: extern int acpi_disabled;
..........[      86]: extern int acpi_pci_disabled;
..........[      87]: extern int acpi_skip_timer_override;
..........[      88]: extern int acpi_use_timer_override;
..........[      89]: extern int acpi_fix_pin2_polarity;
..........[      90]: extern int acpi_disable_cmcff;
..........[      92]: extern u8 acpi_sci_flags;
..........[      93]: extern int acpi_sci_override_gsi;
..........[      94]: void acpi_pic_sci_set_trigger(unsigned int, u16);
..........[      96]: extern int (*__acpi_register_gsi)(struct device *dev, u32 gsi,
..........[      97]: int trigger, int polarity);
..........[      99]: static inline __attribute__((no_instrument_function)) void disable_acpi(void)
..........[     100]: {
..........[     101]: acpi_disabled = 1;
..........[     102]: acpi_pci_disabled = 1;
..........[     103]: acpi_noirq = 1;
..........[     104]: }
..........[     106]: extern int acpi_gsi_to_irq(u32 gsi, unsigned int *irq);
..........[     108]: static inline __attribute__((no_instrument_function)) void acpi_noirq_set(void) { acpi_noirq = 1; }
..........[     109]: static inline __attribute__((no_instrument_function)) void acpi_disable_pci(void)
..........[     110]: {
..........[     111]: acpi_pci_disabled = 1;
..........[     112]: acpi_noirq_set();
..........[     113]: }
..........[     116]: extern int (*acpi_suspend_lowlevel)(void);
..........[     124]: static inline __attribute__((no_instrument_function)) unsigned int acpi_processor_cstate_check(unsigned int \
..........                max_cstate)
..........[     125]: {
..........[     132]: if (boot_cpu_data.x86 == 0x0F &&
..........[     133]: boot_cpu_data.x86_vendor == 2 &&
..........[     134]: boot_cpu_data.x86_model <= 0x05 &&
..........[     135]: boot_cpu_data.x86_mask < 0x0A)
..........[     136]: return 1;
..........[     137]: else if (amd_e400_c1e_detected)
..........[     138]: return 1;
..........[     139]: else
..........[     140]: return max_cstate;
..........[     141]: }
..........[     143]: static inline __attribute__((no_instrument_function)) bool arch_has_acpi_pdc(void)
..........[     144]: {
..........[     145]: struct cpuinfo_x86 *c = &(*({ do { const void *__vpp_verify = (typeof(((&(cpu_info))) + 0))((void *)0); (void)__vpp_verify\
..........                ; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(cpu_info))) *)(&(cpu_info)))); (\
..........                typeof((typeof(*(&(cpu_info))) *)(&(cpu_info)))) (__ptr + (((__per_cpu_offset[0])))); }); }));
..........[     146]: return (c->x86_vendor == 0 ||
..........[     147]: c->x86_vendor == 5);
..........[     148]: }
..........[     150]: static inline __attribute__((no_instrument_function)) void arch_acpi_set_pdc_bits(u32 *buf)
..........[     151]: {
..........[     152]: struct cpuinfo_x86 *c = &(*({ do { const void *__vpp_verify = (typeof(((&(cpu_info))) + 0))((void *)0); (void)__vpp_verify\
..........                ; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(cpu_info))) *)(&(cpu_info)))); (\
..........                typeof((typeof(*(&(cpu_info))) *)(&(cpu_info)))) (__ptr + (((__per_cpu_offset[0])))); }); }));
..........[     154]: buf[2] |= ((0x0010) | (0x0008) | (0x0002) | (0x0100) | (0x0200));
..........[     156]: if ((__builtin_constant_p((4*32+ 7)) && ( ((((4*32+ 7))>>5)==0 && (1UL<<(((4*32+ 7))&31) & ((1<<((0*32+ 0) & 31))|\
..........                (1<<((0*32+ 3)) & 31)|(1<<((0*32+ 5) & 31))|(1<<((0*32+ 6) & 31))| (1<<((0*32+ 8) & 31))|(1<<((0*32+13)) & 31)|(1<<\
..........                ((0*32+24) & 31))|(1<<((0*32+15) & 31))| (1<<((0*32+25) & 31))|(1<<((0*32+26) & 31))))) || ((((4*32+ 7))>>5)==1 && \
..........                (1UL<<(((4*32+ 7))&31) & ((1<<((1*32+29) & 31))|0))) || ((((4*32+ 7))>>5)==2 && (1UL<<(((4*32+ 7))&31) & 0)) || (((\
..........                (4*32+ 7))>>5)==3 && (1UL<<(((4*32+ 7))&31) & ((1<<((3*32+20) & 31))))) || ((((4*32+ 7))>>5)==4 && (1UL<<(((4*32+ \
..........                7))&31) & (0))) || ((((4*32+ 7))>>5)==5 && (1UL<<(((4*32+ 7))&31) & 0)) || ((((4*32+ 7))>>5)==6 && (1UL<<(((4*32+ 7)\
..........                )&31) & 0)) || ((((4*32+ 7))>>5)==7 && (1UL<<(((4*32+ 7))&31) & 0)) || ((((4*32+ 7))>>5)==8 && (1UL<<(((4*32+ 7))&31\
..........                ) & 0)) || ((((4*32+ 7))>>5)==9 && (1UL<<(((4*32+ 7))&31) & 0)) ) ? 1 : (__builtin_constant_p(((4*32+ 7))) ? constant_test_bit\
..........                (((4*32+ 7)), ((unsigned long *)((c)->x86_capability))) : variable_test_bit(((4*32+ 7)), ((unsigned long *)((c\
..........                )->x86_capability))))))
..........[     157]: buf[2] |= ((0x0008) | (0x0002) | (0x0020) | (0x0800) | (0x0001));
..........[     159]: if ((__builtin_constant_p((0*32+22)) && ( ((((0*32+22))>>5)==0 && (1UL<<(((0*32+22))&31) & ((1<<((0*32+ 0) & 31\
..........                ))|(1<<((0*32+ 3)) & 31)|(1<<((0*32+ 5) & 31))|(1<<((0*32+ 6) & 31))| (1<<((0*32+ 8) & 31))|(1<<((0*32+13)) & 31)|(\
..........                1<<((0*32+24) & 31))|(1<<((0*32+15) & 31))| (1<<((0*32+25) & 31))|(1<<((0*32+26) & 31))))) || ((((0*32+22))>>5)\
..........                ==1 && (1UL<<(((0*32+22))&31) & ((1<<((1*32+29) & 31))|0))) || ((((0*32+22))>>5)==2 && (1UL<<(((0*32+22))&31) & \
..........                0)) || ((((0*32+22))>>5)==3 && (1UL<<(((0*32+22))&31) & ((1<<((3*32+20) & 31))))) || ((((0*32+22))>>5)==4 && (1UL\
..........                <<(((0*32+22))&31) & (0))) || ((((0*32+22))>>5)==5 && (1UL<<(((0*32+22))&31) & 0)) || ((((0*32+22))>>5)==6 && (1UL\
..........                <<(((0*32+22))&31) & 0)) || ((((0*32+22))>>5)==7 && (1UL<<(((0*32+22))&31) & 0)) || ((((0*32+22))>>5)==8 && (1UL\
..........                <<(((0*32+22))&31) & 0)) || ((((0*32+22))>>5)==9 && (1UL<<(((0*32+22))&31) & 0)) ) ? 1 : (__builtin_constant_p(((\
..........                0*32+22))) ? constant_test_bit(((0*32+22)), ((unsigned long *)((c)->x86_capability))) : variable_test_bit((\
..........                (0*32+22)), ((unsigned long *)((c)->x86_capability))))))
..........[     160]: buf[2] |= (0x0004);
..........[     165]: if (!(__builtin_constant_p((4*32+ 3)) && ( ((((4*32+ 3))>>5)==0 && (1UL<<(((4*32+ 3))&31) & ((1<<((0*32+ 0) & 31))\
..........                |(1<<((0*32+ 3)) & 31)|(1<<((0*32+ 5) & 31))|(1<<((0*32+ 6) & 31))| (1<<((0*32+ 8) & 31))|(1<<((0*32+13)) & 31)|(1<<\
..........                ((0*32+24) & 31))|(1<<((0*32+15) & 31))| (1<<((0*32+25) & 31))|(1<<((0*32+26) & 31))))) || ((((4*32+ 3))>>5)==1 && \
..........                (1UL<<(((4*32+ 3))&31) & ((1<<((1*32+29) & 31))|0))) || ((((4*32+ 3))>>5)==2 && (1UL<<(((4*32+ 3))&31) & 0)) || (((\
..........                (4*32+ 3))>>5)==3 && (1UL<<(((4*32+ 3))&31) & ((1<<((3*32+20) & 31))))) || ((((4*32+ 3))>>5)==4 && (1UL<<(((4*32+ \
..........                3))&31) & (0))) || ((((4*32+ 3))>>5)==5 && (1UL<<(((4*32+ 3))&31) & 0)) || ((((4*32+ 3))>>5)==6 && (1UL<<(((4*32+ 3)\
..........                )&31) & 0)) || ((((4*32+ 3))>>5)==7 && (1UL<<(((4*32+ 3))&31) & 0)) || ((((4*32+ 3))>>5)==8 && (1UL<<(((4*32+ 3))&31\
..........                ) & 0)) || ((((4*32+ 3))>>5)==9 && (1UL<<(((4*32+ 3))&31) & 0)) ) ? 1 : (__builtin_constant_p(((4*32+ 3))) ? constant_test_bit\
..........                (((4*32+ 3)), ((unsigned long *)((c)->x86_capability))) : variable_test_bit(((4*32+ 3)), ((unsigned long *)((c\
..........                )->x86_capability))))))
..........[     166]: buf[2] &= ~((0x0200));
..........[     167]: }
..........[     183]: extern int acpi_numa;
..........[     184]: extern int x86_acpi_numa_init(void);
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/acpi.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/fixmap.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/clocksource.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/clocksource.h
...........[      22]: typedef u64 cycle_t;
...........[      23]: struct clocksource;
...........[      24]: struct module;
..........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/clocksource.h
...........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/clocksource.h
............[      13]: struct arch_clocksource_data {
............[      14]: int vclock_mode;
............[      15]: };
............#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/clocksource.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/clocksource.h
...........[      44]: struct cyclecounter {
...........[      45]: cycle_t (*read)(const struct cyclecounter *cc);
...........[      46]: cycle_t mask;
...........[      47]: u32 mult;
...........[      48]: u32 shift;
...........[      49]: };
...........[      67]: struct timecounter {
...........[      68]: const struct cyclecounter *cc;
...........[      69]: cycle_t cycle_last;
...........[      70]: u64 nsec;
...........[      71]: };
...........[      81]: static inline __attribute__((no_instrument_function)) u64 cyclecounter_cyc2ns(const struct cyclecounter *cc\
...........                ,
...........[      82]: cycle_t cycles)
...........[      83]: {
...........[      84]: u64 ret = (u64)cycles;
...........[      85]: ret = (ret * cc->mult) >> cc->shift;
...........[      86]: return ret;
...........[      87]: }
...........[      99]: extern void timecounter_init(struct timecounter *tc,
...........[     100]: const struct cyclecounter *cc,
...........[     101]: u64 start_tstamp);
...........[     111]: extern u64 timecounter_read(struct timecounter *tc);
...........[     127]: extern u64 timecounter_cyc2time(struct timecounter *tc,
...........[     128]: cycle_t cycle_tstamp);
...........[     168]: struct clocksource {
...........[     173]: cycle_t (*read)(struct clocksource *cs);
...........[     174]: cycle_t cycle_last;
...........[     175]: cycle_t mask;
...........[     176]: u32 mult;
...........[     177]: u32 shift;
...........[     178]: u64 max_idle_ns;
...........[     179]: u32 maxadj;
...........[     181]: struct arch_clocksource_data archdata;
...........[     184]: const char *name;
...........[     185]: struct list_head list;
...........[     186]: int rating;
...........[     187]: int (*enable)(struct clocksource *cs);
...........[     188]: void (*disable)(struct clocksource *cs);
...........[     189]: unsigned long flags;
...........[     190]: void (*suspend)(struct clocksource *cs);
...........[     191]: void (*resume)(struct clocksource *cs);
...........[     196]: struct list_head wd_list;
...........[     197]: cycle_t cs_last;
...........[     198]: cycle_t wd_last;
...........[     200]: struct module *owner;
...........[     201]: } __attribute__((__aligned__((1 << (6)))));
...........[     226]: static inline __attribute__((no_instrument_function)) u32 clocksource_khz2mult(u32 khz, u32 shift_constant)
...........[     227]: {
...........[     235]: u64 tmp = ((u64)1000000) << shift_constant;
...........[     237]: tmp += khz/2;
...........[     238]: ({ uint32_t __base = (khz); uint32_t __rem; __rem = ((uint64_t)(tmp)) % __base; (tmp) = ((uint64_t)(tmp)) / __base; __rem\
...........                ; });
...........[     240]: return (u32)tmp;
...........[     241]: }
...........[     252]: static inline __attribute__((no_instrument_function)) u32 clocksource_hz2mult(u32 hz, u32 shift_constant)
...........[     253]: {
...........[     261]: u64 tmp = ((u64)1000000000) << shift_constant;
...........[     263]: tmp += hz/2;
...........[     264]: ({ uint32_t __base = (hz); uint32_t __rem; __rem = ((uint64_t)(tmp)) % __base; (tmp) = ((uint64_t)(tmp)) / __base; __rem\
...........                ; });
...........[     266]: return (u32)tmp;
...........[     267]: }
...........[     279]: static inline __attribute__((no_instrument_function)) s64 clocksource_cyc2ns(cycle_t cycles, u32 mult, u32 shift\
...........                )
...........[     280]: {
...........[     281]: return ((u64) cycles * mult) >> shift;
...........[     282]: }
...........[     285]: extern int clocksource_register(struct clocksource*);
...........[     286]: extern int clocksource_unregister(struct clocksource*);
...........[     287]: extern void clocksource_touch_watchdog(void);
...........[     288]: extern struct clocksource* clocksource_get_next(void);
...........[     289]: extern void clocksource_change_rating(struct clocksource *cs, int rating);
...........[     290]: extern void clocksource_suspend(void);
...........[     291]: extern void clocksource_resume(void);
...........[     292]: extern struct clocksource * __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function\
...........                )) __attribute__((weak)) clocksource_default_clock(void);
...........[     293]: extern void clocksource_mark_unstable(struct clocksource *cs);
...........[     295]: extern u64
...........[     296]: clocks_calc_max_nsecs(u32 mult, u32 shift, u32 maxadj, u64 mask);
...........[     297]: extern void
...........[     298]: clocks_calc_mult_shift(u32 *mult, u32 *shift, u32 from, u32 to, u32 minsec);
...........[     304]: extern int
...........[     305]: __clocksource_register_scale(struct clocksource *cs, u32 scale, u32 freq);
...........[     306]: extern void
...........[     307]: __clocksource_updatefreq_scale(struct clocksource *cs, u32 scale, u32 freq);
...........[     309]: static inline __attribute__((no_instrument_function)) int clocksource_register_hz(struct clocksource *cs, u32 \
...........                hz)
...........[     310]: {
...........[     311]: return __clocksource_register_scale(cs, 1, hz);
...........[     312]: }
...........[     314]: static inline __attribute__((no_instrument_function)) int clocksource_register_khz(struct clocksource *cs, \
...........                u32 khz)
...........[     315]: {
...........[     316]: return __clocksource_register_scale(cs, 1000, khz);
...........[     317]: }
...........[     319]: static inline __attribute__((no_instrument_function)) void __clocksource_updatefreq_hz(struct clocksource \
...........                *cs, u32 hz)
...........[     320]: {
...........[     321]: __clocksource_updatefreq_scale(cs, 1, hz);
...........[     322]: }
...........[     324]: static inline __attribute__((no_instrument_function)) void __clocksource_updatefreq_khz(struct clocksource \
...........                *cs, u32 khz)
...........[     325]: {
...........[     326]: __clocksource_updatefreq_scale(cs, 1000, khz);
...........[     327]: }
...........[     330]: extern int timekeeping_notify(struct clocksource *clock);
...........[     332]: extern cycle_t clocksource_mmio_readl_up(struct clocksource *);
...........[     333]: extern cycle_t clocksource_mmio_readl_down(struct clocksource *);
...........[     334]: extern cycle_t clocksource_mmio_readw_up(struct clocksource *);
...........[     335]: extern cycle_t clocksource_mmio_readw_down(struct clocksource *);
...........[     337]: extern int clocksource_mmio_init(void *, const char *,
...........[     338]: unsigned long, int, unsigned, cycle_t (*)(struct clocksource *));
...........[     340]: extern int clocksource_i8253_init(void);
...........[     342]: struct device_node;
...........[     343]: typedef void(*clocksource_of_init_fn)(struct device_node *);
...........[     353]: static inline __attribute__((no_instrument_function)) void clocksource_of_init(void) {}
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/clocksource.h
.........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock.h
..........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock-abi.h
...........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock-abi.h
...........[      25]: struct pvclock_vcpu_time_info {
...........[      26]: u32 version;
...........[      27]: u32 pad0;
...........[      28]: u64 tsc_timestamp;
...........[      29]: u64 system_time;
...........[      30]: u32 tsc_to_system_mul;
...........[      31]: s8 tsc_shift;
...........[      32]: u8 flags;
...........[      33]: u8 pad[2];
...........[      34]: } __attribute__((__packed__));
...........[      36]: struct pvclock_wall_clock {
...........[      37]: u32 version;
...........[      38]: u32 sec;
...........[      39]: u32 nsec;
...........[      40]: } __attribute__((__packed__));
...........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock-abi.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock.h
..........[       8]: cycle_t pvclock_clocksource_read(struct pvclock_vcpu_time_info *src);
..........[       9]: u8 pvclock_read_flags(struct pvclock_vcpu_time_info *src);
..........[      10]: void pvclock_set_flags(u8 flags);
..........[      11]: unsigned long pvclock_tsc_khz(struct pvclock_vcpu_time_info *src);
..........[      12]: void pvclock_read_wallclock(struct pvclock_wall_clock *wall,
..........[      13]: struct pvclock_vcpu_time_info *vcpu,
..........[      14]: struct timespec *ts);
..........[      15]: void pvclock_resume(void);
..........[      17]: void pvclock_touch_watchdogs(void);
..........[      23]: static inline __attribute__((no_instrument_function)) u64 pvclock_scale_delta(u64 delta, u32 mul_frac, int shift\
..........                )
..........[      24]: {
..........[      25]: u64 product;
..........[      29]: ulong tmp;
..........[      32]: if (shift < 0)
..........[      33]: delta >>= -shift;
..........[      34]: else
..........[      35]: delta <<= shift;
..........[      49]: __asm__ (
..........[      50]: "mulq %[mul_frac] ; shrd $32, %[hi], %[lo]"
..........[      51]: : [lo]"=a"(product),
..........[      52]: [hi]"=d"(tmp)
..........[      53]: : "0"(delta),
..........[      54]: [mul_frac]"rm"((u64)mul_frac));
..........[      59]: return product;
..........[      60]: }
..........[      62]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline))
..........[      63]: u64 pvclock_get_nsec_offset(const struct pvclock_vcpu_time_info *src)
..........[      64]: {
..........[      65]: u64 delta = __native_read_tsc() - src->tsc_timestamp;
..........[      66]: return pvclock_scale_delta(delta, src->tsc_to_system_mul,
..........[      67]: src->tsc_shift);
..........[      68]: }
..........[      70]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline))
..........[      71]: unsigned __pvclock_read_cycles(const struct pvclock_vcpu_time_info *src,
..........[      72]: cycle_t *cycles, u8 *flags)
..........[      73]: {
..........[      74]: unsigned version;
..........[      75]: cycle_t ret, offset;
..........[      76]: u8 ret_flags;
..........[      78]: version = src->version;
..........[      85]: rdtsc_barrier();
..........[      86]: offset = pvclock_get_nsec_offset(src);
..........[      87]: ret = src->system_time + offset;
..........[      88]: ret_flags = src->flags;
..........[      89]: rdtsc_barrier();
..........[      91]: *cycles = ret;
..........[      92]: *flags = ret_flags;
..........[      93]: return version;
..........[      94]: }
..........[      96]: struct pvclock_vsyscall_time_info {
..........[      97]: struct pvclock_vcpu_time_info pvti;
..........[      98]: } __attribute__((__aligned__((1 << (6)))));
..........[     103]: int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) pvclock_init_vsyscall\
..........                (struct pvclock_vsyscall_time_info *i,
..........[     104]: int size);
..........[     105]: struct pvclock_vcpu_time_info *pvclock_get_vsyscall_time_info(int cpu);
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pvclock.h
........#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/fixmap.h
.........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/vsyscall.h
..........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/vsyscall.h
..........[       4]: enum vsyscall_num {
..........[       5]: __NR_vgettimeofday,
..........[       6]: __NR_vtime,
..........[       7]: __NR_vgetcpu,
..........[       8]: };
..........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/vsyscall.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/fixmap.h
.........[      74]: enum fixed_addresses {
.........[      79]: VSYSCALL_LAST_PAGE,
.........[      80]: VSYSCALL_FIRST_PAGE = VSYSCALL_LAST_PAGE
.........[      81]: + (((-2UL << 20)-(-10UL << 20)) >> 12) - 1,
.........[      82]: VVAR_PAGE,
.........[      83]: VSYSCALL_HPET,
.........[      89]: FIX_DBGP_BASE,
.........[      90]: FIX_EARLYCON_MEM_BASE,
.........[      95]: FIX_APIC_BASE,
.........[      98]: FIX_IO_APIC_BASE_0,
.........[      99]: FIX_IO_APIC_BASE_END = FIX_IO_APIC_BASE_0 + 128 - 1,
.........[     107]: FIX_RO_IDT,
.........[     118]: FIX_TEXT_POKE1,
.........[     119]: FIX_TEXT_POKE0,
.........[     123]: __end_of_permanent_fixed_addresses,
.........[     135]: FIX_BTMAP_END =
.........[     136]: (__end_of_permanent_fixed_addresses ^
.........[     137]: (__end_of_permanent_fixed_addresses + (64 * 4) - 1)) &
.........[     138]: -512
.........[     139]: ? __end_of_permanent_fixed_addresses + (64 * 4) -
.........[     140]: (__end_of_permanent_fixed_addresses & ((64 * 4) - 1))
.........[     141]: : __end_of_permanent_fixed_addresses,
.........[     142]: FIX_BTMAP_BEGIN = FIX_BTMAP_END + (64 * 4) - 1,
.........[     147]: FIX_TBOOT_BASE,
.........[     149]: __end_of_fixed_addresses
.........[     150]: };
.........[     153]: extern void reserve_top_address(unsigned long reserve);
.........[     160]: extern int fixmaps_set;
.........[     162]: extern pte_t *kmap_pte;
.........[     163]: extern pgprot_t kmap_prot;
.........[     164]: extern pte_t *pkmap_page_table;
.........[     166]: void __native_set_fixmap(enum fixed_addresses idx, pte_t pte);
.........[     167]: void native_set_fixmap(enum fixed_addresses idx,
.........[     168]: phys_addr_t phys, pgprot_t flags);
.........[     171]: static inline __attribute__((no_instrument_function)) void __set_fixmap(enum fixed_addresses idx,
.........[     172]: phys_addr_t phys, pgprot_t flags)
.........[     173]: {
.........[     174]: native_set_fixmap(idx, phys, flags);
.........[     175]: }
.........[     193]: extern void __this_fixmap_does_not_exist(void);
.........[     200]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) unsigned long fix_to_virt\
.........                (const unsigned int idx)
.........[     201]: {
.........[     211]: if (idx >= __end_of_fixed_addresses)
.........[     212]: __this_fixmap_does_not_exist();
.........[     214]: return (((-2UL << 20)-((1UL) << 12)) - ((idx) << 12));
.........[     215]: }
.........[     217]: static inline __attribute__((no_instrument_function)) unsigned long virt_to_fix(const unsigned long vaddr)
.........[     218]: {
.........[     219]: do { if (__builtin_expect(!!(vaddr >=(( -2UL << 20)-((1UL) << 12)) || vaddr <((( -2UL << 20)-((1UL) << 12)) -( __end_of_permanent_fixed_addresses \
.........                << 12))), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" \
.........                "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry\
.........                ))); do { } while (1); } while (0); } while(0);
.........[     220]: return ((((-2UL << 20)-((1UL) << 12)) - ((vaddr)&(~(((1UL) << 12)-1)))) >> 12);
.........[     221]: }
.........[     224]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) unsigned long
.........[     225]: __set_fixmap_offset(enum fixed_addresses idx, phys_addr_t phys, pgprot_t flags)
.........[     226]: {
.........[     227]: __set_fixmap(idx, phys, flags);
.........[     228]: return fix_to_virt(idx) + (phys & (((1UL) << 12) - 1));
.........[     229]: }
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/fixmap.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apic.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/idle.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/idle.h
.........[       7]: struct notifier_block;
.........[       8]: void idle_notifier_register(struct notifier_block *n);
.........[       9]: void idle_notifier_unregister(struct notifier_block *n);
.........[      12]: void enter_idle(void);
.........[      13]: void exit_idle(void);
.........[      20]: void amd_e400_remove_cpu(int cpu);
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/idle.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apic.h
........[      41]: static inline __attribute__((no_instrument_function)) void generic_apic_probe(void)
........[      42]: {
........[      43]: }
........[      48]: extern unsigned int apic_verbosity;
........[      49]: extern int local_apic_timer_c2_ok;
........[      51]: extern int disable_apic;
........[      52]: extern unsigned int lapic_timer_frequency;
........[      55]: extern void __inquire_remote_apic(int apicid);
........[      62]: static inline __attribute__((no_instrument_function)) void default_inquire_remote_apic(int apicid)
........[      63]: {
........[      64]: if (apic_verbosity >= 2)
........[      65]: __inquire_remote_apic(apicid);
........[      66]: }
........[      76]: static inline __attribute__((no_instrument_function)) bool apic_from_smp_config(void)
........[      77]: {
........[      78]: return smp_found_config && !disable_apic;
........[      79]: }
........[      89]: extern int is_vsmp_box(void);
........[      96]: extern void xapic_wait_icr_idle(void);
........[      97]: extern u32 safe_xapic_wait_icr_idle(void);
........[      98]: extern void xapic_icr_write(u32, u32);
........[      99]: extern int setup_profiling_timer(unsigned int);
........[     101]: static inline __attribute__((no_instrument_function)) void native_apic_mem_write(u32 reg, u32 v)
........[     102]: {
........[     103]: volatile u32 *addr = (volatile u32 *)((fix_to_virt(FIX_APIC_BASE)) + reg);
........[     107]: asm volatile ("661:\n\t" "movl %0, %1" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
........                " .long " "663""1""f - .\n" " .word " "(3*32+19)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
........                "xchgl %0, %1" "\n" "664""1" ":\n\t" ".popsection" : "=r"( v) : "i" (0),ASM_OUTPUT2("0"( v), "m"( *addr)));
........[     108]: }
........[     110]: static inline __attribute__((no_instrument_function)) u32 native_apic_mem_read(u32 reg)
........[     111]: {
........[     112]: return *((volatile u32 *)((fix_to_virt(FIX_APIC_BASE)) + reg));
........[     113]: }
........[     115]: extern void native_apic_wait_icr_idle(void);
........[     116]: extern u32 native_safe_apic_wait_icr_idle(void);
........[     117]: extern void native_apic_icr_write(u32 low, u32 id);
........[     118]: extern u64 native_apic_icr_read(void);
........[     120]: extern int x2apic_mode;
........[     128]: static inline __attribute__((no_instrument_function)) void x2apic_wrmsr_fence(void)
........[     129]: {
........[     130]: asm volatile("mfence" : : : "memory");
........[     131]: }
........[     133]: static inline __attribute__((no_instrument_function)) void native_apic_msr_write(u32 reg, u32 v)
........[     134]: {
........[     135]: if (reg == 0xE0 || reg == 0x20 || reg == 0xD0 ||
........[     136]: reg == 0x30)
........[     137]: return;
........[     139]: wrmsr(0x800 + (reg >> 4), v, 0);
........[     140]: }
........[     142]: static inline __attribute__((no_instrument_function)) void native_apic_msr_eoi_write(u32 reg, u32 v)
........[     143]: {
........[     144]: wrmsr(0x800 + (0xB0 >> 4), 0x0, 0);
........[     145]: }
........[     147]: static inline __attribute__((no_instrument_function)) u32 native_apic_msr_read(u32 reg)
........[     148]: {
........[     149]: u64 msr;
........[     151]: if (reg == 0xE0)
........[     152]: return -1;
........[     154]: rdmsrl(0x800 + (reg >> 4), msr);
........[     155]: return (u32)msr;
........[     156]: }
........[     158]: static inline __attribute__((no_instrument_function)) void native_x2apic_wait_icr_idle(void)
........[     159]: {
........[     161]: return;
........[     162]: }
........[     164]: static inline __attribute__((no_instrument_function)) u32 native_safe_x2apic_wait_icr_idle(void)
........[     165]: {
........[     167]: return 0;
........[     168]: }
........[     170]: static inline __attribute__((no_instrument_function)) void native_x2apic_icr_write(u32 low, u32 id)
........[     171]: {
........[     172]: wrmsrl(0x800 + (0x300 >> 4), ((__u64) id) << 32 | low);
........[     173]: }
........[     175]: static inline __attribute__((no_instrument_function)) u64 native_x2apic_icr_read(void)
........[     176]: {
........[     177]: unsigned long val;
........[     179]: rdmsrl(0x800 + (0x300 >> 4), val);
........[     180]: return val;
........[     181]: }
........[     183]: extern int x2apic_phys;
........[     184]: extern int x2apic_preenabled;
........[     185]: extern void check_x2apic(void);
........[     186]: extern void enable_x2apic(void);
........[     187]: extern void x2apic_icr_write(u32 low, u32 id);
........[     188]: static inline __attribute__((no_instrument_function)) int x2apic_enabled(void)
........[     189]: {
........[     190]: u64 msr;
........[     192]: if (!(__builtin_constant_p((4*32+21)) && ( ((((4*32+21))>>5)==0 && (1UL<<(((4*32+21))&31) & ((1<<((0*32+ 0) & 31\
........                ))|(1<<((0*32+ 3)) & 31)|(1<<((0*32+ 5) & 31))|(1<<((0*32+ 6) & 31))| (1<<((0*32+ 8) & 31))|(1<<((0*32+13)) & 31)|(\
........                1<<((0*32+24) & 31))|(1<<((0*32+15) & 31))| (1<<((0*32+25) & 31))|(1<<((0*32+26) & 31))))) || ((((4*32+21))>>5)\
........                ==1 && (1UL<<(((4*32+21))&31) & ((1<<((1*32+29) & 31))|0))) || ((((4*32+21))>>5)==2 && (1UL<<(((4*32+21))&31) & \
........                0)) || ((((4*32+21))>>5)==3 && (1UL<<(((4*32+21))&31) & ((1<<((3*32+20) & 31))))) || ((((4*32+21))>>5)==4 && (1UL\
........                <<(((4*32+21))&31) & (0))) || ((((4*32+21))>>5)==5 && (1UL<<(((4*32+21))&31) & 0)) || ((((4*32+21))>>5)==6 && (1UL\
........                <<(((4*32+21))&31) & 0)) || ((((4*32+21))>>5)==7 && (1UL<<(((4*32+21))&31) & 0)) || ((((4*32+21))>>5)==8 && (1UL\
........                <<(((4*32+21))&31) & 0)) || ((((4*32+21))>>5)==9 && (1UL<<(((4*32+21))&31) & 0)) ) ? 1 : (__builtin_constant_p(((\
........                4*32+21))) ? constant_test_bit(((4*32+21)), ((unsigned long *)((&boot_cpu_data)->x86_capability))) : variable_test_bit\
........                (((4*32+21)), ((unsigned long *)((&boot_cpu_data)->x86_capability))))))
........[     193]: return 0;
........[     195]: rdmsrl(0x0000001b, msr);
........[     196]: if (msr & (1UL << 10))
........[     197]: return 1;
........[     198]: return 0;
........[     199]: }
........[     202]: static inline __attribute__((no_instrument_function)) void x2apic_force_phys(void)
........[     203]: {
........[     204]: x2apic_phys = 1;
........[     205]: }
........[     229]: extern void enable_IR_x2apic(void);
........[     231]: extern int get_physical_broadcast(void);
........[     233]: extern int lapic_get_maxlvt(void);
........[     234]: extern void clear_local_APIC(void);
........[     235]: extern void connect_bsp_APIC(void);
........[     236]: extern void disconnect_bsp_APIC(int virt_wire_setup);
........[     237]: extern void disable_local_APIC(void);
........[     238]: extern void lapic_shutdown(void);
........[     239]: extern int verify_local_APIC(void);
........[     240]: extern void sync_Arb_IDs(void);
........[     241]: extern void init_bsp_APIC(void);
........[     242]: extern void setup_local_APIC(void);
........[     243]: extern void end_local_APIC_setup(void);
........[     244]: extern void bsp_end_local_APIC_setup(void);
........[     245]: extern void init_apic_mappings(void);
........[     246]: void register_lapic_address(unsigned long address);
........[     247]: extern void setup_boot_APIC_clock(void);
........[     248]: extern void setup_secondary_APIC_clock(void);
........[     249]: extern int APIC_init_uniprocessor(void);
........[     250]: extern int apic_force_enable(unsigned long addr);
........[     256]: extern int apic_is_clustered_box(void);
........[     264]: extern int setup_APIC_eilvt(u8 lvt_off, u8 vector, u8 msg_type, u8 mask);
........[     291]: struct apic {
........[     292]: char *name;
........[     294]: int (*probe)(void);
........[     295]: int (*acpi_madt_oem_check)(char *oem_id, char *oem_table_id);
........[     296]: int (*apic_id_valid)(int apicid);
........[     297]: int (*apic_id_registered)(void);
........[     299]: u32 irq_delivery_mode;
........[     300]: u32 irq_dest_mode;
........[     302]: const struct cpumask *(*target_cpus)(void);
........[     304]: int disable_esr;
........[     306]: int dest_logical;
........[     307]: unsigned long (*check_apicid_used)(physid_mask_t *map, int apicid);
........[     308]: unsigned long (*check_apicid_present)(int apicid);
........[     310]: void (*vector_allocation_domain)(int cpu, struct cpumask *retmask,
........[     311]: const struct cpumask *mask);
........[     312]: void (*init_apic_ldr)(void);
........[     314]: void (*ioapic_phys_id_map)(physid_mask_t *phys_map, physid_mask_t *retmap);
........[     316]: void (*setup_apic_routing)(void);
........[     317]: int (*multi_timer_check)(int apic, int irq);
........[     318]: int (*cpu_present_to_apicid)(int mps_cpu);
........[     319]: void (*apicid_to_cpu_present)(int phys_apicid, physid_mask_t *retmap);
........[     320]: void (*setup_portio_remap)(void);
........[     321]: int (*check_phys_apicid_present)(int phys_apicid);
........[     322]: void (*enable_apic_mode)(void);
........[     323]: int (*phys_pkg_id)(int cpuid_apic, int index_msb);
........[     330]: int (*mps_oem_check)(struct mpc_table *mpc, char *oem, char *productid);
........[     332]: unsigned int (*get_apic_id)(unsigned long x);
........[     333]: unsigned long (*set_apic_id)(unsigned int id);
........[     334]: unsigned long apic_id_mask;
........[     336]: int (*cpu_mask_to_apicid_and)(const struct cpumask *cpumask,
........[     337]: const struct cpumask *andmask,
........[     338]: unsigned int *apicid);
........[     341]: void (*send_IPI_mask)(const struct cpumask *mask, int vector);
........[     342]: void (*send_IPI_mask_allbutself)(const struct cpumask *mask,
........[     343]: int vector);
........[     344]: void (*send_IPI_allbutself)(int vector);
........[     345]: void (*send_IPI_all)(int vector);
........[     346]: void (*send_IPI_self)(int vector);
........[     349]: int (*wakeup_secondary_cpu)(int apicid, unsigned long start_eip);
........[     351]: int trampoline_phys_low;
........[     352]: int trampoline_phys_high;
........[     354]: void (*wait_for_init_deassert)(atomic_t *deassert);
........[     355]: void (*smp_callin_clear_local_apic)(void);
........[     356]: void (*inquire_remote_apic)(int apicid);
........[     359]: u32 (*read)(u32 reg);
........[     360]: void (*write)(u32 reg, u32 v);
........[     368]: void (*eoi_write)(u32 reg, u32 v);
........[     369]: u64 (*icr_read)(void);
........[     370]: void (*icr_write)(u32 low, u32 high);
........[     371]: void (*wait_icr_idle)(void);
........[     372]: u32 (*safe_wait_icr_idle)(void);
........[     395]: };
........[     402]: extern struct apic *apic;
........[     422]: extern struct apic *__apicdrivers[], *__apicdrivers_end[];
........[     428]: extern atomic_t init_deasserted;
........[     429]: extern int wakeup_secondary_cpu_via_nmi(int apicid, unsigned long start_eip);
........[     434]: static inline __attribute__((no_instrument_function)) u32 apic_read(u32 reg)
........[     435]: {
........[     436]: return apic->read(reg);
........[     437]: }
........[     439]: static inline __attribute__((no_instrument_function)) void apic_write(u32 reg, u32 val)
........[     440]: {
........[     441]: apic->write(reg, val);
........[     442]: }
........[     444]: static inline __attribute__((no_instrument_function)) void apic_eoi(void)
........[     445]: {
........[     446]: apic->eoi_write(0xB0, 0x0);
........[     447]: }
........[     449]: static inline __attribute__((no_instrument_function)) u64 apic_icr_read(void)
........[     450]: {
........[     451]: return apic->icr_read();
........[     452]: }
........[     454]: static inline __attribute__((no_instrument_function)) void apic_icr_write(u32 low, u32 high)
........[     455]: {
........[     456]: apic->icr_write(low, high);
........[     457]: }
........[     459]: static inline __attribute__((no_instrument_function)) void apic_wait_icr_idle(void)
........[     460]: {
........[     461]: apic->wait_icr_idle();
........[     462]: }
........[     464]: static inline __attribute__((no_instrument_function)) u32 safe_apic_wait_icr_idle(void)
........[     465]: {
........[     466]: return apic->safe_wait_icr_idle();
........[     467]: }
........[     469]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) apic_set_eoi_write\
........                (void (*eoi_write)(u32 reg, u32 v));
........[     484]: static inline __attribute__((no_instrument_function)) void ack_APIC_irq(void)
........[     485]: {
........[     490]: apic_eoi();
........[     491]: }
........[     493]: static inline __attribute__((no_instrument_function)) unsigned default_get_apic_id(unsigned long x)
........[     494]: {
........[     495]: unsigned int ver = ((apic_read(0x30)) & 0xFFu);
........[     497]: if (((ver) >= 0x14) || (__builtin_constant_p((3*32+26)) && ( ((((3*32+26))>>5)==0 && (1UL<<(((3*32+26))&31) & ((\
........                1<<((0*32+ 0) & 31))|(1<<((0*32+ 3)) & 31)|(1<<((0*32+ 5) & 31))|(1<<((0*32+ 6) & 31))| (1<<((0*32+ 8) & 31))|(1<<((\
........                0*32+13)) & 31)|(1<<((0*32+24) & 31))|(1<<((0*32+15) & 31))| (1<<((0*32+25) & 31))|(1<<((0*32+26) & 31))))) || ((\
........                ((3*32+26))>>5)==1 && (1UL<<(((3*32+26))&31) & ((1<<((1*32+29) & 31))|0))) || ((((3*32+26))>>5)==2 && (1UL<<((\
........                (3*32+26))&31) & 0)) || ((((3*32+26))>>5)==3 && (1UL<<(((3*32+26))&31) & ((1<<((3*32+20) & 31))))) || ((((3*32+26\
........                ))>>5)==4 && (1UL<<(((3*32+26))&31) & (0))) || ((((3*32+26))>>5)==5 && (1UL<<(((3*32+26))&31) & 0)) || ((((3*32+\
........                26))>>5)==6 && (1UL<<(((3*32+26))&31) & 0)) || ((((3*32+26))>>5)==7 && (1UL<<(((3*32+26))&31) & 0)) || ((((3*32+\
........                26))>>5)==8 && (1UL<<(((3*32+26))&31) & 0)) || ((((3*32+26))>>5)==9 && (1UL<<(((3*32+26))&31) & 0)) ) ? 1 : (__builtin_constant_p\
........                (((3*32+26))) ? constant_test_bit(((3*32+26)), ((unsigned long *)((&boot_cpu_data)->x86_capability))) : variable_test_bit\
........                (((3*32+26)), ((unsigned long *)((&boot_cpu_data)->x86_capability))))))
........[     498]: return (x >> 24) & 0xFF;
........[     499]: else
........[     500]: return (x >> 24) & 0x0F;
........[     501]: }
........[     510]: extern int default_acpi_madt_oem_check(char *, char *);
........[     512]: extern void apic_send_IPI_self(int vector);
........[     514]: extern __attribute__((section(".data..percpu" ""))) __typeof__(int) x2apic_extra_bits;
........[     516]: extern int default_cpu_present_to_apicid(int mps_cpu);
........[     517]: extern int default_check_phys_apicid_present(int phys_apicid);
........[     520]: static inline __attribute__((no_instrument_function)) void default_wait_for_init_deassert(atomic_t *deassert\
........                )
........[     521]: {
........[     522]: while (!atomic_read(deassert))
........[     523]: cpu_relax();
........[     524]: return;
........[     525]: }
........[     527]: extern void generic_bigsmp_probe(void);
........[     536]: static inline __attribute__((no_instrument_function)) const struct cpumask *default_target_cpus(void)
........[     537]: {
........[     539]: return cpu_online_mask;
........[     543]: }
........[     545]: static inline __attribute__((no_instrument_function)) const struct cpumask *online_target_cpus(void)
........[     546]: {
........[     547]: return cpu_online_mask;
........[     548]: }
........[     550]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(u16) x86_bios_cpu_apicid; extern \
........                __typeof__(u16) *x86_bios_cpu_apicid_early_ptr; extern __typeof__(u16) x86_bios_cpu_apicid_early_map[];
........[     553]: static inline __attribute__((no_instrument_function)) unsigned int read_apic_id(void)
........[     554]: {
........[     555]: unsigned int reg;
........[     557]: reg = apic_read(0x20);
........[     559]: return apic->get_apic_id(reg);
........[     560]: }
........[     562]: static inline __attribute__((no_instrument_function)) int default_apic_id_valid(int apicid)
........[     563]: {
........[     564]: return (apicid < 255);
........[     565]: }
........[     567]: extern void default_setup_apic_routing(void);
........[     569]: extern struct apic apic_noop;
........[     599]: static inline __attribute__((no_instrument_function)) int
........[     600]: flat_cpu_mask_to_apicid_and(const struct cpumask *cpumask,
........[     601]: const struct cpumask *andmask,
........[     602]: unsigned int *apicid)
........[     603]: {
........[     604]: unsigned long cpu_mask = ((cpumask)->bits)[0] &
........[     605]: ((andmask)->bits)[0] &
........[     606]: ((cpu_online_mask)->bits)[0] &
........[     607]: 0xFFu;
........[     609]: if (__builtin_expect(!!(cpu_mask), 1)) {
........[     610]: *apicid = (unsigned int)cpu_mask;
........[     611]: return 0;
........[     612]: } else {
........[     613]: return -22;
........[     614]: }
........[     615]: }
........[     617]: extern int
........[     618]: default_cpu_mask_to_apicid_and(const struct cpumask *cpumask,
........[     619]: const struct cpumask *andmask,
........[     620]: unsigned int *apicid);
........[     622]: static inline __attribute__((no_instrument_function)) void
........[     623]: flat_vector_allocation_domain(int cpu, struct cpumask *retmask,
........[     624]: const struct cpumask *mask)
........[     625]: {
........[     634]: cpumask_clear(retmask);
........[     635]: ((retmask)->bits)[0] = 0xFFu;
........[     636]: }
........[     638]: static inline __attribute__((no_instrument_function)) void
........[     639]: default_vector_allocation_domain(int cpu, struct cpumask *retmask,
........[     640]: const struct cpumask *mask)
........[     641]: {
........[     642]: cpumask_copy(retmask, (get_cpu_mask(cpu)));
........[     643]: }
........[     645]: static inline __attribute__((no_instrument_function)) unsigned long default_check_apicid_used(physid_mask_t \
........                *map, int apicid)
........[     646]: {
........[     647]: return (__builtin_constant_p((apicid)) ? constant_test_bit((apicid), ((*map).mask)) : variable_test_bit((apicid\
........                ), ((*map).mask)));
........[     648]: }
........[     650]: static inline __attribute__((no_instrument_function)) unsigned long default_check_apicid_present(int bit)
........[     651]: {
........[     652]: return (__builtin_constant_p((bit)) ? constant_test_bit((bit), ((phys_cpu_present_map).mask)) : variable_test_bit\
........                ((bit), ((phys_cpu_present_map).mask)));
........[     653]: }
........[     655]: static inline __attribute__((no_instrument_function)) void default_ioapic_phys_id_map(physid_mask_t *phys_map\
........                , physid_mask_t *retmap)
........[     656]: {
........[     657]: *retmap = *phys_map;
........[     658]: }
........[     660]: static inline __attribute__((no_instrument_function)) int __default_cpu_present_to_apicid(int mps_cpu)
........[     661]: {
........[     662]: if (mps_cpu < nr_cpu_ids && (__builtin_constant_p((cpumask_check((mps_cpu)))) ? constant_test_bit((cpumask_check\
........                ((mps_cpu))), ((((cpu_present_mask))->bits))) : variable_test_bit((cpumask_check((mps_cpu))), ((((cpu_present_mask\
........                ))->bits)))))
........[     663]: return (int)(*({ do { const void *__vpp_verify = (typeof(((&(x86_bios_cpu_apicid))) + 0))((void *)0); (void)__vpp_verify\
........                ; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(x86_bios_cpu_apicid))) *)(&(x86_bios_cpu_apicid\
........                )))); (typeof((typeof(*(&(x86_bios_cpu_apicid))) *)(&(x86_bios_cpu_apicid)))) (__ptr + (((__per_cpu_offset\
........                [mps_cpu])))); }); }));
........[     664]: else
........[     665]: return 0xFFFFu;
........[     666]: }
........[     668]: static inline __attribute__((no_instrument_function)) int
........[     669]: __default_check_phys_apicid_present(int phys_apicid)
........[     670]: {
........[     671]: return (__builtin_constant_p((phys_apicid)) ? constant_test_bit((phys_apicid), ((phys_cpu_present_map).mask\
........                )) : variable_test_bit((phys_apicid), ((phys_cpu_present_map).mask)));
........[     672]: }
........[     686]: extern int default_cpu_present_to_apicid(int mps_cpu);
........[     687]: extern int default_check_phys_apicid_present(int phys_apicid);
........[     691]: extern void irq_enter(void);
........[     692]: extern void irq_exit(void);
........[     694]: static inline __attribute__((no_instrument_function)) void entering_irq(void)
........[     695]: {
........[     696]: irq_enter();
........[     697]: exit_idle();
........[     698]: }
........[     700]: static inline __attribute__((no_instrument_function)) void entering_ack_irq(void)
........[     701]: {
........[     702]: ack_APIC_irq();
........[     703]: entering_irq();
........[     704]: }
........[     706]: static inline __attribute__((no_instrument_function)) void exiting_irq(void)
........[     707]: {
........[     708]: irq_exit();
........[     709]: }
........[     711]: static inline __attribute__((no_instrument_function)) void exiting_ack_irq(void)
........[     712]: {
........[     713]: irq_exit();
........[     715]: ack_APIC_irq();
........[     716]: }
........[     718]: extern void ioapic_zap_locks(void);
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/apic.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smp.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io_apic.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io_apic.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq_vectors.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq_vectors.h
.........[     135]: static inline __attribute__((no_instrument_function)) int invalid_vm86_irq(int irq)
.........[     136]: {
.........[     137]: return irq < 3 || irq > 15;
.........[     138]: }
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq_vectors.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io_apic.h
........[      27]: union IO_APIC_reg_00 {
........[      28]: u32 raw;
........[      29]: struct {
........[      30]: u32 __reserved_2 : 14,
........[      31]: LTS : 1,
........[      32]: delivery_type : 1,
........[      33]: __reserved_1 : 8,
........[      34]: ID : 8;
........[      35]: } __attribute__ ((packed)) bits;
........[      36]: };
........[      38]: union IO_APIC_reg_01 {
........[      39]: u32 raw;
........[      40]: struct {
........[      41]: u32 version : 8,
........[      42]: __reserved_2 : 7,
........[      43]: PRQ : 1,
........[      44]: entries : 8,
........[      45]: __reserved_1 : 8;
........[      46]: } __attribute__ ((packed)) bits;
........[      47]: };
........[      49]: union IO_APIC_reg_02 {
........[      50]: u32 raw;
........[      51]: struct {
........[      52]: u32 __reserved_2 : 24,
........[      53]: arbitration : 4,
........[      54]: __reserved_1 : 4;
........[      55]: } __attribute__ ((packed)) bits;
........[      56]: };
........[      58]: union IO_APIC_reg_03 {
........[      59]: u32 raw;
........[      60]: struct {
........[      61]: u32 boot_DT : 1,
........[      62]: __reserved_1 : 31;
........[      63]: } __attribute__ ((packed)) bits;
........[      64]: };
........[      66]: struct IO_APIC_route_entry {
........[      67]: __u32 vector : 8,
........[      68]: delivery_mode : 3,
........[      72]: dest_mode : 1,
........[      73]: delivery_status : 1,
........[      74]: polarity : 1,
........[      75]: irr : 1,
........[      76]: trigger : 1,
........[      77]: mask : 1,
........[      78]: __reserved_2 : 15;
........[      80]: __u32 __reserved_3 : 24,
........[      81]: dest : 8;
........[      82]: } __attribute__ ((packed));
........[      84]: struct IR_IO_APIC_route_entry {
........[      85]: __u64 vector : 8,
........[      86]: zero : 3,
........[      87]: index2 : 1,
........[      88]: delivery_status : 1,
........[      89]: polarity : 1,
........[      90]: irr : 1,
........[      91]: trigger : 1,
........[      92]: mask : 1,
........[      93]: reserved : 31,
........[      94]: format : 1,
........[      95]: index : 15;
........[      96]: } __attribute__ ((packed));
........[     107]: extern int nr_ioapics;
........[     109]: extern int mpc_ioapic_id(int ioapic);
........[     110]: extern unsigned int mpc_ioapic_addr(int ioapic);
........[     111]: extern struct mp_ioapic_gsi *mp_ioapic_gsi_routing(int ioapic);
........[     116]: extern int mp_irq_entries;
........[     119]: extern struct mpc_intsrc mp_irqs[(256 * 4)];
........[     122]: extern int mpc_default_type;
........[     125]: extern int sis_apic_bug;
........[     128]: extern int skip_ioapic_setup;
........[     131]: extern int noioapicquirk;
........[     134]: extern int noioapicreroute;
........[     137]: extern int timer_through_8259;
........[     146]: struct io_apic_irq_attr;
........[     147]: struct irq_cfg;
........[     148]: extern int io_apic_set_pci_routing(struct device *dev, int irq,
........[     149]: struct io_apic_irq_attr *irq_attr);
........[     150]: void setup_IO_APIC_irq_extra(u32 gsi);
........[     151]: extern void ioapic_insert_resources(void);
........[     153]: extern int native_setup_ioapic_entry(int, struct IO_APIC_route_entry *,
........[     154]: unsigned int, int,
........[     155]: struct io_apic_irq_attr *);
........[     156]: extern int native_setup_ioapic_entry(int, struct IO_APIC_route_entry *,
........[     157]: unsigned int, int,
........[     158]: struct io_apic_irq_attr *);
........[     159]: extern void eoi_ioapic_irq(unsigned int irq, struct irq_cfg *cfg);
........[     161]: extern void native_compose_msi_msg(struct pci_dev *pdev,
........[     162]: unsigned int irq, unsigned int dest,
........[     163]: struct msi_msg *msg, u8 hpet_id);
........[     164]: extern void native_eoi_ioapic_pin(int apic, int pin, int vector);
........[     165]: int io_apic_setup_irq_pin_once(unsigned int irq, int node, struct io_apic_irq_attr *attr);
........[     167]: extern int save_ioapic_entries(void);
........[     168]: extern void mask_ioapic_entries(void);
........[     169]: extern int restore_ioapic_entries(void);
........[     171]: extern int get_nr_irqs_gsi(void);
........[     173]: extern void setup_ioapic_ids_from_mpc(void);
........[     174]: extern void setup_ioapic_ids_from_mpc_nocheck(void);
........[     176]: struct mp_ioapic_gsi{
........[     177]: u32 gsi_base;
........[     178]: u32 gsi_end;
........[     179]: };
........[     180]: extern struct mp_ioapic_gsi mp_gsi_routing[];
........[     181]: extern u32 gsi_top;
........[     182]: int mp_find_ioapic(u32 gsi);
........[     183]: int mp_find_ioapic_pin(int ioapic, u32 gsi);
........[     184]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) mp_register_ioapic\
........                (int id, u32 address, u32 gsi_base);
........[     185]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) pre_init_apic_IRQ0\
........                (void);
........[     187]: extern void mp_save_irq(struct mpc_intsrc *m);
........[     189]: extern void disable_ioapic_support(void);
........[     191]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) native_io_apic_init_mappings\
........                (void);
........[     192]: extern unsigned int native_io_apic_read(unsigned int apic, unsigned int reg);
........[     193]: extern void native_io_apic_write(unsigned int apic, unsigned int reg, unsigned int val);
........[     194]: extern void native_io_apic_modify(unsigned int apic, unsigned int reg, unsigned int val);
........[     195]: extern void native_disable_io_apic(void);
........[     196]: extern void native_io_apic_print_entries(unsigned int apic, unsigned int nr_entries);
........[     197]: extern void intel_ir_io_apic_print_entries(unsigned int apic, unsigned int nr_entries);
........[     198]: extern int native_ioapic_set_affinity(struct irq_data *,
........[     199]: const struct cpumask *,
........[     200]: bool);
........[     202]: static inline __attribute__((no_instrument_function)) unsigned int io_apic_read(unsigned int apic, unsigned int \
........                reg)
........[     203]: {
........[     204]: return x86_io_apic_ops.read(apic, reg);
........[     205]: }
........[     207]: static inline __attribute__((no_instrument_function)) void io_apic_write(unsigned int apic, unsigned int reg, \
........                unsigned int value)
........[     208]: {
........[     209]: x86_io_apic_ops.write(apic, reg, value);
........[     210]: }
........[     211]: static inline __attribute__((no_instrument_function)) void io_apic_modify(unsigned int apic, unsigned int reg\
........                , unsigned int value)
........[     212]: {
........[     213]: x86_io_apic_ops.modify(apic, reg, value);
........[     214]: }
........[     216]: extern void io_apic_eoi(unsigned int apic, unsigned int vector);
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/io_apic.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smp.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cpumask.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cpumask.h
........[       6]: extern cpumask_var_t cpu_callin_mask;
........[       7]: extern cpumask_var_t cpu_callout_mask;
........[       8]: extern cpumask_var_t cpu_initialized_mask;
........[       9]: extern cpumask_var_t cpu_sibling_setup_mask;
........[      11]: extern void setup_cpu_local_masks(void);
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cpumask.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smp.h
.......[      22]: extern int smp_num_siblings;
.......[      23]: extern unsigned int num_processors;
.......[      25]: static inline __attribute__((no_instrument_function)) bool cpu_has_ht_siblings(void)
.......[      26]: {
.......[      27]: bool has_siblings = false;
.......[      29]: has_siblings = (__builtin_constant_p((0*32+28)) && ( ((((0*32+28))>>5)==0 && (1UL<<(((0*32+28))&31) & ((1<<((\
.......                0*32+ 0) & 31))|(1<<((0*32+ 3)) & 31)|(1<<((0*32+ 5) & 31))|(1<<((0*32+ 6) & 31))| (1<<((0*32+ 8) & 31))|(1<<((0*32+\
.......                13)) & 31)|(1<<((0*32+24) & 31))|(1<<((0*32+15) & 31))| (1<<((0*32+25) & 31))|(1<<((0*32+26) & 31))))) || ((((0*32\
.......                +28))>>5)==1 && (1UL<<(((0*32+28))&31) & ((1<<((1*32+29) & 31))|0))) || ((((0*32+28))>>5)==2 && (1UL<<(((0*32+\
.......                28))&31) & 0)) || ((((0*32+28))>>5)==3 && (1UL<<(((0*32+28))&31) & ((1<<((3*32+20) & 31))))) || ((((0*32+28))>>5\
.......                )==4 && (1UL<<(((0*32+28))&31) & (0))) || ((((0*32+28))>>5)==5 && (1UL<<(((0*32+28))&31) & 0)) || ((((0*32+28))>>\
.......                5)==6 && (1UL<<(((0*32+28))&31) & 0)) || ((((0*32+28))>>5)==7 && (1UL<<(((0*32+28))&31) & 0)) || ((((0*32+28))>>\
.......                5)==8 && (1UL<<(((0*32+28))&31) & 0)) || ((((0*32+28))>>5)==9 && (1UL<<(((0*32+28))&31) & 0)) ) ? 1 : (__builtin_constant_p\
.......                (((0*32+28))) ? constant_test_bit(((0*32+28)), ((unsigned long *)((&boot_cpu_data)->x86_capability))) : variable_test_bit\
.......                (((0*32+28)), ((unsigned long *)((&boot_cpu_data)->x86_capability))))) && smp_num_siblings > 1;
.......[      31]: return has_siblings;
.......[      32]: }
.......[      34]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(cpumask_var_t) cpu_sibling_map\
.......                ;
.......[      35]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(cpumask_var_t) cpu_core_map;
.......[      37]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(cpumask_var_t) cpu_llc_shared_map\
.......                ;
.......[      38]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(u16) cpu_llc_id;
.......[      39]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(int) cpu_number;
.......[      41]: static inline __attribute__((no_instrument_function)) struct cpumask *cpu_sibling_mask(int cpu)
.......[      42]: {
.......[      43]: return (*({ do { const void *__vpp_verify = (typeof(((&(cpu_sibling_map))) + 0))((void *)0); (void)__vpp_verify; \
.......                } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(cpu_sibling_map))) *)(&(cpu_sibling_map\
.......                )))); (typeof((typeof(*(&(cpu_sibling_map))) *)(&(cpu_sibling_map)))) (__ptr + (((__per_cpu_offset[cpu]))\
.......                )); }); }));
.......[      44]: }
.......[      46]: static inline __attribute__((no_instrument_function)) struct cpumask *cpu_core_mask(int cpu)
.......[      47]: {
.......[      48]: return (*({ do { const void *__vpp_verify = (typeof(((&(cpu_core_map))) + 0))((void *)0); (void)__vpp_verify; } while \
.......                (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(cpu_core_map))) *)(&(cpu_core_map)))); \
.......                (typeof((typeof(*(&(cpu_core_map))) *)(&(cpu_core_map)))) (__ptr + (((__per_cpu_offset[cpu])))); }); }));
.......[      49]: }
.......[      51]: static inline __attribute__((no_instrument_function)) struct cpumask *cpu_llc_shared_mask(int cpu)
.......[      52]: {
.......[      53]: return (*({ do { const void *__vpp_verify = (typeof(((&(cpu_llc_shared_map))) + 0))((void *)0); (void)__vpp_verify\
.......                ; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(cpu_llc_shared_map))) *)(&(cpu_llc_shared_map\
.......                )))); (typeof((typeof(*(&(cpu_llc_shared_map))) *)(&(cpu_llc_shared_map)))) (__ptr + (((__per_cpu_offset[\
.......                cpu])))); }); }));
.......[      54]: }
.......[      56]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(u16) x86_cpu_to_apicid; extern \
.......                __typeof__(u16) *x86_cpu_to_apicid_early_ptr; extern __typeof__(u16) x86_cpu_to_apicid_early_map[];
.......[      57]: extern __attribute__((section(".data..percpu" "..readmostly"))) __typeof__(u16) x86_bios_cpu_apicid; extern \
.......                __typeof__(u16) *x86_bios_cpu_apicid_early_ptr; extern __typeof__(u16) x86_bios_cpu_apicid_early_map[];
.......[      63]: extern unsigned long stack_start;
.......[      65]: struct task_struct;
.......[      67]: struct smp_ops {
.......[      68]: void (*smp_prepare_boot_cpu)(void);
.......[      69]: void (*smp_prepare_cpus)(unsigned max_cpus);
.......[      70]: void (*smp_cpus_done)(unsigned max_cpus);
.......[      72]: void (*stop_other_cpus)(int wait);
.......[      73]: void (*smp_send_reschedule)(int cpu);
.......[      75]: int (*cpu_up)(unsigned cpu, struct task_struct *tidle);
.......[      76]: int (*cpu_disable)(void);
.......[      77]: void (*cpu_die)(unsigned int cpu);
.......[      78]: void (*play_dead)(void);
.......[      80]: void (*send_call_func_ipi)(const struct cpumask *mask);
.......[      81]: void (*send_call_func_single_ipi)(int cpu);
.......[      82]: };
.......[      85]: extern void set_cpu_sibling_map(int cpu);
.......[      91]: extern struct smp_ops smp_ops;
.......[      93]: static inline __attribute__((no_instrument_function)) void smp_send_stop(void)
.......[      94]: {
.......[      95]: smp_ops.stop_other_cpus(0);
.......[      96]: }
.......[      98]: static inline __attribute__((no_instrument_function)) void stop_other_cpus(void)
.......[      99]: {
.......[     100]: smp_ops.stop_other_cpus(1);
.......[     101]: }
.......[     103]: static inline __attribute__((no_instrument_function)) void smp_prepare_boot_cpu(void)
.......[     104]: {
.......[     105]: smp_ops.smp_prepare_boot_cpu();
.......[     106]: }
.......[     108]: static inline __attribute__((no_instrument_function)) void smp_prepare_cpus(unsigned int max_cpus)
.......[     109]: {
.......[     110]: smp_ops.smp_prepare_cpus(max_cpus);
.......[     111]: }
.......[     113]: static inline __attribute__((no_instrument_function)) void smp_cpus_done(unsigned int max_cpus)
.......[     114]: {
.......[     115]: smp_ops.smp_cpus_done(max_cpus);
.......[     116]: }
.......[     118]: static inline __attribute__((no_instrument_function)) int __cpu_up(unsigned int cpu, struct task_struct *tidle\
.......                )
.......[     119]: {
.......[     120]: return smp_ops.cpu_up(cpu, tidle);
.......[     121]: }
.......[     123]: static inline __attribute__((no_instrument_function)) int __cpu_disable(void)
.......[     124]: {
.......[     125]: return smp_ops.cpu_disable();
.......[     126]: }
.......[     128]: static inline __attribute__((no_instrument_function)) void __cpu_die(unsigned int cpu)
.......[     129]: {
.......[     130]: smp_ops.cpu_die(cpu);
.......[     131]: }
.......[     133]: static inline __attribute__((no_instrument_function)) void play_dead(void)
.......[     134]: {
.......[     135]: smp_ops.play_dead();
.......[     136]: }
.......[     138]: static inline __attribute__((no_instrument_function)) void smp_send_reschedule(int cpu)
.......[     139]: {
.......[     140]: smp_ops.smp_send_reschedule(cpu);
.......[     141]: }
.......[     143]: static inline __attribute__((no_instrument_function)) void arch_send_call_function_single_ipi(int cpu)
.......[     144]: {
.......[     145]: smp_ops.send_call_func_single_ipi(cpu);
.......[     146]: }
.......[     148]: static inline __attribute__((no_instrument_function)) void arch_send_call_function_ipi_mask(const struct cpumask \
.......                *mask)
.......[     149]: {
.......[     150]: smp_ops.send_call_func_ipi(mask);
.......[     151]: }
.......[     153]: void cpu_disable_common(void);
.......[     154]: void native_smp_prepare_boot_cpu(void);
.......[     155]: void native_smp_prepare_cpus(unsigned int max_cpus);
.......[     156]: void native_smp_cpus_done(unsigned int max_cpus);
.......[     157]: int native_cpu_up(unsigned int cpunum, struct task_struct *tidle);
.......[     158]: int native_cpu_disable(void);
.......[     159]: void native_cpu_die(unsigned int cpu);
.......[     160]: void native_play_dead(void);
.......[     161]: void play_dead_common(void);
.......[     162]: void wbinvd_on_cpu(int cpu);
.......[     163]: int wbinvd_on_all_cpus(void);
.......[     165]: void native_send_call_func_ipi(const struct cpumask *mask);
.......[     166]: void native_send_call_func_single_ipi(int cpu);
.......[     167]: void x86_idle_thread_init(unsigned int cpu, struct task_struct *idle);
.......[     169]: void smp_store_boot_cpu_info(void);
.......[     170]: void smp_store_cpu_info(int id);
.......[     182]: extern unsigned disabled_cpus;
.......[     217]: extern int hard_smp_processor_id(void);
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smp.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/smp.h
......[      71]: extern void smp_send_stop(void);
......[      76]: extern void smp_send_reschedule(int cpu);
......[      82]: extern void smp_prepare_cpus(unsigned int max_cpus);
......[      87]: extern int __cpu_up(unsigned int cpunum, struct task_struct *tidle);
......[      92]: extern void smp_cpus_done(unsigned int max_cpus);
......[      97]: int smp_call_function(smp_call_func_t func, void *info, int wait);
......[      98]: void smp_call_function_many(const struct cpumask *mask,
......[      99]: smp_call_func_t func, void *info, bool wait);
......[     101]: int smp_call_function_any(const struct cpumask *mask,
......[     102]: smp_call_func_t func, void *info, int wait);
......[     104]: void kick_all_cpus_sync(void);
......[     109]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) call_function_init\
......                (void);
......[     110]: void generic_smp_call_function_single_interrupt(void);
......[     118]: void smp_prepare_boot_cpu(void);
......[     120]: extern unsigned int setup_max_cpus;
......[     121]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) setup_nr_cpu_ids\
......                (void);
......[     122]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) smp_init(\
......                void);
......[     185]: extern void arch_disable_smp_support(void);
......[     187]: void smp_setup_processor_id(void);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/smp.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu.h
.....[      81]: extern void *pcpu_base_addr;
.....[      82]: extern const unsigned long *pcpu_unit_offsets;
.....[      84]: struct pcpu_group_info {
.....[      85]: int nr_units;
.....[      86]: unsigned long base_offset;
.....[      87]: unsigned int *cpu_map;
.....[      89]: };
.....[      91]: struct pcpu_alloc_info {
.....[      92]: size_t static_size;
.....[      93]: size_t reserved_size;
.....[      94]: size_t dyn_size;
.....[      95]: size_t unit_size;
.....[      96]: size_t atom_size;
.....[      97]: size_t alloc_size;
.....[      98]: size_t __ai_size;
.....[      99]: int nr_groups;
.....[     100]: struct pcpu_group_info groups[];
.....[     101]: };
.....[     103]: enum pcpu_fc {
.....[     104]: PCPU_FC_AUTO,
.....[     105]: PCPU_FC_EMBED,
.....[     106]: PCPU_FC_PAGE,
.....[     108]: PCPU_FC_NR,
.....[     109]: };
.....[     110]: extern const char * const pcpu_fc_names[PCPU_FC_NR];
.....[     112]: extern enum pcpu_fc pcpu_chosen_fc;
.....[     114]: typedef void * (*pcpu_fc_alloc_fn_t)(unsigned int cpu, size_t size,
.....[     115]: size_t align);
.....[     116]: typedef void (*pcpu_fc_free_fn_t)(void *ptr, size_t size);
.....[     117]: typedef void (*pcpu_fc_populate_pte_fn_t)(unsigned long addr);
.....[     118]: typedef int (pcpu_fc_cpu_distance_fn_t)(unsigned int from, unsigned int to);
.....[     120]: extern struct pcpu_alloc_info * __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function\
.....                )) pcpu_alloc_alloc_info(int nr_groups,
.....[     121]: int nr_units);
.....[     122]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) pcpu_free_alloc_info\
.....                (struct pcpu_alloc_info *ai);
.....[     124]: extern int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) pcpu_setup_first_chunk\
.....                (const struct pcpu_alloc_info *ai,
.....[     125]: void *base_addr);
.....[     128]: extern int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) pcpu_embed_first_chunk\
.....                (size_t reserved_size, size_t dyn_size,
.....[     129]: size_t atom_size,
.....[     130]: pcpu_fc_cpu_distance_fn_t cpu_distance_fn,
.....[     131]: pcpu_fc_alloc_fn_t alloc_fn,
.....[     132]: pcpu_fc_free_fn_t free_fn);
.....[     136]: extern int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) pcpu_page_first_chunk\
.....                (size_t reserved_size,
.....[     137]: pcpu_fc_alloc_fn_t alloc_fn,
.....[     138]: pcpu_fc_free_fn_t free_fn,
.....[     139]: pcpu_fc_populate_pte_fn_t populate_pte_fn);
.....[     153]: extern void *__alloc_reserved_percpu(size_t size, size_t align);
.....[     154]: extern bool is_kernel_percpu_address(unsigned long addr);
.....[     159]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) percpu_init_late\
.....                (void);
.....[     161]: extern void *__alloc_percpu(size_t size, size_t align);
.....[     162]: extern void free_percpu(void *__pdata);
.....[     163]: extern phys_addr_t per_cpu_ptr_to_phys(void *addr);
.....[     173]: extern void __bad_size_call_parameter(void);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-rwsem.h
....[      10]: struct percpu_rw_semaphore {
....[      11]: unsigned int *fast_read_ctr;
....[      12]: atomic_t write_ctr;
....[      13]: struct rw_semaphore rw_sem;
....[      14]: atomic_t slow_read_ctr;
....[      15]: wait_queue_head_t write_waitq;
....[      16]: };
....[      18]: extern void percpu_down_read(struct percpu_rw_semaphore *);
....[      19]: extern void percpu_up_read(struct percpu_rw_semaphore *);
....[      21]: extern void percpu_down_write(struct percpu_rw_semaphore *);
....[      22]: extern void percpu_up_write(struct percpu_rw_semaphore *);
....[      24]: extern int __percpu_init_rwsem(struct percpu_rw_semaphore *,
....[      25]: const char *, struct lock_class_key *);
....[      26]: extern void percpu_free_rwsem(struct percpu_rw_semaphore *);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-rwsem.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/blk_types.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/blk_types.h
....[      12]: struct bio_set;
....[      13]: struct bio;
....[      14]: struct bio_integrity_payload;
....[      15]: struct page;
....[      16]: struct block_device;
....[      17]: struct io_context;
....[      18]: struct cgroup_subsys_state;
....[      19]: typedef void (bio_end_io_t) (struct bio *, int);
....[      20]: typedef void (bio_destructor_t) (struct bio *);
....[      25]: struct bio_vec {
....[      26]: struct page *bv_page;
....[      27]: unsigned int bv_len;
....[      28]: unsigned int bv_offset;
....[      29]: };
....[      35]: struct bio {
....[      36]: sector_t bi_sector;
....[      38]: struct bio *bi_next;
....[      39]: struct block_device *bi_bdev;
....[      40]: unsigned long bi_flags;
....[      41]: unsigned long bi_rw;
....[      45]: unsigned short bi_vcnt;
....[      46]: unsigned short bi_idx;
....[      51]: unsigned int bi_phys_segments;
....[      53]: unsigned int bi_size;
....[      59]: unsigned int bi_seg_front_size;
....[      60]: unsigned int bi_seg_back_size;
....[      62]: bio_end_io_t *bi_end_io;
....[      64]: void *bi_private;
....[      70]: struct io_context *bi_ioc;
....[      71]: struct cgroup_subsys_state *bi_css;
....[      74]: struct bio_integrity_payload *bi_integrity;
....[      81]: unsigned int bi_max_vecs;
....[      83]: atomic_t bi_cnt;
....[      85]: struct bio_vec *bi_io_vec;
....[      87]: struct bio_set *bi_pool;
....[      94]: struct bio_vec bi_inline_vecs[0];
....[      95]: };
....[     140]: enum rq_flag_bits {
....[     142]: __REQ_WRITE,
....[     143]: __REQ_FAILFAST_DEV,
....[     144]: __REQ_FAILFAST_TRANSPORT,
....[     145]: __REQ_FAILFAST_DRIVER,
....[     147]: __REQ_SYNC,
....[     148]: __REQ_META,
....[     149]: __REQ_PRIO,
....[     150]: __REQ_DISCARD,
....[     151]: __REQ_SECURE,
....[     152]: __REQ_WRITE_SAME,
....[     154]: __REQ_NOIDLE,
....[     155]: __REQ_FUA,
....[     156]: __REQ_FLUSH,
....[     159]: __REQ_RAHEAD,
....[     160]: __REQ_THROTTLED,
....[     164]: __REQ_SORTED,
....[     165]: __REQ_SOFTBARRIER,
....[     166]: __REQ_NOMERGE,
....[     167]: __REQ_STARTED,
....[     168]: __REQ_DONTPREP,
....[     169]: __REQ_QUEUED,
....[     170]: __REQ_ELVPRIV,
....[     171]: __REQ_FAILED,
....[     172]: __REQ_QUIET,
....[     173]: __REQ_PREEMPT,
....[     174]: __REQ_ALLOCED,
....[     175]: __REQ_COPY_USER,
....[     176]: __REQ_FLUSH_SEQ,
....[     177]: __REQ_IO_STAT,
....[     178]: __REQ_MIXED_MERGE,
....[     179]: __REQ_KERNEL,
....[     180]: __REQ_PM,
....[     181]: __REQ_END,
....[     182]: __REQ_NR_BITS,
....[     183]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/blk_types.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fs.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fs.h
....[      38]: struct fstrim_range {
....[      39]: __u64 start;
....[      40]: __u64 len;
....[      41]: __u64 minlen;
....[      42]: };
....[      45]: struct files_stat_struct {
....[      46]: unsigned long nr_files;
....[      47]: unsigned long nr_free_files;
....[      48]: unsigned long max_files;
....[      49]: };
....[      51]: struct inodes_stat_t {
....[      52]: long nr_inodes;
....[      53]: long nr_unused;
....[      54]: long dummy[5];
....[      55]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fs.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...[      36]: struct export_operations;
...[      37]: struct hd_geometry;
...[      38]: struct iovec;
...[      39]: struct nameidata;
...[      40]: struct kiocb;
...[      41]: struct kobject;
...[      42]: struct pipe_inode_info;
...[      43]: struct poll_table_struct;
...[      44]: struct kstatfs;
...[      45]: struct vm_area_struct;
...[      46]: struct vfsmount;
...[      47]: struct cred;
...[      48]: struct swap_info_struct;
...[      49]: struct seq_file;
...[      50]: struct workqueue_struct;
...[      52]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) inode_init\
...                (void);
...[      53]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) inode_init_early\
...                (void);
...[      54]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) files_init\
...                (unsigned long);
...[      56]: extern struct files_stat_struct files_stat;
...[      57]: extern unsigned long get_max_files(void);
...[      58]: extern int sysctl_nr_open;
...[      59]: extern struct inodes_stat_t inodes_stat;
...[      60]: extern int leases_enable, lease_break_time;
...[      61]: extern int sysctl_protected_symlinks;
...[      62]: extern int sysctl_protected_hardlinks;
...[      64]: struct buffer_head;
...[      65]: typedef int (get_block_t)(struct inode *inode, sector_t iblock,
...[      66]: struct buffer_head *bh_result, int create);
...[      67]: typedef void (dio_iodone_t)(struct kiocb *iocb, loff_t offset,
...[      68]: ssize_t bytes, void *private);
...[     226]: struct iattr {
...[     227]: unsigned int ia_valid;
...[     228]: umode_t ia_mode;
...[     229]: kuid_t ia_uid;
...[     230]: kgid_t ia_gid;
...[     231]: loff_t ia_size;
...[     232]: struct timespec ia_atime;
...[     233]: struct timespec ia_mtime;
...[     234]: struct timespec ia_ctime;
...[     241]: struct file *ia_file;
...[     242]: };
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu_counter.h
.....[      18]: struct percpu_counter {
.....[      19]: raw_spinlock_t lock;
.....[      20]: s64 count;
.....[      22]: struct list_head list;
.....[      24]: s32 *counters;
.....[      25]: };
.....[      27]: extern int percpu_counter_batch;
.....[      29]: int __percpu_counter_init(struct percpu_counter *fbc, s64 amount,
.....[      30]: struct lock_class_key *key);
.....[      39]: void percpu_counter_destroy(struct percpu_counter *fbc);
.....[      40]: void percpu_counter_set(struct percpu_counter *fbc, s64 amount);
.....[      41]: void __percpu_counter_add(struct percpu_counter *fbc, s64 amount, s32 batch);
.....[      42]: s64 __percpu_counter_sum(struct percpu_counter *fbc);
.....[      43]: int percpu_counter_compare(struct percpu_counter *fbc, s64 rhs);
.....[      45]: static inline __attribute__((no_instrument_function)) void percpu_counter_add(struct percpu_counter *fbc, s64 \
.....                amount)
.....[      46]: {
.....[      47]: __percpu_counter_add(fbc, amount, percpu_counter_batch);
.....[      48]: }
.....[      50]: static inline __attribute__((no_instrument_function)) s64 percpu_counter_sum_positive(struct percpu_counter \
.....                *fbc)
.....[      51]: {
.....[      52]: s64 ret = __percpu_counter_sum(fbc);
.....[      53]: return ret < 0 ? 0 : ret;
.....[      54]: }
.....[      56]: static inline __attribute__((no_instrument_function)) s64 percpu_counter_sum(struct percpu_counter *fbc)
.....[      57]: {
.....[      58]: return __percpu_counter_sum(fbc);
.....[      59]: }
.....[      61]: static inline __attribute__((no_instrument_function)) s64 percpu_counter_read(struct percpu_counter *fbc)
.....[      62]: {
.....[      63]: return fbc->count;
.....[      64]: }
.....[      71]: static inline __attribute__((no_instrument_function)) s64 percpu_counter_read_positive(struct percpu_counter \
.....                *fbc)
.....[      72]: {
.....[      73]: s64 ret = fbc->count;
.....[      75]: __asm__ __volatile__("": : :"memory");
.....[      76]: if (ret >= 0)
.....[      77]: return ret;
.....[      78]: return 0;
.....[      79]: }
.....[      81]: static inline __attribute__((no_instrument_function)) int percpu_counter_initialized(struct percpu_counter \
.....                *fbc)
.....[      82]: {
.....[      83]: return (fbc->counters != ((void *)0));
.....[      84]: }
.....[     162]: static inline __attribute__((no_instrument_function)) void percpu_counter_inc(struct percpu_counter *fbc)
.....[     163]: {
.....[     164]: percpu_counter_add(fbc, 1);
.....[     165]: }
.....[     167]: static inline __attribute__((no_instrument_function)) void percpu_counter_dec(struct percpu_counter *fbc)
.....[     168]: {
.....[     169]: percpu_counter_add(fbc, -1);
.....[     170]: }
.....[     172]: static inline __attribute__((no_instrument_function)) void percpu_counter_sub(struct percpu_counter *fbc, s64 \
.....                amount)
.....[     173]: {
.....[     174]: percpu_counter_add(fbc, -amount);
.....[     175]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu_counter.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/dqblk_xfs.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/dqblk_xfs.h
.....[      51]: typedef struct fs_disk_quota {
.....[      52]: __s8 d_version;
.....[      53]: __s8 d_flags;
.....[      54]: __u16 d_fieldmask;
.....[      55]: __u32 d_id;
.....[      56]: __u64 d_blk_hardlimit;
.....[      57]: __u64 d_blk_softlimit;
.....[      58]: __u64 d_ino_hardlimit;
.....[      59]: __u64 d_ino_softlimit;
.....[      60]: __u64 d_bcount;
.....[      61]: __u64 d_icount;
.....[      62]: __s32 d_itimer;
.....[      64]: __s32 d_btimer;
.....[      65]: __u16 d_iwarns;
.....[      66]: __u16 d_bwarns;
.....[      67]: __s32 d_padding2;
.....[      68]: __u64 d_rtb_hardlimit;
.....[      69]: __u64 d_rtb_softlimit;
.....[      70]: __u64 d_rtbcount;
.....[      71]: __s32 d_rtbtimer;
.....[      72]: __u16 d_rtbwarns;
.....[      73]: __s16 d_padding3;
.....[      74]: char d_padding4[8];
.....[      75]: } fs_disk_quota_t;
.....[     147]: typedef struct fs_qfilestat {
.....[     148]: __u64 qfs_ino;
.....[     149]: __u64 qfs_nblks;
.....[     150]: __u32 qfs_nextents;
.....[     151]: } fs_qfilestat_t;
.....[     153]: typedef struct fs_quota_stat {
.....[     154]: __s8 qs_version;
.....[     155]: __u16 qs_flags;
.....[     156]: __s8 qs_pad;
.....[     157]: fs_qfilestat_t qs_uquota;
.....[     158]: fs_qfilestat_t qs_gquota;
.....[     159]: __u32 qs_incoredqs;
.....[     160]: __s32 qs_btimelimit;
.....[     161]: __s32 qs_itimelimit;
.....[     162]: __s32 qs_rtbtimelimit;
.....[     163]: __u16 qs_bwarnlimit;
.....[     164]: __u16 qs_iwarnlimit;
.....[     165]: } fs_quota_stat_t;
.....[     190]: struct fs_qfilestatv {
.....[     191]: __u64 qfs_ino;
.....[     192]: __u64 qfs_nblks;
.....[     193]: __u32 qfs_nextents;
.....[     194]: __u32 qfs_pad;
.....[     195]: };
.....[     197]: struct fs_quota_statv {
.....[     198]: __s8 qs_version;
.....[     199]: __u8 qs_pad1;
.....[     200]: __u16 qs_flags;
.....[     201]: __u32 qs_incoredqs;
.....[     202]: struct fs_qfilestatv qs_uquota;
.....[     203]: struct fs_qfilestatv qs_gquota;
.....[     204]: struct fs_qfilestatv qs_pquota;
.....[     205]: __s32 qs_btimelimit;
.....[     206]: __s32 qs_itimelimit;
.....[     207]: __s32 qs_rtbtimelimit;
.....[     208]: __u16 qs_bwarnlimit;
.....[     209]: __u16 qs_iwarnlimit;
.....[     210]: __u64 qs_pad2[8];
.....[     211]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/dqblk_xfs.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dqblk_v2.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dqblk_v2.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dqblk_qtree.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dqblk_qtree.h
......[      17]: struct dquot;
......[      20]: struct qtree_fmt_operations {
......[      21]: void (*mem2disk_dqblk)(void *disk, struct dquot *dquot);
......[      22]: void (*disk2mem_dqblk)(struct dquot *dquot, void *disk);
......[      23]: int (*is_id)(void *disk, struct dquot *dquot);
......[      24]: };
......[      27]: struct qtree_mem_dqinfo {
......[      28]: struct super_block *dqi_sb;
......[      29]: int dqi_type;
......[      30]: unsigned int dqi_blocks;
......[      31]: unsigned int dqi_free_blk;
......[      32]: unsigned int dqi_free_entry;
......[      33]: unsigned int dqi_blocksize_bits;
......[      34]: unsigned int dqi_entry_size;
......[      35]: unsigned int dqi_usable_bs;
......[      36]: unsigned int dqi_qtree_depth;
......[      37]: struct qtree_fmt_operations *dqi_ops;
......[      38]: };
......[      40]: int qtree_write_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot);
......[      41]: int qtree_read_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot);
......[      42]: int qtree_delete_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot);
......[      43]: int qtree_release_dquot(struct qtree_mem_dqinfo *info, struct dquot *dquot);
......[      44]: int qtree_entry_unused(struct qtree_mem_dqinfo *info, char *disk);
......[      45]: static inline __attribute__((no_instrument_function)) int qtree_depth(struct qtree_mem_dqinfo *info)
......[      46]: {
......[      47]: unsigned int epb = info->dqi_usable_bs >> 2;
......[      48]: unsigned long long entries = epb;
......[      49]: int i;
......[      51]: for (i = 1; entries < (1ULL << 32); i++)
......[      52]: entries *= epb;
......[      53]: return i;
......[      54]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dqblk_qtree.h
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/dqblk_v2.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/projid.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/projid.h
.....[      16]: struct user_namespace;
.....[      17]: extern struct user_namespace init_user_ns;
.....[      19]: typedef __kernel_uid32_t projid_t;
.....[      36]: typedef projid_t kprojid_t;
.....[      38]: static inline __attribute__((no_instrument_function)) projid_t __kprojid_val(kprojid_t projid)
.....[      39]: {
.....[      40]: return projid;
.....[      41]: }
.....[      50]: static inline __attribute__((no_instrument_function)) bool projid_eq(kprojid_t left, kprojid_t right)
.....[      51]: {
.....[      52]: return __kprojid_val(left) == __kprojid_val(right);
.....[      53]: }
.....[      55]: static inline __attribute__((no_instrument_function)) bool projid_lt(kprojid_t left, kprojid_t right)
.....[      56]: {
.....[      57]: return __kprojid_val(left) < __kprojid_val(right);
.....[      58]: }
.....[      60]: static inline __attribute__((no_instrument_function)) bool projid_valid(kprojid_t projid)
.....[      61]: {
.....[      62]: return !projid_eq(projid, ((kprojid_t) -1 ));
.....[      63]: }
.....[      79]: static inline __attribute__((no_instrument_function)) kprojid_t make_kprojid(struct user_namespace *from, projid_t \
.....                projid)
.....[      80]: {
.....[      81]: return ((kprojid_t) projid );
.....[      82]: }
.....[      84]: static inline __attribute__((no_instrument_function)) projid_t from_kprojid(struct user_namespace *to, kprojid_t \
.....                kprojid)
.....[      85]: {
.....[      86]: return __kprojid_val(kprojid);
.....[      87]: }
.....[      89]: static inline __attribute__((no_instrument_function)) projid_t from_kprojid_munged(struct user_namespace *\
.....                to, kprojid_t kprojid)
.....[      90]: {
.....[      91]: projid_t projid = from_kprojid(to, kprojid);
.....[      92]: if (projid == (projid_t)-1)
.....[      93]: projid = 65534;
.....[      94]: return projid;
.....[      95]: }
.....[      97]: static inline __attribute__((no_instrument_function)) bool kprojid_has_mapping(struct user_namespace *ns, kprojid_t \
.....                projid)
.....[      98]: {
.....[      99]: return true;
.....[     100]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/projid.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/quota.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/quota.h
.....[      88]: enum {
.....[      89]: QIF_BLIMITS_B = 0,
.....[      90]: QIF_SPACE_B,
.....[      91]: QIF_ILIMITS_B,
.....[      92]: QIF_INODES_B,
.....[      93]: QIF_BTIME_B,
.....[      94]: QIF_ITIME_B,
.....[      95]: };
.....[     108]: struct if_dqblk {
.....[     109]: __u64 dqb_bhardlimit;
.....[     110]: __u64 dqb_bsoftlimit;
.....[     111]: __u64 dqb_curspace;
.....[     112]: __u64 dqb_ihardlimit;
.....[     113]: __u64 dqb_isoftlimit;
.....[     114]: __u64 dqb_curinodes;
.....[     115]: __u64 dqb_btime;
.....[     116]: __u64 dqb_itime;
.....[     117]: __u32 dqb_valid;
.....[     118]: };
.....[     129]: struct if_dqinfo {
.....[     130]: __u64 dqi_bgrace;
.....[     131]: __u64 dqi_igrace;
.....[     132]: __u32 dqi_flags;
.....[     133]: __u32 dqi_valid;
.....[     134]: };
.....[     151]: enum {
.....[     152]: QUOTA_NL_C_UNSPEC,
.....[     153]: QUOTA_NL_C_WARNING,
.....[     154]: __QUOTA_NL_C_MAX,
.....[     155]: };
.....[     158]: enum {
.....[     159]: QUOTA_NL_A_UNSPEC,
.....[     160]: QUOTA_NL_A_QTYPE,
.....[     161]: QUOTA_NL_A_EXCESS_ID,
.....[     162]: QUOTA_NL_A_WARNING,
.....[     163]: QUOTA_NL_A_DEV_MAJOR,
.....[     164]: QUOTA_NL_A_DEV_MINOR,
.....[     165]: QUOTA_NL_A_CAUSED_ID,
.....[     166]: __QUOTA_NL_A_MAX,
.....[     167]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/quota.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
....[      53]: enum quota_type {
....[      54]: USRQUOTA = 0,
....[      55]: GRPQUOTA = 1,
....[      56]: PRJQUOTA = 2,
....[      57]: };
....[      59]: typedef __kernel_uid32_t qid_t;
....[      60]: typedef long long qsize_t;
....[      62]: struct kqid {
....[      63]: union {
....[      64]: kuid_t uid;
....[      65]: kgid_t gid;
....[      66]: kprojid_t projid;
....[      67]: };
....[      68]: enum quota_type type;
....[      69]: };
....[      71]: extern bool qid_eq(struct kqid left, struct kqid right);
....[      72]: extern bool qid_lt(struct kqid left, struct kqid right);
....[      73]: extern qid_t from_kqid(struct user_namespace *to, struct kqid qid);
....[      74]: extern qid_t from_kqid_munged(struct user_namespace *to, struct kqid qid);
....[      75]: extern bool qid_valid(struct kqid qid);
....[      91]: static inline __attribute__((no_instrument_function)) struct kqid make_kqid(struct user_namespace *from,
....[      92]: enum quota_type type, qid_t qid)
....[      93]: {
....[      94]: struct kqid kqid;
....[      96]: kqid.type = type;
....[      97]: switch (type) {
....[      98]: case USRQUOTA:
....[      99]: kqid.uid = make_kuid(from, qid);
....[     100]: break;
....[     101]: case GRPQUOTA:
....[     102]: kqid.gid = make_kgid(from, qid);
....[     103]: break;
....[     104]: case PRJQUOTA:
....[     105]: kqid.projid = make_kprojid(from, qid);
....[     106]: break;
....[     107]: default:
....[     108]: do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" \
....                "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry))); do { } while (\
....                1); } while (0);
....[     109]: }
....[     110]: return kqid;
....[     111]: }
....[     119]: static inline __attribute__((no_instrument_function)) struct kqid make_kqid_invalid(enum quota_type type)
....[     120]: {
....[     121]: struct kqid kqid;
....[     123]: kqid.type = type;
....[     124]: switch (type) {
....[     125]: case USRQUOTA:
....[     126]: kqid.uid = ((kuid_t) -1 );
....[     127]: break;
....[     128]: case GRPQUOTA:
....[     129]: kqid.gid = ((kgid_t) -1 );
....[     130]: break;
....[     131]: case PRJQUOTA:
....[     132]: kqid.projid = ((kprojid_t) -1 );
....[     133]: break;
....[     134]: default:
....[     135]: do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" \
....                "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry))); do { } while (\
....                1); } while (0);
....[     136]: }
....[     137]: return kqid;
....[     138]: }
....[     144]: static inline __attribute__((no_instrument_function)) struct kqid make_kqid_uid(kuid_t uid)
....[     145]: {
....[     146]: struct kqid kqid;
....[     147]: kqid.type = USRQUOTA;
....[     148]: kqid.uid = uid;
....[     149]: return kqid;
....[     150]: }
....[     156]: static inline __attribute__((no_instrument_function)) struct kqid make_kqid_gid(kgid_t gid)
....[     157]: {
....[     158]: struct kqid kqid;
....[     159]: kqid.type = GRPQUOTA;
....[     160]: kqid.gid = gid;
....[     161]: return kqid;
....[     162]: }
....[     168]: static inline __attribute__((no_instrument_function)) struct kqid make_kqid_projid(kprojid_t projid)
....[     169]: {
....[     170]: struct kqid kqid;
....[     171]: kqid.type = PRJQUOTA;
....[     172]: kqid.projid = projid;
....[     173]: return kqid;
....[     174]: }
....[     177]: extern spinlock_t dq_data_lock;
....[     189]: struct mem_dqblk {
....[     190]: qsize_t dqb_bhardlimit;
....[     191]: qsize_t dqb_bsoftlimit;
....[     192]: qsize_t dqb_curspace;
....[     193]: qsize_t dqb_rsvspace;
....[     194]: qsize_t dqb_ihardlimit;
....[     195]: qsize_t dqb_isoftlimit;
....[     196]: qsize_t dqb_curinodes;
....[     197]: time_t dqb_btime;
....[     198]: time_t dqb_itime;
....[     199]: };
....[     204]: struct quota_format_type;
....[     206]: struct mem_dqinfo {
....[     207]: struct quota_format_type *dqi_format;
....[     208]: int dqi_fmt_id;
....[     210]: struct list_head dqi_dirty_list;
....[     211]: unsigned long dqi_flags;
....[     212]: unsigned int dqi_bgrace;
....[     213]: unsigned int dqi_igrace;
....[     214]: qsize_t dqi_maxblimit;
....[     215]: qsize_t dqi_maxilimit;
....[     216]: void *dqi_priv;
....[     217]: };
....[     219]: struct super_block;
....[     229]: extern void mark_info_dirty(struct super_block *sb, int type);
....[     230]: static inline __attribute__((no_instrument_function)) int info_dirty(struct mem_dqinfo *info)
....[     231]: {
....[     232]: return (__builtin_constant_p((31)) ? constant_test_bit((31), (&info->dqi_flags)) : variable_test_bit((31), \
....                (&info->dqi_flags)));
....[     233]: }
....[     235]: enum {
....[     236]: DQST_LOOKUPS,
....[     237]: DQST_DROPS,
....[     238]: DQST_READS,
....[     239]: DQST_WRITES,
....[     240]: DQST_CACHE_HITS,
....[     241]: DQST_ALLOC_DQUOTS,
....[     242]: DQST_FREE_DQUOTS,
....[     243]: DQST_SYNCS,
....[     244]: _DQST_DQSTAT_LAST
....[     245]: };
....[     247]: struct dqstats {
....[     248]: int stat[_DQST_DQSTAT_LAST];
....[     249]: struct percpu_counter counter[_DQST_DQSTAT_LAST];
....[     250]: };
....[     252]: extern struct dqstats *dqstats_pcpu;
....[     253]: extern struct dqstats dqstats;
....[     255]: static inline __attribute__((no_instrument_function)) void dqstats_inc(unsigned int type)
....[     256]: {
....[     257]: percpu_counter_inc(&dqstats.counter[type]);
....[     258]: }
....[     260]: static inline __attribute__((no_instrument_function)) void dqstats_dec(unsigned int type)
....[     261]: {
....[     262]: percpu_counter_dec(&dqstats.counter[type]);
....[     263]: }
....[     277]: struct dquot {
....[     278]: struct hlist_node dq_hash;
....[     279]: struct list_head dq_inuse;
....[     280]: struct list_head dq_free;
....[     281]: struct list_head dq_dirty;
....[     282]: struct mutex dq_lock;
....[     283]: atomic_t dq_count;
....[     284]: wait_queue_head_t dq_wait_unused;
....[     285]: struct super_block *dq_sb;
....[     286]: struct kqid dq_id;
....[     287]: loff_t dq_off;
....[     288]: unsigned long dq_flags;
....[     289]: struct mem_dqblk dq_dqb;
....[     290]: };
....[     293]: struct quota_format_ops {
....[     294]: int (*check_quota_file)(struct super_block *sb, int type);
....[     295]: int (*read_file_info)(struct super_block *sb, int type);
....[     296]: int (*write_file_info)(struct super_block *sb, int type);
....[     297]: int (*free_file_info)(struct super_block *sb, int type);
....[     298]: int (*read_dqblk)(struct dquot *dquot);
....[     299]: int (*commit_dqblk)(struct dquot *dquot);
....[     300]: int (*release_dqblk)(struct dquot *dquot);
....[     301]: };
....[     304]: struct dquot_operations {
....[     305]: int (*write_dquot) (struct dquot *);
....[     306]: struct dquot *(*alloc_dquot)(struct super_block *, int);
....[     307]: void (*destroy_dquot)(struct dquot *);
....[     308]: int (*acquire_dquot) (struct dquot *);
....[     309]: int (*release_dquot) (struct dquot *);
....[     310]: int (*mark_dirty) (struct dquot *);
....[     311]: int (*write_info) (struct super_block *, int);
....[     314]: qsize_t *(*get_reserved_space) (struct inode *);
....[     315]: };
....[     317]: struct path;
....[     320]: struct quotactl_ops {
....[     321]: int (*quota_on)(struct super_block *, int, int, struct path *);
....[     322]: int (*quota_on_meta)(struct super_block *, int, int);
....[     323]: int (*quota_off)(struct super_block *, int);
....[     324]: int (*quota_sync)(struct super_block *, int);
....[     325]: int (*get_info)(struct super_block *, int, struct if_dqinfo *);
....[     326]: int (*set_info)(struct super_block *, int, struct if_dqinfo *);
....[     327]: int (*get_dqblk)(struct super_block *, struct kqid, struct fs_disk_quota *);
....[     328]: int (*set_dqblk)(struct super_block *, struct kqid, struct fs_disk_quota *);
....[     329]: int (*get_xstate)(struct super_block *, struct fs_quota_stat *);
....[     330]: int (*set_xstate)(struct super_block *, unsigned int, int);
....[     331]: int (*get_xstatev)(struct super_block *, struct fs_quota_statv *);
....[     332]: };
....[     334]: struct quota_format_type {
....[     335]: int qf_fmt_id;
....[     336]: const struct quota_format_ops *qf_ops;
....[     337]: struct module *qf_owner;
....[     338]: struct quota_format_type *qf_next;
....[     339]: };
....[     342]: enum {
....[     343]: _DQUOT_USAGE_ENABLED = 0,
....[     344]: _DQUOT_LIMITS_ENABLED,
....[     345]: _DQUOT_SUSPENDED,
....[     348]: _DQUOT_STATE_FLAGS
....[     349]: };
....[     367]: static inline __attribute__((no_instrument_function)) unsigned int dquot_state_flag(unsigned int flags, int type\
....                )
....[     368]: {
....[     369]: return flags << _DQUOT_STATE_FLAGS * type;
....[     370]: }
....[     372]: static inline __attribute__((no_instrument_function)) unsigned int dquot_generic_flag(unsigned int flags, int \
....                type)
....[     373]: {
....[     374]: return (flags >> _DQUOT_STATE_FLAGS * type) & ((1 << _DQUOT_USAGE_ENABLED) | (1 << _DQUOT_LIMITS_ENABLED) | (1 << _DQUOT_SUSPENDED\
....                ));
....[     375]: }
....[     378]: extern void quota_send_warning(struct kqid qid, dev_t dev,
....[     379]: const char warntype);
....[     388]: struct quota_info {
....[     389]: unsigned int flags;
....[     390]: struct mutex dqio_mutex;
....[     391]: struct mutex dqonoff_mutex;
....[     392]: struct rw_semaphore dqptr_sem;
....[     393]: struct inode *files[2];
....[     394]: struct mem_dqinfo info[2];
....[     395]: const struct quota_format_ops *ops[2];
....[     396]: };
....[     398]: int register_quota_format(struct quota_format_type *fmt);
....[     399]: void unregister_quota_format(struct quota_format_type *fmt);
....[     401]: struct quota_module_name {
....[     402]: int qm_fmt_id;
....[     403]: char *qm_mod_name;
....[     404]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/quota.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...[     275]: enum positive_aop_returns {
...[     276]: AOP_WRITEPAGE_ACTIVATE = 0x80000,
...[     277]: AOP_TRUNCATED_PAGE = 0x80001,
...[     278]: };
...[     289]: struct page;
...[     290]: struct address_space;
...[     291]: struct writeback_control;
...[     293]: struct iov_iter {
...[     294]: const struct iovec *iov;
...[     295]: unsigned long nr_segs;
...[     296]: size_t iov_offset;
...[     297]: size_t count;
...[     298]: };
...[     300]: size_t iov_iter_copy_from_user_atomic(struct page *page,
...[     301]: struct iov_iter *i, unsigned long offset, size_t bytes);
...[     302]: size_t iov_iter_copy_from_user(struct page *page,
...[     303]: struct iov_iter *i, unsigned long offset, size_t bytes);
...[     304]: void iov_iter_advance(struct iov_iter *i, size_t bytes);
...[     305]: int iov_iter_fault_in_readable(struct iov_iter *i, size_t bytes);
...[     306]: size_t iov_iter_single_seg_count(const struct iov_iter *i);
...[     308]: static inline __attribute__((no_instrument_function)) void iov_iter_init(struct iov_iter *i,
...[     309]: const struct iovec *iov, unsigned long nr_segs,
...[     310]: size_t count, size_t written)
...[     311]: {
...[     312]: i->iov = iov;
...[     313]: i->nr_segs = nr_segs;
...[     314]: i->iov_offset = 0;
...[     315]: i->count = count + written;
...[     317]: iov_iter_advance(i, written);
...[     318]: }
...[     320]: static inline __attribute__((no_instrument_function)) size_t iov_iter_count(struct iov_iter *i)
...[     321]: {
...[     322]: return i->count;
...[     323]: }
...[     334]: typedef struct {
...[     335]: size_t written;
...[     336]: size_t count;
...[     337]: union {
...[     338]: char *buf;
...[     339]: void *data;
...[     340]: } arg;
...[     341]: int error;
...[     342]: } read_descriptor_t;
...[     344]: typedef int (*read_actor_t)(read_descriptor_t *, struct page *,
...[     345]: unsigned long, unsigned long);
...[     347]: struct address_space_operations {
...[     348]: int (*writepage)(struct page *page, struct writeback_control *wbc);
...[     349]: int (*readpage)(struct file *, struct page *);
...[     352]: int (*writepages)(struct address_space *, struct writeback_control *);
...[     355]: int (*set_page_dirty)(struct page *page);
...[     357]: int (*readpages)(struct file *filp, struct address_space *mapping,
...[     358]: struct list_head *pages, unsigned nr_pages);
...[     360]: int (*write_begin)(struct file *, struct address_space *mapping,
...[     361]: loff_t pos, unsigned len, unsigned flags,
...[     362]: struct page **pagep, void **fsdata);
...[     363]: int (*write_end)(struct file *, struct address_space *mapping,
...[     364]: loff_t pos, unsigned len, unsigned copied,
...[     365]: struct page *page, void *fsdata);
...[     368]: sector_t (*bmap)(struct address_space *, sector_t);
...[     369]: void (*invalidatepage) (struct page *, unsigned int, unsigned int);
...[     370]: int (*releasepage) (struct page *, gfp_t);
...[     371]: void (*freepage)(struct page *);
...[     372]: ssize_t (*direct_IO)(int, struct kiocb *, const struct iovec *iov,
...[     373]: loff_t offset, unsigned long nr_segs);
...[     374]: int (*get_xip_mem)(struct address_space *, unsigned long, int,
...[     375]: void **, unsigned long *);
...[     380]: int (*migratepage) (struct address_space *,
...[     381]: struct page *, struct page *, enum migrate_mode);
...[     382]: int (*launder_page) (struct page *);
...[     383]: int (*is_partially_uptodate) (struct page *, read_descriptor_t *,
...[     384]: unsigned long);
...[     385]: void (*is_dirty_writeback) (struct page *, bool *, bool *);
...[     386]: int (*error_remove_page)(struct address_space *, struct page *);
...[     389]: int (*swap_activate)(struct swap_info_struct *sis, struct file *file,
...[     390]: sector_t *span);
...[     391]: void (*swap_deactivate)(struct file *file);
...[     392]: };
...[     394]: extern const struct address_space_operations empty_aops;
...[     400]: int pagecache_write_begin(struct file *, struct address_space *mapping,
...[     401]: loff_t pos, unsigned len, unsigned flags,
...[     402]: struct page **pagep, void **fsdata);
...[     404]: int pagecache_write_end(struct file *, struct address_space *mapping,
...[     405]: loff_t pos, unsigned len, unsigned copied,
...[     406]: struct page *page, void *fsdata);
...[     408]: struct backing_dev_info;
...[     409]: struct address_space {
...[     410]: struct inode *host;
...[     411]: struct radix_tree_root page_tree;
...[     412]: spinlock_t tree_lock;
...[     413]: unsigned int i_mmap_writable;
...[     414]: struct rb_root i_mmap;
...[     415]: struct list_head i_mmap_nonlinear;
...[     416]: struct mutex i_mmap_mutex;
...[     418]: unsigned long nrpages;
...[     419]: unsigned long writeback_index;
...[     420]: const struct address_space_operations *a_ops;
...[     421]: unsigned long flags;
...[     422]: struct backing_dev_info *backing_dev_info;
...[     423]: spinlock_t private_lock;
...[     424]: struct list_head private_list;
...[     425]: void *private_data;
...[     426]: } __attribute__((aligned(sizeof(long))));
...[     432]: struct request_queue;
...[     434]: struct block_device {
...[     435]: dev_t bd_dev;
...[     436]: int bd_openers;
...[     437]: struct inode * bd_inode;
...[     438]: struct super_block * bd_super;
...[     439]: struct mutex bd_mutex;
...[     440]: struct list_head bd_inodes;
...[     441]: void * bd_claiming;
...[     442]: void * bd_holder;
...[     443]: int bd_holders;
...[     444]: bool bd_write_holder;
...[     446]: struct list_head bd_holder_disks;
...[     448]: struct block_device * bd_contains;
...[     449]: unsigned bd_block_size;
...[     450]: struct hd_struct * bd_part;
...[     452]: unsigned bd_part_count;
...[     453]: int bd_invalidated;
...[     454]: struct gendisk * bd_disk;
...[     455]: struct request_queue * bd_queue;
...[     456]: struct list_head bd_list;
...[     463]: unsigned long bd_private;
...[     466]: int bd_fsfreeze_count;
...[     468]: struct mutex bd_fsfreeze_mutex;
...[     469]: };
...[     479]: int mapping_tagged(struct address_space *mapping, int tag);
...[     484]: static inline __attribute__((no_instrument_function)) int mapping_mapped(struct address_space *mapping)
...[     485]: {
...[     486]: return !((&mapping->i_mmap)->rb_node == ((void *)0)) ||
...[     487]: !list_empty(&mapping->i_mmap_nonlinear);
...[     488]: }
...[     496]: static inline __attribute__((no_instrument_function)) int mapping_writably_mapped(struct address_space *mapping\
...                )
...[     497]: {
...[     498]: return mapping->i_mmap_writable != 0;
...[     499]: }
...[     512]: struct posix_acl;
...[     524]: struct inode {
...[     525]: umode_t i_mode;
...[     526]: unsigned short i_opflags;
...[     527]: kuid_t i_uid;
...[     528]: kgid_t i_gid;
...[     529]: unsigned int i_flags;
...[     532]: struct posix_acl *i_acl;
...[     533]: struct posix_acl *i_default_acl;
...[     536]: const struct inode_operations *i_op;
...[     537]: struct super_block *i_sb;
...[     538]: struct address_space *i_mapping;
...[     541]: void *i_security;
...[     545]: unsigned long i_ino;
...[     553]: union {
...[     554]: const unsigned int i_nlink;
...[     555]: unsigned int __i_nlink;
...[     556]: };
...[     557]: dev_t i_rdev;
...[     558]: loff_t i_size;
...[     559]: struct timespec i_atime;
...[     560]: struct timespec i_mtime;
...[     561]: struct timespec i_ctime;
...[     562]: spinlock_t i_lock;
...[     563]: unsigned short i_bytes;
...[     564]: unsigned int i_blkbits;
...[     565]: blkcnt_t i_blocks;
...[     572]: unsigned long i_state;
...[     573]: struct mutex i_mutex;
...[     575]: unsigned long dirtied_when;
...[     577]: struct hlist_node i_hash;
...[     578]: struct list_head i_wb_list;
...[     579]: struct list_head i_lru;
...[     580]: struct list_head i_sb_list;
...[     581]: union {
...[     582]: struct hlist_head i_dentry;
...[     583]: struct callback_head i_rcu;
...[     584]: };
...[     585]: u64 i_version;
...[     586]: atomic_t i_count;
...[     587]: atomic_t i_dio_count;
...[     588]: atomic_t i_writecount;
...[     589]: const struct file_operations *i_fop;
...[     590]: struct file_lock *i_flock;
...[     591]: struct address_space i_data;
...[     593]: struct dquot *i_dquot[2];
...[     595]: struct list_head i_devices;
...[     596]: union {
...[     597]: struct pipe_inode_info *i_pipe;
...[     598]: struct block_device *i_bdev;
...[     599]: struct cdev *i_cdev;
...[     600]: };
...[     602]: __u32 i_generation;
...[     605]: __u32 i_fsnotify_mask;
...[     606]: struct hlist_head i_fsnotify_marks;
...[     610]: atomic_t i_readcount;
...[     612]: void *i_private;
...[     613]: };
...[     615]: static inline __attribute__((no_instrument_function)) int inode_unhashed(struct inode *inode)
...[     616]: {
...[     617]: return hlist_unhashed(&inode->i_hash);
...[     618]: }
...[     634]: enum inode_i_mutex_lock_class
...[     635]: {
...[     636]: I_MUTEX_NORMAL,
...[     637]: I_MUTEX_PARENT,
...[     638]: I_MUTEX_CHILD,
...[     639]: I_MUTEX_XATTR,
...[     640]: I_MUTEX_NONDIR2
...[     641]: };
...[     643]: void lock_two_nondirectories(struct inode *, struct inode*);
...[     644]: void unlock_two_nondirectories(struct inode *, struct inode*);
...[     656]: static inline __attribute__((no_instrument_function)) loff_t i_size_read(const struct inode *inode)
...[     657]: {
...[     675]: return inode->i_size;
...[     677]: }
...[     684]: static inline __attribute__((no_instrument_function)) void i_size_write(struct inode *inode, loff_t i_size)
...[     685]: {
...[     697]: inode->i_size = i_size;
...[     699]: }
...[     706]: static inline __attribute__((no_instrument_function)) uid_t i_uid_read(const struct inode *inode)
...[     707]: {
...[     708]: return from_kuid(&init_user_ns, inode->i_uid);
...[     709]: }
...[     711]: static inline __attribute__((no_instrument_function)) gid_t i_gid_read(const struct inode *inode)
...[     712]: {
...[     713]: return from_kgid(&init_user_ns, inode->i_gid);
...[     714]: }
...[     716]: static inline __attribute__((no_instrument_function)) void i_uid_write(struct inode *inode, uid_t uid)
...[     717]: {
...[     718]: inode->i_uid = make_kuid(&init_user_ns, uid);
...[     719]: }
...[     721]: static inline __attribute__((no_instrument_function)) void i_gid_write(struct inode *inode, gid_t gid)
...[     722]: {
...[     723]: inode->i_gid = make_kgid(&init_user_ns, gid);
...[     724]: }
...[     726]: static inline __attribute__((no_instrument_function)) unsigned iminor(const struct inode *inode)
...[     727]: {
...[     728]: return ((unsigned int) ((inode->i_rdev) & ((1U << 20) - 1)));
...[     729]: }
...[     731]: static inline __attribute__((no_instrument_function)) unsigned imajor(const struct inode *inode)
...[     732]: {
...[     733]: return ((unsigned int) ((inode->i_rdev) >> 20));
...[     734]: }
...[     736]: extern struct block_device *I_BDEV(struct inode *inode);
...[     738]: struct fown_struct {
...[     739]: rwlock_t lock;
...[     740]: struct pid *pid;
...[     741]: enum pid_type pid_type;
...[     742]: kuid_t uid, euid;
...[     743]: int signum;
...[     744]: };
...[     749]: struct file_ra_state {
...[     750]: unsigned long start;
...[     751]: unsigned int size;
...[     752]: unsigned int async_size;
...[     755]: unsigned int ra_pages;
...[     756]: unsigned int mmap_miss;
...[     757]: loff_t prev_pos;
...[     758]: };
...[     763]: static inline __attribute__((no_instrument_function)) int ra_has_index(struct file_ra_state *ra, unsigned long \
...                index)
...[     764]: {
...[     765]: return (index >= ra->start &&
...[     766]: index < ra->start + ra->size);
...[     767]: }
...[     772]: struct file {
...[     773]: union {
...[     774]: struct llist_node fu_llist;
...[     775]: struct callback_head fu_rcuhead;
...[     776]: } f_u;
...[     777]: struct path f_path;
...[     779]: struct inode *f_inode;
...[     780]: const struct file_operations *f_op;
...[     786]: spinlock_t f_lock;
...[     787]: atomic_long_t f_count;
...[     788]: unsigned int f_flags;
...[     789]: fmode_t f_mode;
...[     790]: loff_t f_pos;
...[     791]: struct fown_struct f_owner;
...[     792]: const struct cred *f_cred;
...[     793]: struct file_ra_state f_ra;
...[     795]: u64 f_version;
...[     797]: void *f_security;
...[     800]: void *private_data;
...[     804]: struct list_head f_ep_links;
...[     805]: struct list_head f_tfile_llink;
...[     807]: struct address_space *f_mapping;
...[     811]: };
...[     813]: struct file_handle {
...[     814]: __u32 handle_bytes;
...[     815]: int handle_type;
...[     817]: unsigned char f_handle[0];
...[     818]: };
...[     820]: static inline __attribute__((no_instrument_function)) struct file *get_file(struct file *f)
...[     821]: {
...[     822]: atomic_long_inc(&f->f_count);
...[     823]: return f;
...[     824]: }
...[     861]: static inline __attribute__((no_instrument_function)) void file_take_write(struct file *filp) {}
...[     862]: static inline __attribute__((no_instrument_function)) void file_release_write(struct file *filp) {}
...[     863]: static inline __attribute__((no_instrument_function)) void file_reset_write(struct file *filp) {}
...[     864]: static inline __attribute__((no_instrument_function)) void file_check_state(struct file *filp) {}
...[     865]: static inline __attribute__((no_instrument_function)) int file_check_writeable(struct file *filp)
...[     866]: {
...[     867]: return 0;
...[     868]: }
...[     905]: typedef struct files_struct *fl_owner_t;
...[     907]: struct file_lock_operations {
...[     908]: void (*fl_copy_lock)(struct file_lock *, struct file_lock *);
...[     909]: void (*fl_release_private)(struct file_lock *);
...[     910]: };
...[     912]: struct lock_manager_operations {
...[     913]: int (*lm_compare_owner)(struct file_lock *, struct file_lock *);
...[     914]: unsigned long (*lm_owner_key)(struct file_lock *);
...[     915]: void (*lm_notify)(struct file_lock *);
...[     916]: int (*lm_grant)(struct file_lock *, struct file_lock *, int);
...[     917]: void (*lm_break)(struct file_lock *);
...[     918]: int (*lm_change)(struct file_lock **, int);
...[     919]: };
...[     921]: struct lock_manager {
...[     922]: struct list_head list;
...[     923]: };
...[     925]: struct net;
...[     926]: void locks_start_grace(struct net *, struct lock_manager *);
...[     927]: void locks_end_grace(struct lock_manager *);
...[     928]: int locks_in_grace(struct net *);
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/nfs_fs_i.h
....[       4]: struct nlm_lockowner;
....[       9]: struct nfs_lock_info {
....[      10]: u32 state;
....[      11]: struct nlm_lockowner *owner;
....[      12]: struct list_head list;
....[      13]: };
....[      15]: struct nfs4_lock_state;
....[      16]: struct nfs4_lock_info {
....[      17]: struct nfs4_lock_state *owner;
....[      18]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/nfs_fs_i.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...[     951]: struct file_lock {
...[     952]: struct file_lock *fl_next;
...[     953]: struct hlist_node fl_link;
...[     954]: struct list_head fl_block;
...[     955]: fl_owner_t fl_owner;
...[     956]: unsigned int fl_flags;
...[     957]: unsigned char fl_type;
...[     958]: unsigned int fl_pid;
...[     959]: int fl_link_cpu;
...[     960]: struct pid *fl_nspid;
...[     961]: wait_queue_head_t fl_wait;
...[     962]: struct file *fl_file;
...[     963]: loff_t fl_start;
...[     964]: loff_t fl_end;
...[     966]: struct fasync_struct * fl_fasync;
...[     968]: unsigned long fl_break_time;
...[     969]: unsigned long fl_downgrade_time;
...[     971]: const struct file_lock_operations *fl_ops;
...[     972]: const struct lock_manager_operations *fl_lmops;
...[     973]: union {
...[     974]: struct nfs_lock_info nfs_fl;
...[     975]: struct nfs4_lock_info nfs4_fl;
...[     976]: struct {
...[     977]: struct list_head link;
...[     978]: int state;
...[     979]: } afs;
...[     980]: } fl_u;
...[     981]: };
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fcntl.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fcntl.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fcntl.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fcntl.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/fcntl.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/fcntl.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/fcntl.h
.......[     139]: struct f_owner_ex {
.......[     140]: int type;
.......[     141]: __kernel_pid_t pid;
.......[     142]: };
.......[     179]: struct flock {
.......[     180]: short l_type;
.......[     181]: short l_whence;
.......[     182]: __kernel_off_t l_start;
.......[     183]: __kernel_off_t l_len;
.......[     184]: __kernel_pid_t l_pid;
.......[     186]: };
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/fcntl.h
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/fcntl.h
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/fcntl.h
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fcntl.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
...[     992]: extern void send_sigio(struct fown_struct *fown, int fd, int band);
...[     995]: extern int fcntl_getlk(struct file *, struct flock *);
...[     996]: extern int fcntl_setlk(unsigned int, struct file *, unsigned int,
...[     997]: struct flock *);
...[    1005]: extern int fcntl_setlease(unsigned int fd, struct file *filp, long arg);
...[    1006]: extern int fcntl_getlease(struct file *filp);
...[    1009]: void locks_free_lock(struct file_lock *fl);
...[    1010]: extern void locks_init_lock(struct file_lock *);
...[    1011]: extern struct file_lock * locks_alloc_lock(void);
...[    1012]: extern void locks_copy_lock(struct file_lock *, struct file_lock *);
...[    1013]: extern void __locks_copy_lock(struct file_lock *, const struct file_lock *);
...[    1014]: extern void locks_remove_posix(struct file *, fl_owner_t);
...[    1015]: extern void locks_remove_flock(struct file *);
...[    1016]: extern void locks_release_private(struct file_lock *);
...[    1017]: extern void posix_test_lock(struct file *, struct file_lock *);
...[    1018]: extern int posix_lock_file(struct file *, struct file_lock *, struct file_lock *);
...[    1019]: extern int posix_lock_file_wait(struct file *, struct file_lock *);
...[    1020]: extern int posix_unblock_lock(struct file_lock *);
...[    1021]: extern int vfs_test_lock(struct file *, struct file_lock *);
...[    1022]: extern int vfs_lock_file(struct file *, unsigned int, struct file_lock *, struct file_lock *);
...[    1023]: extern int vfs_cancel_lock(struct file *filp, struct file_lock *fl);
...[    1024]: extern int flock_lock_file_wait(struct file *filp, struct file_lock *fl);
...[    1025]: extern int __break_lease(struct inode *inode, unsigned int flags, unsigned int type);
...[    1026]: extern void lease_get_mtime(struct inode *, struct timespec *time);
...[    1027]: extern int generic_setlease(struct file *, long, struct file_lock **);
...[    1028]: extern int vfs_setlease(struct file *, long, struct file_lock **);
...[    1029]: extern int lease_modify(struct file_lock **, int);
...[    1030]: extern int lock_may_read(struct inode *, loff_t start, unsigned long count);
...[    1031]: extern int lock_may_write(struct inode *, loff_t start, unsigned long count);
...[    1175]: struct fasync_struct {
...[    1176]: spinlock_t fa_lock;
...[    1177]: int magic;
...[    1178]: int fa_fd;
...[    1179]: struct fasync_struct *fa_next;
...[    1180]: struct file *fa_file;
...[    1181]: struct callback_head fa_rcu;
...[    1182]: };
...[    1187]: extern int fasync_helper(int, struct file *, int, struct fasync_struct **);
...[    1188]: extern struct fasync_struct *fasync_insert_entry(int, struct file *, struct fasync_struct **, struct fasync_struct \
...                *);
...[    1189]: extern int fasync_remove_entry(struct file *, struct fasync_struct **);
...[    1190]: extern struct fasync_struct *fasync_alloc(void);
...[    1191]: extern void fasync_free(struct fasync_struct *);
...[    1194]: extern void kill_fasync(struct fasync_struct **, int, int);
...[    1196]: extern int __f_setown(struct file *filp, struct pid *, enum pid_type, int force);
...[    1197]: extern int f_setown(struct file *filp, unsigned long arg, int force);
...[    1198]: extern void f_delown(struct file *filp);
...[    1199]: extern pid_t f_getown(struct file *filp);
...[    1200]: extern int send_sigurg(struct fown_struct *fown);
...[    1202]: struct mm_struct;
...[    1214]: extern struct list_head super_blocks;
...[    1215]: extern spinlock_t sb_lock;
...[    1218]: enum {
...[    1219]: SB_UNFROZEN = 0,
...[    1220]: SB_FREEZE_WRITE = 1,
...[    1221]: SB_FREEZE_PAGEFAULT = 2,
...[    1222]: SB_FREEZE_FS = 3,
...[    1224]: SB_FREEZE_COMPLETE = 4,
...[    1225]: };
...[    1229]: struct sb_writers {
...[    1231]: struct percpu_counter counter[(SB_FREEZE_COMPLETE - 1)];
...[    1232]: wait_queue_head_t wait;
...[    1234]: int frozen;
...[    1235]: wait_queue_head_t wait_unfrozen;
...[    1240]: };
...[    1242]: struct super_block {
...[    1243]: struct list_head s_list;
...[    1244]: dev_t s_dev;
...[    1245]: unsigned char s_blocksize_bits;
...[    1246]: unsigned long s_blocksize;
...[    1247]: loff_t s_maxbytes;
...[    1248]: struct file_system_type *s_type;
...[    1249]: const struct super_operations *s_op;
...[    1250]: const struct dquot_operations *dq_op;
...[    1251]: const struct quotactl_ops *s_qcop;
...[    1252]: const struct export_operations *s_export_op;
...[    1253]: unsigned long s_flags;
...[    1254]: unsigned long s_magic;
...[    1255]: struct dentry *s_root;
...[    1256]: struct rw_semaphore s_umount;
...[    1257]: int s_count;
...[    1258]: atomic_t s_active;
...[    1260]: void *s_security;
...[    1262]: const struct xattr_handler **s_xattr;
...[    1264]: struct list_head s_inodes;
...[    1265]: struct hlist_bl_head s_anon;
...[    1266]: struct list_head s_mounts;
...[    1267]: struct block_device *s_bdev;
...[    1268]: struct backing_dev_info *s_bdi;
...[    1269]: struct mtd_info *s_mtd;
...[    1270]: struct hlist_node s_instances;
...[    1271]: struct quota_info s_dquot;
...[    1273]: struct sb_writers s_writers;
...[    1275]: char s_id[32];
...[    1276]: u8 s_uuid[16];
...[    1278]: void *s_fs_info;
...[    1279]: unsigned int s_max_links;
...[    1280]: fmode_t s_mode;
...[    1284]: u32 s_time_gran;
...[    1290]: struct mutex s_vfs_rename_mutex;
...[    1296]: char *s_subtype;
...[    1302]: char *s_options;
...[    1303]: const struct dentry_operations *s_d_op;
...[    1308]: int cleancache_poolid;
...[    1310]: struct shrinker s_shrink;
...[    1313]: atomic_long_t s_remove_count;
...[    1316]: int s_readonly_remount;
...[    1319]: struct workqueue_struct *s_dio_done_wq;
...[    1325]: struct list_lru s_dentry_lru __attribute__((__aligned__((1 << (6)))));
...[    1326]: struct list_lru s_inode_lru __attribute__((__aligned__((1 << (6)))));
...[    1327]: struct callback_head rcu;
...[    1328]: };
...[    1330]: extern struct timespec current_fs_time(struct super_block *sb);
...[    1336]: void __sb_end_write(struct super_block *sb, int level);
...[    1337]: int __sb_start_write(struct super_block *sb, int level, bool wait);
...[    1346]: static inline __attribute__((no_instrument_function)) void sb_end_write(struct super_block *sb)
...[    1347]: {
...[    1348]: __sb_end_write(sb, SB_FREEZE_WRITE);
...[    1349]: }
...[    1358]: static inline __attribute__((no_instrument_function)) void sb_end_pagefault(struct super_block *sb)
...[    1359]: {
...[    1360]: __sb_end_write(sb, SB_FREEZE_PAGEFAULT);
...[    1361]: }
...[    1370]: static inline __attribute__((no_instrument_function)) void sb_end_intwrite(struct super_block *sb)
...[    1371]: {
...[    1372]: __sb_end_write(sb, SB_FREEZE_FS);
...[    1373]: }
...[    1394]: static inline __attribute__((no_instrument_function)) void sb_start_write(struct super_block *sb)
...[    1395]: {
...[    1396]: __sb_start_write(sb, SB_FREEZE_WRITE, true);
...[    1397]: }
...[    1399]: static inline __attribute__((no_instrument_function)) int sb_start_write_trylock(struct super_block *sb)
...[    1400]: {
...[    1401]: return __sb_start_write(sb, SB_FREEZE_WRITE, false);
...[    1402]: }
...[    1423]: static inline __attribute__((no_instrument_function)) void sb_start_pagefault(struct super_block *sb)
...[    1424]: {
...[    1425]: __sb_start_write(sb, SB_FREEZE_PAGEFAULT, true);
...[    1426]: }
...[    1441]: static inline __attribute__((no_instrument_function)) void sb_start_intwrite(struct super_block *sb)
...[    1442]: {
...[    1443]: __sb_start_write(sb, SB_FREEZE_FS, true);
...[    1444]: }
...[    1447]: extern bool inode_owner_or_capable(const struct inode *inode);
...[    1452]: extern int vfs_create(struct inode *, struct dentry *, umode_t, bool);
...[    1453]: extern int vfs_mkdir(struct inode *, struct dentry *, umode_t);
...[    1454]: extern int vfs_mknod(struct inode *, struct dentry *, umode_t, dev_t);
...[    1455]: extern int vfs_symlink(struct inode *, struct dentry *, const char *);
...[    1456]: extern int vfs_link(struct dentry *, struct inode *, struct dentry *, struct inode **);
...[    1457]: extern int vfs_rmdir(struct inode *, struct dentry *);
...[    1458]: extern int vfs_unlink(struct inode *, struct dentry *, struct inode **);
...[    1459]: extern int vfs_rename(struct inode *, struct dentry *, struct inode *, struct dentry *, struct inode **);
...[    1464]: extern void dentry_unhash(struct dentry *dentry);
...[    1469]: extern void inode_init_owner(struct inode *inode, const struct inode *dir,
...[    1470]: umode_t mode);
...[    1474]: struct fiemap_extent_info {
...[    1475]: unsigned int fi_flags;
...[    1476]: unsigned int fi_extents_mapped;
...[    1477]: unsigned int fi_extents_max;
...[    1478]: struct fiemap_extent *fi_extents_start;
...[    1480]: };
...[    1481]: int fiemap_fill_next_extent(struct fiemap_extent_info *info, u64 logical,
...[    1482]: u64 phys, u64 len, u32 flags);
...[    1483]: int fiemap_check_flags(struct fiemap_extent_info *fieinfo, u32 fs_flags);
...[    1507]: typedef int (*filldir_t)(void *, const char *, int, loff_t, u64, unsigned);
...[    1508]: struct dir_context {
...[    1509]: const filldir_t actor;
...[    1510]: loff_t pos;
...[    1511]: };
...[    1513]: struct block_device_operations;
...[    1521]: struct file_operations {
...[    1522]: struct module *owner;
...[    1523]: loff_t (*llseek) (struct file *, loff_t, int);
...[    1524]: ssize_t (*read) (struct file *, char *, size_t, loff_t *);
...[    1525]: ssize_t (*write) (struct file *, const char *, size_t, loff_t *);
...[    1526]: ssize_t (*aio_read) (struct kiocb *, const struct iovec *, unsigned long, loff_t);
...[    1527]: ssize_t (*aio_write) (struct kiocb *, const struct iovec *, unsigned long, loff_t);
...[    1528]: int (*iterate) (struct file *, struct dir_context *);
...[    1529]: unsigned int (*poll) (struct file *, struct poll_table_struct *);
...[    1530]: long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long);
...[    1531]: long (*compat_ioctl) (struct file *, unsigned int, unsigned long);
...[    1532]: int (*mmap) (struct file *, struct vm_area_struct *);
...[    1533]: int (*open) (struct inode *, struct file *);
...[    1534]: int (*flush) (struct file *, fl_owner_t id);
...[    1535]: int (*release) (struct inode *, struct file *);
...[    1536]: int (*fsync) (struct file *, loff_t, loff_t, int datasync);
...[    1537]: int (*aio_fsync) (struct kiocb *, int datasync);
...[    1538]: int (*fasync) (int, struct file *, int);
...[    1539]: int (*lock) (struct file *, int, struct file_lock *);
...[    1540]: ssize_t (*sendpage) (struct file *, struct page *, int, size_t, loff_t *, int);
...[    1541]: unsigned long (*get_unmapped_area)(struct file *, unsigned long, unsigned long, unsigned long, unsigned long);
...[    1542]: int (*check_flags)(int);
...[    1543]: int (*flock) (struct file *, int, struct file_lock *);
...[    1544]: ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);
...[    1545]: ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
...[    1546]: int (*setlease)(struct file *, long, struct file_lock **);
...[    1547]: long (*fallocate)(struct file *file, int mode, loff_t offset,
...[    1548]: loff_t len);
...[    1549]: int (*show_fdinfo)(struct seq_file *m, struct file *f);
...[    1550]: };
...[    1552]: struct inode_operations {
...[    1553]: struct dentry * (*lookup) (struct inode *,struct dentry *, unsigned int);
...[    1554]: void * (*follow_link) (struct dentry *, struct nameidata *);
...[    1555]: int (*permission) (struct inode *, int);
...[    1556]: struct posix_acl * (*get_acl)(struct inode *, int);
...[    1558]: int (*readlink) (struct dentry *, char *,int);
...[    1559]: void (*put_link) (struct dentry *, struct nameidata *, void *);
...[    1561]: int (*create) (struct inode *,struct dentry *, umode_t, bool);
...[    1562]: int (*link) (struct dentry *,struct inode *,struct dentry *);
...[    1563]: int (*unlink) (struct inode *,struct dentry *);
...[    1564]: int (*symlink) (struct inode *,struct dentry *,const char *);
...[    1565]: int (*mkdir) (struct inode *,struct dentry *,umode_t);
...[    1566]: int (*rmdir) (struct inode *,struct dentry *);
...[    1567]: int (*mknod) (struct inode *,struct dentry *,umode_t,dev_t);
...[    1568]: int (*rename) (struct inode *, struct dentry *,
...[    1569]: struct inode *, struct dentry *);
...[    1570]: int (*setattr) (struct dentry *, struct iattr *);
...[    1571]: int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *);
...[    1572]: int (*setxattr) (struct dentry *, const char *,const void *,size_t,int);
...[    1573]: ssize_t (*getxattr) (struct dentry *, const char *, void *, size_t);
...[    1574]: ssize_t (*listxattr) (struct dentry *, char *, size_t);
...[    1575]: int (*removexattr) (struct dentry *, const char *);
...[    1576]: int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64 start,
...[    1577]: u64 len);
...[    1578]: int (*update_time)(struct inode *, struct timespec *, int);
...[    1579]: int (*atomic_open)(struct inode *, struct dentry *,
...[    1580]: struct file *, unsigned open_flag,
...[    1581]: umode_t create_mode, int *opened);
...[    1582]: int (*tmpfile) (struct inode *, struct dentry *, umode_t);
...[    1583]: } __attribute__((__aligned__((1 << (6)))));
...[    1585]: ssize_t rw_copy_check_uvector(int type, const struct iovec * uvector,
...[    1586]: unsigned long nr_segs, unsigned long fast_segs,
...[    1587]: struct iovec *fast_pointer,
...[    1588]: struct iovec **ret_pointer);
...[    1590]: extern ssize_t vfs_read(struct file *, char *, size_t, loff_t *);
...[    1591]: extern ssize_t vfs_write(struct file *, const char *, size_t, loff_t *);
...[    1592]: extern ssize_t vfs_readv(struct file *, const struct iovec *,
...[    1593]: unsigned long, loff_t *);
...[    1594]: extern ssize_t vfs_writev(struct file *, const struct iovec *,
...[    1595]: unsigned long, loff_t *);
...[    1597]: struct super_operations {
...[    1598]: struct inode *(*alloc_inode)(struct super_block *sb);
...[    1599]: void (*destroy_inode)(struct inode *);
...[    1601]: void (*dirty_inode) (struct inode *, int flags);
...[    1602]: int (*write_inode) (struct inode *, struct writeback_control *wbc);
...[    1603]: int (*drop_inode) (struct inode *);
...[    1604]: void (*evict_inode) (struct inode *);
...[    1605]: void (*put_super) (struct super_block *);
...[    1606]: int (*sync_fs)(struct super_block *sb, int wait);
...[    1607]: int (*freeze_fs) (struct super_block *);
...[    1608]: int (*unfreeze_fs) (struct super_block *);
...[    1609]: int (*statfs) (struct dentry *, struct kstatfs *);
...[    1610]: int (*remount_fs) (struct super_block *, int *, char *);
...[    1611]: void (*umount_begin) (struct super_block *);
...[    1613]: int (*show_options)(struct seq_file *, struct dentry *);
...[    1614]: int (*show_devname)(struct seq_file *, struct dentry *);
...[    1615]: int (*show_path)(struct seq_file *, struct dentry *);
...[    1616]: int (*show_stats)(struct seq_file *, struct dentry *);
...[    1618]: ssize_t (*quota_read)(struct super_block *, int, char *, size_t, loff_t);
...[    1619]: ssize_t (*quota_write)(struct super_block *, int, const char *, size_t, loff_t);
...[    1621]: int (*bdev_try_to_free_page)(struct super_block*, struct page*, gfp_t);
...[    1622]: long (*nr_cached_objects)(struct super_block *, int);
...[    1623]: long (*free_cached_objects)(struct super_block *, long, int);
...[    1624]: };
...[    1750]: extern void __mark_inode_dirty(struct inode *, int);
...[    1751]: static inline __attribute__((no_instrument_function)) void mark_inode_dirty(struct inode *inode)
...[    1752]: {
...[    1753]: __mark_inode_dirty(inode, ((1 << 0) | (1 << 1) | (1 << 2)));
...[    1754]: }
...[    1756]: static inline __attribute__((no_instrument_function)) void mark_inode_dirty_sync(struct inode *inode)
...[    1757]: {
...[    1758]: __mark_inode_dirty(inode, (1 << 0));
...[    1759]: }
...[    1761]: extern void inc_nlink(struct inode *inode);
...[    1762]: extern void drop_nlink(struct inode *inode);
...[    1763]: extern void clear_nlink(struct inode *inode);
...[    1764]: extern void set_nlink(struct inode *inode, unsigned int nlink);
...[    1766]: static inline __attribute__((no_instrument_function)) void inode_inc_link_count(struct inode *inode)
...[    1767]: {
...[    1768]: inc_nlink(inode);
...[    1769]: mark_inode_dirty(inode);
...[    1770]: }
...[    1772]: static inline __attribute__((no_instrument_function)) void inode_dec_link_count(struct inode *inode)
...[    1773]: {
...[    1774]: drop_nlink(inode);
...[    1775]: mark_inode_dirty(inode);
...[    1776]: }
...[    1786]: static inline __attribute__((no_instrument_function)) void inode_inc_iversion(struct inode *inode)
...[    1787]: {
...[    1788]: spin_lock(&inode->i_lock);
...[    1789]: inode->i_version++;
...[    1790]: spin_unlock(&inode->i_lock);
...[    1791]: }
...[    1793]: enum file_time_flags {
...[    1794]: S_ATIME = 1,
...[    1795]: S_MTIME = 2,
...[    1796]: S_CTIME = 4,
...[    1797]: S_VERSION = 8,
...[    1798]: };
...[    1800]: extern void touch_atime(const struct path *);
...[    1801]: static inline __attribute__((no_instrument_function)) void file_accessed(struct file *file)
...[    1802]: {
...[    1803]: if (!(file->f_flags & 01000000))
...[    1804]: touch_atime(&file->f_path);
...[    1805]: }
...[    1807]: int sync_inode(struct inode *inode, struct writeback_control *wbc);
...[    1808]: int sync_inode_metadata(struct inode *inode, int wait);
...[    1810]: struct file_system_type {
...[    1811]: const char *name;
...[    1812]: int fs_flags;
...[    1819]: struct dentry *(*mount) (struct file_system_type *, int,
...[    1820]: const char *, void *);
...[    1821]: void (*kill_sb) (struct super_block *);
...[    1822]: struct module *owner;
...[    1823]: struct file_system_type * next;
...[    1824]: struct hlist_head fs_supers;
...[    1826]: struct lock_class_key s_lock_key;
...[    1827]: struct lock_class_key s_umount_key;
...[    1828]: struct lock_class_key s_vfs_rename_key;
...[    1829]: struct lock_class_key s_writers_key[(SB_FREEZE_COMPLETE - 1)];
...[    1831]: struct lock_class_key i_lock_key;
...[    1832]: struct lock_class_key i_mutex_key;
...[    1833]: struct lock_class_key i_mutex_dir_key;
...[    1834]: };
...[    1838]: extern struct dentry *mount_ns(struct file_system_type *fs_type, int flags,
...[    1839]: void *data, int (*fill_super)(struct super_block *, void *, int));
...[    1840]: extern struct dentry *mount_bdev(struct file_system_type *fs_type,
...[    1841]: int flags, const char *dev_name, void *data,
...[    1842]: int (*fill_super)(struct super_block *, void *, int));
...[    1843]: extern struct dentry *mount_single(struct file_system_type *fs_type,
...[    1844]: int flags, void *data,
...[    1845]: int (*fill_super)(struct super_block *, void *, int));
...[    1846]: extern struct dentry *mount_nodev(struct file_system_type *fs_type,
...[    1847]: int flags, void *data,
...[    1848]: int (*fill_super)(struct super_block *, void *, int));
...[    1849]: extern struct dentry *mount_subtree(struct vfsmount *mnt, const char *path);
...[    1850]: void generic_shutdown_super(struct super_block *sb);
...[    1851]: void kill_block_super(struct super_block *sb);
...[    1852]: void kill_anon_super(struct super_block *sb);
...[    1853]: void kill_litter_super(struct super_block *sb);
...[    1854]: void deactivate_super(struct super_block *sb);
...[    1855]: void deactivate_locked_super(struct super_block *sb);
...[    1856]: int set_anon_super(struct super_block *s, void *data);
...[    1857]: int get_anon_bdev(dev_t *);
...[    1858]: void free_anon_bdev(dev_t);
...[    1859]: struct super_block *sget(struct file_system_type *type,
...[    1860]: int (*test)(struct super_block *,void *),
...[    1861]: int (*set)(struct super_block *,void *),
...[    1862]: int flags, void *data);
...[    1863]: extern struct dentry *mount_pseudo(struct file_system_type *, char *,
...[    1864]: const struct super_operations *ops,
...[    1865]: const struct dentry_operations *dops,
...[    1866]: unsigned long);
...[    1885]: extern int register_filesystem(struct file_system_type *);
...[    1886]: extern int unregister_filesystem(struct file_system_type *);
...[    1887]: extern struct vfsmount *kern_mount_data(struct file_system_type *, void *data);
...[    1889]: extern void kern_unmount(struct vfsmount *mnt);
...[    1890]: extern int may_umount_tree(struct vfsmount *);
...[    1891]: extern int may_umount(struct vfsmount *);
...[    1892]: extern long do_mount(const char *, const char *, const char *, unsigned long, void *);
...[    1893]: extern struct vfsmount *collect_mounts(struct path *);
...[    1894]: extern void drop_collected_mounts(struct vfsmount *);
...[    1895]: extern int iterate_mounts(int (*)(struct vfsmount *, void *), void *,
...[    1896]: struct vfsmount *);
...[    1897]: extern int vfs_statfs(struct path *, struct kstatfs *);
...[    1898]: extern int user_statfs(const char *, struct kstatfs *);
...[    1899]: extern int fd_statfs(int, struct kstatfs *);
...[    1900]: extern int vfs_ustat(dev_t, struct kstatfs *);
...[    1901]: extern int freeze_super(struct super_block *super);
...[    1902]: extern int thaw_super(struct super_block *super);
...[    1903]: extern bool our_mnt(struct vfsmount *mnt);
...[    1904]: extern bool fs_fully_visible(struct file_system_type *);
...[    1906]: extern int current_umask(void);
...[    1908]: extern void ihold(struct inode * inode);
...[    1909]: extern void iput(struct inode *);
...[    1912]: extern struct kobject *fs_kobj;
...[    1920]: extern int locks_mandatory_locked(struct inode *);
...[    1921]: extern int locks_mandatory_area(int, struct inode *, struct file *, loff_t, size_t);
...[    1928]: static inline __attribute__((no_instrument_function)) int __mandatory_lock(struct inode *ino)
...[    1929]: {
...[    1930]: return (ino->i_mode & (0002000 | 00010)) == 0002000;
...[    1931]: }
...[    1938]: static inline __attribute__((no_instrument_function)) int mandatory_lock(struct inode *ino)
...[    1939]: {
...[    1940]: return ((ino)->i_sb->s_flags & (64)) && __mandatory_lock(ino);
...[    1941]: }
...[    1943]: static inline __attribute__((no_instrument_function)) int locks_verify_locked(struct inode *inode)
...[    1944]: {
...[    1945]: if (mandatory_lock(inode))
...[    1946]: return locks_mandatory_locked(inode);
...[    1947]: return 0;
...[    1948]: }
...[    1950]: static inline __attribute__((no_instrument_function)) int locks_verify_truncate(struct inode *inode,
...[    1951]: struct file *filp,
...[    1952]: loff_t size)
...[    1953]: {
...[    1954]: if (inode->i_flock && mandatory_lock(inode))
...[    1955]: return locks_mandatory_area(
...[    1956]: 2, inode, filp,
...[    1957]: size < inode->i_size ? size : inode->i_size,
...[    1958]: (size < inode->i_size ? inode->i_size - size
...[    1959]: : size - inode->i_size)
...[    1960]: );
...[    1961]: return 0;
...[    1962]: }
...[    1964]: static inline __attribute__((no_instrument_function)) int break_lease(struct inode *inode, unsigned int mode)
...[    1965]: {
...[    1966]: if (inode->i_flock)
...[    1967]: return __break_lease(inode, mode, 32);
...[    1968]: return 0;
...[    1969]: }
...[    1971]: static inline __attribute__((no_instrument_function)) int break_deleg(struct inode *inode, unsigned int mode)
...[    1972]: {
...[    1973]: if (inode->i_flock)
...[    1974]: return __break_lease(inode, mode, 4);
...[    1975]: return 0;
...[    1976]: }
...[    1978]: static inline __attribute__((no_instrument_function)) int try_break_deleg(struct inode *inode, struct inode *\
...                *delegated_inode)
...[    1979]: {
...[    1980]: int ret;
...[    1982]: ret = break_deleg(inode, 00000001|00004000);
...[    1983]: if (ret == -11 && delegated_inode) {
...[    1984]: *delegated_inode = inode;
...[    1985]: ihold(inode);
...[    1986]: }
...[    1987]: return ret;
...[    1988]: }
...[    1990]: static inline __attribute__((no_instrument_function)) int break_deleg_wait(struct inode **delegated_inode)
...[    1991]: {
...[    1992]: int ret;
...[    1994]: ret = break_deleg(*delegated_inode, 00000001);
...[    1995]: iput(*delegated_inode);
...[    1996]: *delegated_inode = ((void *)0);
...[    1997]: return ret;
...[    1998]: }
...[    2058]: struct audit_names;
...[    2059]: struct filename {
...[    2060]: const char *name;
...[    2061]: const char *uptr;
...[    2062]: struct audit_names *aname;
...[    2063]: bool separate;
...[    2064]: };
...[    2066]: extern long vfs_truncate(struct path *, loff_t);
...[    2067]: extern int do_truncate(struct dentry *, loff_t start, unsigned int time_attrs,
...[    2068]: struct file *filp);
...[    2069]: extern int do_fallocate(struct file *file, int mode, loff_t offset,
...[    2070]: loff_t len);
...[    2071]: extern long do_sys_open(int dfd, const char *filename, int flags,
...[    2072]: umode_t mode);
...[    2073]: extern struct file *file_open_name(struct filename *, int, umode_t);
...[    2074]: extern struct file *filp_open(const char *, int, umode_t);
...[    2075]: extern struct file *file_open_root(struct dentry *, struct vfsmount *,
...[    2076]: const char *, int);
...[    2077]: extern struct file * dentry_open(const struct path *, int, const struct cred *);
...[    2078]: extern int filp_close(struct file *, fl_owner_t id);
...[    2080]: extern struct filename *getname(const char *);
...[    2082]: enum {
...[    2083]: FILE_CREATED = 1,
...[    2084]: FILE_OPENED = 2
...[    2085]: };
...[    2086]: extern int finish_open(struct file *file, struct dentry *dentry,
...[    2087]: int (*open)(struct inode *, struct file *),
...[    2088]: int *opened);
...[    2089]: extern int finish_no_open(struct file *file, struct dentry *dentry);
...[    2093]: extern int ioctl_preallocate(struct file *filp, void *argp);
...[    2096]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) vfs_caches_init_early\
...                (void);
...[    2097]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) vfs_caches_init\
...                (unsigned long);
...[    2099]: extern struct kmem_cache *names_cachep;
...[    2101]: extern void final_putname(struct filename *name);
...[    2108]: extern void putname(struct filename *name);
...[    2112]: extern int register_blkdev(unsigned int, const char *);
...[    2113]: extern void unregister_blkdev(unsigned int, const char *);
...[    2114]: extern struct block_device *bdget(dev_t);
...[    2115]: extern struct block_device *bdgrab(struct block_device *bdev);
...[    2116]: extern void bd_set_size(struct block_device *, loff_t size);
...[    2117]: extern void bd_forget(struct inode *inode);
...[    2118]: extern void bdput(struct block_device *);
...[    2119]: extern void invalidate_bdev(struct block_device *);
...[    2120]: extern void iterate_bdevs(void (*)(struct block_device *, void *), void *);
...[    2121]: extern int sync_blockdev(struct block_device *bdev);
...[    2122]: extern void kill_bdev(struct block_device *);
...[    2123]: extern struct super_block *freeze_bdev(struct block_device *);
...[    2124]: extern void emergency_thaw_all(void);
...[    2125]: extern int thaw_bdev(struct block_device *bdev, struct super_block *sb);
...[    2126]: extern int fsync_bdev(struct block_device *);
...[    2127]: extern int sb_is_blkdev_sb(struct super_block *sb);
...[    2153]: extern int sync_filesystem(struct super_block *);
...[    2154]: extern const struct file_operations def_blk_fops;
...[    2155]: extern const struct file_operations def_chr_fops;
...[    2156]: extern const struct file_operations bad_sock_fops;
...[    2158]: extern int ioctl_by_bdev(struct block_device *, unsigned, unsigned long);
...[    2159]: extern int blkdev_ioctl(struct block_device *, fmode_t, unsigned, unsigned long);
...[    2160]: extern long compat_blkdev_ioctl(struct file *, unsigned, unsigned long);
...[    2161]: extern int blkdev_get(struct block_device *bdev, fmode_t mode, void *holder);
...[    2162]: extern struct block_device *blkdev_get_by_path(const char *path, fmode_t mode,
...[    2163]: void *holder);
...[    2164]: extern struct block_device *blkdev_get_by_dev(dev_t dev, fmode_t mode,
...[    2165]: void *holder);
...[    2166]: extern void blkdev_put(struct block_device *bdev, fmode_t mode);
...[    2168]: extern int bd_link_disk_holder(struct block_device *bdev, struct gendisk *disk);
...[    2169]: extern void bd_unlink_disk_holder(struct block_device *bdev,
...[    2170]: struct gendisk *disk);
...[    2186]: extern int alloc_chrdev_region(dev_t *, unsigned, unsigned, const char *);
...[    2187]: extern int register_chrdev_region(dev_t, unsigned, const char *);
...[    2188]: extern int __register_chrdev(unsigned int major, unsigned int baseminor,
...[    2189]: unsigned int count, const char *name,
...[    2190]: const struct file_operations *fops);
...[    2191]: extern void __unregister_chrdev(unsigned int major, unsigned int baseminor,
...[    2192]: unsigned int count, const char *name);
...[    2193]: extern void unregister_chrdev_region(dev_t, unsigned);
...[    2194]: extern void chrdev_show(struct seq_file *,off_t);
...[    2196]: static inline __attribute__((no_instrument_function)) int register_chrdev(unsigned int major, const char *name\
...                ,
...[    2197]: const struct file_operations *fops)
...[    2198]: {
...[    2199]: return __register_chrdev(major, 0, 256, name, fops);
...[    2200]: }
...[    2202]: static inline __attribute__((no_instrument_function)) void unregister_chrdev(unsigned int major, const char *\
...                name)
...[    2203]: {
...[    2204]: __unregister_chrdev(major, 0, 256, name);
...[    2205]: }
...[    2213]: extern const char *__bdevname(dev_t, char *buffer);
...[    2214]: extern const char *bdevname(struct block_device *bdev, char *buffer);
...[    2215]: extern struct block_device *lookup_bdev(const char *);
...[    2216]: extern void blkdev_show(struct seq_file *,off_t);
...[    2222]: extern void init_special_inode(struct inode *, umode_t, dev_t);
...[    2225]: extern void make_bad_inode(struct inode *);
...[    2226]: extern int is_bad_inode(struct inode *);
...[    2239]: extern void check_disk_size_change(struct gendisk *disk,
...[    2240]: struct block_device *bdev);
...[    2241]: extern int revalidate_disk(struct gendisk *);
...[    2242]: extern int check_disk_change(struct block_device *);
...[    2243]: extern int __invalidate_device(struct block_device *, bool);
...[    2244]: extern int invalidate_partition(struct gendisk *, int);
...[    2246]: unsigned long invalidate_mapping_pages(struct address_space *mapping,
...[    2247]: unsigned long start, unsigned long end);
...[    2249]: static inline __attribute__((no_instrument_function)) void invalidate_remote_inode(struct inode *inode)
...[    2250]: {
...[    2251]: if ((((inode->i_mode) & 00170000) == 0100000) || (((inode->i_mode) & 00170000) == 0040000) ||
...[    2252]: (((inode->i_mode) & 00170000) == 0120000))
...[    2253]: invalidate_mapping_pages(inode->i_mapping, 0, -1);
...[    2254]: }
...[    2255]: extern int invalidate_inode_pages2(struct address_space *mapping);
...[    2256]: extern int invalidate_inode_pages2_range(struct address_space *mapping,
...[    2257]: unsigned long start, unsigned long end);
...[    2258]: extern int write_inode_now(struct inode *, int);
...[    2259]: extern int filemap_fdatawrite(struct address_space *);
...[    2260]: extern int filemap_flush(struct address_space *);
...[    2261]: extern int filemap_fdatawait(struct address_space *);
...[    2262]: extern int filemap_fdatawait_range(struct address_space *, loff_t lstart,
...[    2263]: loff_t lend);
...[    2264]: extern int filemap_write_and_wait(struct address_space *mapping);
...[    2265]: extern int filemap_write_and_wait_range(struct address_space *mapping,
...[    2266]: loff_t lstart, loff_t lend);
...[    2267]: extern int __filemap_fdatawrite_range(struct address_space *mapping,
...[    2268]: loff_t start, loff_t end, int sync_mode);
...[    2269]: extern int filemap_fdatawrite_range(struct address_space *mapping,
...[    2270]: loff_t start, loff_t end);
...[    2272]: extern int vfs_fsync_range(struct file *file, loff_t start, loff_t end,
...[    2273]: int datasync);
...[    2274]: extern int vfs_fsync(struct file *file, int datasync);
...[    2275]: extern int generic_write_sync(struct file *file, loff_t pos, loff_t count);
...[    2276]: extern void emergency_sync(void);
...[    2277]: extern void emergency_remount(void);
...[    2279]: extern sector_t bmap(struct inode *, sector_t);
...[    2281]: extern int notify_change(struct dentry *, struct iattr *, struct inode **);
...[    2282]: extern int inode_permission(struct inode *, int);
...[    2283]: extern int generic_permission(struct inode *, int);
...[    2285]: static inline __attribute__((no_instrument_function)) bool execute_ok(struct inode *inode)
...[    2286]: {
...[    2287]: return (inode->i_mode & (00100|00010|00001)) || (((inode->i_mode) & 00170000) == 0040000);
...[    2288]: }
...[    2290]: static inline __attribute__((no_instrument_function)) struct inode *file_inode(struct file *f)
...[    2291]: {
...[    2292]: return f->f_inode;
...[    2293]: }
...[    2295]: static inline __attribute__((no_instrument_function)) void file_start_write(struct file *file)
...[    2296]: {
...[    2297]: if (!(((file_inode(file)->i_mode) & 00170000) == 0100000))
...[    2298]: return;
...[    2299]: __sb_start_write(file_inode(file)->i_sb, SB_FREEZE_WRITE, true);
...[    2300]: }
...[    2302]: static inline __attribute__((no_instrument_function)) bool file_start_write_trylock(struct file *file)
...[    2303]: {
...[    2304]: if (!(((file_inode(file)->i_mode) & 00170000) == 0100000))
...[    2305]: return true;
...[    2306]: return __sb_start_write(file_inode(file)->i_sb, SB_FREEZE_WRITE, false);
...[    2307]: }
...[    2309]: static inline __attribute__((no_instrument_function)) void file_end_write(struct file *file)
...[    2310]: {
...[    2311]: if (!(((file_inode(file)->i_mode) & 00170000) == 0100000))
...[    2312]: return;
...[    2313]: __sb_end_write(file_inode(file)->i_sb, SB_FREEZE_WRITE);
...[    2314]: }
...[    2332]: static inline __attribute__((no_instrument_function)) int get_write_access(struct inode *inode)
...[    2333]: {
...[    2334]: return atomic_inc_unless_negative(&inode->i_writecount) ? 0 : -26;
...[    2335]: }
...[    2336]: static inline __attribute__((no_instrument_function)) int deny_write_access(struct file *file)
...[    2337]: {
...[    2338]: struct inode *inode = file_inode(file);
...[    2339]: return atomic_dec_unless_positive(&inode->i_writecount) ? 0 : -26;
...[    2340]: }
...[    2341]: static inline __attribute__((no_instrument_function)) void put_write_access(struct inode * inode)
...[    2342]: {
...[    2343]: atomic_dec(&inode->i_writecount);
...[    2344]: }
...[    2345]: static inline __attribute__((no_instrument_function)) void allow_write_access(struct file *file)
...[    2346]: {
...[    2347]: if (file)
...[    2348]: atomic_inc(&file_inode(file)->i_writecount);
...[    2349]: }
...[    2350]: static inline __attribute__((no_instrument_function)) bool inode_is_open_for_write(const struct inode *inode\
...                )
...[    2351]: {
...[    2352]: return atomic_read(&inode->i_writecount) > 0;
...[    2353]: }
...[    2356]: static inline __attribute__((no_instrument_function)) void i_readcount_dec(struct inode *inode)
...[    2357]: {
...[    2358]: do { if (__builtin_expect(!!(!atomic_read(&inode->i_readcount)), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" \
...                "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__\
...                ), "i" (sizeof(struct bug_entry))); do { } while (1); } while (0); } while(0);
...[    2359]: atomic_dec(&inode->i_readcount);
...[    2360]: }
...[    2361]: static inline __attribute__((no_instrument_function)) void i_readcount_inc(struct inode *inode)
...[    2362]: {
...[    2363]: atomic_inc(&inode->i_readcount);
...[    2364]: }
...[    2375]: extern int do_pipe_flags(int *, int);
...[    2377]: extern int kernel_read(struct file *, loff_t, char *, unsigned long);
...[    2378]: extern ssize_t kernel_write(struct file *, const char *, size_t, loff_t);
...[    2379]: extern struct file * open_exec(const char *);
...[    2382]: extern int is_subdir(struct dentry *, struct dentry *);
...[    2383]: extern int path_is_under(struct path *, struct path *);
...[    2388]: extern loff_t default_llseek(struct file *file, loff_t offset, int whence);
...[    2390]: extern loff_t vfs_llseek(struct file *file, loff_t offset, int whence);
...[    2392]: extern int inode_init_always(struct super_block *, struct inode *);
...[    2393]: extern void inode_init_once(struct inode *);
...[    2394]: extern void address_space_init_once(struct address_space *mapping);
...[    2395]: extern struct inode * igrab(struct inode *);
...[    2396]: extern ino_t iunique(struct super_block *, ino_t);
...[    2397]: extern int inode_needs_sync(struct inode *inode);
...[    2398]: extern int generic_delete_inode(struct inode *inode);
...[    2399]: static inline __attribute__((no_instrument_function)) int generic_drop_inode(struct inode *inode)
...[    2400]: {
...[    2401]: return !inode->i_nlink || inode_unhashed(inode);
...[    2402]: }
...[    2404]: extern struct inode *ilookup5_nowait(struct super_block *sb,
...[    2405]: unsigned long hashval, int (*test)(struct inode *, void *),
...[    2406]: void *data);
...[    2407]: extern struct inode *ilookup5(struct super_block *sb, unsigned long hashval,
...[    2408]: int (*test)(struct inode *, void *), void *data);
...[    2409]: extern struct inode *ilookup(struct super_block *sb, unsigned long ino);
...[    2411]: extern struct inode * iget5_locked(struct super_block *, unsigned long, int (*test)(struct inode *, void *), int (*set\
...                )(struct inode *, void *), void *);
...[    2412]: extern struct inode * iget_locked(struct super_block *, unsigned long);
...[    2413]: extern int insert_inode_locked4(struct inode *, unsigned long, int (*test)(struct inode *, void *), void *);
...[    2414]: extern int insert_inode_locked(struct inode *);
...[    2418]: static inline __attribute__((no_instrument_function)) void lockdep_annotate_inode_mutex_key(struct inode *\
...                inode) { };
...[    2420]: extern void unlock_new_inode(struct inode *);
...[    2421]: extern unsigned int get_next_ino(void);
...[    2423]: extern void __iget(struct inode * inode);
...[    2424]: extern void iget_failed(struct inode *);
...[    2425]: extern void clear_inode(struct inode *);
...[    2426]: extern void __destroy_inode(struct inode *);
...[    2427]: extern struct inode *new_inode_pseudo(struct super_block *sb);
...[    2428]: extern struct inode *new_inode(struct super_block *sb);
...[    2429]: extern void free_inode_nonrcu(struct inode *inode);
...[    2430]: extern int should_remove_suid(struct dentry *);
...[    2431]: extern int file_remove_suid(struct file *);
...[    2433]: extern void __insert_inode_hash(struct inode *, unsigned long hashval);
...[    2434]: static inline __attribute__((no_instrument_function)) void insert_inode_hash(struct inode *inode)
...[    2435]: {
...[    2436]: __insert_inode_hash(inode, inode->i_ino);
...[    2437]: }
...[    2439]: extern void __remove_inode_hash(struct inode *);
...[    2440]: static inline __attribute__((no_instrument_function)) void remove_inode_hash(struct inode *inode)
...[    2441]: {
...[    2442]: if (!inode_unhashed(inode))
...[    2443]: __remove_inode_hash(inode);
...[    2444]: }
...[    2446]: extern void inode_sb_list_add(struct inode *inode);
...[    2449]: extern void submit_bio(int, struct bio *);
...[    2450]: extern int bdev_read_only(struct block_device *);
...[    2452]: extern int set_blocksize(struct block_device *, int);
...[    2453]: extern int sb_set_blocksize(struct super_block *, int);
...[    2454]: extern int sb_min_blocksize(struct super_block *, int);
...[    2456]: extern int generic_file_mmap(struct file *, struct vm_area_struct *);
...[    2457]: extern int generic_file_readonly_mmap(struct file *, struct vm_area_struct *);
...[    2458]: extern int generic_file_remap_pages(struct vm_area_struct *, unsigned long addr,
...[    2459]: unsigned long size, unsigned long pgoff);
...[    2460]: extern int file_read_actor(read_descriptor_t * desc, struct page *page, unsigned long offset, unsigned long size)\
...                ;
...[    2461]: int generic_write_checks(struct file *file, loff_t *pos, size_t *count, int isblk);
...[    2462]: extern ssize_t generic_file_aio_read(struct kiocb *, const struct iovec *, unsigned long, loff_t);
...[    2463]: extern ssize_t __generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long,
...[    2464]: loff_t *);
...[    2465]: extern ssize_t generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long, loff_t);
...[    2466]: extern ssize_t generic_file_direct_write(struct kiocb *, const struct iovec *,
...[    2467]: unsigned long *, loff_t, loff_t *, size_t, size_t);
...[    2468]: extern ssize_t generic_file_buffered_write(struct kiocb *, const struct iovec *,
...[    2469]: unsigned long, loff_t, loff_t *, size_t, ssize_t);
...[    2470]: extern ssize_t do_sync_read(struct file *filp, char *buf, size_t len, loff_t *ppos);
...[    2471]: extern ssize_t do_sync_write(struct file *filp, const char *buf, size_t len, loff_t *ppos);
...[    2472]: extern int generic_segment_checks(const struct iovec *iov,
...[    2473]: unsigned long *nr_segs, size_t *count, int access_flags);
...[    2476]: extern ssize_t blkdev_aio_write(struct kiocb *iocb, const struct iovec *iov,
...[    2477]: unsigned long nr_segs, loff_t pos);
...[    2478]: extern int blkdev_fsync(struct file *filp, loff_t start, loff_t end,
...[    2479]: int datasync);
...[    2480]: extern void block_sync_page(struct page *page);
...[    2483]: extern ssize_t generic_file_splice_read(struct file *, loff_t *,
...[    2484]: struct pipe_inode_info *, size_t, unsigned int);
...[    2485]: extern ssize_t default_file_splice_read(struct file *, loff_t *,
...[    2486]: struct pipe_inode_info *, size_t, unsigned int);
...[    2487]: extern ssize_t generic_file_splice_write(struct pipe_inode_info *,
...[    2488]: struct file *, loff_t *, size_t, unsigned int);
...[    2489]: extern ssize_t generic_splice_sendpage(struct pipe_inode_info *pipe,
...[    2490]: struct file *out, loff_t *, size_t len, unsigned int flags);
...[    2492]: extern void
...[    2493]: file_ra_state_init(struct file_ra_state *ra, struct address_space *mapping);
...[    2494]: extern loff_t noop_llseek(struct file *file, loff_t offset, int whence);
...[    2495]: extern loff_t no_llseek(struct file *file, loff_t offset, int whence);
...[    2496]: extern loff_t vfs_setpos(struct file *file, loff_t offset, loff_t maxsize);
...[    2497]: extern loff_t generic_file_llseek(struct file *file, loff_t offset, int whence);
...[    2498]: extern loff_t generic_file_llseek_size(struct file *file, loff_t offset,
...[    2499]: int whence, loff_t maxsize, loff_t eof);
...[    2500]: extern loff_t fixed_size_llseek(struct file *file, loff_t offset,
...[    2501]: int whence, loff_t size);
...[    2502]: extern int generic_file_open(struct inode * inode, struct file * filp);
...[    2503]: extern int nonseekable_open(struct inode * inode, struct file * filp);
...[    2513]: static inline __attribute__((no_instrument_function)) int xip_truncate_page(struct address_space *mapping, \
...                loff_t from)
...[    2514]: {
...[    2515]: return 0;
...[    2516]: }
...[    2520]: typedef void (dio_submit_t)(int rw, struct bio *bio, struct inode *inode,
...[    2521]: loff_t file_offset);
...[    2523]: enum {
...[    2525]: DIO_LOCKING = 0x01,
...[    2528]: DIO_SKIP_HOLES = 0x02,
...[    2529]: };
...[    2531]: void dio_end_io(struct bio *bio, int error);
...[    2533]: ssize_t __blockdev_direct_IO(int rw, struct kiocb *iocb, struct inode *inode,
...[    2534]: struct block_device *bdev, const struct iovec *iov, loff_t offset,
...[    2535]: unsigned long nr_segs, get_block_t get_block, dio_iodone_t end_io,
...[    2536]: dio_submit_t submit_io, int flags);
...[    2538]: static inline __attribute__((no_instrument_function)) ssize_t blockdev_direct_IO(int rw, struct kiocb *iocb,
...[    2539]: struct inode *inode, const struct iovec *iov, loff_t offset,
...[    2540]: unsigned long nr_segs, get_block_t get_block)
...[    2541]: {
...[    2542]: return __blockdev_direct_IO(rw, iocb, inode, inode->i_sb->s_bdev, iov,
...[    2543]: offset, nr_segs, get_block, ((void *)0), ((void *)0),
...[    2544]: DIO_LOCKING | DIO_SKIP_HOLES);
...[    2545]: }
...[    2548]: void inode_dio_wait(struct inode *inode);
...[    2549]: void inode_dio_done(struct inode *inode);
...[    2551]: extern const struct file_operations generic_ro_fops;
...[    2555]: extern int vfs_readlink(struct dentry *, char *, int, const char *);
...[    2556]: extern int page_readlink(struct dentry *, char *, int);
...[    2557]: extern void *page_follow_link_light(struct dentry *, struct nameidata *);
...[    2558]: extern void page_put_link(struct dentry *, struct nameidata *, void *);
...[    2559]: extern int __page_symlink(struct inode *inode, const char *symname, int len,
...[    2560]: int nofs);
...[    2561]: extern int page_symlink(struct inode *inode, const char *symname, int len);
...[    2562]: extern const struct inode_operations page_symlink_inode_operations;
...[    2563]: extern void kfree_put_link(struct dentry *, struct nameidata *, void *);
...[    2564]: extern int generic_readlink(struct dentry *, char *, int);
...[    2565]: extern void generic_fillattr(struct inode *, struct kstat *);
...[    2566]: int vfs_getattr_nosec(struct path *path, struct kstat *stat);
...[    2567]: extern int vfs_getattr(struct path *, struct kstat *);
...[    2568]: void __inode_add_bytes(struct inode *inode, loff_t bytes);
...[    2569]: void inode_add_bytes(struct inode *inode, loff_t bytes);
...[    2570]: void __inode_sub_bytes(struct inode *inode, loff_t bytes);
...[    2571]: void inode_sub_bytes(struct inode *inode, loff_t bytes);
...[    2572]: loff_t inode_get_bytes(struct inode *inode);
...[    2573]: void inode_set_bytes(struct inode *inode, loff_t bytes);
...[    2575]: extern int vfs_readdir(struct file *, filldir_t, void *);
...[    2576]: extern int iterate_dir(struct file *, struct dir_context *);
...[    2578]: extern int vfs_stat(const char *, struct kstat *);
...[    2579]: extern int vfs_lstat(const char *, struct kstat *);
...[    2580]: extern int vfs_fstat(unsigned int, struct kstat *);
...[    2581]: extern int vfs_fstatat(int , const char *, struct kstat *, int);
...[    2583]: extern int do_vfs_ioctl(struct file *filp, unsigned int fd, unsigned int cmd,
...[    2584]: unsigned long arg);
...[    2585]: extern int __generic_block_fiemap(struct inode *inode,
...[    2586]: struct fiemap_extent_info *fieinfo,
...[    2587]: loff_t start, loff_t len,
...[    2588]: get_block_t *get_block);
...[    2589]: extern int generic_block_fiemap(struct inode *inode,
...[    2590]: struct fiemap_extent_info *fieinfo, u64 start,
...[    2591]: u64 len, get_block_t *get_block);
...[    2593]: extern void get_filesystem(struct file_system_type *fs);
...[    2594]: extern void put_filesystem(struct file_system_type *fs);
...[    2595]: extern struct file_system_type *get_fs_type(const char *name);
...[    2596]: extern struct super_block *get_super(struct block_device *);
...[    2597]: extern struct super_block *get_super_thawed(struct block_device *);
...[    2598]: extern struct super_block *get_active_super(struct block_device *bdev);
...[    2599]: extern void drop_super(struct super_block *sb);
...[    2600]: extern void iterate_supers(void (*)(struct super_block *, void *), void *);
...[    2601]: extern void iterate_supers_type(struct file_system_type *,
...[    2602]: void (*)(struct super_block *, void *), void *);
...[    2604]: extern int dcache_dir_open(struct inode *, struct file *);
...[    2605]: extern int dcache_dir_close(struct inode *, struct file *);
...[    2606]: extern loff_t dcache_dir_lseek(struct file *, loff_t, int);
...[    2607]: extern int dcache_readdir(struct file *, struct dir_context *);
...[    2608]: extern int simple_setattr(struct dentry *, struct iattr *);
...[    2609]: extern int simple_getattr(struct vfsmount *, struct dentry *, struct kstat *);
...[    2610]: extern int simple_statfs(struct dentry *, struct kstatfs *);
...[    2611]: extern int simple_open(struct inode *inode, struct file *file);
...[    2612]: extern int simple_link(struct dentry *, struct inode *, struct dentry *);
...[    2613]: extern int simple_unlink(struct inode *, struct dentry *);
...[    2614]: extern int simple_rmdir(struct inode *, struct dentry *);
...[    2615]: extern int simple_rename(struct inode *, struct dentry *, struct inode *, struct dentry *);
...[    2616]: extern int noop_fsync(struct file *, loff_t, loff_t, int);
...[    2617]: extern int simple_empty(struct dentry *);
...[    2618]: extern int simple_readpage(struct file *file, struct page *page);
...[    2619]: extern int simple_write_begin(struct file *file, struct address_space *mapping,
...[    2620]: loff_t pos, unsigned len, unsigned flags,
...[    2621]: struct page **pagep, void **fsdata);
...[    2622]: extern int simple_write_end(struct file *file, struct address_space *mapping,
...[    2623]: loff_t pos, unsigned len, unsigned copied,
...[    2624]: struct page *page, void *fsdata);
...[    2625]: extern int always_delete_dentry(const struct dentry *);
...[    2626]: extern struct inode *alloc_anon_inode(struct super_block *);
...[    2627]: extern const struct dentry_operations simple_dentry_operations;
...[    2629]: extern struct dentry *simple_lookup(struct inode *, struct dentry *, unsigned int flags);
...[    2630]: extern ssize_t generic_read_dir(struct file *, char *, size_t, loff_t *);
...[    2631]: extern const struct file_operations simple_dir_operations;
...[    2632]: extern const struct inode_operations simple_dir_inode_operations;
...[    2633]: struct tree_descr { char *name; const struct file_operations *ops; int mode; };
...[    2634]: struct dentry *d_alloc_name(struct dentry *, const char *);
...[    2635]: extern int simple_fill_super(struct super_block *, unsigned long, struct tree_descr *);
...[    2636]: extern int simple_pin_fs(struct file_system_type *, struct vfsmount **mount, int *count);
...[    2637]: extern void simple_release_fs(struct vfsmount **mount, int *count);
...[    2639]: extern ssize_t simple_read_from_buffer(void *to, size_t count,
...[    2640]: loff_t *ppos, const void *from, size_t available);
...[    2641]: extern ssize_t simple_write_to_buffer(void *to, size_t available, loff_t *ppos,
...[    2642]: const void *from, size_t count);
...[    2644]: extern int generic_file_fsync(struct file *, loff_t, loff_t, int);
...[    2646]: extern int generic_check_addressable(unsigned, u64);
...[    2649]: extern int buffer_migrate_page(struct address_space *,
...[    2650]: struct page *, struct page *,
...[    2651]: enum migrate_mode);
...[    2656]: extern int inode_change_ok(const struct inode *, struct iattr *);
...[    2657]: extern int inode_newsize_ok(const struct inode *, loff_t offset);
...[    2658]: extern void setattr_copy(struct inode *inode, const struct iattr *attr);
...[    2660]: extern int file_update_time(struct file *file);
...[    2662]: extern int generic_show_options(struct seq_file *m, struct dentry *root);
...[    2663]: extern void save_mount_options(struct super_block *sb, char *options);
...[    2664]: extern void replace_mount_options(struct super_block *sb, char *options);
...[    2666]: static inline __attribute__((no_instrument_function)) ino_t parent_ino(struct dentry *dentry)
...[    2667]: {
...[    2668]: ino_t res;
...[    2674]: spin_lock(&dentry->d_lockref.lock);
...[    2675]: res = dentry->d_parent->d_inode->i_ino;
...[    2676]: spin_unlock(&dentry->d_lockref.lock);
...[    2677]: return res;
...[    2678]: }
...[    2686]: struct simple_transaction_argresp {
...[    2687]: ssize_t size;
...[    2688]: char data[0];
...[    2689]: };
...[    2693]: char *simple_transaction_get(struct file *file, const char *buf,
...[    2694]: size_t size);
...[    2695]: ssize_t simple_transaction_read(struct file *file, char *buf,
...[    2696]: size_t size, loff_t *pos);
...[    2697]: int simple_transaction_release(struct inode *inode, struct file *file);
...[    2699]: void simple_transaction_set(struct file *file, size_t n);
...[    2732]: static inline __attribute__((no_instrument_function)) __attribute__((format(printf, 1, 2)))
...[    2733]: void __simple_attr_check_format(const char *fmt, ...)
...[    2734]: {
...[    2736]: }
...[    2738]: int simple_attr_open(struct inode *inode, struct file *file,
...[    2739]: int (*get)(void *, u64 *), int (*set)(void *, u64),
...[    2740]: const char *fmt);
...[    2741]: int simple_attr_release(struct inode *inode, struct file *file);
...[    2742]: ssize_t simple_attr_read(struct file *file, char *buf,
...[    2743]: size_t len, loff_t *ppos);
...[    2744]: ssize_t simple_attr_write(struct file *file, const char *buf,
...[    2745]: size_t len, loff_t *ppos);
...[    2747]: struct ctl_table;
...[    2748]: int proc_nr_files(struct ctl_table *table, int write,
...[    2749]: void *buffer, size_t *lenp, loff_t *ppos);
...[    2750]: int proc_nr_dentry(struct ctl_table *table, int write,
...[    2751]: void *buffer, size_t *lenp, loff_t *ppos);
...[    2752]: int proc_nr_inodes(struct ctl_table *table, int write,
...[    2753]: void *buffer, size_t *lenp, loff_t *ppos);
...[    2754]: int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) get_filesystem_list\
...                (char *buf);
...[    2763]: static inline __attribute__((no_instrument_function)) int is_sxid(umode_t mode)
...[    2764]: {
...[    2765]: return (mode & 0004000) || ((mode & 0002000) && (mode & 00010));
...[    2766]: }
...[    2768]: static inline __attribute__((no_instrument_function)) void inode_has_no_xattr(struct inode *inode)
...[    2769]: {
...[    2770]: if (!is_sxid(inode->i_mode) && (inode->i_sb->s_flags & (1<<28)))
...[    2771]: inode->i_flags |= 4096;
...[    2772]: }
...[    2774]: static inline __attribute__((no_instrument_function)) bool dir_emit(struct dir_context *ctx,
...[    2775]: const char *name, int namelen,
...[    2776]: u64 ino, unsigned type)
...[    2777]: {
...[    2778]: return ctx->actor(ctx, name, namelen, ctx->pos, ino, type) == 0;
...[    2779]: }
...[    2780]: static inline __attribute__((no_instrument_function)) bool dir_emit_dot(struct file *file, struct dir_context \
...                *ctx)
...[    2781]: {
...[    2782]: return ctx->actor(ctx, ".", 1, ctx->pos,
...[    2783]: file->f_path.dentry->d_inode->i_ino, 4) == 0;
...[    2784]: }
...[    2785]: static inline __attribute__((no_instrument_function)) bool dir_emit_dotdot(struct file *file, struct dir_context \
...                *ctx)
...[    2786]: {
...[    2787]: return ctx->actor(ctx, "..", 2, ctx->pos,
...[    2788]: parent_ino(file->f_path.dentry), 4) == 0;
...[    2789]: }
...[    2790]: static inline __attribute__((no_instrument_function)) bool dir_emit_dots(struct file *file, struct dir_context \
...                *ctx)
...[    2791]: {
...[    2792]: if (ctx->pos == 0) {
...[    2793]: if (!dir_emit_dot(file, ctx))
...[    2794]: return false;
...[    2795]: ctx->pos = 1;
...[    2796]: }
...[    2797]: if (ctx->pos == 1) {
...[    2798]: if (!dir_emit_dotdot(file, ctx))
...[    2799]: return false;
...[    2800]: ctx->pos = 2;
...[    2801]: }
...[    2802]: return true;
...[    2803]: }
...[    2804]: static inline __attribute__((no_instrument_function)) bool dir_relax(struct inode *inode)
...[    2805]: {
...[    2806]: mutex_unlock(&inode->i_mutex);
...[    2807]: mutex_lock(&inode->i_mutex);
...[    2808]: return !((inode)->i_flags & 16);
...[    2809]: }
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/fs.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proc_fs.h
..[      10]: struct proc_dir_entry;
..[      14]: extern void proc_root_init(void);
..[      15]: extern void proc_flush_task(struct task_struct *);
..[      17]: extern struct proc_dir_entry *proc_symlink(const char *,
..[      18]: struct proc_dir_entry *, const char *);
..[      19]: extern struct proc_dir_entry *proc_mkdir(const char *, struct proc_dir_entry *);
..[      20]: extern struct proc_dir_entry *proc_mkdir_data(const char *, umode_t,
..[      21]: struct proc_dir_entry *, void *);
..[      22]: extern struct proc_dir_entry *proc_mkdir_mode(const char *, umode_t,
..[      23]: struct proc_dir_entry *);
..[      25]: extern struct proc_dir_entry *proc_create_data(const char *, umode_t,
..[      26]: struct proc_dir_entry *,
..[      27]: const struct file_operations *,
..[      28]: void *);
..[      30]: static inline __attribute__((no_instrument_function)) struct proc_dir_entry *proc_create(
..[      31]: const char *name, umode_t mode, struct proc_dir_entry *parent,
..[      32]: const struct file_operations *proc_fops)
..[      33]: {
..[      34]: return proc_create_data(name, mode, parent, proc_fops, ((void *)0));
..[      35]: }
..[      37]: extern void proc_set_size(struct proc_dir_entry *, loff_t);
..[      38]: extern void proc_set_user(struct proc_dir_entry *, kuid_t, kgid_t);
..[      39]: extern void *PDE_DATA(const struct inode *);
..[      40]: extern void *proc_get_parent_data(const struct inode *);
..[      41]: extern void proc_remove(struct proc_dir_entry *);
..[      42]: extern void remove_proc_entry(const char *, struct proc_dir_entry *);
..[      43]: extern int remove_proc_subtree(const char *, struct proc_dir_entry *);
..[      73]: static inline __attribute__((no_instrument_function)) struct proc_dir_entry *proc_net_mkdir(
..[      74]: struct net *net, const char *name, struct proc_dir_entry *parent)
..[      75]: {
..[      76]: return proc_mkdir_data(name, 0, parent, net);
..[      77]: }
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proc_fs.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/notifier.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/notifier.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/srcu.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/srcu.h
...[      36]: struct srcu_struct_array {
...[      37]: unsigned long c[2];
...[      38]: unsigned long seq[2];
...[      39]: };
...[      41]: struct rcu_batch {
...[      42]: struct callback_head *head, **tail;
...[      43]: };
...[      47]: struct srcu_struct {
...[      48]: unsigned completed;
...[      49]: struct srcu_struct_array *per_cpu_ref;
...[      50]: spinlock_t queue_lock;
...[      51]: bool running;
...[      53]: struct rcu_batch batch_queue;
...[      55]: struct rcu_batch batch_check0;
...[      57]: struct rcu_batch batch_check1;
...[      58]: struct rcu_batch batch_done;
...[      59]: struct delayed_work work;
...[      63]: };
...[      80]: int init_srcu_struct(struct srcu_struct *sp);
...[      85]: void process_srcu(struct work_struct *work);
...[     130]: void call_srcu(struct srcu_struct *sp, struct callback_head *head,
...[     131]: void (*func)(struct callback_head *head));
...[     133]: void cleanup_srcu_struct(struct srcu_struct *sp);
...[     134]: int __srcu_read_lock(struct srcu_struct *sp) ;
...[     135]: void __srcu_read_unlock(struct srcu_struct *sp, int idx) ;
...[     136]: void synchronize_srcu(struct srcu_struct *sp);
...[     137]: void synchronize_srcu_expedited(struct srcu_struct *sp);
...[     138]: long srcu_batches_completed(struct srcu_struct *sp);
...[     139]: void srcu_barrier(struct srcu_struct *sp);
...[     167]: static inline __attribute__((no_instrument_function)) int srcu_read_lock_held(struct srcu_struct *sp)
...[     168]: {
...[     169]: return 1;
...[     170]: }
...[     218]: static inline __attribute__((no_instrument_function)) int srcu_read_lock(struct srcu_struct *sp)
...[     219]: {
...[     220]: int retval = __srcu_read_lock(sp);
...[     222]: do { } while (0);
...[     223]: return retval;
...[     224]: }
...[     233]: static inline __attribute__((no_instrument_function)) void srcu_read_unlock(struct srcu_struct *sp, int idx)
...[     235]: {
...[     236]: do { } while (0);
...[     237]: __srcu_read_unlock(sp, idx);
...[     238]: }
...[     249]: static inline __attribute__((no_instrument_function)) void smp_mb__after_srcu_read_unlock(void)
...[     250]: {
...[     252]: }
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/srcu.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/notifier.h
..[      50]: typedef int (*notifier_fn_t)(struct notifier_block *nb,
..[      51]: unsigned long action, void *data);
..[      53]: struct notifier_block {
..[      54]: notifier_fn_t notifier_call;
..[      55]: struct notifier_block *next;
..[      56]: int priority;
..[      57]: };
..[      59]: struct atomic_notifier_head {
..[      60]: spinlock_t lock;
..[      61]: struct notifier_block *head;
..[      62]: };
..[      64]: struct blocking_notifier_head {
..[      65]: struct rw_semaphore rwsem;
..[      66]: struct notifier_block *head;
..[      67]: };
..[      69]: struct raw_notifier_head {
..[      70]: struct notifier_block *head;
..[      71]: };
..[      73]: struct srcu_notifier_head {
..[      74]: struct mutex mutex;
..[      75]: struct srcu_struct srcu;
..[      76]: struct notifier_block *head;
..[      77]: };
..[      92]: extern void srcu_init_notifier_head(struct srcu_notifier_head *nh);
..[     118]: extern int atomic_notifier_chain_register(struct atomic_notifier_head *nh,
..[     119]: struct notifier_block *nb);
..[     120]: extern int blocking_notifier_chain_register(struct blocking_notifier_head *nh,
..[     121]: struct notifier_block *nb);
..[     122]: extern int raw_notifier_chain_register(struct raw_notifier_head *nh,
..[     123]: struct notifier_block *nb);
..[     124]: extern int srcu_notifier_chain_register(struct srcu_notifier_head *nh,
..[     125]: struct notifier_block *nb);
..[     127]: extern int blocking_notifier_chain_cond_register(
..[     128]: struct blocking_notifier_head *nh,
..[     129]: struct notifier_block *nb);
..[     131]: extern int atomic_notifier_chain_unregister(struct atomic_notifier_head *nh,
..[     132]: struct notifier_block *nb);
..[     133]: extern int blocking_notifier_chain_unregister(struct blocking_notifier_head *nh,
..[     134]: struct notifier_block *nb);
..[     135]: extern int raw_notifier_chain_unregister(struct raw_notifier_head *nh,
..[     136]: struct notifier_block *nb);
..[     137]: extern int srcu_notifier_chain_unregister(struct srcu_notifier_head *nh,
..[     138]: struct notifier_block *nb);
..[     140]: extern int atomic_notifier_call_chain(struct atomic_notifier_head *nh,
..[     141]: unsigned long val, void *v);
..[     142]: extern int __atomic_notifier_call_chain(struct atomic_notifier_head *nh,
..[     143]: unsigned long val, void *v, int nr_to_call, int *nr_calls);
..[     144]: extern int blocking_notifier_call_chain(struct blocking_notifier_head *nh,
..[     145]: unsigned long val, void *v);
..[     146]: extern int __blocking_notifier_call_chain(struct blocking_notifier_head *nh,
..[     147]: unsigned long val, void *v, int nr_to_call, int *nr_calls);
..[     148]: extern int raw_notifier_call_chain(struct raw_notifier_head *nh,
..[     149]: unsigned long val, void *v);
..[     150]: extern int __raw_notifier_call_chain(struct raw_notifier_head *nh,
..[     151]: unsigned long val, void *v, int nr_to_call, int *nr_calls);
..[     152]: extern int srcu_notifier_call_chain(struct srcu_notifier_head *nh,
..[     153]: unsigned long val, void *v);
..[     154]: extern int __srcu_notifier_call_chain(struct srcu_notifier_head *nh,
..[     155]: unsigned long val, void *v, int nr_to_call, int *nr_calls);
..[     168]: static inline __attribute__((no_instrument_function)) int notifier_from_errno(int err)
..[     169]: {
..[     170]: if (err)
..[     171]: return 0x8000 | (0x0001 - err);
..[     173]: return 0x0001;
..[     174]: }
..[     177]: static inline __attribute__((no_instrument_function)) int notifier_to_errno(int ret)
..[     178]: {
..[     179]: ret &= ~0x8000;
..[     180]: return ret > 0x0001 ? 0x0001 - ret : 0;
..[     181]: }
..[     212]: extern struct blocking_notifier_head reboot_notifier_list;
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/notifier.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..[       7]: struct sched_param {
..[       8]: int sched_priority;
..[       9]: };
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm_types.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm_types.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/page-debug-flags.h
....[      14]: enum page_debug_flags {
....[      15]: PAGE_DEBUG_FLAG_POISON,
....[      16]: PAGE_DEBUG_FLAG_GUARD,
....[      17]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/page-debug-flags.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm_types.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uprobes.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uprobes.h
....[      30]: struct vm_area_struct;
....[      31]: struct mm_struct;
....[      32]: struct inode;
....[      33]: struct notifier_block;
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uprobes.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uprobes.h
.....[      28]: typedef u8 uprobe_opcode_t;
.....[      36]: struct arch_uprobe {
.....[      37]: u16 fixups;
.....[      38]: union {
.....[      39]: u8 insn[16];
.....[      40]: u8 ixol[16];
.....[      41]: };
.....[      43]: unsigned long rip_rela_target_address;
.....[      45]: };
.....[      47]: struct arch_uprobe_task {
.....[      49]: unsigned long saved_scratch_register;
.....[      51]: unsigned int saved_trap_nr;
.....[      52]: unsigned int saved_tf;
.....[      53]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uprobes.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uprobes.h
....[      44]: enum uprobe_filter_ctx {
....[      45]: UPROBE_FILTER_REGISTER,
....[      46]: UPROBE_FILTER_UNREGISTER,
....[      47]: UPROBE_FILTER_MMAP,
....[      48]: };
....[      50]: struct uprobe_consumer {
....[      51]: int (*handler)(struct uprobe_consumer *self, struct pt_regs *regs);
....[      52]: int (*ret_handler)(struct uprobe_consumer *self,
....[      53]: unsigned long func,
....[      54]: struct pt_regs *regs);
....[      55]: bool (*filter)(struct uprobe_consumer *self,
....[      56]: enum uprobe_filter_ctx ctx,
....[      57]: struct mm_struct *mm);
....[      59]: struct uprobe_consumer *next;
....[      60]: };
....[     138]: struct uprobes_state {
....[     139]: };
....[     140]: static inline __attribute__((no_instrument_function)) int
....[     141]: uprobe_register(struct inode *inode, loff_t offset, struct uprobe_consumer *uc)
....[     142]: {
....[     143]: return -38;
....[     144]: }
....[     145]: static inline __attribute__((no_instrument_function)) int
....[     146]: uprobe_apply(struct inode *inode, loff_t offset, struct uprobe_consumer *uc, bool add)
....[     147]: {
....[     148]: return -38;
....[     149]: }
....[     150]: static inline __attribute__((no_instrument_function)) void
....[     151]: uprobe_unregister(struct inode *inode, loff_t offset, struct uprobe_consumer *uc)
....[     152]: {
....[     153]: }
....[     154]: static inline __attribute__((no_instrument_function)) int uprobe_mmap(struct vm_area_struct *vma)
....[     155]: {
....[     156]: return 0;
....[     157]: }
....[     158]: static inline __attribute__((no_instrument_function)) void
....[     159]: uprobe_munmap(struct vm_area_struct *vma, unsigned long start, unsigned long end)
....[     160]: {
....[     161]: }
....[     162]: static inline __attribute__((no_instrument_function)) void uprobe_start_dup_mmap(void)
....[     163]: {
....[     164]: }
....[     165]: static inline __attribute__((no_instrument_function)) void uprobe_end_dup_mmap(void)
....[     166]: {
....[     167]: }
....[     168]: static inline __attribute__((no_instrument_function)) void
....[     169]: uprobe_dup_mmap(struct mm_struct *oldmm, struct mm_struct *newmm)
....[     170]: {
....[     171]: }
....[     172]: static inline __attribute__((no_instrument_function)) void uprobe_notify_resume(struct pt_regs *regs)
....[     173]: {
....[     174]: }
....[     175]: static inline __attribute__((no_instrument_function)) bool uprobe_deny_signal(void)
....[     176]: {
....[     177]: return false;
....[     178]: }
....[     179]: static inline __attribute__((no_instrument_function)) unsigned long uprobe_get_swbp_addr(struct pt_regs *regs\
....                )
....[     180]: {
....[     181]: return 0;
....[     182]: }
....[     183]: static inline __attribute__((no_instrument_function)) void uprobe_free_utask(struct task_struct *t)
....[     184]: {
....[     185]: }
....[     186]: static inline __attribute__((no_instrument_function)) void uprobe_copy_process(struct task_struct *t, unsigned \
....                long flags)
....[     187]: {
....[     188]: }
....[     189]: static inline __attribute__((no_instrument_function)) void uprobe_clear_state(struct mm_struct *mm)
....[     190]: {
....[     191]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/uprobes.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm_types.h
...[      24]: struct address_space;
...[      44]: struct page {
...[      46]: unsigned long flags;
...[      48]: union {
...[      49]: struct address_space *mapping;
...[      56]: void *s_mem;
...[      57]: };
...[      60]: struct {
...[      61]: union {
...[      62]: unsigned long index;
...[      63]: void *freelist;
...[      64]: bool pfmemalloc;
...[      73]: };
...[      75]: union {
...[      79]: unsigned long counters;
...[      89]: struct {
...[      91]: union {
...[     108]: atomic_t _mapcount;
...[     110]: struct {
...[     111]: unsigned inuse:16;
...[     112]: unsigned objects:15;
...[     113]: unsigned frozen:1;
...[     114]: };
...[     115]: int units;
...[     116]: };
...[     117]: atomic_t _count;
...[     118]: };
...[     119]: unsigned int active;
...[     120]: };
...[     121]: };
...[     124]: union {
...[     125]: struct list_head lru;
...[     128]: struct {
...[     129]: struct page *next;
...[     131]: int pages;
...[     132]: int pobjects;
...[     137]: };
...[     139]: struct list_head list;
...[     140]: struct slab *slab_page;
...[     141]: struct callback_head callback_head;
...[     147]: };
...[     150]: union {
...[     151]: unsigned long private;
...[     162]: spinlock_t ptl;
...[     165]: struct kmem_cache *slab_cache;
...[     166]: struct page *first_page;
...[     167]: };
...[     198]: }
...[     204]: __attribute__((aligned(2 * sizeof(unsigned long))))
...[     206]: ;
...[     208]: struct page_frag {
...[     209]: struct page *page;
...[     211]: __u32 offset;
...[     212]: __u32 size;
...[     217]: };
...[     219]: typedef unsigned long vm_flags_t;
...[     226]: struct vm_region {
...[     227]: struct rb_node vm_rb;
...[     228]: vm_flags_t vm_flags;
...[     229]: unsigned long vm_start;
...[     230]: unsigned long vm_end;
...[     231]: unsigned long vm_top;
...[     232]: unsigned long vm_pgoff;
...[     233]: struct file *vm_file;
...[     235]: int vm_usage;
...[     236]: bool vm_icache_flushed : 1;
...[     238]: };
...[     246]: struct vm_area_struct {
...[     249]: unsigned long vm_start;
...[     250]: unsigned long vm_end;
...[     254]: struct vm_area_struct *vm_next, *vm_prev;
...[     256]: struct rb_node vm_rb;
...[     264]: unsigned long rb_subtree_gap;
...[     268]: struct mm_struct *vm_mm;
...[     269]: pgprot_t vm_page_prot;
...[     270]: unsigned long vm_flags;
...[     277]: union {
...[     278]: struct {
...[     279]: struct rb_node rb;
...[     280]: unsigned long rb_subtree_last;
...[     281]: } linear;
...[     282]: struct list_head nonlinear;
...[     283]: } shared;
...[     291]: struct list_head anon_vma_chain;
...[     293]: struct anon_vma *anon_vma;
...[     296]: const struct vm_operations_struct *vm_ops;
...[     299]: unsigned long vm_pgoff;
...[     301]: struct file * vm_file;
...[     302]: void * vm_private_data;
...[     308]: struct mempolicy *vm_policy;
...[     310]: };
...[     312]: struct core_thread {
...[     313]: struct task_struct *task;
...[     314]: struct core_thread *next;
...[     315]: };
...[     317]: struct core_state {
...[     318]: atomic_t nr_threads;
...[     319]: struct core_thread dumper;
...[     320]: struct completion startup;
...[     321]: };
...[     323]: enum {
...[     324]: MM_FILEPAGES,
...[     325]: MM_ANONPAGES,
...[     326]: MM_SWAPENTS,
...[     327]: NR_MM_COUNTERS
...[     328]: };
...[     333]: struct task_rss_stat {
...[     334]: int events;
...[     335]: int count[NR_MM_COUNTERS];
...[     336]: };
...[     339]: struct mm_rss_stat {
...[     340]: atomic_long_t count[NR_MM_COUNTERS];
...[     341]: };
...[     343]: struct kioctx_table;
...[     344]: struct mm_struct {
...[     345]: struct vm_area_struct * mmap;
...[     346]: struct rb_root mm_rb;
...[     347]: struct vm_area_struct * mmap_cache;
...[     349]: unsigned long (*get_unmapped_area) (struct file *filp,
...[     350]: unsigned long addr, unsigned long len,
...[     351]: unsigned long pgoff, unsigned long flags);
...[     353]: unsigned long mmap_base;
...[     354]: unsigned long mmap_legacy_base;
...[     355]: unsigned long task_size;
...[     356]: unsigned long highest_vm_end;
...[     357]: pgd_t * pgd;
...[     358]: atomic_t mm_users;
...[     359]: atomic_t mm_count;
...[     360]: atomic_long_t nr_ptes;
...[     361]: int map_count;
...[     363]: spinlock_t page_table_lock;
...[     364]: struct rw_semaphore mmap_sem;
...[     366]: struct list_head mmlist;
...[     372]: unsigned long hiwater_rss;
...[     373]: unsigned long hiwater_vm;
...[     375]: unsigned long total_vm;
...[     376]: unsigned long locked_vm;
...[     377]: unsigned long pinned_vm;
...[     378]: unsigned long shared_vm;
...[     379]: unsigned long exec_vm;
...[     380]: unsigned long stack_vm;
...[     381]: unsigned long def_flags;
...[     382]: unsigned long start_code, end_code, start_data, end_data;
...[     383]: unsigned long start_brk, brk, start_stack;
...[     384]: unsigned long arg_start, arg_end, env_start, env_end;
...[     386]: unsigned long saved_auxv[(2*(2 + 20 + 1))];
...[     392]: struct mm_rss_stat rss_stat;
...[     394]: struct linux_binfmt *binfmt;
...[     396]: cpumask_var_t cpu_vm_mask_var;
...[     399]: mm_context_t context;
...[     401]: unsigned long flags;
...[     403]: struct core_state *core_state;
...[     405]: spinlock_t ioctx_lock;
...[     406]: struct kioctx_table *ioctx_table;
...[     423]: struct file *exe_file;
...[     425]: struct mmu_notifier_mm *mmu_notifier_mm;
...[     455]: struct uprobes_state uprobes_state;
...[     456]: };
...[     458]: static inline __attribute__((no_instrument_function)) void mm_init_cpumask(struct mm_struct *mm)
...[     459]: {
...[     463]: }
...[     466]: static inline __attribute__((no_instrument_function)) cpumask_t *mm_cpumask(struct mm_struct *mm)
...[     467]: {
...[     468]: return mm->cpu_vm_mask_var;
...[     469]: }
...[     500]: static inline __attribute__((no_instrument_function)) bool mm_tlb_flush_pending(struct mm_struct *mm)
...[     501]: {
...[     502]: return false;
...[     503]: }
...[     504]: static inline __attribute__((no_instrument_function)) void set_tlb_flush_pending(struct mm_struct *mm)
...[     505]: {
...[     506]: }
...[     507]: static inline __attribute__((no_instrument_function)) void clear_tlb_flush_pending(struct mm_struct *mm)
...[     508]: {
...[     509]: }
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm_types.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/preempt_mask.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/preempt_mask.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hardirq.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hardirq.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/gfp.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/gfp.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pageblock-flags.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pageblock-flags.h
........[      29]: enum pageblock_bits {
........[      30]: PB_migrate,
........[      31]: PB_migrate_end = PB_migrate + 3 - 1,
........[      36]: NR_PAGEBLOCK_BITS
........[      37]: };
........[      63]: struct page;
........[      66]: unsigned long get_pageblock_flags_group(struct page *page,
........[      67]: int start_bitidx, int end_bitidx);
........[      68]: void set_pageblock_flags_group(struct page *page, unsigned long flags,
........[      69]: int start_bitidx, int end_bitidx);
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pageblock-flags.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
.......[      38]: enum {
.......[      39]: MIGRATE_UNMOVABLE,
.......[      40]: MIGRATE_RECLAIMABLE,
.......[      41]: MIGRATE_MOVABLE,
.......[      42]: MIGRATE_PCPTYPES,
.......[      43]: MIGRATE_RESERVE = MIGRATE_PCPTYPES,
.......[      61]: MIGRATE_ISOLATE,
.......[      63]: MIGRATE_TYPES
.......[      64]: };
.......[      76]: extern int page_group_by_mobility_disabled;
.......[      78]: static inline __attribute__((no_instrument_function)) int get_pageblock_migratetype(struct page *page)
.......[      79]: {
.......[      80]: return get_pageblock_flags_group(page, PB_migrate, PB_migrate_end);
.......[      81]: }
.......[      83]: struct free_area {
.......[      84]: struct list_head free_list[MIGRATE_TYPES];
.......[      85]: unsigned long nr_free;
.......[      86]: };
.......[      88]: struct pglist_data;
.......[      97]: struct zone_padding {
.......[      98]: char x[0];
.......[      99]: } __attribute__((__aligned__(1 << (6))));
.......[     105]: enum zone_stat_item {
.......[     107]: NR_FREE_PAGES,
.......[     108]: NR_ALLOC_BATCH,
.......[     109]: NR_LRU_BASE,
.......[     110]: NR_INACTIVE_ANON = NR_LRU_BASE,
.......[     111]: NR_ACTIVE_ANON,
.......[     112]: NR_INACTIVE_FILE,
.......[     113]: NR_ACTIVE_FILE,
.......[     114]: NR_UNEVICTABLE,
.......[     115]: NR_MLOCK,
.......[     116]: NR_ANON_PAGES,
.......[     117]: NR_FILE_MAPPED,
.......[     119]: NR_FILE_PAGES,
.......[     120]: NR_FILE_DIRTY,
.......[     121]: NR_WRITEBACK,
.......[     122]: NR_SLAB_RECLAIMABLE,
.......[     123]: NR_SLAB_UNRECLAIMABLE,
.......[     124]: NR_PAGETABLE,
.......[     125]: NR_KERNEL_STACK,
.......[     127]: NR_UNSTABLE_NFS,
.......[     128]: NR_BOUNCE,
.......[     129]: NR_VMSCAN_WRITE,
.......[     130]: NR_VMSCAN_IMMEDIATE,
.......[     131]: NR_WRITEBACK_TEMP,
.......[     132]: NR_ISOLATED_ANON,
.......[     133]: NR_ISOLATED_FILE,
.......[     134]: NR_SHMEM,
.......[     135]: NR_DIRTIED,
.......[     136]: NR_WRITTEN,
.......[     138]: NUMA_HIT,
.......[     139]: NUMA_MISS,
.......[     140]: NUMA_FOREIGN,
.......[     141]: NUMA_INTERLEAVE_HIT,
.......[     142]: NUMA_LOCAL,
.......[     143]: NUMA_OTHER,
.......[     145]: NR_ANON_TRANSPARENT_HUGEPAGES,
.......[     146]: NR_FREE_CMA_PAGES,
.......[     147]: NR_VM_ZONE_STAT_ITEMS };
.......[     162]: enum lru_list {
.......[     163]: LRU_INACTIVE_ANON = 0,
.......[     164]: LRU_ACTIVE_ANON = 0 + 1,
.......[     165]: LRU_INACTIVE_FILE = 0 + 2,
.......[     166]: LRU_ACTIVE_FILE = 0 + 2 + 1,
.......[     167]: LRU_UNEVICTABLE,
.......[     168]: NR_LRU_LISTS
.......[     169]: };
.......[     175]: static inline __attribute__((no_instrument_function)) int is_file_lru(enum lru_list lru)
.......[     176]: {
.......[     177]: return (lru == LRU_INACTIVE_FILE || lru == LRU_ACTIVE_FILE);
.......[     178]: }
.......[     180]: static inline __attribute__((no_instrument_function)) int is_active_lru(enum lru_list lru)
.......[     181]: {
.......[     182]: return (lru == LRU_ACTIVE_ANON || lru == LRU_ACTIVE_FILE);
.......[     183]: }
.......[     185]: static inline __attribute__((no_instrument_function)) int is_unevictable_lru(enum lru_list lru)
.......[     186]: {
.......[     187]: return (lru == LRU_UNEVICTABLE);
.......[     188]: }
.......[     190]: struct zone_reclaim_stat {
.......[     199]: unsigned long recent_rotated[2];
.......[     200]: unsigned long recent_scanned[2];
.......[     201]: };
.......[     203]: struct lruvec {
.......[     204]: struct list_head lists[NR_LRU_LISTS];
.......[     205]: struct zone_reclaim_stat reclaim_stat;
.......[     209]: };
.......[     226]: typedef unsigned isolate_mode_t;
.......[     228]: enum zone_watermarks {
.......[     229]: WMARK_MIN,
.......[     230]: WMARK_LOW,
.......[     231]: WMARK_HIGH,
.......[     232]: NR_WMARK
.......[     233]: };
.......[     239]: struct per_cpu_pages {
.......[     240]: int count;
.......[     241]: int high;
.......[     242]: int batch;
.......[     245]: struct list_head lists[MIGRATE_PCPTYPES];
.......[     246]: };
.......[     248]: struct per_cpu_pageset {
.......[     249]: struct per_cpu_pages pcp;
.......[     251]: s8 expire;
.......[     254]: s8 stat_threshold;
.......[     255]: s8 vm_stat_diff[NR_VM_ZONE_STAT_ITEMS];
.......[     257]: };
.......[     261]: enum zone_type {
.......[     281]: ZONE_DMA,
.......[     289]: ZONE_DMA32,
.......[     296]: ZONE_NORMAL,
.......[     308]: ZONE_MOVABLE,
.......[     309]: __MAX_NR_ZONES
.......[     310]: };
.......[     314]: struct zone {
.......[     318]: unsigned long watermark[NR_WMARK];
.......[     325]: unsigned long percpu_drift_mark;
.......[     335]: unsigned long lowmem_reserve[4];
.......[     341]: unsigned long dirty_balance_reserve;
.......[     344]: int node;
.......[     348]: unsigned long min_unmapped_pages;
.......[     349]: unsigned long min_slab_pages;
.......[     351]: struct per_cpu_pageset *pageset;
.......[     355]: spinlock_t lock;
.......[     368]: struct free_area free_area[11];
.......[     389]: struct zone_padding _pad1_;
.......[     392]: spinlock_t lru_lock;
.......[     393]: struct lruvec lruvec;
.......[     395]: unsigned long pages_scanned;
.......[     396]: unsigned long flags;
.......[     399]: atomic_long_t vm_stat[NR_VM_ZONE_STAT_ITEMS];
.......[     405]: unsigned int inactive_ratio;
.......[     408]: struct zone_padding _pad2_;
.......[     435]: wait_queue_head_t * wait_table;
.......[     436]: unsigned long wait_table_hash_nr_entries;
.......[     437]: unsigned long wait_table_bits;
.......[     442]: struct pglist_data *zone_pgdat;
.......[     444]: unsigned long zone_start_pfn;
.......[     488]: unsigned long spanned_pages;
.......[     489]: unsigned long present_pages;
.......[     490]: unsigned long managed_pages;
.......[     495]: const char *name;
.......[     496]: } __attribute__((__aligned__(1 << (6))));
.......[     498]: typedef enum {
.......[     499]: ZONE_RECLAIM_LOCKED,
.......[     500]: ZONE_OOM_LOCKED,
.......[     501]: ZONE_CONGESTED,
.......[     504]: ZONE_TAIL_LRU_DIRTY,
.......[     508]: ZONE_WRITEBACK,
.......[     511]: } zone_flags_t;
.......[     513]: static inline __attribute__((no_instrument_function)) void zone_set_flag(struct zone *zone, zone_flags_t flag\
.......                )
.......[     514]: {
.......[     515]: set_bit(flag, &zone->flags);
.......[     516]: }
.......[     518]: static inline __attribute__((no_instrument_function)) int zone_test_and_set_flag(struct zone *zone, zone_flags_t \
.......                flag)
.......[     519]: {
.......[     520]: return test_and_set_bit(flag, &zone->flags);
.......[     521]: }
.......[     523]: static inline __attribute__((no_instrument_function)) void zone_clear_flag(struct zone *zone, zone_flags_t flag\
.......                )
.......[     524]: {
.......[     525]: clear_bit(flag, &zone->flags);
.......[     526]: }
.......[     528]: static inline __attribute__((no_instrument_function)) int zone_is_reclaim_congested(const struct zone *zone\
.......                )
.......[     529]: {
.......[     530]: return (__builtin_constant_p((ZONE_CONGESTED)) ? constant_test_bit((ZONE_CONGESTED), (&zone->flags)) : variable_test_bit\
.......                ((ZONE_CONGESTED), (&zone->flags)));
.......[     531]: }
.......[     533]: static inline __attribute__((no_instrument_function)) int zone_is_reclaim_dirty(const struct zone *zone)
.......[     534]: {
.......[     535]: return (__builtin_constant_p((ZONE_TAIL_LRU_DIRTY)) ? constant_test_bit((ZONE_TAIL_LRU_DIRTY), (&zone->flags\
.......                )) : variable_test_bit((ZONE_TAIL_LRU_DIRTY), (&zone->flags)));
.......[     536]: }
.......[     538]: static inline __attribute__((no_instrument_function)) int zone_is_reclaim_writeback(const struct zone *zone\
.......                )
.......[     539]: {
.......[     540]: return (__builtin_constant_p((ZONE_WRITEBACK)) ? constant_test_bit((ZONE_WRITEBACK), (&zone->flags)) : variable_test_bit\
.......                ((ZONE_WRITEBACK), (&zone->flags)));
.......[     541]: }
.......[     543]: static inline __attribute__((no_instrument_function)) int zone_is_reclaim_locked(const struct zone *zone)
.......[     544]: {
.......[     545]: return (__builtin_constant_p((ZONE_RECLAIM_LOCKED)) ? constant_test_bit((ZONE_RECLAIM_LOCKED), (&zone->flags\
.......                )) : variable_test_bit((ZONE_RECLAIM_LOCKED), (&zone->flags)));
.......[     546]: }
.......[     548]: static inline __attribute__((no_instrument_function)) int zone_is_oom_locked(const struct zone *zone)
.......[     549]: {
.......[     550]: return (__builtin_constant_p((ZONE_OOM_LOCKED)) ? constant_test_bit((ZONE_OOM_LOCKED), (&zone->flags)) : variable_test_bit\
.......                ((ZONE_OOM_LOCKED), (&zone->flags)));
.......[     551]: }
.......[     553]: static inline __attribute__((no_instrument_function)) unsigned long zone_end_pfn(const struct zone *zone)
.......[     554]: {
.......[     555]: return zone->zone_start_pfn + zone->spanned_pages;
.......[     556]: }
.......[     558]: static inline __attribute__((no_instrument_function)) bool zone_spans_pfn(const struct zone *zone, unsigned long \
.......                pfn)
.......[     559]: {
.......[     560]: return zone->zone_start_pfn <= pfn && pfn < zone_end_pfn(zone);
.......[     561]: }
.......[     563]: static inline __attribute__((no_instrument_function)) bool zone_is_initialized(struct zone *zone)
.......[     564]: {
.......[     565]: return !!zone->wait_table;
.......[     566]: }
.......[     568]: static inline __attribute__((no_instrument_function)) bool zone_is_empty(struct zone *zone)
.......[     569]: {
.......[     570]: return zone->spanned_pages == 0;
.......[     571]: }
.......[     654]: struct zonelist_cache {
.......[     655]: unsigned short z_to_n[((1 << 6) * 4)];
.......[     656]: unsigned long fullzones[(((((1 << 6) * 4)) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
.......[     657]: unsigned long last_full_zap;
.......[     658]: };
.......[     668]: struct zoneref {
.......[     669]: struct zone *zone;
.......[     670]: int zone_idx;
.......[     671]: };
.......[     690]: struct zonelist {
.......[     691]: struct zonelist_cache *zlcache_ptr;
.......[     692]: struct zoneref _zonerefs[((1 << 6) * 4) + 1];
.......[     694]: struct zonelist_cache zlcache;
.......[     696]: };
.......[     699]: struct node_active_region {
.......[     700]: unsigned long start_pfn;
.......[     701]: unsigned long end_pfn;
.......[     702]: int nid;
.......[     703]: };
.......[     708]: extern struct page *mem_map;
.......[     722]: struct bootmem_data;
.......[     723]: typedef struct pglist_data {
.......[     724]: struct zone node_zones[4];
.......[     725]: struct zonelist node_zonelists[2];
.......[     726]: int nr_zones;
.......[     749]: unsigned long node_start_pfn;
.......[     750]: unsigned long node_present_pages;
.......[     751]: unsigned long node_spanned_pages;
.......[     753]: int node_id;
.......[     754]: nodemask_t reclaim_nodes;
.......[     755]: wait_queue_head_t kswapd_wait;
.......[     756]: wait_queue_head_t pfmemalloc_wait;
.......[     757]: struct task_struct *kswapd;
.......[     758]: int kswapd_max_order;
.......[     759]: enum zone_type classzone_idx;
.......[     773]: } pg_data_t;
.......[     787]: static inline __attribute__((no_instrument_function)) unsigned long pgdat_end_pfn(pg_data_t *pgdat)
.......[     788]: {
.......[     789]: return pgdat->node_start_pfn + pgdat->node_spanned_pages;
.......[     790]: }
.......[     792]: static inline __attribute__((no_instrument_function)) bool pgdat_is_empty(pg_data_t *pgdat)
.......[     793]: {
.......[     794]: return !pgdat->node_start_pfn && !pgdat->node_spanned_pages;
.......[     795]: }
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memory_hotplug.h
........[       9]: struct page;
........[      10]: struct zone;
........[      11]: struct pglist_data;
........[      12]: struct mem_section;
........[      13]: struct memory_block;
........[     203]: static inline __attribute__((no_instrument_function)) void pgdat_resize_lock(struct pglist_data *p, unsigned \
........                long *f) {}
........[     204]: static inline __attribute__((no_instrument_function)) void pgdat_resize_unlock(struct pglist_data *p, unsigned \
........                long *f) {}
........[     205]: static inline __attribute__((no_instrument_function)) void pgdat_resize_init(struct pglist_data *pgdat) {}
........[     207]: static inline __attribute__((no_instrument_function)) unsigned zone_span_seqbegin(struct zone *zone)
........[     208]: {
........[     209]: return 0;
........[     210]: }
........[     211]: static inline __attribute__((no_instrument_function)) int zone_span_seqretry(struct zone *zone, unsigned iv)
........[     212]: {
........[     213]: return 0;
........[     214]: }
........[     215]: static inline __attribute__((no_instrument_function)) void zone_span_writelock(struct zone *zone) {}
........[     216]: static inline __attribute__((no_instrument_function)) void zone_span_writeunlock(struct zone *zone) {}
........[     217]: static inline __attribute__((no_instrument_function)) void zone_seqlock_init(struct zone *zone) {}
........[     219]: static inline __attribute__((no_instrument_function)) int mhp_notimplemented(const char *func)
........[     220]: {
........[     221]: printk("\001" "4" "%s() called, with CONFIG_MEMORY_HOTPLUG disabled\n", func);
........[     222]: dump_stack();
........[     223]: return -38;
........[     224]: }
........[     226]: static inline __attribute__((no_instrument_function)) void register_page_bootmem_info_node(struct pglist_data \
........                *pgdat)
........[     227]: {
........[     228]: }
........[     230]: static inline __attribute__((no_instrument_function)) int try_online_node(int nid)
........[     231]: {
........[     232]: return 0;
........[     233]: }
........[     235]: static inline __attribute__((no_instrument_function)) void lock_memory_hotplug(void) {}
........[     236]: static inline __attribute__((no_instrument_function)) void unlock_memory_hotplug(void) {}
........[     248]: static inline __attribute__((no_instrument_function)) int is_mem_section_removable(unsigned long pfn,
........[     249]: unsigned long nr_pages)
........[     250]: {
........[     251]: return 0;
........[     252]: }
........[     254]: static inline __attribute__((no_instrument_function)) void try_offline_node(int nid) {}
........[     256]: static inline __attribute__((no_instrument_function)) int offline_pages(unsigned long start_pfn, unsigned long \
........                nr_pages)
........[     257]: {
........[     258]: return -22;
........[     259]: }
........[     261]: static inline __attribute__((no_instrument_function)) void remove_memory(int nid, u64 start, u64 size) {}
........[     264]: extern int walk_memory_range(unsigned long start_pfn, unsigned long end_pfn,
........[     265]: void *arg, int (*func)(struct memory_block *, void *));
........[     266]: extern int add_memory(int nid, u64 start, u64 size);
........[     267]: extern int arch_add_memory(int nid, u64 start, u64 size);
........[     268]: extern int offline_pages(unsigned long start_pfn, unsigned long nr_pages);
........[     269]: extern bool is_memblock_offlined(struct memory_block *mem);
........[     270]: extern void remove_memory(int nid, u64 start, u64 size);
........[     271]: extern int sparse_add_one_section(struct zone *zone, unsigned long start_pfn);
........[     272]: extern void sparse_remove_one_section(struct zone *zone, struct mem_section *ms);
........[     273]: extern struct page *sparse_decode_mem_map(unsigned long coded_mem_map,
........[     274]: unsigned long pnum);
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memory_hotplug.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
.......[     799]: extern struct mutex zonelists_mutex;
.......[     800]: void build_all_zonelists(pg_data_t *pgdat, struct zone *zone);
.......[     801]: void wakeup_kswapd(struct zone *zone, int order, enum zone_type classzone_idx);
.......[     802]: bool zone_watermark_ok(struct zone *z, int order, unsigned long mark,
.......[     803]: int classzone_idx, int alloc_flags);
.......[     804]: bool zone_watermark_ok_safe(struct zone *z, int order, unsigned long mark,
.......[     805]: int classzone_idx, int alloc_flags);
.......[     806]: enum memmap_context {
.......[     807]: MEMMAP_EARLY,
.......[     808]: MEMMAP_HOTPLUG,
.......[     809]: };
.......[     810]: extern int init_currently_empty_zone(struct zone *zone, unsigned long start_pfn,
.......[     811]: unsigned long size,
.......[     812]: enum memmap_context context);
.......[     814]: extern void lruvec_init(struct lruvec *lruvec);
.......[     816]: static inline __attribute__((no_instrument_function)) struct zone *lruvec_zone(struct lruvec *lruvec)
.......[     817]: {
.......[     821]: return ({ const typeof( ((struct zone *)0)->lruvec ) *__mptr = (lruvec); (struct zone *)( (char *)__mptr - __builtin_offsetof\
.......                (struct zone,lruvec) );});
.......[     823]: }
.......[     826]: void memory_present(int nid, unsigned long start, unsigned long end);
.......[     834]: static inline __attribute__((no_instrument_function)) int local_memory_node(int node_id) { return node_id; };
.......[     846]: static inline __attribute__((no_instrument_function)) int populated_zone(struct zone *zone)
.......[     847]: {
.......[     848]: return (!!zone->present_pages);
.......[     849]: }
.......[     851]: extern int movable_zone;
.......[     853]: static inline __attribute__((no_instrument_function)) int zone_movable_is_highmem(void)
.......[     854]: {
.......[     858]: return 0;
.......[     860]: }
.......[     862]: static inline __attribute__((no_instrument_function)) int is_highmem_idx(enum zone_type idx)
.......[     863]: {
.......[     868]: return 0;
.......[     870]: }
.......[     878]: static inline __attribute__((no_instrument_function)) int is_highmem(struct zone *zone)
.......[     879]: {
.......[     886]: return 0;
.......[     888]: }
.......[     891]: struct ctl_table;
.......[     892]: int min_free_kbytes_sysctl_handler(struct ctl_table *, int,
.......[     893]: void *, size_t *, loff_t *);
.......[     894]: extern int sysctl_lowmem_reserve_ratio[4-1];
.......[     895]: int lowmem_reserve_ratio_sysctl_handler(struct ctl_table *, int,
.......[     896]: void *, size_t *, loff_t *);
.......[     897]: int percpu_pagelist_fraction_sysctl_handler(struct ctl_table *, int,
.......[     898]: void *, size_t *, loff_t *);
.......[     899]: int sysctl_min_unmapped_ratio_sysctl_handler(struct ctl_table *, int,
.......[     900]: void *, size_t *, loff_t *);
.......[     901]: int sysctl_min_slab_ratio_sysctl_handler(struct ctl_table *, int,
.......[     902]: void *, size_t *, loff_t *);
.......[     904]: extern int numa_zonelist_order_handler(struct ctl_table *, int,
.......[     905]: void *, size_t *, loff_t *);
.......[     906]: extern char numa_zonelist_order[];
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmzone.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmzone.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmzone_64.h
.........[      12]: extern struct pglist_data *node_data[];
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmzone_64.h
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/mmzone.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
.......[     921]: extern struct pglist_data *first_online_pgdat(void);
.......[     922]: extern struct pglist_data *next_online_pgdat(struct pglist_data *pgdat);
.......[     923]: extern struct zone *next_zone(struct zone *zone);
.......[     953]: static inline __attribute__((no_instrument_function)) struct zone *zonelist_zone(struct zoneref *zoneref)
.......[     954]: {
.......[     955]: return zoneref->zone;
.......[     956]: }
.......[     958]: static inline __attribute__((no_instrument_function)) int zonelist_zone_idx(struct zoneref *zoneref)
.......[     959]: {
.......[     960]: return zoneref->zone_idx;
.......[     961]: }
.......[     963]: static inline __attribute__((no_instrument_function)) int zonelist_node_idx(struct zoneref *zoneref)
.......[     964]: {
.......[     967]: return zoneref->zone->node;
.......[     971]: }
.......[     986]: struct zoneref *next_zones_zonelist(struct zoneref *z,
.......[     987]: enum zone_type highest_zoneidx,
.......[     988]: nodemask_t *nodes,
.......[     989]: struct zone **zone);
.......[    1003]: static inline __attribute__((no_instrument_function)) struct zoneref *first_zones_zonelist(struct zonelist \
.......                *zonelist,
.......[    1004]: enum zone_type highest_zoneidx,
.......[    1005]: nodemask_t *nodes,
.......[    1006]: struct zone **zone)
.......[    1007]: {
.......[    1008]: return next_zones_zonelist(zonelist->_zonerefs, highest_zoneidx, nodes,
.......[    1009]: zone);
.......[    1010]: }
.......[    1085]: struct page;
.......[    1086]: struct page_cgroup;
.......[    1087]: struct mem_section {
.......[    1100]: unsigned long section_mem_map;
.......[    1103]: unsigned long *pageblock_flags;
.......[    1116]: };
.......[    1129]: extern struct mem_section *mem_section[((((1UL << (46 - 27))) + ((((1UL) << 12) / sizeof (struct mem_section))) - 1) / \
.......                ((((1UL) << 12) / sizeof (struct mem_section))))];
.......[    1134]: static inline __attribute__((no_instrument_function)) struct mem_section *__nr_to_section(unsigned long nr)
.......[    1135]: {
.......[    1136]: if (!mem_section[((nr) / (((1UL) << 12) / sizeof (struct mem_section)))])
.......[    1137]: return ((void *)0);
.......[    1138]: return &mem_section[((nr) / (((1UL) << 12) / sizeof (struct mem_section)))][nr & ((((1UL) << 12) / sizeof (struct mem_section\
.......                )) - 1)];
.......[    1139]: }
.......[    1140]: extern int __section_nr(struct mem_section* ms);
.......[    1141]: extern unsigned long usemap_size(void);
.......[    1154]: static inline __attribute__((no_instrument_function)) struct page *__section_mem_map_addr(struct mem_section \
.......                *section)
.......[    1155]: {
.......[    1156]: unsigned long map = section->section_mem_map;
.......[    1157]: map &= (~((1UL<<2)-1));
.......[    1158]: return (struct page *)map;
.......[    1159]: }
.......[    1161]: static inline __attribute__((no_instrument_function)) int present_section(struct mem_section *section)
.......[    1162]: {
.......[    1163]: return (section && (section->section_mem_map & (1UL<<0)));
.......[    1164]: }
.......[    1166]: static inline __attribute__((no_instrument_function)) int present_section_nr(unsigned long nr)
.......[    1167]: {
.......[    1168]: return present_section(__nr_to_section(nr));
.......[    1169]: }
.......[    1171]: static inline __attribute__((no_instrument_function)) int valid_section(struct mem_section *section)
.......[    1172]: {
.......[    1173]: return (section && (section->section_mem_map & (1UL<<1)));
.......[    1174]: }
.......[    1176]: static inline __attribute__((no_instrument_function)) int valid_section_nr(unsigned long nr)
.......[    1177]: {
.......[    1178]: return valid_section(__nr_to_section(nr));
.......[    1179]: }
.......[    1181]: static inline __attribute__((no_instrument_function)) struct mem_section *__pfn_to_section(unsigned long pfn\
.......                )
.......[    1182]: {
.......[    1183]: return __nr_to_section(((pfn) >> (27 - 12)));
.......[    1184]: }
.......[    1187]: static inline __attribute__((no_instrument_function)) int pfn_valid(unsigned long pfn)
.......[    1188]: {
.......[    1189]: if (((pfn) >> (27 - 12)) >= (1UL << (46 - 27)))
.......[    1190]: return 0;
.......[    1191]: return valid_section(__nr_to_section(((pfn) >> (27 - 12))));
.......[    1192]: }
.......[    1195]: static inline __attribute__((no_instrument_function)) int pfn_present(unsigned long pfn)
.......[    1196]: {
.......[    1197]: if (((pfn) >> (27 - 12)) >= (1UL << (46 - 27)))
.......[    1198]: return 0;
.......[    1199]: return present_section(__nr_to_section(((pfn) >> (27 - 12))));
.......[    1200]: }
.......[    1218]: void sparse_init(void);
.......[    1225]: bool early_pfn_in_nid(unsigned long pfn, int nid);
.......[    1234]: void memory_present(int nid, unsigned long start, unsigned long end);
.......[    1235]: unsigned long __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) node_memmap_size_bytes\
.......                (int, unsigned long, unsigned long);
.......[    1268]: static inline __attribute__((no_instrument_function)) int memmap_valid_within(unsigned long pfn,
.......[    1269]: struct page *page, struct zone *zone)
.......[    1270]: {
.......[    1271]: return 1;
.......[    1272]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mmzone.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/gfp.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/topology.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/topology.h
.......[      49]: int arch_update_cpu_topology(void);
.......[     185]: extern __attribute__((section(".data..percpu" ""))) __typeof__(int) numa_node;
.......[     189]: static inline __attribute__((no_instrument_function)) int numa_node_id(void)
.......[     190]: {
.......[     191]: return ({ typeof((numa_node)) pscr_ret__; do { const void *__vpp_verify = (typeof((&((numa_node))) + 0))((void *)\
.......                0); (void)__vpp_verify; } while (0); switch(sizeof((numa_node))) { case 1: pscr_ret__ = ({ typeof(((numa_node))) \
.......                pfo_ret__; switch (sizeof(((numa_node)))) { case 1: asm("mov" "b ""%%""gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"\
.......                ((numa_node))); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break\
.......                ; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break; case 8: asm("mov" "q "\
.......                "%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break; default: __bad_percpu_size(); } pfo_ret__\
.......                ; });break; case 2: pscr_ret__ = ({ typeof(((numa_node))) pfo_ret__; switch (sizeof(((numa_node)))) { case 1: asm(\
.......                "mov" "b ""%%""gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"((numa_node))); break; case 2: asm("mov" "w ""%%""gs"\
.......                ":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" \
.......                (pfo_ret__) : "m"((numa_node))); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((\
.......                numa_node))); break; default: __bad_percpu_size(); } pfo_ret__; });break; case 4: pscr_ret__ = ({ typeof(((numa_node\
.......                ))) pfo_ret__; switch (sizeof(((numa_node)))) { case 1: asm("mov" "b ""%%""gs"":" "%P" "1"",%0" : "=q" (pfo_ret__\
.......                ) : "m"((numa_node))); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node)\
.......                )); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break; case 8: asm\
.......                ("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break; default: __bad_percpu_size(\
.......                ); } pfo_ret__; });break; case 8: pscr_ret__ = ({ typeof(((numa_node))) pfo_ret__; switch (sizeof(((numa_node)))\
.......                ) { case 1: asm("mov" "b ""%%""gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"((numa_node))); break; case 2: asm("mov" \
.......                "w ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break; case 4: asm("mov" "l ""%%""gs"":" "%P" \
.......                "1"",%0" : "=r" (pfo_ret__) : "m"((numa_node))); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__\
.......                ) : "m"((numa_node))); break; default: __bad_percpu_size(); } pfo_ret__; });break; default: __bad_size_call_parameter\
.......                ();break; } pscr_ret__; });
.......[     192]: }
.......[     196]: static inline __attribute__((no_instrument_function)) int cpu_to_node(int cpu)
.......[     197]: {
.......[     198]: return (*({ do { const void *__vpp_verify = (typeof(((&(numa_node))) + 0))((void *)0); (void)__vpp_verify; } while \
.......                (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(numa_node))) *)(&(numa_node)))); (typeof\
.......                ((typeof(*(&(numa_node))) *)(&(numa_node)))) (__ptr + (((__per_cpu_offset[cpu])))); }); }));
.......[     199]: }
.......[     203]: static inline __attribute__((no_instrument_function)) void set_numa_node(int node)
.......[     204]: {
.......[     205]: do { do { const void *__vpp_verify = (typeof((&((numa_node))) + 0))((void *)0); (void)__vpp_verify; } while (0); switch\
.......                (sizeof((numa_node))) { case 1: do { typedef typeof(((numa_node))) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = \
.......                ((node)); (void)pto_tmp__; } switch (sizeof(((numa_node)))) { case 1: asm("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" \
.......                (((numa_node))) : "qi" ((pto_T__)((node)))); break; case 2: asm("mov" "w %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node\
.......                ))) : "ri" ((pto_T__)((node)))); break; case 4: asm("mov" "l %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "ri" \
.......                ((pto_T__)((node)))); break; case 8: asm("mov" "q %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "re" ((pto_T__\
.......                )((node)))); break; default: __bad_percpu_size(); } } while (0);break; case 2: do { typedef typeof(((numa_node))) \
.......                pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = ((node)); (void)pto_tmp__; } switch (sizeof(((numa_node)))) { case \
.......                1: asm("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "qi" ((pto_T__)((node)))); break; case 2: asm("mov" \
.......                "w %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "ri" ((pto_T__)((node)))); break; case 4: asm("mov" "l %1,""%%"\
.......                "gs"":" "%P" "0" : "+m" (((numa_node))) : "ri" ((pto_T__)((node)))); break; case 8: asm("mov" "q %1,""%%""gs"":" "%P" \
.......                "0" : "+m" (((numa_node))) : "re" ((pto_T__)((node)))); break; default: __bad_percpu_size(); } } while (0);break; \
.......                case 4: do { typedef typeof(((numa_node))) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = ((node)); (void)pto_tmp__\
.......                ; } switch (sizeof(((numa_node)))) { case 1: asm("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "qi" ((pto_T__\
.......                )((node)))); break; case 2: asm("mov" "w %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "ri" ((pto_T__)((node)\
.......                ))); break; case 4: asm("mov" "l %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "ri" ((pto_T__)((node)))); break\
.......                ; case 8: asm("mov" "q %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "re" ((pto_T__)((node)))); break; default\
.......                : __bad_percpu_size(); } } while (0);break; case 8: do { typedef typeof(((numa_node))) pto_T__; if (0) { pto_T__ pto_tmp__\
.......                ; pto_tmp__ = ((node)); (void)pto_tmp__; } switch (sizeof(((numa_node)))) { case 1: asm("mov" "b %1,""%%""gs"":" \
.......                "%P" "0" : "+m" (((numa_node))) : "qi" ((pto_T__)((node)))); break; case 2: asm("mov" "w %1,""%%""gs"":" "%P" "0" : \
.......                "+m" (((numa_node))) : "ri" ((pto_T__)((node)))); break; case 4: asm("mov" "l %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node\
.......                ))) : "ri" ((pto_T__)((node)))); break; case 8: asm("mov" "q %1,""%%""gs"":" "%P" "0" : "+m" (((numa_node))) : "re" \
.......                ((pto_T__)((node)))); break; default: __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter\
.......                ();break; } } while (0);
.......[     206]: }
.......[     210]: static inline __attribute__((no_instrument_function)) void set_cpu_numa_node(int cpu, int node)
.......[     211]: {
.......[     212]: (*({ do { const void *__vpp_verify = (typeof(((&(numa_node))) + 0))((void *)0); (void)__vpp_verify; } while (0); ({ \
.......                unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(numa_node))) *)(&(numa_node)))); (typeof((typeof\
.......                (*(&(numa_node))) *)(&(numa_node)))) (__ptr + (((__per_cpu_offset[cpu])))); }); })) = node;
.......[     213]: }
.......[     270]: static inline __attribute__((no_instrument_function)) int numa_mem_id(void)
.......[     271]: {
.......[     272]: return numa_node_id();
.......[     273]: }
.......[     277]: static inline __attribute__((no_instrument_function)) int cpu_to_mem(int cpu)
.......[     278]: {
.......[     279]: return cpu_to_node(cpu);
.......[     280]: }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/topology.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/gfp.h
......[      10]: struct vm_area_struct;
......[     157]: static inline __attribute__((no_instrument_function)) int allocflags_to_migratetype(gfp_t gfp_flags)
......[     158]: {
......[     159]: ({ int __ret_warn_on = !!((gfp_flags & ((( gfp_t)0x80000u)|(( gfp_t)0x08u))) == ((( gfp_t)0x80000u)|(( gfp_t)0x08u\
......                ))); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null(__FILE__, __LINE__); __builtin_expect(\
......                !!(__ret_warn_on), 0); });
......[     161]: if (__builtin_expect(!!(page_group_by_mobility_disabled), 0))
......[     162]: return MIGRATE_UNMOVABLE;
......[     165]: return (((gfp_flags & (( gfp_t)0x08u)) != 0) << 1) |
......[     166]: ((gfp_flags & (( gfp_t)0x80000u)) != 0);
......[     167]: }
......[     252]: static inline __attribute__((no_instrument_function)) enum zone_type gfp_zone(gfp_t flags)
......[     253]: {
......[     254]: enum zone_type z;
......[     255]: int bit = ( int) (flags & ((( gfp_t)0x01u)|(( gfp_t)0x02u)|(( gfp_t)0x04u)|(( gfp_t)0x08u)));
......[     257]: z = (( (ZONE_NORMAL << 0 * 2) | (ZONE_DMA << 0x01u * 2) | (ZONE_NORMAL << 0x02u * 2) | (ZONE_DMA32 << 0x04u * 2) | (ZONE_NORMAL \
......                << 0x08u * 2) | (ZONE_DMA << (0x08u | 0x01u) * 2) | (ZONE_MOVABLE << (0x08u | 0x02u) * 2) | (ZONE_DMA32 << (0x08u | 0x04u) * 2) \
......                ) >> (bit * 2)) &
......[     258]: ((1 << 2) - 1);
......[     259]: ((void)(sizeof(( long)((( 1 <<( 0x01u | 0x02u) | 1 <<( 0x01u | 0x04u) | 1 <<( 0x04u | 0x02u) | 1 <<( 0x01u | 0x04u | 0x02u) | 1 <<\
......                ( 0x08u | 0x02u | 0x01u) | 1 <<( 0x08u | 0x04u | 0x01u) | 1 <<( 0x08u | 0x04u | 0x02u) | 1 <<( 0x08u | 0x04u | 0x01u | 0x02u) ) >> bit\
......                ) & 1))));
......[     260]: return z;
......[     261]: }
......[     270]: static inline __attribute__((no_instrument_function)) int gfp_zonelist(gfp_t flags)
......[     271]: {
......[     272]: if ((1 || 0) && __builtin_expect(!!(flags & (( gfp_t)0x40000u)), 0))
......[     273]: return 1;
......[     275]: return 0;
......[     276]: }
......[     287]: static inline __attribute__((no_instrument_function)) struct zonelist *node_zonelist(int nid, gfp_t flags)
......[     288]: {
......[     289]: return (node_data[nid])->node_zonelists + gfp_zonelist(flags);
......[     290]: }
......[     293]: static inline __attribute__((no_instrument_function)) void arch_free_page(struct page *page, int order) { }
......[     296]: static inline __attribute__((no_instrument_function)) void arch_alloc_page(struct page *page, int order) { }
......[     299]: struct page *
......[     300]: __alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order,
......[     301]: struct zonelist *zonelist, nodemask_t *nodemask);
......[     303]: static inline __attribute__((no_instrument_function)) struct page *
......[     304]: __alloc_pages(gfp_t gfp_mask, unsigned int order,
......[     305]: struct zonelist *zonelist)
......[     306]: {
......[     307]: return __alloc_pages_nodemask(gfp_mask, order, zonelist, ((void *)0));
......[     308]: }
......[     310]: static inline __attribute__((no_instrument_function)) struct page *alloc_pages_node(int nid, gfp_t gfp_mask,
......[     311]: unsigned int order)
......[     312]: {
......[     314]: if (nid < 0)
......[     315]: nid = numa_node_id();
......[     317]: return __alloc_pages(gfp_mask, order, node_zonelist(nid, gfp_mask));
......[     318]: }
......[     320]: static inline __attribute__((no_instrument_function)) struct page *alloc_pages_exact_node(int nid, gfp_t gfp_mask\
......                ,
......[     321]: unsigned int order)
......[     322]: {
......[     323]: ((void)(sizeof(( long)(nid < 0 || nid >=( 1 << 6) || !node_state((nid), N_ONLINE)))));
......[     325]: return __alloc_pages(gfp_mask, order, node_zonelist(nid, gfp_mask));
......[     326]: }
......[     329]: extern struct page *alloc_pages_current(gfp_t gfp_mask, unsigned order);
......[     331]: static inline __attribute__((no_instrument_function)) struct page *
......[     332]: alloc_pages(gfp_t gfp_mask, unsigned int order)
......[     333]: {
......[     334]: return alloc_pages_current(gfp_mask, order);
......[     335]: }
......[     336]: extern struct page *alloc_pages_vma(gfp_t gfp_mask, int order,
......[     337]: struct vm_area_struct *vma, unsigned long addr,
......[     338]: int node);
......[     351]: extern unsigned long __get_free_pages(gfp_t gfp_mask, unsigned int order);
......[     352]: extern unsigned long get_zeroed_page(gfp_t gfp_mask);
......[     354]: void *alloc_pages_exact(size_t size, gfp_t gfp_mask);
......[     355]: void free_pages_exact(void *virt, size_t size);
......[     357]: void *alloc_pages_exact_nid(int nid, size_t size, gfp_t gfp_mask);
......[     365]: extern void __free_pages(struct page *page, unsigned int order);
......[     366]: extern void free_pages(unsigned long addr, unsigned int order);
......[     367]: extern void free_hot_cold_page(struct page *page, int cold);
......[     368]: extern void free_hot_cold_page_list(struct list_head *list, int cold);
......[     370]: extern void __free_memcg_kmem_pages(struct page *page, unsigned int order);
......[     371]: extern void free_memcg_kmem_pages(unsigned long addr, unsigned int order);
......[     376]: void page_alloc_init(void);
......[     377]: void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp);
......[     378]: void drain_all_pages(void);
......[     379]: void drain_local_pages(void *dummy);
......[     388]: extern gfp_t gfp_allowed_mask;
......[     391]: bool gfp_pfmemalloc_allowed(gfp_t gfp_mask);
......[     393]: extern void pm_restrict_gfp_mask(void);
......[     394]: extern void pm_restore_gfp_mask(void);
......[     397]: extern bool pm_suspended_storage(void);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/gfp.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqreturn.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqreturn.h
......[      10]: enum irqreturn {
......[      11]: IRQ_NONE = (0 << 0),
......[      12]: IRQ_HANDLED = (1 << 0),
......[      13]: IRQ_WAKE_THREAD = (1 << 1),
......[      14]: };
......[      16]: typedef enum irqreturn irqreturn_t;
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqreturn.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqnr.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqnr.h
......[       7]: extern int nr_irqs;
......[       8]: extern struct irq_desc *irq_to_desc(unsigned int irq);
......[       9]: unsigned int irq_get_next_irq(unsigned int offset);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqnr.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq.h
......[      13]: static inline __attribute__((no_instrument_function)) int irq_canonicalize(int irq)
......[      14]: {
......[      15]: return ((irq == 2) ? 9 : irq);
......[      16]: }
......[      28]: extern void fixup_irqs(void);
......[      29]: extern void irq_force_complete_move(int);
......[      32]: extern void (*x86_platform_ipi_callback)(void);
......[      33]: extern void native_init_IRQ(void);
......[      34]: extern bool handle_irq(unsigned irq, struct pt_regs *regs);
......[      36]: extern unsigned int do_IRQ(struct pt_regs *regs);
......[      39]: extern unsigned long used_vectors[(((256) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
......[      40]: extern int vector_used_by_percpu_irq(unsigned int vector);
......[      42]: extern void init_ISA_irqs(void);
......[      45]: void arch_trigger_all_cpu_backtrace(void);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq_regs.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq_regs.h
......[      14]: extern __attribute__((section(".data..percpu" ""))) __typeof__(struct pt_regs *) irq_regs;
......[      16]: static inline __attribute__((no_instrument_function)) struct pt_regs *get_irq_regs(void)
......[      17]: {
......[      18]: return ({ typeof((irq_regs)) pscr_ret__; do { const void *__vpp_verify = (typeof((&((irq_regs))) + 0))((void *)0)\
......                ; (void)__vpp_verify; } while (0); switch(sizeof((irq_regs))) { case 1: pscr_ret__ = ({ typeof(((irq_regs))) pfo_ret__\
......                ; switch (sizeof(((irq_regs)))) { case 1: asm("mov" "b ""%%""gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"((irq_regs\
......                ))); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break; case 4: asm\
......                ("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break; case 8: asm("mov" "q ""%%""gs"\
......                ":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break; default: __bad_percpu_size(); } pfo_ret__; });break\
......                ; case 2: pscr_ret__ = ({ typeof(((irq_regs))) pfo_ret__; switch (sizeof(((irq_regs)))) { case 1: asm("mov" "b ""%%"\
......                "gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"((irq_regs))); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" \
......                : "=r" (pfo_ret__) : "m"((irq_regs))); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"\
......                ((irq_regs))); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break\
......                ; default: __bad_percpu_size(); } pfo_ret__; });break; case 4: pscr_ret__ = ({ typeof(((irq_regs))) pfo_ret__; switch \
......                (sizeof(((irq_regs)))) { case 1: asm("mov" "b ""%%""gs"":" "%P" "1"",%0" : "=q" (pfo_ret__) : "m"((irq_regs))); break\
......                ; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break; case 4: asm("mov" "l "\
......                "%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"\
......                ",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break; default: __bad_percpu_size(); } pfo_ret__; });break; case 8: pscr_ret__ \
......                = ({ typeof(((irq_regs))) pfo_ret__; switch (sizeof(((irq_regs)))) { case 1: asm("mov" "b ""%%""gs"":" "%P" "1"",%0" \
......                : "=q" (pfo_ret__) : "m"((irq_regs))); break; case 2: asm("mov" "w ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"\
......                ((irq_regs))); break; case 4: asm("mov" "l ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break\
......                ; case 8: asm("mov" "q ""%%""gs"":" "%P" "1"",%0" : "=r" (pfo_ret__) : "m"((irq_regs))); break; default: __bad_percpu_size\
......                (); } pfo_ret__; });break; default: __bad_size_call_parameter();break; } pscr_ret__; });
......[      19]: }
......[      21]: static inline __attribute__((no_instrument_function)) struct pt_regs *set_irq_regs(struct pt_regs *new_regs\
......                )
......[      22]: {
......[      23]: struct pt_regs *old_regs;
......[      25]: old_regs = get_irq_regs();
......[      26]: do { do { const void *__vpp_verify = (typeof((&((irq_regs))) + 0))((void *)0); (void)__vpp_verify; } while (0); switch\
......                (sizeof((irq_regs))) { case 1: do { typedef typeof(((irq_regs))) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = ((\
......                new_regs)); (void)pto_tmp__; } switch (sizeof(((irq_regs)))) { case 1: asm("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" \
......                (((irq_regs))) : "qi" ((pto_T__)((new_regs)))); break; case 2: asm("mov" "w %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs\
......                ))) : "ri" ((pto_T__)((new_regs)))); break; case 4: asm("mov" "l %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "ri" \
......                ((pto_T__)((new_regs)))); break; case 8: asm("mov" "q %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "re" ((pto_T__\
......                )((new_regs)))); break; default: __bad_percpu_size(); } } while (0);break; case 2: do { typedef typeof(((irq_regs\
......                ))) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = ((new_regs)); (void)pto_tmp__; } switch (sizeof(((irq_regs))\
......                )) { case 1: asm("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "qi" ((pto_T__)((new_regs)))); break; case \
......                2: asm("mov" "w %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "ri" ((pto_T__)((new_regs)))); break; case 4: asm\
......                ("mov" "l %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "ri" ((pto_T__)((new_regs)))); break; case 8: asm("mov" \
......                "q %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "re" ((pto_T__)((new_regs)))); break; default: __bad_percpu_size\
......                (); } } while (0);break; case 4: do { typedef typeof(((irq_regs))) pto_T__; if (0) { pto_T__ pto_tmp__; pto_tmp__ = ((new_regs\
......                )); (void)pto_tmp__; } switch (sizeof(((irq_regs)))) { case 1: asm("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs\
......                ))) : "qi" ((pto_T__)((new_regs)))); break; case 2: asm("mov" "w %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "ri" \
......                ((pto_T__)((new_regs)))); break; case 4: asm("mov" "l %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "ri" ((pto_T__\
......                )((new_regs)))); break; case 8: asm("mov" "q %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "re" ((pto_T__)((new_regs\
......                )))); break; default: __bad_percpu_size(); } } while (0);break; case 8: do { typedef typeof(((irq_regs))) pto_T__; \
......                if (0) { pto_T__ pto_tmp__; pto_tmp__ = ((new_regs)); (void)pto_tmp__; } switch (sizeof(((irq_regs)))) { case 1: asm\
......                ("mov" "b %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "qi" ((pto_T__)((new_regs)))); break; case 2: asm("mov" \
......                "w %1,""%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "ri" ((pto_T__)((new_regs)))); break; case 4: asm("mov" "l %1,"\
......                "%%""gs"":" "%P" "0" : "+m" (((irq_regs))) : "ri" ((pto_T__)((new_regs)))); break; case 8: asm("mov" "q %1,""%%""gs"\
......                ":" "%P" "0" : "+m" (((irq_regs))) : "re" ((pto_T__)((new_regs)))); break; default: __bad_percpu_size(); } } while \
......                (0);break; default: __bad_size_call_parameter();break; } } while (0);
......[      28]: return old_regs;
......[      29]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/irq_regs.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....[      28]: struct seq_file;
.....[      29]: struct module;
.....[      30]: struct irq_desc;
.....[      31]: struct irq_data;
.....[      32]: typedef void (*irq_flow_handler_t)(unsigned int irq,
.....[      33]: struct irq_desc *desc);
.....[      34]: typedef void (*irq_preflow_handler_t)(struct irq_data *data);
.....[      77]: enum {
.....[      78]: IRQ_TYPE_NONE = 0x00000000,
.....[      79]: IRQ_TYPE_EDGE_RISING = 0x00000001,
.....[      80]: IRQ_TYPE_EDGE_FALLING = 0x00000002,
.....[      81]: IRQ_TYPE_EDGE_BOTH = (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING),
.....[      82]: IRQ_TYPE_LEVEL_HIGH = 0x00000004,
.....[      83]: IRQ_TYPE_LEVEL_LOW = 0x00000008,
.....[      84]: IRQ_TYPE_LEVEL_MASK = (IRQ_TYPE_LEVEL_LOW | IRQ_TYPE_LEVEL_HIGH),
.....[      85]: IRQ_TYPE_SENSE_MASK = 0x0000000f,
.....[      86]: IRQ_TYPE_DEFAULT = IRQ_TYPE_SENSE_MASK,
.....[      88]: IRQ_TYPE_PROBE = 0x00000010,
.....[      90]: IRQ_LEVEL = (1 << 8),
.....[      91]: IRQ_PER_CPU = (1 << 9),
.....[      92]: IRQ_NOPROBE = (1 << 10),
.....[      93]: IRQ_NOREQUEST = (1 << 11),
.....[      94]: IRQ_NOAUTOEN = (1 << 12),
.....[      95]: IRQ_NO_BALANCING = (1 << 13),
.....[      96]: IRQ_MOVE_PCNTXT = (1 << 14),
.....[      97]: IRQ_NESTED_THREAD = (1 << 15),
.....[      98]: IRQ_NOTHREAD = (1 << 16),
.....[      99]: IRQ_PER_CPU_DEVID = (1 << 17),
.....[     100]: IRQ_IS_POLLED = (1 << 18),
.....[     101]: };
.....[     117]: enum {
.....[     118]: IRQ_SET_MASK_OK = 0,
.....[     119]: IRQ_SET_MASK_OK_NOCOPY,
.....[     120]: };
.....[     122]: struct msi_desc;
.....[     123]: struct irq_domain;
.....[     146]: struct irq_data {
.....[     147]: u32 mask;
.....[     148]: unsigned int irq;
.....[     149]: unsigned long hwirq;
.....[     150]: unsigned int node;
.....[     151]: unsigned int state_use_accessors;
.....[     152]: struct irq_chip *chip;
.....[     153]: struct irq_domain *domain;
.....[     154]: void *handler_data;
.....[     155]: void *chip_data;
.....[     156]: struct msi_desc *msi_desc;
.....[     157]: cpumask_var_t affinity;
.....[     158]: };
.....[     177]: enum {
.....[     178]: IRQD_TRIGGER_MASK = 0xf,
.....[     179]: IRQD_SETAFFINITY_PENDING = (1 << 8),
.....[     180]: IRQD_NO_BALANCING = (1 << 10),
.....[     181]: IRQD_PER_CPU = (1 << 11),
.....[     182]: IRQD_AFFINITY_SET = (1 << 12),
.....[     183]: IRQD_LEVEL = (1 << 13),
.....[     184]: IRQD_WAKEUP_STATE = (1 << 14),
.....[     185]: IRQD_MOVE_PCNTXT = (1 << 15),
.....[     186]: IRQD_IRQ_DISABLED = (1 << 16),
.....[     187]: IRQD_IRQ_MASKED = (1 << 17),
.....[     188]: IRQD_IRQ_INPROGRESS = (1 << 18),
.....[     189]: };
.....[     191]: static inline __attribute__((no_instrument_function)) bool irqd_is_setaffinity_pending(struct irq_data *d)
.....[     192]: {
.....[     193]: return d->state_use_accessors & IRQD_SETAFFINITY_PENDING;
.....[     194]: }
.....[     196]: static inline __attribute__((no_instrument_function)) bool irqd_is_per_cpu(struct irq_data *d)
.....[     197]: {
.....[     198]: return d->state_use_accessors & IRQD_PER_CPU;
.....[     199]: }
.....[     201]: static inline __attribute__((no_instrument_function)) bool irqd_can_balance(struct irq_data *d)
.....[     202]: {
.....[     203]: return !(d->state_use_accessors & (IRQD_PER_CPU | IRQD_NO_BALANCING));
.....[     204]: }
.....[     206]: static inline __attribute__((no_instrument_function)) bool irqd_affinity_was_set(struct irq_data *d)
.....[     207]: {
.....[     208]: return d->state_use_accessors & IRQD_AFFINITY_SET;
.....[     209]: }
.....[     211]: static inline __attribute__((no_instrument_function)) void irqd_mark_affinity_was_set(struct irq_data *d)
.....[     212]: {
.....[     213]: d->state_use_accessors |= IRQD_AFFINITY_SET;
.....[     214]: }
.....[     216]: static inline __attribute__((no_instrument_function)) u32 irqd_get_trigger_type(struct irq_data *d)
.....[     217]: {
.....[     218]: return d->state_use_accessors & IRQD_TRIGGER_MASK;
.....[     219]: }
.....[     224]: static inline __attribute__((no_instrument_function)) void irqd_set_trigger_type(struct irq_data *d, u32 type\
.....                )
.....[     225]: {
.....[     226]: d->state_use_accessors &= ~IRQD_TRIGGER_MASK;
.....[     227]: d->state_use_accessors |= type & IRQD_TRIGGER_MASK;
.....[     228]: }
.....[     230]: static inline __attribute__((no_instrument_function)) bool irqd_is_level_type(struct irq_data *d)
.....[     231]: {
.....[     232]: return d->state_use_accessors & IRQD_LEVEL;
.....[     233]: }
.....[     235]: static inline __attribute__((no_instrument_function)) bool irqd_is_wakeup_set(struct irq_data *d)
.....[     236]: {
.....[     237]: return d->state_use_accessors & IRQD_WAKEUP_STATE;
.....[     238]: }
.....[     240]: static inline __attribute__((no_instrument_function)) bool irqd_can_move_in_process_context(struct irq_data \
.....                *d)
.....[     241]: {
.....[     242]: return d->state_use_accessors & IRQD_MOVE_PCNTXT;
.....[     243]: }
.....[     245]: static inline __attribute__((no_instrument_function)) bool irqd_irq_disabled(struct irq_data *d)
.....[     246]: {
.....[     247]: return d->state_use_accessors & IRQD_IRQ_DISABLED;
.....[     248]: }
.....[     250]: static inline __attribute__((no_instrument_function)) bool irqd_irq_masked(struct irq_data *d)
.....[     251]: {
.....[     252]: return d->state_use_accessors & IRQD_IRQ_MASKED;
.....[     253]: }
.....[     255]: static inline __attribute__((no_instrument_function)) bool irqd_irq_inprogress(struct irq_data *d)
.....[     256]: {
.....[     257]: return d->state_use_accessors & IRQD_IRQ_INPROGRESS;
.....[     258]: }
.....[     265]: static inline __attribute__((no_instrument_function)) void irqd_set_chained_irq_inprogress(struct irq_data \
.....                *d)
.....[     266]: {
.....[     267]: d->state_use_accessors |= IRQD_IRQ_INPROGRESS;
.....[     268]: }
.....[     270]: static inline __attribute__((no_instrument_function)) void irqd_clr_chained_irq_inprogress(struct irq_data \
.....                *d)
.....[     271]: {
.....[     272]: d->state_use_accessors &= ~IRQD_IRQ_INPROGRESS;
.....[     273]: }
.....[     275]: static inline __attribute__((no_instrument_function)) irq_hw_number_t irqd_to_hwirq(struct irq_data *d)
.....[     276]: {
.....[     277]: return d->hwirq;
.....[     278]: }
.....[     308]: struct irq_chip {
.....[     309]: const char *name;
.....[     310]: unsigned int (*irq_startup)(struct irq_data *data);
.....[     311]: void (*irq_shutdown)(struct irq_data *data);
.....[     312]: void (*irq_enable)(struct irq_data *data);
.....[     313]: void (*irq_disable)(struct irq_data *data);
.....[     315]: void (*irq_ack)(struct irq_data *data);
.....[     316]: void (*irq_mask)(struct irq_data *data);
.....[     317]: void (*irq_mask_ack)(struct irq_data *data);
.....[     318]: void (*irq_unmask)(struct irq_data *data);
.....[     319]: void (*irq_eoi)(struct irq_data *data);
.....[     321]: int (*irq_set_affinity)(struct irq_data *data, const struct cpumask *dest, bool force);
.....[     322]: int (*irq_retrigger)(struct irq_data *data);
.....[     323]: int (*irq_set_type)(struct irq_data *data, unsigned int flow_type);
.....[     324]: int (*irq_set_wake)(struct irq_data *data, unsigned int on);
.....[     326]: void (*irq_bus_lock)(struct irq_data *data);
.....[     327]: void (*irq_bus_sync_unlock)(struct irq_data *data);
.....[     329]: void (*irq_cpu_online)(struct irq_data *data);
.....[     330]: void (*irq_cpu_offline)(struct irq_data *data);
.....[     332]: void (*irq_suspend)(struct irq_data *data);
.....[     333]: void (*irq_resume)(struct irq_data *data);
.....[     334]: void (*irq_pm_shutdown)(struct irq_data *data);
.....[     336]: void (*irq_calc_mask)(struct irq_data *data);
.....[     338]: void (*irq_print_chip)(struct irq_data *data, struct seq_file *p);
.....[     340]: unsigned long flags;
.....[     341]: };
.....[     353]: enum {
.....[     354]: IRQCHIP_SET_TYPE_MASKED = (1 << 0),
.....[     355]: IRQCHIP_EOI_IF_HANDLED = (1 << 1),
.....[     356]: IRQCHIP_MASK_ON_SUSPEND = (1 << 2),
.....[     357]: IRQCHIP_ONOFFLINE_ENABLED = (1 << 3),
.....[     358]: IRQCHIP_SKIP_SET_WAKE = (1 << 4),
.....[     359]: IRQCHIP_ONESHOT_SAFE = (1 << 5),
.....[     360]: };
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqdesc.h
......[      11]: struct irq_affinity_notify;
......[      12]: struct proc_dir_entry;
......[      13]: struct module;
......[      14]: struct irq_desc;
......[      40]: struct irq_desc {
......[      41]: struct irq_data irq_data;
......[      42]: unsigned int *kstat_irqs;
......[      43]: irq_flow_handler_t handle_irq;
......[      47]: struct irqaction *action;
......[      48]: unsigned int status_use_accessors;
......[      49]: unsigned int core_internal_state__do_not_mess_with_it;
......[      50]: unsigned int depth;
......[      51]: unsigned int wake_depth;
......[      52]: unsigned int irq_count;
......[      53]: unsigned long last_unhandled;
......[      54]: unsigned int irqs_unhandled;
......[      55]: raw_spinlock_t lock;
......[      56]: struct cpumask *percpu_enabled;
......[      58]: const struct cpumask *affinity_hint;
......[      59]: struct irq_affinity_notify *affinity_notify;
......[      61]: cpumask_var_t pending_mask;
......[      64]: unsigned long threads_oneshot;
......[      65]: atomic_t threads_active;
......[      66]: wait_queue_head_t wait_for_threads;
......[      68]: struct proc_dir_entry *dir;
......[      70]: int parent_irq;
......[      71]: struct module *owner;
......[      72]: const char *name;
......[      73]: } __attribute__((__aligned__(1 << (6))));
......[      79]: static inline __attribute__((no_instrument_function)) struct irq_data *irq_desc_get_irq_data(struct irq_desc \
......                *desc)
......[      80]: {
......[      81]: return &desc->irq_data;
......[      82]: }
......[      84]: static inline __attribute__((no_instrument_function)) struct irq_chip *irq_desc_get_chip(struct irq_desc *desc\
......                )
......[      85]: {
......[      86]: return desc->irq_data.chip;
......[      87]: }
......[      89]: static inline __attribute__((no_instrument_function)) void *irq_desc_get_chip_data(struct irq_desc *desc)
......[      90]: {
......[      91]: return desc->irq_data.chip_data;
......[      92]: }
......[      94]: static inline __attribute__((no_instrument_function)) void *irq_desc_get_handler_data(struct irq_desc *desc\
......                )
......[      95]: {
......[      96]: return desc->irq_data.handler_data;
......[      97]: }
......[      99]: static inline __attribute__((no_instrument_function)) struct msi_desc *irq_desc_get_msi_desc(struct irq_desc \
......                *desc)
......[     100]: {
......[     101]: return desc->irq_data.msi_desc;
......[     102]: }
......[     110]: static inline __attribute__((no_instrument_function)) void generic_handle_irq_desc(unsigned int irq, struct \
......                irq_desc *desc)
......[     111]: {
......[     112]: desc->handle_irq(irq, desc);
......[     113]: }
......[     115]: int generic_handle_irq(unsigned int irq);
......[     118]: static inline __attribute__((no_instrument_function)) int irq_has_action(unsigned int irq)
......[     119]: {
......[     120]: struct irq_desc *desc = irq_to_desc(irq);
......[     121]: return desc->action != ((void *)0);
......[     122]: }
......[     125]: static inline __attribute__((no_instrument_function)) void __irq_set_handler_locked(unsigned int irq,
......[     126]: irq_flow_handler_t handler)
......[     127]: {
......[     128]: struct irq_desc *desc;
......[     130]: desc = irq_to_desc(irq);
......[     131]: desc->handle_irq = handler;
......[     132]: }
......[     135]: static inline __attribute__((no_instrument_function)) void
......[     136]: __irq_set_chip_handler_name_locked(unsigned int irq, struct irq_chip *chip,
......[     137]: irq_flow_handler_t handler, const char *name)
......[     138]: {
......[     139]: struct irq_desc *desc;
......[     141]: desc = irq_to_desc(irq);
......[     142]: irq_desc_get_irq_data(desc)->chip = chip;
......[     143]: desc->handle_irq = handler;
......[     144]: desc->name = name;
......[     145]: }
......[     147]: static inline __attribute__((no_instrument_function)) int irq_balancing_disabled(unsigned int irq)
......[     148]: {
......[     149]: struct irq_desc *desc;
......[     151]: desc = irq_to_desc(irq);
......[     152]: return desc->status_use_accessors & (IRQ_PER_CPU | IRQ_NO_BALANCING);
......[     153]: }
......[     155]: static inline __attribute__((no_instrument_function)) void
......[     156]: irq_set_lockdep_class(unsigned int irq, struct lock_class_key *class)
......[     157]: {
......[     158]: struct irq_desc *desc = irq_to_desc(irq);
......[     160]: if (desc)
......[     161]: do { (void)(class); } while (0);
......[     162]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irqdesc.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hw_irq.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hw_irq.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/profile.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/profile.h
.......[      16]: struct proc_dir_entry;
.......[      17]: struct pt_regs;
.......[      18]: struct notifier_block;
.......[      21]: void create_prof_cpu_mask(void);
.......[      22]: int create_proc_profile(void);
.......[      34]: enum profile_type {
.......[      35]: PROFILE_TASK_EXIT,
.......[      36]: PROFILE_MUNMAP
.......[      37]: };
.......[      41]: extern int prof_on __attribute__((__section__(".data..read_mostly")));
.......[      44]: int profile_init(void);
.......[      45]: int profile_setup(char *str);
.......[      46]: void profile_tick(int type);
.......[      51]: void profile_hits(int type, void *ip, unsigned int nr_hits);
.......[      56]: static inline __attribute__((no_instrument_function)) void profile_hit(int type, void *ip)
.......[      57]: {
.......[      61]: if (__builtin_expect(!!(prof_on == type), 0))
.......[      62]: profile_hits(type, ip, 1);
.......[      63]: }
.......[      65]: struct task_struct;
.......[      66]: struct mm_struct;
.......[      69]: void profile_task_exit(struct task_struct * task);
.......[      74]: int profile_handoff_task(struct task_struct * task);
.......[      77]: void profile_munmap(unsigned long addr);
.......[      79]: int task_handoff_register(struct notifier_block * n);
.......[      80]: int task_handoff_unregister(struct notifier_block * n);
.......[      82]: int profile_event_register(enum profile_type, struct notifier_block * n);
.......[      83]: int profile_event_unregister(enum profile_type, struct notifier_block * n);
.......[      85]: struct pt_regs;
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/profile.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hw_irq.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/sections.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/sections.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/sections.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/sections.h
........[      26]: extern char _text[], _stext[], _etext[];
........[      27]: extern char _data[], _sdata[], _edata[];
........[      28]: extern char __bss_start[], __bss_stop[];
........[      29]: extern char __init_begin[], __init_end[];
........[      30]: extern char _sinittext[], _einittext[];
........[      31]: extern char _end[];
........[      32]: extern char __per_cpu_load[], __per_cpu_start[], __per_cpu_end[];
........[      33]: extern char __kprobes_text_start[], __kprobes_text_end[];
........[      34]: extern char __entry_text_start[], __entry_text_end[];
........[      35]: extern char __start_rodata[], __end_rodata[];
........[      38]: extern char __ctors_start[], __ctors_end[];
........[      49]: static inline __attribute__((no_instrument_function)) int arch_is_kernel_text(unsigned long addr)
........[      50]: {
........[      51]: return 0;
........[      52]: }
........[      56]: static inline __attribute__((no_instrument_function)) int arch_is_kernel_data(unsigned long addr)
........[      57]: {
........[      58]: return 0;
........[      59]: }
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/sections.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/sections.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess.h
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smap.h
.........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smap.h
.........[      61]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void clac(void)
.........[      62]: {
.........[      64]: asm volatile ("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" : : : "memory");
.........[      65]: }
.........[      67]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void stac(void)
.........[      68]: {
.........[      70]: asm volatile ("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" : : : "memory");
.........[      71]: }
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/smap.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess.h
........[      97]: struct exception_table_entry {
........[      98]: int insn, fixup;
........[      99]: };
........[     104]: extern int fixup_exception(struct pt_regs *regs);
........[     105]: extern int early_fixup_exception(unsigned long *ip);
........[     122]: extern int __get_user_1(void);
........[     123]: extern int __get_user_2(void);
........[     124]: extern int __get_user_4(void);
........[     125]: extern int __get_user_8(void);
........[     126]: extern int __get_user_bad(void);
........[     219]: extern void __put_user_bad(void);
........[     225]: extern void __put_user_1(void);
........[     226]: extern void __put_user_2(void);
........[     227]: extern void __put_user_4(void);
........[     228]: extern void __put_user_8(void);
........[     406]: struct __large_struct { unsigned long buf[100]; };
........[     517]: extern unsigned long
........[     518]: copy_from_user_nmi(void *to, const void *from, unsigned long n);
........[     519]: extern long
........[     520]: strncpy_from_user(char *dst, const char *src, long count);
........[     522]: extern long strlen_user(const char *str);
........[     523]: extern long strnlen_user(const char *str, long n);
........[     525]: unsigned long clear_user(void *mem, unsigned long len);
........[     526]: unsigned long __clear_user(void *mem, unsigned long len);
.......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess.h
........# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess_64.h
.........[      19]: unsigned long
.........[      20]: copy_user_enhanced_fast_string(void *to, const void *from, unsigned len);
.........[      21]: unsigned long
.........[      22]: copy_user_generic_string(void *to, const void *from, unsigned len);
.........[      23]: unsigned long
.........[      24]: copy_user_generic_unrolled(void *to, const void *from, unsigned len);
.........[      26]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) unsigned long
.........[      27]: copy_user_generic(void *to, const void *from, unsigned len)
.........[      28]: {
.........[      29]: unsigned ret;
.........[      44]: asm volatile ("661:\n\t" "call %P[old]" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(3*32+16)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" " .long 661b - .\n" " .long " "663""2""f - .\n" " .word " "(9*32+ 9)" "\n" " .byte " "662b-661b" "\n" \
.........                " .byte " "664""2""f-""663""2""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" \
.........                "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" " .byte 0xff + (" "664""2""f-""663""2""f" ") - (" "662b-661b" \
.........                ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" "call %P[new1]" "\n" \
.........                "664""1" ":\n\t" "663""2"":\n\t" "call %P[new2]" "\n" "664""2" ":\n\t" ".popsection" : "=a"( ret) : [old] "i" (copy_user_generic_unrolled\
.........                ), [new1] "i" (copy_user_generic_string), [new2] "i" (copy_user_enhanced_fast_string),"1"( to));
.........[      45]: return ret;
.........[      46]: }
.........[      48]: unsigned long
.........[      49]: copy_in_user(void *to, const void *from, unsigned len);
.........[      51]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline))
.........[      52]: int __copy_from_user_nocheck(void *dst, const void *src, unsigned size)
.........[      53]: {
.........[      54]: int ret = 0;
.........[      56]: if (!__builtin_constant_p(size))
.........[      57]: return copy_user_generic(dst, ( void *)src, size);
.........[      58]: switch (size) {
.........[      59]: case 1:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""b"" %2,%""b""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""b"" %""b""1,%""b""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=q"(*(u8 *)dst) : "m" ((*(struct \
.........                __large_struct *)((u8 *)src))), "i" (1), "0" (ret));
.........[      61]: return ret;
.........[      62]: case 2:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""w"" %2,%""w""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""w"" %""w""1,%""w""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(*(u16 *)dst) : "m" ((*(struct \
.........                __large_struct *)((u16 *)src))), "i" (2), "0" (ret));
.........[      64]: return ret;
.........[      65]: case 4:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""l"" %2,%""k""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""l"" %""k""1,%""k""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(*(u32 *)dst) : "m" ((*(struct \
.........                __large_struct *)((u32 *)src))), "i" (4), "0" (ret));
.........[      67]: return ret;
.........[      68]: case 8:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %2,%""""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""q"" %""""1,%""""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(*(u64 *)dst) : "m" ((*(struct \
.........                __large_struct *)((u64 *)src))), "i" (8), "0" (ret));
.........[      70]: return ret;
.........[      71]: case 10:
.........[      73]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %2,%""""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""q"" %""""1,%""""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(*(u64 *)dst) : "m" ((*(struct \
.........                __large_struct *)((u64 *)src))), "i" (10), "0" (ret));
.........[      74]: if (__builtin_expect(!!(ret), 0))
.........[      75]: return ret;
.........[      78]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""w"" %2,%""w""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""w"" %""w""1,%""w""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(*(u16 *)(8 +( char *)dst)) \
.........                : "m" ((*(struct __large_struct *)((u16 *)(8 +( char *)src)))), "i" (2), "0" (ret));
.........[      79]: return ret;
.........[      80]: case 16:
.........[      82]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %2,%""""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""q"" %""""1,%""""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(*(u64 *)dst) : "m" ((*(struct \
.........                __large_struct *)((u64 *)src))), "i" (16), "0" (ret));
.........[      83]: if (__builtin_expect(!!(ret), 0))
.........[      84]: return ret;
.........[      87]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %2,%""""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""q"" %""""1,%""""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(*(u64 *)(8 +( char *)dst)) \
.........                : "m" ((*(struct __large_struct *)((u64 *)(8 +( char *)src)))), "i" (8), "0" (ret));
.........[      88]: return ret;
.........[      89]: default:
.........[      90]: return copy_user_generic(dst, ( void *)src, size);
.........[      91]: }
.........[      92]: }
.........[      94]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline))
.........[      95]: int __copy_from_user(void *dst, const void *src, unsigned size)
.........[      96]: {
.........[      97]: might_fault();
.........[      98]: return __copy_from_user_nocheck(dst, src, size);
.........[      99]: }
.........[     101]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline))
.........[     102]: int __copy_to_user_nocheck(void *dst, const void *src, unsigned size)
.........[     103]: {
.........[     104]: int ret = 0;
.........[     106]: if (!__builtin_constant_p(size))
.........[     107]: return copy_user_generic(( void *)dst, src, size);
.........[     108]: switch (size) {
.........[     109]: case 1:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""b"" %""b""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "iq"(*(u8 *)src), "m" ((*(struct __large_struct *)((u8 *)dst))), "i" \
.........                (1), "0" (ret));
.........[     111]: return ret;
.........[     112]: case 2:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""w"" %""w""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "ir"(*(u16 *)src), "m" ((*(struct __large_struct *)((u16 *)dst))), \
.........                "i" (2), "0" (ret));
.........[     114]: return ret;
.........[     115]: case 4:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""l"" %""k""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "ir"(*(u32 *)src), "m" ((*(struct __large_struct *)((u32 *)dst))), \
.........                "i" (4), "0" (ret));
.........[     117]: return ret;
.........[     118]: case 8:asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %""""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "er"(*(u64 *)src), "m" ((*(struct __large_struct *)((u64 *)dst))), \
.........                "i" (8), "0" (ret));
.........[     120]: return ret;
.........[     121]: case 10:
.........[     123]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %""""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "er"(*(u64 *)src), "m" ((*(struct __large_struct *)((u64 *)dst))), \
.........                "i" (10), "0" (ret));
.........[     124]: if (__builtin_expect(!!(ret), 0))
.........[     125]: return ret;
.........[     126]: asm("":::"memory");
.........[     128]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""w"" %""w""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "ir"(4[(u16 *)src]), "m" ((*(struct __large_struct *)(4 +( u16 *)dst\
.........                ))), "i" (2), "0" (ret));
.........[     129]: return ret;
.........[     130]: case 16:
.........[     132]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %""""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "er"(*(u64 *)src), "m" ((*(struct __large_struct *)((u64 *)dst))), \
.........                "i" (16), "0" (ret));
.........[     133]: if (__builtin_expect(!!(ret), 0))
.........[     134]: return ret;
.........[     135]: asm("":::"memory");
.........[     137]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %""""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "er"(1[(u64 *)src]), "m" ((*(struct __large_struct *)(1 +( u64 *)dst\
.........                ))), "i" (8), "0" (ret));
.........[     138]: return ret;
.........[     139]: default:
.........[     140]: return copy_user_generic(( void *)dst, src, size);
.........[     141]: }
.........[     142]: }
.........[     144]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline))
.........[     145]: int __copy_to_user(void *dst, const void *src, unsigned size)
.........[     146]: {
.........[     147]: might_fault();
.........[     148]: return __copy_to_user_nocheck(dst, src, size);
.........[     149]: }
.........[     151]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline))
.........[     152]: int __copy_in_user(void *dst, const void *src, unsigned size)
.........[     153]: {
.........[     154]: int ret = 0;
.........[     156]: might_fault();
.........[     157]: if (!__builtin_constant_p(size))
.........[     158]: return copy_user_generic(( void *)dst,
.........[     159]: ( void *)src, size);
.........[     160]: switch (size) {
.........[     161]: case 1: {
.........[     162]: u8 tmp;
.........[     164]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""b"" %2,%""b""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""b"" %""b""1,%""b""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=q"(tmp) : "m" ((*(struct __large_struct \
.........                *)((u8 *)src))), "i" (1), "0" (ret));
.........[     165]: if (__builtin_expect(!!(!ret), 1))
.........[     167]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""b"" %""b""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "iq"(tmp), "m" ((*(struct __large_struct *)((u8 *)dst))), "i" (1), "0" \
.........                (ret));
.........[     168]: return ret;
.........[     169]: }
.........[     170]: case 2: {
.........[     171]: u16 tmp;
.........[     173]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""w"" %2,%""w""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""w"" %""w""1,%""w""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(tmp) : "m" ((*(struct __large_struct \
.........                *)((u16 *)src))), "i" (2), "0" (ret));
.........[     174]: if (__builtin_expect(!!(!ret), 1))
.........[     176]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""w"" %""w""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "ir"(tmp), "m" ((*(struct __large_struct *)((u16 *)dst))), "i" (2), \
.........                "0" (ret));
.........[     177]: return ret;
.........[     178]: }
.........[     180]: case 4: {
.........[     181]: u32 tmp;
.........[     183]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""l"" %2,%""k""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""l"" %""k""1,%""k""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(tmp) : "m" ((*(struct __large_struct \
.........                *)((u32 *)src))), "i" (4), "0" (ret));
.........[     184]: if (__builtin_expect(!!(!ret), 1))
.........[     186]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""l"" %""k""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "ir"(tmp), "m" ((*(struct __large_struct *)((u32 *)dst))), "i" (4), \
.........                "0" (ret));
.........[     187]: return ret;
.........[     188]: }
.........[     189]: case 8: {
.........[     190]: u64 tmp;
.........[     192]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %2,%""""1\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	xor""q"" %""""1,%""""1\n" "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" \
.........                " .long (" "1b" ") - .\n" " .long (" "3b" ") - .\n" " .popsection\n" : "=r" (ret), "=r"(tmp) : "m" ((*(struct __large_struct \
.........                *)((u64 *)src))), "i" (8), "0" (ret));
.........[     193]: if (__builtin_expect(!!(!ret), 1))
.........[     195]: asm volatile("661:\n\t" ".byte " "0x66" "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" \
.........                " .long " "663""1""f - .\n" " .word " "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663"\
.........                "1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" " .byte 0xff + (" "664""1""f-""663"\
.........                "1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" "663""1"":\n\t" \
.........                ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" "1:	mov""q"" %""""1,%2\n" "2: " "661:\n\t" ".byte " "0x66" \
.........                "\n" "\n662:\n" ".pushsection .altinstructions,\"a\"\n" " .long 661b - .\n" " .long " "663""1""f - .\n" " .word " \
.........                "(9*32+20)" "\n" " .byte " "662b-661b" "\n" " .byte " "664""1""f-""663""1""f" "\n" ".popsection\n" ".pushsection .discard,\"aw\",@progbits\n" \
.........                " .byte 0xff + (" "664""1""f-""663""1""f" ") - (" "662b-661b" ")\n" ".popsection\n" ".pushsection .altinstr_replacement, \"ax\"\n" \
.........                "663""1"":\n\t" ".byte 0x0f" "\n" "664""1" ":\n\t" ".popsection" "\n" ".section .fixup,\"ax\"\n" "3:	mov %3,%0\n" \
.........                "	jmp 2b\n" ".previous\n" " .pushsection \"__ex_table\",\"a\"\n" " .balign 8\n" " .long (" "1b" ") - .\n" " .long (" \
.........                "3b" ") - .\n" " .popsection\n" : "=r"(ret) : "er"(tmp), "m" ((*(struct __large_struct *)((u64 *)dst))), "i" (8), \
.........                "0" (ret));
.........[     196]: return ret;
.........[     197]: }
.........[     198]: default:
.........[     199]: return copy_user_generic(( void *)dst,
.........[     200]: ( void *)src, size);
.........[     201]: }
.........[     202]: }
.........[     204]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int
.........[     205]: __copy_from_user_inatomic(void *dst, const void *src, unsigned size)
.........[     206]: {
.........[     207]: return __copy_from_user_nocheck(dst, ( const void *)src, size);
.........[     208]: }
.........[     210]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int
.........[     211]: __copy_to_user_inatomic(void *dst, const void *src, unsigned size)
.........[     212]: {
.........[     213]: return __copy_to_user_nocheck(( void *)dst, src, size);
.........[     214]: }
.........[     216]: extern long __copy_user_nocache(void *dst, const void *src,
.........[     217]: unsigned size, int zerorest);
.........[     219]: static inline __attribute__((no_instrument_function)) int
.........[     220]: __copy_from_user_nocache(void *dst, const void *src, unsigned size)
.........[     221]: {
.........[     222]: might_fault();
.........[     223]: return __copy_user_nocache(dst, src, size, 1);
.........[     224]: }
.........[     226]: static inline __attribute__((no_instrument_function)) int
.........[     227]: __copy_from_user_inatomic_nocache(void *dst, const void *src,
.........[     228]: unsigned size)
.........[     229]: {
.........[     230]: return __copy_user_nocache(dst, src, size, 0);
.........[     231]: }
.........[     233]: unsigned long
.........[     234]: copy_user_handle_tail(char *to, char *from, unsigned len, unsigned zerorest);
.........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess_64.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess.h
........[     545]: unsigned long _copy_from_user(void *to, const void *from,
........[     546]: unsigned n);
........[     547]: unsigned long _copy_to_user(void *to, const void *from,
........[     548]: unsigned n);
........[     556]: extern void
........[     557]: copy_from_user_overflow(void);
........[     558]: extern void
........[     559]: copy_to_user_overflow(void) __asm__("copy_from_user_overflow");
........[     577]: static inline __attribute__((no_instrument_function)) void
........[     578]: __copy_from_user_overflow(int size, unsigned long count)
........[     579]: {
........[     580]: ({ int __ret_warn_on = !!(1); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_fmt(__FILE__, __LINE__\
........                , "Buffer overflow detected (%d < %lu)!\n"); __builtin_expect(!!(__ret_warn_on), 0); });
........[     581]: }
........[     587]: static inline __attribute__((no_instrument_function)) unsigned long
........[     588]: copy_from_user(void *to, const void *from, unsigned long n)
........[     589]: {
........[     590]: int sz = -1;
........[     592]: might_fault();
........[     612]: if (__builtin_expect(!!(sz < 0 || sz >= n), 1))
........[     613]: n = _copy_from_user(to, from, n);
........[     614]: else if(__builtin_constant_p(n))
........[     615]: copy_from_user_overflow();
........[     616]: else
........[     617]: __copy_from_user_overflow(sz, n);
........[     619]: return n;
........[     620]: }
........[     622]: static inline __attribute__((no_instrument_function)) unsigned long
........[     623]: copy_to_user(void *to, const void *from, unsigned long n)
........[     624]: {
........[     625]: int sz = -1;
........[     627]: might_fault();
........[     630]: if (__builtin_expect(!!(sz < 0 || sz >= n), 1))
........[     631]: n = _copy_to_user(to, from, n);
........[     632]: else if(__builtin_constant_p(n))
........[     633]: copy_to_user_overflow();
........[     634]: else
........[     635]: __copy_from_user_overflow(sz, n);
........[     637]: return n;
........[     638]: }
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/uaccess.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/sections.h
.......[       7]: extern char __brk_base[], __brk_limit[];
.......[       8]: extern struct exception_table_entry __stop___ex_table[];
.......[      11]: extern char __end_rodata_hpage_align[];
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/sections.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hw_irq.h
......[      29]: extern void apic_timer_interrupt(void);
......[      30]: extern void x86_platform_ipi(void);
......[      31]: extern void kvm_posted_intr_ipi(void);
......[      32]: extern void error_interrupt(void);
......[      33]: extern void irq_work_interrupt(void);
......[      35]: extern void spurious_interrupt(void);
......[      36]: extern void thermal_interrupt(void);
......[      37]: extern void reschedule_interrupt(void);
......[      39]: extern void invalidate_interrupt(void);
......[      40]: extern void invalidate_interrupt0(void);
......[      41]: extern void invalidate_interrupt1(void);
......[      42]: extern void invalidate_interrupt2(void);
......[      43]: extern void invalidate_interrupt3(void);
......[      44]: extern void invalidate_interrupt4(void);
......[      45]: extern void invalidate_interrupt5(void);
......[      46]: extern void invalidate_interrupt6(void);
......[      47]: extern void invalidate_interrupt7(void);
......[      48]: extern void invalidate_interrupt8(void);
......[      49]: extern void invalidate_interrupt9(void);
......[      50]: extern void invalidate_interrupt10(void);
......[      51]: extern void invalidate_interrupt11(void);
......[      52]: extern void invalidate_interrupt12(void);
......[      53]: extern void invalidate_interrupt13(void);
......[      54]: extern void invalidate_interrupt14(void);
......[      55]: extern void invalidate_interrupt15(void);
......[      56]: extern void invalidate_interrupt16(void);
......[      57]: extern void invalidate_interrupt17(void);
......[      58]: extern void invalidate_interrupt18(void);
......[      59]: extern void invalidate_interrupt19(void);
......[      60]: extern void invalidate_interrupt20(void);
......[      61]: extern void invalidate_interrupt21(void);
......[      62]: extern void invalidate_interrupt22(void);
......[      63]: extern void invalidate_interrupt23(void);
......[      64]: extern void invalidate_interrupt24(void);
......[      65]: extern void invalidate_interrupt25(void);
......[      66]: extern void invalidate_interrupt26(void);
......[      67]: extern void invalidate_interrupt27(void);
......[      68]: extern void invalidate_interrupt28(void);
......[      69]: extern void invalidate_interrupt29(void);
......[      70]: extern void invalidate_interrupt30(void);
......[      71]: extern void invalidate_interrupt31(void);
......[      73]: extern void irq_move_cleanup_interrupt(void);
......[      74]: extern void reboot_interrupt(void);
......[      75]: extern void threshold_interrupt(void);
......[      77]: extern void call_function_interrupt(void);
......[      78]: extern void call_function_single_interrupt(void);
......[      82]: extern void trace_apic_timer_interrupt(void);
......[      83]: extern void trace_x86_platform_ipi(void);
......[      84]: extern void trace_error_interrupt(void);
......[      85]: extern void trace_irq_work_interrupt(void);
......[      86]: extern void trace_spurious_interrupt(void);
......[      87]: extern void trace_thermal_interrupt(void);
......[      88]: extern void trace_reschedule_interrupt(void);
......[      89]: extern void trace_threshold_interrupt(void);
......[      90]: extern void trace_call_function_interrupt(void);
......[      91]: extern void trace_call_function_single_interrupt(void);
......[      99]: extern unsigned long io_apic_irqs;
......[     101]: extern void init_VISWS_APIC_irqs(void);
......[     102]: extern void setup_IO_APIC(void);
......[     103]: extern void disable_IO_APIC(void);
......[     105]: struct io_apic_irq_attr {
......[     106]: int ioapic;
......[     107]: int ioapic_pin;
......[     108]: int trigger;
......[     109]: int polarity;
......[     110]: };
......[     112]: static inline __attribute__((no_instrument_function)) void set_io_apic_irq_attr(struct io_apic_irq_attr *irq_attr\
......                ,
......[     113]: int ioapic, int ioapic_pin,
......[     114]: int trigger, int polarity)
......[     115]: {
......[     116]: irq_attr->ioapic = ioapic;
......[     117]: irq_attr->ioapic_pin = ioapic_pin;
......[     118]: irq_attr->trigger = trigger;
......[     119]: irq_attr->polarity = polarity;
......[     120]: }
......[     123]: struct irq_2_iommu {
......[     124]: struct intel_iommu *iommu;
......[     125]: u16 irte_index;
......[     126]: u16 sub_handle;
......[     127]: u8 irte_mask;
......[     128]: };
......[     131]: struct irq_2_irte {
......[     132]: u16 devid;
......[     133]: u16 index;
......[     134]: };
......[     141]: struct irq_cfg {
......[     142]: struct irq_pin_list *irq_2_pin;
......[     143]: cpumask_var_t domain;
......[     144]: cpumask_var_t old_domain;
......[     145]: u8 vector;
......[     146]: u8 move_in_progress : 1;
......[     148]: u8 remapped : 1;
......[     149]: union {
......[     150]: struct irq_2_iommu irq_2_iommu;
......[     151]: struct irq_2_irte irq_2_irte;
......[     152]: };
......[     154]: };
......[     156]: extern int assign_irq_vector(int, struct irq_cfg *, const struct cpumask *);
......[     157]: extern void send_cleanup_vector(struct irq_cfg *);
......[     159]: struct irq_data;
......[     160]: int __ioapic_set_affinity(struct irq_data *, const struct cpumask *,
......[     161]: unsigned int *dest_id);
......[     162]: extern int IO_APIC_get_PCI_irq_vector(int bus, int devfn, int pin, struct io_apic_irq_attr *irq_attr);
......[     163]: extern void setup_ioapic_dest(void);
......[     165]: extern void enable_IO_APIC(void);
......[     168]: extern atomic_t irq_err_count;
......[     169]: extern atomic_t irq_mis_count;
......[     172]: extern void eisa_set_level_irq(unsigned int irq);
......[     175]: extern void smp_apic_timer_interrupt(struct pt_regs *);
......[     176]: extern void smp_spurious_interrupt(struct pt_regs *);
......[     177]: extern void smp_x86_platform_ipi(struct pt_regs *);
......[     178]: extern void smp_error_interrupt(struct pt_regs *);
......[     180]: extern void smp_irq_move_cleanup_interrupt(void);
......[     183]: extern void smp_reschedule_interrupt(struct pt_regs *);
......[     184]: extern void smp_call_function_interrupt(struct pt_regs *);
......[     185]: extern void smp_call_function_single_interrupt(struct pt_regs *);
......[     186]: extern void smp_invalidate_interrupt(struct pt_regs *);
......[     189]: extern void (*__attribute__ ((__section__(".init.rodata"))) interrupt[256-0x20])(void);
......[     194]: typedef int vector_irq_t[256];
......[     195]: extern __attribute__((section(".data..percpu" ""))) __typeof__(vector_irq_t) vector_irq;
......[     196]: extern void setup_vector_irq(int cpu);
......[     199]: extern void lock_vector_lock(void);
......[     200]: extern void unlock_vector_lock(void);
......[     201]: extern void __setup_vector_irq(int cpu);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hw_irq.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
.....[     380]: struct irqaction;
.....[     381]: extern int setup_irq(unsigned int irq, struct irqaction *new);
.....[     382]: extern void remove_irq(unsigned int irq, struct irqaction *act);
.....[     383]: extern int setup_percpu_irq(unsigned int irq, struct irqaction *new);
.....[     384]: extern void remove_percpu_irq(unsigned int irq, struct irqaction *act);
.....[     386]: extern void irq_cpu_online(void);
.....[     387]: extern void irq_cpu_offline(void);
.....[     388]: extern int __irq_set_affinity_locked(struct irq_data *data, const struct cpumask *cpumask);
.....[     391]: void irq_move_irq(struct irq_data *data);
.....[     392]: void irq_move_masked_irq(struct irq_data *data);
.....[     398]: extern int no_irq_affinity;
.....[     403]: static inline __attribute__((no_instrument_function)) int irq_set_parent(int irq, int parent_irq)
.....[     404]: {
.....[     405]: return 0;
.....[     406]: }
.....[     413]: extern void handle_level_irq(unsigned int irq, struct irq_desc *desc);
.....[     414]: extern void handle_fasteoi_irq(unsigned int irq, struct irq_desc *desc);
.....[     415]: extern void handle_edge_irq(unsigned int irq, struct irq_desc *desc);
.....[     416]: extern void handle_edge_eoi_irq(unsigned int irq, struct irq_desc *desc);
.....[     417]: extern void handle_simple_irq(unsigned int irq, struct irq_desc *desc);
.....[     418]: extern void handle_percpu_irq(unsigned int irq, struct irq_desc *desc);
.....[     419]: extern void handle_percpu_devid_irq(unsigned int irq, struct irq_desc *desc);
.....[     420]: extern void handle_bad_irq(unsigned int irq, struct irq_desc *desc);
.....[     421]: extern void handle_nested_irq(unsigned int irq);
.....[     424]: extern void note_interrupt(unsigned int irq, struct irq_desc *desc,
.....[     425]: irqreturn_t action_ret);
.....[     429]: extern int noirqdebug_setup(char *str);
.....[     432]: extern int can_request_irq(unsigned int irq, unsigned long irqflags);
.....[     435]: extern struct irq_chip no_irq_chip;
.....[     436]: extern struct irq_chip dummy_irq_chip;
.....[     438]: extern void
.....[     439]: irq_set_chip_and_handler_name(unsigned int irq, struct irq_chip *chip,
.....[     440]: irq_flow_handler_t handle, const char *name);
.....[     442]: static inline __attribute__((no_instrument_function)) void irq_set_chip_and_handler(unsigned int irq, struct \
.....                irq_chip *chip,
.....[     443]: irq_flow_handler_t handle)
.....[     444]: {
.....[     445]: irq_set_chip_and_handler_name(irq, chip, handle, ((void *)0));
.....[     446]: }
.....[     448]: extern int irq_set_percpu_devid(unsigned int irq);
.....[     450]: extern void
.....[     451]: __irq_set_handler(unsigned int irq, irq_flow_handler_t handle, int is_chained,
.....[     452]: const char *name);
.....[     454]: static inline __attribute__((no_instrument_function)) void
.....[     455]: irq_set_handler(unsigned int irq, irq_flow_handler_t handle)
.....[     456]: {
.....[     457]: __irq_set_handler(irq, handle, 0, ((void *)0));
.....[     458]: }
.....[     465]: static inline __attribute__((no_instrument_function)) void
.....[     466]: irq_set_chained_handler(unsigned int irq, irq_flow_handler_t handle)
.....[     467]: {
.....[     468]: __irq_set_handler(irq, handle, 1, ((void *)0));
.....[     469]: }
.....[     471]: void irq_modify_status(unsigned int irq, unsigned long clr, unsigned long set);
.....[     473]: static inline __attribute__((no_instrument_function)) void irq_set_status_flags(unsigned int irq, unsigned long \
.....                set)
.....[     474]: {
.....[     475]: irq_modify_status(irq, 0, set);
.....[     476]: }
.....[     478]: static inline __attribute__((no_instrument_function)) void irq_clear_status_flags(unsigned int irq, unsigned \
.....                long clr)
.....[     479]: {
.....[     480]: irq_modify_status(irq, clr, 0);
.....[     481]: }
.....[     483]: static inline __attribute__((no_instrument_function)) void irq_set_noprobe(unsigned int irq)
.....[     484]: {
.....[     485]: irq_modify_status(irq, 0, IRQ_NOPROBE);
.....[     486]: }
.....[     488]: static inline __attribute__((no_instrument_function)) void irq_set_probe(unsigned int irq)
.....[     489]: {
.....[     490]: irq_modify_status(irq, IRQ_NOPROBE, 0);
.....[     491]: }
.....[     493]: static inline __attribute__((no_instrument_function)) void irq_set_nothread(unsigned int irq)
.....[     494]: {
.....[     495]: irq_modify_status(irq, 0, IRQ_NOTHREAD);
.....[     496]: }
.....[     498]: static inline __attribute__((no_instrument_function)) void irq_set_thread(unsigned int irq)
.....[     499]: {
.....[     500]: irq_modify_status(irq, IRQ_NOTHREAD, 0);
.....[     501]: }
.....[     503]: static inline __attribute__((no_instrument_function)) void irq_set_nested_thread(unsigned int irq, bool nest\
.....                )
.....[     504]: {
.....[     505]: if (nest)
.....[     506]: irq_set_status_flags(irq, IRQ_NESTED_THREAD);
.....[     507]: else
.....[     508]: irq_clear_status_flags(irq, IRQ_NESTED_THREAD);
.....[     509]: }
.....[     511]: static inline __attribute__((no_instrument_function)) void irq_set_percpu_devid_flags(unsigned int irq)
.....[     512]: {
.....[     513]: irq_set_status_flags(irq,
.....[     514]: IRQ_NOAUTOEN | IRQ_PER_CPU | IRQ_NOTHREAD |
.....[     515]: IRQ_NOPROBE | IRQ_PER_CPU_DEVID);
.....[     516]: }
.....[     519]: extern unsigned int create_irq_nr(unsigned int irq_want, int node);
.....[     520]: extern unsigned int __create_irqs(unsigned int from, unsigned int count,
.....[     521]: int node);
.....[     522]: extern int create_irq(void);
.....[     523]: extern void destroy_irq(unsigned int irq);
.....[     524]: extern void destroy_irqs(unsigned int irq, unsigned int count);
.....[     530]: extern void dynamic_irq_cleanup(unsigned int irq);
.....[     531]: static inline __attribute__((no_instrument_function)) void dynamic_irq_init(unsigned int irq)
.....[     532]: {
.....[     533]: dynamic_irq_cleanup(irq);
.....[     534]: }
.....[     537]: extern int irq_set_chip(unsigned int irq, struct irq_chip *chip);
.....[     538]: extern int irq_set_handler_data(unsigned int irq, void *data);
.....[     539]: extern int irq_set_chip_data(unsigned int irq, void *data);
.....[     540]: extern int irq_set_irq_type(unsigned int irq, unsigned int type);
.....[     541]: extern int irq_set_msi_desc(unsigned int irq, struct msi_desc *entry);
.....[     542]: extern int irq_set_msi_desc_off(unsigned int irq_base, unsigned int irq_offset,
.....[     543]: struct msi_desc *entry);
.....[     544]: extern struct irq_data *irq_get_irq_data(unsigned int irq);
.....[     546]: static inline __attribute__((no_instrument_function)) struct irq_chip *irq_get_chip(unsigned int irq)
.....[     547]: {
.....[     548]: struct irq_data *d = irq_get_irq_data(irq);
.....[     549]: return d ? d->chip : ((void *)0);
.....[     550]: }
.....[     552]: static inline __attribute__((no_instrument_function)) struct irq_chip *irq_data_get_irq_chip(struct irq_data \
.....                *d)
.....[     553]: {
.....[     554]: return d->chip;
.....[     555]: }
.....[     557]: static inline __attribute__((no_instrument_function)) void *irq_get_chip_data(unsigned int irq)
.....[     558]: {
.....[     559]: struct irq_data *d = irq_get_irq_data(irq);
.....[     560]: return d ? d->chip_data : ((void *)0);
.....[     561]: }
.....[     563]: static inline __attribute__((no_instrument_function)) void *irq_data_get_irq_chip_data(struct irq_data *d)
.....[     564]: {
.....[     565]: return d->chip_data;
.....[     566]: }
.....[     568]: static inline __attribute__((no_instrument_function)) void *irq_get_handler_data(unsigned int irq)
.....[     569]: {
.....[     570]: struct irq_data *d = irq_get_irq_data(irq);
.....[     571]: return d ? d->handler_data : ((void *)0);
.....[     572]: }
.....[     574]: static inline __attribute__((no_instrument_function)) void *irq_data_get_irq_handler_data(struct irq_data \
.....                *d)
.....[     575]: {
.....[     576]: return d->handler_data;
.....[     577]: }
.....[     579]: static inline __attribute__((no_instrument_function)) struct msi_desc *irq_get_msi_desc(unsigned int irq)
.....[     580]: {
.....[     581]: struct irq_data *d = irq_get_irq_data(irq);
.....[     582]: return d ? d->msi_desc : ((void *)0);
.....[     583]: }
.....[     585]: static inline __attribute__((no_instrument_function)) struct msi_desc *irq_data_get_msi(struct irq_data *d)
.....[     586]: {
.....[     587]: return d->msi_desc;
.....[     588]: }
.....[     590]: static inline __attribute__((no_instrument_function)) u32 irq_get_trigger_type(unsigned int irq)
.....[     591]: {
.....[     592]: struct irq_data *d = irq_get_irq_data(irq);
.....[     593]: return d ? irqd_get_trigger_type(d) : 0;
.....[     594]: }
.....[     596]: int __irq_alloc_descs(int irq, unsigned int from, unsigned int cnt, int node,
.....[     597]: struct module *owner);
.....[     615]: void irq_free_descs(unsigned int irq, unsigned int cnt);
.....[     616]: int irq_reserve_irqs(unsigned int from, unsigned int cnt);
.....[     618]: static inline __attribute__((no_instrument_function)) void irq_free_desc(unsigned int irq)
.....[     619]: {
.....[     620]: irq_free_descs(irq, 1);
.....[     621]: }
.....[     623]: static inline __attribute__((no_instrument_function)) int irq_reserve_irq(unsigned int irq)
.....[     624]: {
.....[     625]: return irq_reserve_irqs(irq, 1);
.....[     626]: }
.....[     645]: struct irq_chip_regs {
.....[     646]: unsigned long enable;
.....[     647]: unsigned long disable;
.....[     648]: unsigned long mask;
.....[     649]: unsigned long ack;
.....[     650]: unsigned long eoi;
.....[     651]: unsigned long type;
.....[     652]: unsigned long polarity;
.....[     653]: };
.....[     668]: struct irq_chip_type {
.....[     669]: struct irq_chip chip;
.....[     670]: struct irq_chip_regs regs;
.....[     671]: irq_flow_handler_t handler;
.....[     672]: u32 type;
.....[     673]: u32 mask_cache_priv;
.....[     674]: u32 *mask_cache;
.....[     675]: };
.....[     702]: struct irq_chip_generic {
.....[     703]: raw_spinlock_t lock;
.....[     704]: void *reg_base;
.....[     705]: unsigned int irq_base;
.....[     706]: unsigned int irq_cnt;
.....[     707]: u32 mask_cache;
.....[     708]: u32 type_cache;
.....[     709]: u32 polarity_cache;
.....[     710]: u32 wake_enabled;
.....[     711]: u32 wake_active;
.....[     712]: unsigned int num_ct;
.....[     713]: void *private;
.....[     714]: unsigned long installed;
.....[     715]: unsigned long unused;
.....[     716]: struct irq_domain *domain;
.....[     717]: struct list_head list;
.....[     718]: struct irq_chip_type chip_types[0];
.....[     719]: };
.....[     730]: enum irq_gc_flags {
.....[     731]: IRQ_GC_INIT_MASK_CACHE = 1 << 0,
.....[     732]: IRQ_GC_INIT_NESTED_LOCK = 1 << 1,
.....[     733]: IRQ_GC_MASK_CACHE_PER_TYPE = 1 << 2,
.....[     734]: IRQ_GC_NO_MASK = 1 << 3,
.....[     735]: };
.....[     746]: struct irq_domain_chip_generic {
.....[     747]: unsigned int irqs_per_chip;
.....[     748]: unsigned int num_chips;
.....[     749]: unsigned int irq_flags_to_clear;
.....[     750]: unsigned int irq_flags_to_set;
.....[     751]: enum irq_gc_flags gc_flags;
.....[     752]: struct irq_chip_generic *gc[0];
.....[     753]: };
.....[     756]: void irq_gc_noop(struct irq_data *d);
.....[     757]: void irq_gc_mask_disable_reg(struct irq_data *d);
.....[     758]: void irq_gc_mask_set_bit(struct irq_data *d);
.....[     759]: void irq_gc_mask_clr_bit(struct irq_data *d);
.....[     760]: void irq_gc_unmask_enable_reg(struct irq_data *d);
.....[     761]: void irq_gc_ack_set_bit(struct irq_data *d);
.....[     762]: void irq_gc_ack_clr_bit(struct irq_data *d);
.....[     763]: void irq_gc_mask_disable_reg_and_ack(struct irq_data *d);
.....[     764]: void irq_gc_eoi(struct irq_data *d);
.....[     765]: int irq_gc_set_wake(struct irq_data *d, unsigned int on);
.....[     768]: struct irq_chip_generic *
.....[     769]: irq_alloc_generic_chip(const char *name, int nr_ct, unsigned int irq_base,
.....[     770]: void *reg_base, irq_flow_handler_t handler);
.....[     771]: void irq_setup_generic_chip(struct irq_chip_generic *gc, u32 msk,
.....[     772]: enum irq_gc_flags flags, unsigned int clr,
.....[     773]: unsigned int set);
.....[     774]: int irq_setup_alt_chip(struct irq_data *d, unsigned int type);
.....[     775]: void irq_remove_generic_chip(struct irq_chip_generic *gc, u32 msk,
.....[     776]: unsigned int clr, unsigned int set);
.....[     778]: struct irq_chip_generic *irq_get_domain_generic_chip(struct irq_domain *d, unsigned int hw_irq);
.....[     779]: int irq_alloc_domain_generic_chips(struct irq_domain *d, int irqs_per_chip,
.....[     780]: int num_ct, const char *name,
.....[     781]: irq_flow_handler_t handler,
.....[     782]: unsigned int clr, unsigned int set,
.....[     783]: enum irq_gc_flags flags);
.....[     786]: static inline __attribute__((no_instrument_function)) struct irq_chip_type *irq_data_get_chip_type(struct \
.....                irq_data *d)
.....[     787]: {
.....[     788]: return ({ const typeof( ((struct irq_chip_type *)0)->chip ) *__mptr = (d->chip); (struct irq_chip_type *)( (char *)\
.....                __mptr - __builtin_offsetof(struct irq_chip_type,chip) );});
.....[     789]: }
.....[     794]: static inline __attribute__((no_instrument_function)) void irq_gc_lock(struct irq_chip_generic *gc)
.....[     795]: {
.....[     796]: _raw_spin_lock(&gc->lock);
.....[     797]: }
.....[     799]: static inline __attribute__((no_instrument_function)) void irq_gc_unlock(struct irq_chip_generic *gc)
.....[     800]: {
.....[     801]: __raw_spin_unlock(&gc->lock);
.....[     802]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/irq.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hardirq.h
....[       7]: typedef struct {
....[       8]: unsigned int __softirq_pending;
....[       9]: unsigned int __nmi_count;
....[      11]: unsigned int apic_timer_irqs;
....[      12]: unsigned int irq_spurious_count;
....[      13]: unsigned int icr_read_retry_count;
....[      16]: unsigned int kvm_posted_intr_ipis;
....[      18]: unsigned int x86_platform_ipis;
....[      19]: unsigned int apic_perf_irqs;
....[      20]: unsigned int apic_irq_work_irqs;
....[      22]: unsigned int irq_resched_count;
....[      23]: unsigned int irq_call_count;
....[      28]: unsigned int irq_tlb_count;
....[      31]: unsigned int irq_thermal_count;
....[      34]: unsigned int irq_threshold_count;
....[      36]: } __attribute__((__aligned__((1 << (6))))) irq_cpustat_t;
....[      38]: extern __attribute__((section(".data..percpu" "..shared_aligned"))) __typeof__(irq_cpustat_t) irq_stat __attribute__\
....                ((__aligned__((1 << (6)))));
....[      55]: extern void ack_bad_irq(unsigned int irq);
....[      57]: extern u64 arch_irq_stat_cpu(unsigned int cpu);
....[      60]: extern u64 arch_irq_stat(void);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/hardirq.h
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/preempt_mask.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cputime.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cputime.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/cputime.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/cputime.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/cputime_jiffies.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/cputime_jiffies.h
.....[       4]: typedef unsigned long cputime_t;
.....[      11]: typedef u64 cputime64_t;
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/cputime_jiffies.h
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/cputime.h
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/cputime.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sem.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sem.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sem.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sem.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ipc.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ipc.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ipc.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ipc.h
......[       9]: struct ipc_perm
......[      10]: {
......[      11]: __kernel_key_t key;
......[      12]: __kernel_uid_t uid;
......[      13]: __kernel_gid_t gid;
......[      14]: __kernel_uid_t cuid;
......[      15]: __kernel_gid_t cgid;
......[      16]: __kernel_mode_t mode;
......[      17]: unsigned short seq;
......[      18]: };
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ipc.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ipcbuf.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ipcbuf.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/ipcbuf.h
........[      19]: struct ipc64_perm {
........[      20]: __kernel_key_t key;
........[      21]: __kernel_uid32_t uid;
........[      22]: __kernel_gid32_t gid;
........[      23]: __kernel_uid32_t cuid;
........[      24]: __kernel_gid32_t cgid;
........[      25]: __kernel_mode_t mode;
........[      27]: unsigned char __pad1[4 - sizeof(__kernel_mode_t)];
........[      28]: unsigned short seq;
........[      29]: unsigned short __pad2;
........[      30]: unsigned long __unused1;
........[      31]: unsigned long __unused2;
........[      32]: };
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/ipcbuf.h
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/ipcbuf.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ipc.h
......[      57]: struct ipc_kludge {
......[      58]: struct msgbuf *msgp;
......[      59]: long msgtyp;
......[      60]: };
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/ipc.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ipc.h
.....[      11]: struct kern_ipc_perm
.....[      12]: {
.....[      13]: spinlock_t lock;
.....[      14]: int deleted;
.....[      15]: int id;
.....[      16]: key_t key;
.....[      17]: kuid_t uid;
.....[      18]: kgid_t gid;
.....[      19]: kuid_t cuid;
.....[      20]: kgid_t cgid;
.....[      21]: umode_t mode;
.....[      22]: unsigned long seq;
.....[      23]: void *security;
.....[      24]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ipc.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sem.h
....[      23]: struct semid_ds {
....[      24]: struct ipc_perm sem_perm;
....[      25]: __kernel_time_t sem_otime;
....[      26]: __kernel_time_t sem_ctime;
....[      27]: struct sem *sem_base;
....[      28]: struct sem_queue *sem_pending;
....[      29]: struct sem_queue **sem_pending_last;
....[      30]: struct sem_undo *undo;
....[      31]: unsigned short sem_nsems;
....[      32]: };
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sem.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/sembuf.h
.....[      13]: struct semid64_ds {
.....[      14]: struct ipc64_perm sem_perm;
.....[      15]: __kernel_time_t sem_otime;
.....[      16]: unsigned long __unused1;
.....[      17]: __kernel_time_t sem_ctime;
.....[      18]: unsigned long __unused2;
.....[      19]: unsigned long sem_nsems;
.....[      20]: unsigned long __unused3;
.....[      21]: unsigned long __unused4;
.....[      22]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/sembuf.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sem.h
....[      38]: struct sembuf {
....[      39]: unsigned short sem_num;
....[      40]: short sem_op;
....[      41]: short sem_flg;
....[      42]: };
....[      45]: union semun {
....[      46]: int val;
....[      47]: struct semid_ds *buf;
....[      48]: unsigned short *array;
....[      49]: struct seminfo *__buf;
....[      50]: void *__pad;
....[      51]: };
....[      53]: struct seminfo {
....[      54]: int semmap;
....[      55]: int semmni;
....[      56]: int semmns;
....[      57]: int semmnu;
....[      58]: int semmsl;
....[      59]: int semopm;
....[      60]: int semume;
....[      61]: int semusz;
....[      62]: int semvmx;
....[      63]: int semaem;
....[      64]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sem.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sem.h
...[       9]: struct task_struct;
...[      12]: struct sem_array {
...[      13]: struct kern_ipc_perm __attribute__((__aligned__((1 << (6)))))
...[      14]: sem_perm;
...[      15]: time_t sem_ctime;
...[      16]: struct sem *sem_base;
...[      17]: struct list_head pending_alter;
...[      19]: struct list_head pending_const;
...[      21]: struct list_head list_id;
...[      22]: int sem_nsems;
...[      23]: int complex_count;
...[      24]: };
...[      28]: struct sysv_sem {
...[      29]: struct sem_undo_list *undo_list;
...[      30]: };
...[      32]: extern int copy_semundo(unsigned long clone_flags, struct task_struct *tsk);
...[      33]: extern void exit_sem(struct task_struct *tsk);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sem.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/signal.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/signal.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/signal.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/signal.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/signal.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/signal.h
.....[      10]: struct siginfo;
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/signal.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/signal-defs.h
......[      17]: typedef void __signalfn_t(int);
......[      18]: typedef __signalfn_t *__sighandler_t;
......[      20]: typedef void __restorefn_t(void);
......[      21]: typedef __restorefn_t *__sigrestore_t;
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/signal-defs.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/signal.h
.....[     127]: typedef struct sigaltstack {
.....[     128]: void *ss_sp;
.....[     129]: int ss_flags;
.....[     130]: size_t ss_size;
.....[     131]: } stack_t;
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/signal.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/signal.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/siginfo.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/siginfo.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/siginfo.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/siginfo.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/siginfo.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/siginfo.h
.......[       7]: typedef union sigval {
.......[       8]: int sival_int;
.......[       9]: void *sival_ptr;
.......[      10]: } sigval_t;
.......[      48]: typedef struct siginfo {
.......[      49]: int si_signo;
.......[      50]: int si_errno;
.......[      51]: int si_code;
.......[      53]: union {
.......[      54]: int _pad[((128 - (4 * sizeof(int))) / sizeof(int))];
.......[      57]: struct {
.......[      58]: __kernel_pid_t _pid;
.......[      59]: __kernel_uid32_t _uid;
.......[      60]: } _kill;
.......[      63]: struct {
.......[      64]: __kernel_timer_t _tid;
.......[      65]: int _overrun;
.......[      66]: char _pad[sizeof( __kernel_uid32_t) - sizeof(int)];
.......[      67]: sigval_t _sigval;
.......[      68]: int _sys_private;
.......[      69]: } _timer;
.......[      72]: struct {
.......[      73]: __kernel_pid_t _pid;
.......[      74]: __kernel_uid32_t _uid;
.......[      75]: sigval_t _sigval;
.......[      76]: } _rt;
.......[      79]: struct {
.......[      80]: __kernel_pid_t _pid;
.......[      81]: __kernel_uid32_t _uid;
.......[      82]: int _status;
.......[      83]: __kernel_clock_t _utime;
.......[      84]: __kernel_clock_t _stime;
.......[      85]: } _sigchld;
.......[      88]: struct {
.......[      89]: void *_addr;
.......[      93]: short _addr_lsb;
.......[      94]: } _sigfault;
.......[      97]: struct {
.......[      98]: long _band;
.......[      99]: int _fd;
.......[     100]: } _sigpoll;
.......[     103]: struct {
.......[     104]: void *_call_addr;
.......[     105]: int _syscall;
.......[     106]: unsigned int _arch;
.......[     107]: } _sigsys;
.......[     108]: } _sifields;
.......[     109]: } siginfo_t;
.......[     278]: typedef struct sigevent {
.......[     279]: sigval_t sigev_value;
.......[     280]: int sigev_signo;
.......[     281]: int sigev_notify;
.......[     282]: union {
.......[     283]: int _pad[((64 - (sizeof(int) * 2 + sizeof(sigval_t))) / sizeof(int))];
.......[     284]: int _tid;
.......[     286]: struct {
.......[     287]: void (*_function)(sigval_t);
.......[     288]: void *_attribute;
.......[     289]: } _sigev_thread;
.......[     290]: } _sigev_un;
.......[     291]: } sigevent_t;
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/siginfo.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/siginfo.h
......[      17]: struct siginfo;
......[      18]: void do_schedule_next_timer(struct siginfo *info);
......[      24]: static inline __attribute__((no_instrument_function)) void copy_siginfo(struct siginfo *to, struct siginfo *from\
......                )
......[      25]: {
......[      26]: if (from->si_code < 0)
......[      27]: ({ size_t __len = (sizeof(*to)); void *__ret; if (__builtin_constant_p(sizeof(*to)) && __len >= 64) __ret = __memcpy\
......                ((to), (from), __len); else __ret = __builtin_memcpy((to), (from), __len); __ret; });
......[      28]: else
......[      30]: ({ size_t __len = ((4 * sizeof(int)) + sizeof(from->_sifields._sigchld)); void *__ret; if (__builtin_constant_p(\
......                (4 * sizeof(int)) + sizeof(from->_sifields._sigchld)) && __len >= 64) __ret = __memcpy((to), (from), __len); else __ret \
......                = __builtin_memcpy((to), (from), __len); __ret; });
......[      31]: }
......[      35]: extern int copy_siginfo_to_user(struct siginfo *to, const struct siginfo *from);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/siginfo.h
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/siginfo.h
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/signal.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/signal.h
...[       7]: struct task_struct;
...[      10]: extern int print_fatal_signals;
...[      15]: struct sigqueue {
...[      16]: struct list_head list;
...[      17]: int flags;
...[      18]: siginfo_t info;
...[      19]: struct user_struct *user;
...[      20]: };
...[      25]: struct sigpending {
...[      26]: struct list_head list;
...[      27]: sigset_t signal;
...[      28]: };
...[      39]: static inline __attribute__((no_instrument_function)) void sigaddset(sigset_t *set, int _sig)
...[      40]: {
...[      41]: unsigned long sig = _sig - 1;
...[      42]: if (_NSIG_WORDS == 1)
...[      43]: set->sig[0] |= 1UL << sig;
...[      44]: else
...[      45]: set->sig[sig / _NSIG_BPW] |= 1UL << (sig % _NSIG_BPW);
...[      46]: }
...[      48]: static inline __attribute__((no_instrument_function)) void sigdelset(sigset_t *set, int _sig)
...[      49]: {
...[      50]: unsigned long sig = _sig - 1;
...[      51]: if (_NSIG_WORDS == 1)
...[      52]: set->sig[0] &= ~(1UL << sig);
...[      53]: else
...[      54]: set->sig[sig / _NSIG_BPW] &= ~(1UL << (sig % _NSIG_BPW));
...[      55]: }
...[      57]: static inline __attribute__((no_instrument_function)) int sigismember(sigset_t *set, int _sig)
...[      58]: {
...[      59]: unsigned long sig = _sig - 1;
...[      60]: if (_NSIG_WORDS == 1)
...[      61]: return 1 & (set->sig[0] >> sig);
...[      62]: else
...[      63]: return 1 & (set->sig[sig / _NSIG_BPW] >> (sig % _NSIG_BPW));
...[      64]: }
...[      66]: static inline __attribute__((no_instrument_function)) int sigfindinword(unsigned long word)
...[      67]: {
...[      68]: return ffz(~word);
...[      69]: }
...[      73]: static inline __attribute__((no_instrument_function)) int sigisemptyset(sigset_t *set)
...[      74]: {
...[      75]: extern void _NSIG_WORDS_is_unsupported_size(void);
...[      76]: switch (_NSIG_WORDS) {
...[      77]: case 4:
...[      78]: return (set->sig[3] | set->sig[2] |
...[      79]: set->sig[1] | set->sig[0]) == 0;
...[      80]: case 2:
...[      81]: return (set->sig[1] | set->sig[0]) == 0;
...[      82]: case 1:
...[      83]: return set->sig[0] == 0;
...[      84]: default:
...[      85]: _NSIG_WORDS_is_unsupported_size();
...[      86]: return 0;
...[      87]: }
...[      88]: }
...[     120]: static inline __attribute__((no_instrument_function)) void sigorsets(sigset_t *r, const sigset_t *a, const sigset_t \
...                *b) { extern void _NSIG_WORDS_is_unsupported_size(void); unsigned long a0, a1, a2, a3, b0, b1, b2, b3; switch (_NSIG_WORDS\
...                ) { case 4: a3 = a->sig[3]; a2 = a->sig[2]; b3 = b->sig[3]; b2 = b->sig[2]; r->sig[3] = ((a3) | (b3)); r->sig[2] = ((a2) | (b2\
...                )); case 2: a1 = a->sig[1]; b1 = b->sig[1]; r->sig[1] = ((a1) | (b1)); case 1: a0 = a->sig[0]; b0 = b->sig[0]; r->sig[0] = (\
...                (a0) | (b0)); break; default: _NSIG_WORDS_is_unsupported_size(); } }
...[     123]: static inline __attribute__((no_instrument_function)) void sigandsets(sigset_t *r, const sigset_t *a, const sigset_t \
...                *b) { extern void _NSIG_WORDS_is_unsupported_size(void); unsigned long a0, a1, a2, a3, b0, b1, b2, b3; switch (_NSIG_WORDS\
...                ) { case 4: a3 = a->sig[3]; a2 = a->sig[2]; b3 = b->sig[3]; b2 = b->sig[2]; r->sig[3] = ((a3) & (b3)); r->sig[2] = ((a2) & (b2\
...                )); case 2: a1 = a->sig[1]; b1 = b->sig[1]; r->sig[1] = ((a1) & (b1)); case 1: a0 = a->sig[0]; b0 = b->sig[0]; r->sig[0] = (\
...                (a0) & (b0)); break; default: _NSIG_WORDS_is_unsupported_size(); } }
...[     126]: static inline __attribute__((no_instrument_function)) void sigandnsets(sigset_t *r, const sigset_t *a, const sigset_t \
...                *b) { extern void _NSIG_WORDS_is_unsupported_size(void); unsigned long a0, a1, a2, a3, b0, b1, b2, b3; switch (_NSIG_WORDS\
...                ) { case 4: a3 = a->sig[3]; a2 = a->sig[2]; b3 = b->sig[3]; b2 = b->sig[2]; r->sig[3] = ((a3) & ~(b3)); r->sig[2] = ((a2) & ~\
...                (b2)); case 2: a1 = a->sig[1]; b1 = b->sig[1]; r->sig[1] = ((a1) & ~(b1)); case 1: a0 = a->sig[0]; b0 = b->sig[0]; r->sig[\
...                0] = ((a0) & ~(b0)); break; default: _NSIG_WORDS_is_unsupported_size(); } }
...[     150]: static inline __attribute__((no_instrument_function)) void signotset(sigset_t *set) { extern void _NSIG_WORDS_is_unsupported_size\
...                (void); switch (_NSIG_WORDS) { case 4: set->sig[3] = (~(set->sig[3])); set->sig[2] = (~(set->sig[2])); case 2: set\
...                ->sig[1] = (~(set->sig[1])); case 1: set->sig[0] = (~(set->sig[0])); break; default: _NSIG_WORDS_is_unsupported_size\
...                (); } }
...[     155]: static inline __attribute__((no_instrument_function)) void sigemptyset(sigset_t *set)
...[     156]: {
...[     157]: switch (_NSIG_WORDS) {
...[     158]: default:
...[     159]: memset(set, 0, sizeof(sigset_t));
...[     160]: break;
...[     161]: case 2: set->sig[1] = 0;
...[     162]: case 1: set->sig[0] = 0;
...[     163]: break;
...[     164]: }
...[     165]: }
...[     167]: static inline __attribute__((no_instrument_function)) void sigfillset(sigset_t *set)
...[     168]: {
...[     169]: switch (_NSIG_WORDS) {
...[     170]: default:
...[     171]: memset(set, -1, sizeof(sigset_t));
...[     172]: break;
...[     173]: case 2: set->sig[1] = -1;
...[     174]: case 1: set->sig[0] = -1;
...[     175]: break;
...[     176]: }
...[     177]: }
...[     181]: static inline __attribute__((no_instrument_function)) void sigaddsetmask(sigset_t *set, unsigned long mask)
...[     182]: {
...[     183]: set->sig[0] |= mask;
...[     184]: }
...[     186]: static inline __attribute__((no_instrument_function)) void sigdelsetmask(sigset_t *set, unsigned long mask)
...[     187]: {
...[     188]: set->sig[0] &= ~mask;
...[     189]: }
...[     191]: static inline __attribute__((no_instrument_function)) int sigtestsetmask(sigset_t *set, unsigned long mask)
...[     192]: {
...[     193]: return (set->sig[0] & mask) != 0;
...[     194]: }
...[     196]: static inline __attribute__((no_instrument_function)) void siginitset(sigset_t *set, unsigned long mask)
...[     197]: {
...[     198]: set->sig[0] = mask;
...[     199]: switch (_NSIG_WORDS) {
...[     200]: default:
...[     201]: memset(&set->sig[1], 0, sizeof(long)*(_NSIG_WORDS-1));
...[     202]: break;
...[     203]: case 2: set->sig[1] = 0;
...[     204]: case 1: ;
...[     205]: }
...[     206]: }
...[     208]: static inline __attribute__((no_instrument_function)) void siginitsetinv(sigset_t *set, unsigned long mask)
...[     209]: {
...[     210]: set->sig[0] = ~mask;
...[     211]: switch (_NSIG_WORDS) {
...[     212]: default:
...[     213]: memset(&set->sig[1], -1, sizeof(long)*(_NSIG_WORDS-1));
...[     214]: break;
...[     215]: case 2: set->sig[1] = -1;
...[     216]: case 1: ;
...[     217]: }
...[     218]: }
...[     222]: static inline __attribute__((no_instrument_function)) void init_sigpending(struct sigpending *sig)
...[     223]: {
...[     224]: sigemptyset(&sig->signal);
...[     225]: INIT_LIST_HEAD(&sig->list);
...[     226]: }
...[     228]: extern void flush_sigqueue(struct sigpending *queue);
...[     231]: static inline __attribute__((no_instrument_function)) int valid_signal(unsigned long sig)
...[     232]: {
...[     233]: return sig <= _NSIG ? 1 : 0;
...[     234]: }
...[     236]: struct timespec;
...[     237]: struct pt_regs;
...[     239]: extern int next_signal(struct sigpending *pending, sigset_t *mask);
...[     240]: extern int do_send_sig_info(int sig, struct siginfo *info,
...[     241]: struct task_struct *p, bool group);
...[     242]: extern int group_send_sig_info(int sig, struct siginfo *info, struct task_struct *p);
...[     243]: extern int __group_send_sig_info(int, struct siginfo *, struct task_struct *);
...[     244]: extern int do_sigtimedwait(const sigset_t *, siginfo_t *,
...[     245]: const struct timespec *);
...[     246]: extern int sigprocmask(int, sigset_t *, sigset_t *);
...[     247]: extern void set_current_blocked(sigset_t *);
...[     248]: extern void __set_current_blocked(const sigset_t *);
...[     249]: extern int show_unhandled_signals;
...[     250]: extern int sigsuspend(sigset_t *);
...[     252]: struct sigaction {
...[     254]: __sighandler_t sa_handler;
...[     255]: unsigned long sa_flags;
...[     263]: sigset_t sa_mask;
...[     264]: };
...[     266]: struct k_sigaction {
...[     267]: struct sigaction sa;
...[     271]: };
...[     282]: struct ksignal {
...[     283]: struct k_sigaction ka;
...[     284]: siginfo_t info;
...[     285]: int sig;
...[     286]: };
...[     288]: extern int get_signal_to_deliver(siginfo_t *info, struct k_sigaction *return_ka, struct pt_regs *regs, void *cookie\
...                );
...[     289]: extern void signal_setup_done(int failed, struct ksignal *ksig, int stepping);
...[     290]: extern void signal_delivered(int sig, siginfo_t *info, struct k_sigaction *ka, struct pt_regs *regs, int stepping\
...                );
...[     291]: extern void exit_signals(struct task_struct *tsk);
...[     305]: extern struct kmem_cache *sighand_cachep;
...[     307]: int unhandled_signal(struct task_struct *tsk, int sig);
...[     432]: void signals_init(void);
...[     434]: int restore_altstack(const stack_t *);
...[     435]: int __save_altstack(stack_t *, unsigned long);
...[     446]: struct seq_file;
...[     447]: extern void render_sigset_t(struct seq_file *, const char *, sigset_t *);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/signal.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proportions.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proportions.h
...[      16]: struct prop_global {
...[      22]: int shift;
...[      29]: struct percpu_counter events;
...[      30]: };
...[      37]: struct prop_descriptor {
...[      38]: int index;
...[      39]: struct prop_global pg[2];
...[      40]: struct mutex mutex;
...[      41]: };
...[      43]: int prop_descriptor_init(struct prop_descriptor *pd, int shift);
...[      44]: void prop_change_shift(struct prop_descriptor *pd, int new_shift);
...[      50]: struct prop_local_percpu {
...[      54]: struct percpu_counter events;
...[      59]: int shift;
...[      60]: unsigned long period;
...[      61]: raw_spinlock_t lock;
...[      62]: };
...[      64]: int prop_local_init_percpu(struct prop_local_percpu *pl);
...[      65]: void prop_local_destroy_percpu(struct prop_local_percpu *pl);
...[      66]: void __prop_inc_percpu(struct prop_descriptor *pd, struct prop_local_percpu *pl);
...[      67]: void prop_fraction_percpu(struct prop_descriptor *pd, struct prop_local_percpu *pl,
...[      68]: long *numerator, long *denominator);
...[      70]: static inline __attribute__((no_instrument_function))
...[      71]: void prop_inc_percpu(struct prop_descriptor *pd, struct prop_local_percpu *pl)
...[      72]: {
...[      73]: unsigned long flags;
...[      75]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = arch_local_irq_save\
...                (); } while (0); do { } while (0); } while (0);
...[      76]: __prop_inc_percpu(pd, pl);
...[      77]: do { if (({ ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_irqs_disabled_flags\
...                (flags); })) { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_local_irq_restore\
...                (flags); } while (0); do { } while (0); } else { do { } while (0); do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void\
...                )(&__dummy == &__dummy2); 1; }); arch_local_irq_restore(flags); } while (0); } } while (0);
...[      78]: }
...[      93]: void __prop_inc_percpu_max(struct prop_descriptor *pd,
...[      94]: struct prop_local_percpu *pl, long frac);
...[     101]: struct prop_local_single {
...[     105]: unsigned long events;
...[     111]: unsigned long period;
...[     112]: int shift;
...[     113]: raw_spinlock_t lock;
...[     114]: };
...[     120]: int prop_local_init_single(struct prop_local_single *pl);
...[     121]: void prop_local_destroy_single(struct prop_local_single *pl);
...[     122]: void __prop_inc_single(struct prop_descriptor *pd, struct prop_local_single *pl);
...[     123]: void prop_fraction_single(struct prop_descriptor *pd, struct prop_local_single *pl,
...[     124]: long *numerator, long *denominator);
...[     126]: static inline __attribute__((no_instrument_function))
...[     127]: void prop_inc_single(struct prop_descriptor *pd, struct prop_local_single *pl)
...[     128]: {
...[     129]: unsigned long flags;
...[     131]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = arch_local_irq_save\
...                (); } while (0); do { } while (0); } while (0);
...[     132]: __prop_inc_single(pd, pl);
...[     133]: do { if (({ ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_irqs_disabled_flags\
...                (flags); })) { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_local_irq_restore\
...                (flags); } while (0); do { } while (0); } else { do { } while (0); do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void\
...                )(&__dummy == &__dummy2); 1; }); arch_local_irq_restore(flags); } while (0); } } while (0);
...[     134]: }
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/proportions.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/seccomp.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/seccomp.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/seccomp.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/seccomp.h
....[      40]: struct seccomp_data {
....[      41]: int nr;
....[      42]: __u32 arch;
....[      43]: __u64 instruction_pointer;
....[      44]: __u64 args[6];
....[      45]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/seccomp.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/seccomp.h
...[      11]: struct seccomp_filter;
...[      23]: struct seccomp {
...[      24]: int mode;
...[      25]: struct seccomp_filter *filter;
...[      26]: };
...[      28]: extern int __secure_computing(int);
...[      29]: static inline __attribute__((no_instrument_function)) int secure_computing(int this_syscall)
...[      30]: {
...[      31]: if (__builtin_expect(!!(test_ti_thread_flag(current_thread_info(), 8)), 0))
...[      32]: return __secure_computing(this_syscall);
...[      33]: return 0;
...[      34]: }
...[      37]: static inline __attribute__((no_instrument_function)) void secure_computing_strict(int this_syscall)
...[      38]: {
...[      39]: do { if (__builtin_expect(!!(secure_computing(this_syscall) != 0), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" \
...                "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__\
...                ), "i" (sizeof(struct bug_entry))); do { } while (1); } while (0); } while(0);
...[      40]: }
...[      42]: extern long prctl_get_seccomp(void);
...[      43]: extern long prctl_set_seccomp(unsigned long, char *);
...[      45]: static inline __attribute__((no_instrument_function)) int seccomp_mode(struct seccomp *s)
...[      46]: {
...[      47]: return s->mode;
...[      48]: }
...[      77]: extern void put_seccomp_filter(struct task_struct *tsk);
...[      78]: extern void get_seccomp_filter(struct task_struct *tsk);
...[      79]: extern u32 seccomp_bpf_load(int off);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/seccomp.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rtmutex.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rtmutex.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/plist.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/plist.h
....[      81]: struct plist_head {
....[      82]: struct list_head node_list;
....[      83]: };
....[      85]: struct plist_node {
....[      86]: int prio;
....[      87]: struct list_head prio_list;
....[      88]: struct list_head node_list;
....[      89]: };
....[     116]: static inline __attribute__((no_instrument_function)) void
....[     117]: plist_head_init(struct plist_head *head)
....[     118]: {
....[     119]: INIT_LIST_HEAD(&head->node_list);
....[     120]: }
....[     127]: static inline __attribute__((no_instrument_function)) void plist_node_init(struct plist_node *node, int prio\
....                )
....[     128]: {
....[     129]: node->prio = prio;
....[     130]: INIT_LIST_HEAD(&node->prio_list);
....[     131]: INIT_LIST_HEAD(&node->node_list);
....[     132]: }
....[     134]: extern void plist_add(struct plist_node *node, struct plist_head *head);
....[     135]: extern void plist_del(struct plist_node *node, struct plist_head *head);
....[     181]: static inline __attribute__((no_instrument_function)) int plist_head_empty(const struct plist_head *head)
....[     182]: {
....[     183]: return list_empty(&head->node_list);
....[     184]: }
....[     190]: static inline __attribute__((no_instrument_function)) int plist_node_empty(const struct plist_node *node)
....[     191]: {
....[     192]: return list_empty(&node->node_list);
....[     193]: }
....[     237]: static inline __attribute__((no_instrument_function)) struct plist_node *plist_first(const struct plist_head \
....                *head)
....[     238]: {
....[     239]: return ({ const typeof( ((struct plist_node *)0)->node_list ) *__mptr = (head->node_list.next); (struct plist_node \
....                *)( (char *)__mptr - __builtin_offsetof(struct plist_node,node_list) );});
....[     241]: }
....[     249]: static inline __attribute__((no_instrument_function)) struct plist_node *plist_last(const struct plist_head \
....                *head)
....[     250]: {
....[     251]: return ({ const typeof( ((struct plist_node *)0)->node_list ) *__mptr = (head->node_list.prev); (struct plist_node \
....                *)( (char *)__mptr - __builtin_offsetof(struct plist_node,node_list) );});
....[     253]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/plist.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rtmutex.h
...[      19]: extern int max_lock_depth;
...[      28]: struct rt_mutex {
...[      29]: raw_spinlock_t wait_lock;
...[      30]: struct plist_head wait_list;
...[      31]: struct task_struct *owner;
...[      38]: };
...[      40]: struct rt_mutex_waiter;
...[      41]: struct hrtimer_sleeper;
...[      48]: static inline __attribute__((no_instrument_function)) int rt_mutex_debug_check_no_locks_freed(const void *\
...                from,
...[      49]: unsigned long len)
...[      50]: {
...[      51]: return 0;
...[      52]: }
...[      82]: static inline __attribute__((no_instrument_function)) int rt_mutex_is_locked(struct rt_mutex *lock)
...[      83]: {
...[      84]: return lock->owner != ((void *)0);
...[      85]: }
...[      87]: extern void __rt_mutex_init(struct rt_mutex *lock, const char *name);
...[      88]: extern void rt_mutex_destroy(struct rt_mutex *lock);
...[      90]: extern void rt_mutex_lock(struct rt_mutex *lock);
...[      91]: extern int rt_mutex_lock_interruptible(struct rt_mutex *lock,
...[      92]: int detect_deadlock);
...[      93]: extern int rt_mutex_timed_lock(struct rt_mutex *lock,
...[      94]: struct hrtimer_sleeper *timeout,
...[      95]: int detect_deadlock);
...[      97]: extern int rt_mutex_trylock(struct rt_mutex *lock);
...[      99]: extern void rt_mutex_unlock(struct rt_mutex *lock);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/rtmutex.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/resource.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/resource.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/resource.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/resource.h
....[      23]: struct rusage {
....[      24]: struct timeval ru_utime;
....[      25]: struct timeval ru_stime;
....[      26]: long ru_maxrss;
....[      27]: long ru_ixrss;
....[      28]: long ru_idrss;
....[      29]: long ru_isrss;
....[      30]: long ru_minflt;
....[      31]: long ru_majflt;
....[      32]: long ru_nswap;
....[      33]: long ru_inblock;
....[      34]: long ru_oublock;
....[      35]: long ru_msgsnd;
....[      36]: long ru_msgrcv;
....[      37]: long ru_nsignals;
....[      38]: long ru_nvcsw;
....[      39]: long ru_nivcsw;
....[      40]: };
....[      42]: struct rlimit {
....[      43]: unsigned long rlim_cur;
....[      44]: unsigned long rlim_max;
....[      45]: };
....[      49]: struct rlimit64 {
....[      50]: __u64 rlim_cur;
....[      51]: __u64 rlim_max;
....[      52]: };
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/resource.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/resource.h
...[       7]: struct task_struct;
...[       9]: int getrusage(struct task_struct *p, int who, struct rusage *ru);
...[      10]: int do_prlimit(struct task_struct *tsk, unsigned int resource,
...[      11]: struct rlimit *new_rlim, struct rlimit *old_rlim);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/resource.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hrtimer.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hrtimer.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timerqueue.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timerqueue.h
....[       8]: struct timerqueue_node {
....[       9]: struct rb_node node;
....[      10]: ktime_t expires;
....[      11]: };
....[      13]: struct timerqueue_head {
....[      14]: struct rb_root head;
....[      15]: struct timerqueue_node *next;
....[      16]: };
....[      19]: extern void timerqueue_add(struct timerqueue_head *head,
....[      20]: struct timerqueue_node *node);
....[      21]: extern void timerqueue_del(struct timerqueue_head *head,
....[      22]: struct timerqueue_node *node);
....[      23]: extern struct timerqueue_node *timerqueue_iterate_next(
....[      24]: struct timerqueue_node *node);
....[      34]: static inline __attribute__((no_instrument_function))
....[      35]: struct timerqueue_node *timerqueue_getnext(struct timerqueue_head *head)
....[      36]: {
....[      37]: return head->next;
....[      38]: }
....[      40]: static inline __attribute__((no_instrument_function)) void timerqueue_init(struct timerqueue_node *node)
....[      41]: {
....[      42]: ((&node->node)->__rb_parent_color = (unsigned long)(&node->node));
....[      43]: }
....[      45]: static inline __attribute__((no_instrument_function)) void timerqueue_init_head(struct timerqueue_head *head\
....                )
....[      46]: {
....[      47]: head->head = (struct rb_root) { ((void *)0), };
....[      48]: head->next = ((void *)0);
....[      49]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/timerqueue.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hrtimer.h
...[      27]: struct hrtimer_clock_base;
...[      28]: struct hrtimer_cpu_base;
...[      33]: enum hrtimer_mode {
...[      34]: HRTIMER_MODE_ABS = 0x0,
...[      35]: HRTIMER_MODE_REL = 0x1,
...[      36]: HRTIMER_MODE_PINNED = 0x02,
...[      37]: HRTIMER_MODE_ABS_PINNED = 0x02,
...[      38]: HRTIMER_MODE_REL_PINNED = 0x03,
...[      39]: };
...[      44]: enum hrtimer_restart {
...[      45]: HRTIMER_NORESTART,
...[      46]: HRTIMER_RESTART,
...[      47]: };
...[     108]: struct hrtimer {
...[     109]: struct timerqueue_node node;
...[     110]: ktime_t _softexpires;
...[     111]: enum hrtimer_restart (*function)(struct hrtimer *);
...[     112]: struct hrtimer_clock_base *base;
...[     113]: unsigned long state;
...[     115]: int start_pid;
...[     116]: void *start_site;
...[     117]: char start_comm[16];
...[     119]: };
...[     128]: struct hrtimer_sleeper {
...[     129]: struct hrtimer timer;
...[     130]: struct task_struct *task;
...[     131]: };
...[     145]: struct hrtimer_clock_base {
...[     146]: struct hrtimer_cpu_base *cpu_base;
...[     147]: int index;
...[     148]: clockid_t clockid;
...[     149]: struct timerqueue_head active;
...[     150]: ktime_t resolution;
...[     151]: ktime_t (*get_time)(void);
...[     152]: ktime_t softirq_time;
...[     153]: ktime_t offset;
...[     154]: };
...[     156]: enum hrtimer_base_type {
...[     157]: HRTIMER_BASE_MONOTONIC,
...[     158]: HRTIMER_BASE_REALTIME,
...[     159]: HRTIMER_BASE_BOOTTIME,
...[     160]: HRTIMER_BASE_TAI,
...[     161]: HRTIMER_MAX_CLOCK_BASES,
...[     162]: };
...[     180]: struct hrtimer_cpu_base {
...[     181]: raw_spinlock_t lock;
...[     182]: unsigned int active_bases;
...[     183]: unsigned int clock_was_set;
...[     185]: ktime_t expires_next;
...[     186]: int hres_active;
...[     187]: int hang_detected;
...[     188]: unsigned long nr_events;
...[     189]: unsigned long nr_retries;
...[     190]: unsigned long nr_hangs;
...[     191]: ktime_t max_hang_time;
...[     193]: struct hrtimer_clock_base clock_base[HRTIMER_MAX_CLOCK_BASES];
...[     194]: };
...[     196]: static inline __attribute__((no_instrument_function)) void hrtimer_set_expires(struct hrtimer *timer, ktime_t \
...                time)
...[     197]: {
...[     198]: timer->node.expires = time;
...[     199]: timer->_softexpires = time;
...[     200]: }
...[     202]: static inline __attribute__((no_instrument_function)) void hrtimer_set_expires_range(struct hrtimer *timer\
...                , ktime_t time, ktime_t delta)
...[     203]: {
...[     204]: timer->_softexpires = time;
...[     205]: timer->node.expires = ktime_add_safe(time, delta);
...[     206]: }
...[     208]: static inline __attribute__((no_instrument_function)) void hrtimer_set_expires_range_ns(struct hrtimer *timer\
...                , ktime_t time, unsigned long delta)
...[     209]: {
...[     210]: timer->_softexpires = time;
...[     211]: timer->node.expires = ktime_add_safe(time, ns_to_ktime(delta));
...[     212]: }
...[     214]: static inline __attribute__((no_instrument_function)) void hrtimer_set_expires_tv64(struct hrtimer *timer, \
...                s64 tv64)
...[     215]: {
...[     216]: timer->node.expires.tv64 = tv64;
...[     217]: timer->_softexpires.tv64 = tv64;
...[     218]: }
...[     220]: static inline __attribute__((no_instrument_function)) void hrtimer_add_expires(struct hrtimer *timer, ktime_t \
...                time)
...[     221]: {
...[     222]: timer->node.expires = ktime_add_safe(timer->node.expires, time);
...[     223]: timer->_softexpires = ktime_add_safe(timer->_softexpires, time);
...[     224]: }
...[     226]: static inline __attribute__((no_instrument_function)) void hrtimer_add_expires_ns(struct hrtimer *timer, u64 \
...                ns)
...[     227]: {
...[     228]: timer->node.expires = ({ (ktime_t){ .tv64 = (timer->node.expires).tv64 + (ns) }; });
...[     229]: timer->_softexpires = ({ (ktime_t){ .tv64 = (timer->_softexpires).tv64 + (ns) }; });
...[     230]: }
...[     232]: static inline __attribute__((no_instrument_function)) ktime_t hrtimer_get_expires(const struct hrtimer *timer\
...                )
...[     233]: {
...[     234]: return timer->node.expires;
...[     235]: }
...[     237]: static inline __attribute__((no_instrument_function)) ktime_t hrtimer_get_softexpires(const struct hrtimer \
...                *timer)
...[     238]: {
...[     239]: return timer->_softexpires;
...[     240]: }
...[     242]: static inline __attribute__((no_instrument_function)) s64 hrtimer_get_expires_tv64(const struct hrtimer *timer\
...                )
...[     243]: {
...[     244]: return timer->node.expires.tv64;
...[     245]: }
...[     246]: static inline __attribute__((no_instrument_function)) s64 hrtimer_get_softexpires_tv64(const struct hrtimer \
...                *timer)
...[     247]: {
...[     248]: return timer->_softexpires.tv64;
...[     249]: }
...[     251]: static inline __attribute__((no_instrument_function)) s64 hrtimer_get_expires_ns(const struct hrtimer *timer\
...                )
...[     252]: {
...[     253]: return ((timer->node.expires).tv64);
...[     254]: }
...[     256]: static inline __attribute__((no_instrument_function)) ktime_t hrtimer_expires_remaining(const struct hrtimer \
...                *timer)
...[     257]: {
...[     258]: return ({ (ktime_t){ .tv64 = (timer->node.expires).tv64 - (timer->base->get_time()).tv64 }; });
...[     259]: }
...[     262]: struct clock_event_device;
...[     264]: extern void hrtimer_interrupt(struct clock_event_device *dev);
...[     269]: static inline __attribute__((no_instrument_function)) ktime_t hrtimer_cb_get_time(struct hrtimer *timer)
...[     270]: {
...[     271]: return timer->base->get_time();
...[     272]: }
...[     274]: static inline __attribute__((no_instrument_function)) int hrtimer_is_hres_active(struct hrtimer *timer)
...[     275]: {
...[     276]: return timer->base->cpu_base->hres_active;
...[     277]: }
...[     279]: extern void hrtimer_peek_ahead_timers(void);
...[     292]: extern void clock_was_set_delayed(void);
...[     319]: extern void clock_was_set(void);
...[     321]: extern void timerfd_clock_was_set(void);
...[     325]: extern void hrtimers_resume(void);
...[     327]: extern ktime_t ktime_get(void);
...[     328]: extern ktime_t ktime_get_real(void);
...[     329]: extern ktime_t ktime_get_boottime(void);
...[     330]: extern ktime_t ktime_get_monotonic_offset(void);
...[     331]: extern ktime_t ktime_get_clocktai(void);
...[     332]: extern ktime_t ktime_get_update_offsets(ktime_t *offs_real, ktime_t *offs_boot,
...[     333]: ktime_t *offs_tai);
...[     335]: extern __attribute__((section(".data..percpu" ""))) __typeof__(struct tick_device) tick_cpu_device;
...[     341]: extern void hrtimer_init(struct hrtimer *timer, clockid_t which_clock,
...[     342]: enum hrtimer_mode mode);
...[     350]: static inline __attribute__((no_instrument_function)) void hrtimer_init_on_stack(struct hrtimer *timer,
...[     351]: clockid_t which_clock,
...[     352]: enum hrtimer_mode mode)
...[     353]: {
...[     354]: hrtimer_init(timer, which_clock, mode);
...[     355]: }
...[     356]: static inline __attribute__((no_instrument_function)) void destroy_hrtimer_on_stack(struct hrtimer *timer) \
...                { }
...[     360]: extern int hrtimer_start(struct hrtimer *timer, ktime_t tim,
...[     361]: const enum hrtimer_mode mode);
...[     362]: extern int hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
...[     363]: unsigned long range_ns, const enum hrtimer_mode mode);
...[     364]: extern int
...[     365]: __hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
...[     366]: unsigned long delta_ns,
...[     367]: const enum hrtimer_mode mode, int wakeup);
...[     369]: extern int hrtimer_cancel(struct hrtimer *timer);
...[     370]: extern int hrtimer_try_to_cancel(struct hrtimer *timer);
...[     372]: static inline __attribute__((no_instrument_function)) int hrtimer_start_expires(struct hrtimer *timer,
...[     373]: enum hrtimer_mode mode)
...[     374]: {
...[     375]: unsigned long delta;
...[     376]: ktime_t soft, hard;
...[     377]: soft = hrtimer_get_softexpires(timer);
...[     378]: hard = hrtimer_get_expires(timer);
...[     379]: delta = ((({ (ktime_t){ .tv64 = (hard).tv64 - (soft).tv64 }; })).tv64);
...[     380]: return hrtimer_start_range_ns(timer, soft, delta, mode);
...[     381]: }
...[     383]: static inline __attribute__((no_instrument_function)) int hrtimer_restart(struct hrtimer *timer)
...[     384]: {
...[     385]: return hrtimer_start_expires(timer, HRTIMER_MODE_ABS);
...[     386]: }
...[     389]: extern ktime_t hrtimer_get_remaining(const struct hrtimer *timer);
...[     390]: extern int hrtimer_get_res(const clockid_t which_clock, struct timespec *tp);
...[     392]: extern ktime_t hrtimer_get_next_event(void);
...[     399]: static inline __attribute__((no_instrument_function)) int hrtimer_active(const struct hrtimer *timer)
...[     400]: {
...[     401]: return timer->state != 0x00;
...[     402]: }
...[     407]: static inline __attribute__((no_instrument_function)) int hrtimer_is_queued(struct hrtimer *timer)
...[     408]: {
...[     409]: return timer->state & 0x01;
...[     410]: }
...[     416]: static inline __attribute__((no_instrument_function)) int hrtimer_callback_running(struct hrtimer *timer)
...[     417]: {
...[     418]: return timer->state & 0x02;
...[     419]: }
...[     422]: extern u64
...[     423]: hrtimer_forward(struct hrtimer *timer, ktime_t now, ktime_t interval);
...[     426]: static inline __attribute__((no_instrument_function)) u64 hrtimer_forward_now(struct hrtimer *timer,
...[     427]: ktime_t interval)
...[     428]: {
...[     429]: return hrtimer_forward(timer, timer->base->get_time(), interval);
...[     430]: }
...[     433]: extern long hrtimer_nanosleep(struct timespec *rqtp,
...[     434]: struct timespec *rmtp,
...[     435]: const enum hrtimer_mode mode,
...[     436]: const clockid_t clockid);
...[     437]: extern long hrtimer_nanosleep_restart(struct restart_block *restart_block);
...[     439]: extern void hrtimer_init_sleeper(struct hrtimer_sleeper *sl,
...[     440]: struct task_struct *tsk);
...[     442]: extern int schedule_hrtimeout_range(ktime_t *expires, unsigned long delta,
...[     443]: const enum hrtimer_mode mode);
...[     444]: extern int schedule_hrtimeout_range_clock(ktime_t *expires,
...[     445]: unsigned long delta, const enum hrtimer_mode mode, int clock);
...[     446]: extern int schedule_hrtimeout(ktime_t *expires, const enum hrtimer_mode mode);
...[     449]: extern void hrtimer_run_queues(void);
...[     450]: extern void hrtimer_run_pending(void);
...[     453]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) hrtimers_init\
...                (void);
...[     462]: extern void sysrq_timer_list_show(void);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hrtimer.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/task_io_accounting.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/task_io_accounting.h
...[      11]: struct task_io_accounting {
...[      14]: u64 rchar;
...[      16]: u64 wchar;
...[      18]: u64 syscr;
...[      20]: u64 syscw;
...[      28]: u64 read_bytes;
...[      34]: u64 write_bytes;
...[      43]: u64 cancelled_write_bytes;
...[      45]: };
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/task_io_accounting.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/latencytop.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/latencytop.h
...[      13]: struct task_struct;
...[      20]: struct latency_record {
...[      21]: unsigned long backtrace[12];
...[      22]: unsigned int count;
...[      23]: unsigned long time;
...[      24]: unsigned long max;
...[      25]: };
...[      29]: extern int latencytop_enabled;
...[      30]: void __account_scheduler_latency(struct task_struct *task, int usecs, int inter);
...[      31]: static inline __attribute__((no_instrument_function)) void
...[      32]: account_scheduler_latency(struct task_struct *task, int usecs, int inter)
...[      33]: {
...[      34]: if (__builtin_expect(!!(latencytop_enabled), 0))
...[      35]: __account_scheduler_latency(task, usecs, inter);
...[      36]: }
...[      38]: void clear_all_latency_tracing(struct task_struct *p);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/latencytop.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cred.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cred.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/key.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/key.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysctl.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysctl.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sysctl.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sysctl.h
......[      29]: struct completion;
......[      36]: struct __sysctl_args {
......[      37]: int *name;
......[      38]: int nlen;
......[      39]: void *oldval;
......[      40]: size_t *oldlenp;
......[      41]: void *newval;
......[      42]: size_t newlen;
......[      43]: unsigned long __attribute__((unused))[4];
......[      44]: };
......[      50]: enum
......[      51]: {
......[      52]: CTL_KERN=1,
......[      53]: CTL_VM=2,
......[      54]: CTL_NET=3,
......[      55]: CTL_PROC=4,
......[      56]: CTL_FS=5,
......[      57]: CTL_DEBUG=6,
......[      58]: CTL_DEV=7,
......[      59]: CTL_BUS=8,
......[      60]: CTL_ABI=9,
......[      61]: CTL_CPU=10,
......[      62]: CTL_ARLAN=254,
......[      63]: CTL_S390DBF=5677,
......[      64]: CTL_SUNRPC=7249,
......[      65]: CTL_PM=9899,
......[      66]: CTL_FRV=9898,
......[      67]: };
......[      70]: enum
......[      71]: {
......[      72]: CTL_BUS_ISA=1
......[      73]: };
......[      76]: enum
......[      77]: {
......[      78]: INOTIFY_MAX_USER_INSTANCES=1,
......[      79]: INOTIFY_MAX_USER_WATCHES=2,
......[      80]: INOTIFY_MAX_QUEUED_EVENTS=3
......[      81]: };
......[      84]: enum
......[      85]: {
......[      86]: KERN_OSTYPE=1,
......[      87]: KERN_OSRELEASE=2,
......[      88]: KERN_OSREV=3,
......[      89]: KERN_VERSION=4,
......[      90]: KERN_SECUREMASK=5,
......[      91]: KERN_PROF=6,
......[      92]: KERN_NODENAME=7,
......[      93]: KERN_DOMAINNAME=8,
......[      95]: KERN_PANIC=15,
......[      96]: KERN_REALROOTDEV=16,
......[      98]: KERN_SPARC_REBOOT=21,
......[      99]: KERN_CTLALTDEL=22,
......[     100]: KERN_PRINTK=23,
......[     101]: KERN_NAMETRANS=24,
......[     102]: KERN_PPC_HTABRECLAIM=25,
......[     103]: KERN_PPC_ZEROPAGED=26,
......[     104]: KERN_PPC_POWERSAVE_NAP=27,
......[     105]: KERN_MODPROBE=28,
......[     106]: KERN_SG_BIG_BUFF=29,
......[     107]: KERN_ACCT=30,
......[     108]: KERN_PPC_L2CR=31,
......[     110]: KERN_RTSIGNR=32,
......[     111]: KERN_RTSIGMAX=33,
......[     113]: KERN_SHMMAX=34,
......[     114]: KERN_MSGMAX=35,
......[     115]: KERN_MSGMNB=36,
......[     116]: KERN_MSGPOOL=37,
......[     117]: KERN_SYSRQ=38,
......[     118]: KERN_MAX_THREADS=39,
......[     119]: KERN_RANDOM=40,
......[     120]: KERN_SHMALL=41,
......[     121]: KERN_MSGMNI=42,
......[     122]: KERN_SEM=43,
......[     123]: KERN_SPARC_STOP_A=44,
......[     124]: KERN_SHMMNI=45,
......[     125]: KERN_OVERFLOWUID=46,
......[     126]: KERN_OVERFLOWGID=47,
......[     127]: KERN_SHMPATH=48,
......[     128]: KERN_HOTPLUG=49,
......[     129]: KERN_IEEE_EMULATION_WARNINGS=50,
......[     130]: KERN_S390_USER_DEBUG_LOGGING=51,
......[     131]: KERN_CORE_USES_PID=52,
......[     132]: KERN_TAINTED=53,
......[     133]: KERN_CADPID=54,
......[     134]: KERN_PIDMAX=55,
......[     135]: KERN_CORE_PATTERN=56,
......[     136]: KERN_PANIC_ON_OOPS=57,
......[     137]: KERN_HPPA_PWRSW=58,
......[     138]: KERN_HPPA_UNALIGNED=59,
......[     139]: KERN_PRINTK_RATELIMIT=60,
......[     140]: KERN_PRINTK_RATELIMIT_BURST=61,
......[     141]: KERN_PTY=62,
......[     142]: KERN_NGROUPS_MAX=63,
......[     143]: KERN_SPARC_SCONS_PWROFF=64,
......[     144]: KERN_HZ_TIMER=65,
......[     145]: KERN_UNKNOWN_NMI_PANIC=66,
......[     146]: KERN_BOOTLOADER_TYPE=67,
......[     147]: KERN_RANDOMIZE=68,
......[     148]: KERN_SETUID_DUMPABLE=69,
......[     149]: KERN_SPIN_RETRY=70,
......[     150]: KERN_ACPI_VIDEO_FLAGS=71,
......[     151]: KERN_IA64_UNALIGNED=72,
......[     152]: KERN_COMPAT_LOG=73,
......[     153]: KERN_MAX_LOCK_DEPTH=74,
......[     154]: KERN_NMI_WATCHDOG=75,
......[     155]: KERN_PANIC_ON_NMI=76,
......[     156]: };
......[     161]: enum
......[     162]: {
......[     163]: VM_UNUSED1=1,
......[     164]: VM_UNUSED2=2,
......[     165]: VM_UNUSED3=3,
......[     166]: VM_UNUSED4=4,
......[     167]: VM_OVERCOMMIT_MEMORY=5,
......[     168]: VM_UNUSED5=6,
......[     169]: VM_UNUSED7=7,
......[     170]: VM_UNUSED8=8,
......[     171]: VM_UNUSED9=9,
......[     172]: VM_PAGE_CLUSTER=10,
......[     173]: VM_DIRTY_BACKGROUND=11,
......[     174]: VM_DIRTY_RATIO=12,
......[     175]: VM_DIRTY_WB_CS=13,
......[     176]: VM_DIRTY_EXPIRE_CS=14,
......[     177]: VM_NR_PDFLUSH_THREADS=15,
......[     178]: VM_OVERCOMMIT_RATIO=16,
......[     179]: VM_PAGEBUF=17,
......[     180]: VM_HUGETLB_PAGES=18,
......[     181]: VM_SWAPPINESS=19,
......[     182]: VM_LOWMEM_RESERVE_RATIO=20,
......[     183]: VM_MIN_FREE_KBYTES=21,
......[     184]: VM_MAX_MAP_COUNT=22,
......[     185]: VM_LAPTOP_MODE=23,
......[     186]: VM_BLOCK_DUMP=24,
......[     187]: VM_HUGETLB_GROUP=25,
......[     188]: VM_VFS_CACHE_PRESSURE=26,
......[     189]: VM_LEGACY_VA_LAYOUT=27,
......[     190]: VM_SWAP_TOKEN_TIMEOUT=28,
......[     191]: VM_DROP_PAGECACHE=29,
......[     192]: VM_PERCPU_PAGELIST_FRACTION=30,
......[     193]: VM_ZONE_RECLAIM_MODE=31,
......[     194]: VM_MIN_UNMAPPED=32,
......[     195]: VM_PANIC_ON_OOM=33,
......[     196]: VM_VDSO_ENABLED=34,
......[     197]: VM_MIN_SLAB=35,
......[     198]: };
......[     202]: enum
......[     203]: {
......[     204]: NET_CORE=1,
......[     205]: NET_ETHER=2,
......[     206]: NET_802=3,
......[     207]: NET_UNIX=4,
......[     208]: NET_IPV4=5,
......[     209]: NET_IPX=6,
......[     210]: NET_ATALK=7,
......[     211]: NET_NETROM=8,
......[     212]: NET_AX25=9,
......[     213]: NET_BRIDGE=10,
......[     214]: NET_ROSE=11,
......[     215]: NET_IPV6=12,
......[     216]: NET_X25=13,
......[     217]: NET_TR=14,
......[     218]: NET_DECNET=15,
......[     219]: NET_ECONET=16,
......[     220]: NET_SCTP=17,
......[     221]: NET_LLC=18,
......[     222]: NET_NETFILTER=19,
......[     223]: NET_DCCP=20,
......[     224]: NET_IRDA=412,
......[     225]: };
......[     228]: enum
......[     229]: {
......[     230]: RANDOM_POOLSIZE=1,
......[     231]: RANDOM_ENTROPY_COUNT=2,
......[     232]: RANDOM_READ_THRESH=3,
......[     233]: RANDOM_WRITE_THRESH=4,
......[     234]: RANDOM_BOOT_ID=5,
......[     235]: RANDOM_UUID=6
......[     236]: };
......[     239]: enum
......[     240]: {
......[     241]: PTY_MAX=1,
......[     242]: PTY_NR=2
......[     243]: };
......[     246]: enum
......[     247]: {
......[     248]: BUS_ISA_MEM_BASE=1,
......[     249]: BUS_ISA_PORT_BASE=2,
......[     250]: BUS_ISA_PORT_SHIFT=3
......[     251]: };
......[     254]: enum
......[     255]: {
......[     256]: NET_CORE_WMEM_MAX=1,
......[     257]: NET_CORE_RMEM_MAX=2,
......[     258]: NET_CORE_WMEM_DEFAULT=3,
......[     259]: NET_CORE_RMEM_DEFAULT=4,
......[     261]: NET_CORE_MAX_BACKLOG=6,
......[     262]: NET_CORE_FASTROUTE=7,
......[     263]: NET_CORE_MSG_COST=8,
......[     264]: NET_CORE_MSG_BURST=9,
......[     265]: NET_CORE_OPTMEM_MAX=10,
......[     266]: NET_CORE_HOT_LIST_LENGTH=11,
......[     267]: NET_CORE_DIVERT_VERSION=12,
......[     268]: NET_CORE_NO_CONG_THRESH=13,
......[     269]: NET_CORE_NO_CONG=14,
......[     270]: NET_CORE_LO_CONG=15,
......[     271]: NET_CORE_MOD_CONG=16,
......[     272]: NET_CORE_DEV_WEIGHT=17,
......[     273]: NET_CORE_SOMAXCONN=18,
......[     274]: NET_CORE_BUDGET=19,
......[     275]: NET_CORE_AEVENT_ETIME=20,
......[     276]: NET_CORE_AEVENT_RSEQTH=21,
......[     277]: NET_CORE_WARNINGS=22,
......[     278]: };
......[     286]: enum
......[     287]: {
......[     288]: NET_UNIX_DESTROY_DELAY=1,
......[     289]: NET_UNIX_DELETE_DELAY=2,
......[     290]: NET_UNIX_MAX_DGRAM_QLEN=3,
......[     291]: };
......[     294]: enum
......[     295]: {
......[     296]: NET_NF_CONNTRACK_MAX=1,
......[     297]: NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT=2,
......[     298]: NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV=3,
......[     299]: NET_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED=4,
......[     300]: NET_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT=5,
......[     301]: NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT=6,
......[     302]: NET_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK=7,
......[     303]: NET_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT=8,
......[     304]: NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE=9,
......[     305]: NET_NF_CONNTRACK_UDP_TIMEOUT=10,
......[     306]: NET_NF_CONNTRACK_UDP_TIMEOUT_STREAM=11,
......[     307]: NET_NF_CONNTRACK_ICMP_TIMEOUT=12,
......[     308]: NET_NF_CONNTRACK_GENERIC_TIMEOUT=13,
......[     309]: NET_NF_CONNTRACK_BUCKETS=14,
......[     310]: NET_NF_CONNTRACK_LOG_INVALID=15,
......[     311]: NET_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS=16,
......[     312]: NET_NF_CONNTRACK_TCP_LOOSE=17,
......[     313]: NET_NF_CONNTRACK_TCP_BE_LIBERAL=18,
......[     314]: NET_NF_CONNTRACK_TCP_MAX_RETRANS=19,
......[     315]: NET_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED=20,
......[     316]: NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT=21,
......[     317]: NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED=22,
......[     318]: NET_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED=23,
......[     319]: NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT=24,
......[     320]: NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD=25,
......[     321]: NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT=26,
......[     322]: NET_NF_CONNTRACK_COUNT=27,
......[     323]: NET_NF_CONNTRACK_ICMPV6_TIMEOUT=28,
......[     324]: NET_NF_CONNTRACK_FRAG6_TIMEOUT=29,
......[     325]: NET_NF_CONNTRACK_FRAG6_LOW_THRESH=30,
......[     326]: NET_NF_CONNTRACK_FRAG6_HIGH_THRESH=31,
......[     327]: NET_NF_CONNTRACK_CHECKSUM=32,
......[     328]: };
......[     331]: enum
......[     332]: {
......[     334]: NET_IPV4_FORWARD=8,
......[     335]: NET_IPV4_DYNADDR=9,
......[     337]: NET_IPV4_CONF=16,
......[     338]: NET_IPV4_NEIGH=17,
......[     339]: NET_IPV4_ROUTE=18,
......[     340]: NET_IPV4_FIB_HASH=19,
......[     341]: NET_IPV4_NETFILTER=20,
......[     343]: NET_IPV4_TCP_TIMESTAMPS=33,
......[     344]: NET_IPV4_TCP_WINDOW_SCALING=34,
......[     345]: NET_IPV4_TCP_SACK=35,
......[     346]: NET_IPV4_TCP_RETRANS_COLLAPSE=36,
......[     347]: NET_IPV4_DEFAULT_TTL=37,
......[     348]: NET_IPV4_AUTOCONFIG=38,
......[     349]: NET_IPV4_NO_PMTU_DISC=39,
......[     350]: NET_IPV4_TCP_SYN_RETRIES=40,
......[     351]: NET_IPV4_IPFRAG_HIGH_THRESH=41,
......[     352]: NET_IPV4_IPFRAG_LOW_THRESH=42,
......[     353]: NET_IPV4_IPFRAG_TIME=43,
......[     354]: NET_IPV4_TCP_MAX_KA_PROBES=44,
......[     355]: NET_IPV4_TCP_KEEPALIVE_TIME=45,
......[     356]: NET_IPV4_TCP_KEEPALIVE_PROBES=46,
......[     357]: NET_IPV4_TCP_RETRIES1=47,
......[     358]: NET_IPV4_TCP_RETRIES2=48,
......[     359]: NET_IPV4_TCP_FIN_TIMEOUT=49,
......[     360]: NET_IPV4_IP_MASQ_DEBUG=50,
......[     361]: NET_TCP_SYNCOOKIES=51,
......[     362]: NET_TCP_STDURG=52,
......[     363]: NET_TCP_RFC1337=53,
......[     364]: NET_TCP_SYN_TAILDROP=54,
......[     365]: NET_TCP_MAX_SYN_BACKLOG=55,
......[     366]: NET_IPV4_LOCAL_PORT_RANGE=56,
......[     367]: NET_IPV4_ICMP_ECHO_IGNORE_ALL=57,
......[     368]: NET_IPV4_ICMP_ECHO_IGNORE_BROADCASTS=58,
......[     369]: NET_IPV4_ICMP_SOURCEQUENCH_RATE=59,
......[     370]: NET_IPV4_ICMP_DESTUNREACH_RATE=60,
......[     371]: NET_IPV4_ICMP_TIMEEXCEED_RATE=61,
......[     372]: NET_IPV4_ICMP_PARAMPROB_RATE=62,
......[     373]: NET_IPV4_ICMP_ECHOREPLY_RATE=63,
......[     374]: NET_IPV4_ICMP_IGNORE_BOGUS_ERROR_RESPONSES=64,
......[     375]: NET_IPV4_IGMP_MAX_MEMBERSHIPS=65,
......[     376]: NET_TCP_TW_RECYCLE=66,
......[     377]: NET_IPV4_ALWAYS_DEFRAG=67,
......[     378]: NET_IPV4_TCP_KEEPALIVE_INTVL=68,
......[     379]: NET_IPV4_INET_PEER_THRESHOLD=69,
......[     380]: NET_IPV4_INET_PEER_MINTTL=70,
......[     381]: NET_IPV4_INET_PEER_MAXTTL=71,
......[     382]: NET_IPV4_INET_PEER_GC_MINTIME=72,
......[     383]: NET_IPV4_INET_PEER_GC_MAXTIME=73,
......[     384]: NET_TCP_ORPHAN_RETRIES=74,
......[     385]: NET_TCP_ABORT_ON_OVERFLOW=75,
......[     386]: NET_TCP_SYNACK_RETRIES=76,
......[     387]: NET_TCP_MAX_ORPHANS=77,
......[     388]: NET_TCP_MAX_TW_BUCKETS=78,
......[     389]: NET_TCP_FACK=79,
......[     390]: NET_TCP_REORDERING=80,
......[     391]: NET_TCP_ECN=81,
......[     392]: NET_TCP_DSACK=82,
......[     393]: NET_TCP_MEM=83,
......[     394]: NET_TCP_WMEM=84,
......[     395]: NET_TCP_RMEM=85,
......[     396]: NET_TCP_APP_WIN=86,
......[     397]: NET_TCP_ADV_WIN_SCALE=87,
......[     398]: NET_IPV4_NONLOCAL_BIND=88,
......[     399]: NET_IPV4_ICMP_RATELIMIT=89,
......[     400]: NET_IPV4_ICMP_RATEMASK=90,
......[     401]: NET_TCP_TW_REUSE=91,
......[     402]: NET_TCP_FRTO=92,
......[     403]: NET_TCP_LOW_LATENCY=93,
......[     404]: NET_IPV4_IPFRAG_SECRET_INTERVAL=94,
......[     405]: NET_IPV4_IGMP_MAX_MSF=96,
......[     406]: NET_TCP_NO_METRICS_SAVE=97,
......[     407]: NET_TCP_DEFAULT_WIN_SCALE=105,
......[     408]: NET_TCP_MODERATE_RCVBUF=106,
......[     409]: NET_TCP_TSO_WIN_DIVISOR=107,
......[     410]: NET_TCP_BIC_BETA=108,
......[     411]: NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR=109,
......[     412]: NET_TCP_CONG_CONTROL=110,
......[     413]: NET_TCP_ABC=111,
......[     414]: NET_IPV4_IPFRAG_MAX_DIST=112,
......[     415]: NET_TCP_MTU_PROBING=113,
......[     416]: NET_TCP_BASE_MSS=114,
......[     417]: NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS=115,
......[     418]: NET_TCP_DMA_COPYBREAK=116,
......[     419]: NET_TCP_SLOW_START_AFTER_IDLE=117,
......[     420]: NET_CIPSOV4_CACHE_ENABLE=118,
......[     421]: NET_CIPSOV4_CACHE_BUCKET_SIZE=119,
......[     422]: NET_CIPSOV4_RBM_OPTFMT=120,
......[     423]: NET_CIPSOV4_RBM_STRICTVALID=121,
......[     424]: NET_TCP_AVAIL_CONG_CONTROL=122,
......[     425]: NET_TCP_ALLOWED_CONG_CONTROL=123,
......[     426]: NET_TCP_MAX_SSTHRESH=124,
......[     427]: NET_TCP_FRTO_RESPONSE=125,
......[     428]: };
......[     430]: enum {
......[     431]: NET_IPV4_ROUTE_FLUSH=1,
......[     432]: NET_IPV4_ROUTE_MIN_DELAY=2,
......[     433]: NET_IPV4_ROUTE_MAX_DELAY=3,
......[     434]: NET_IPV4_ROUTE_GC_THRESH=4,
......[     435]: NET_IPV4_ROUTE_MAX_SIZE=5,
......[     436]: NET_IPV4_ROUTE_GC_MIN_INTERVAL=6,
......[     437]: NET_IPV4_ROUTE_GC_TIMEOUT=7,
......[     438]: NET_IPV4_ROUTE_GC_INTERVAL=8,
......[     439]: NET_IPV4_ROUTE_REDIRECT_LOAD=9,
......[     440]: NET_IPV4_ROUTE_REDIRECT_NUMBER=10,
......[     441]: NET_IPV4_ROUTE_REDIRECT_SILENCE=11,
......[     442]: NET_IPV4_ROUTE_ERROR_COST=12,
......[     443]: NET_IPV4_ROUTE_ERROR_BURST=13,
......[     444]: NET_IPV4_ROUTE_GC_ELASTICITY=14,
......[     445]: NET_IPV4_ROUTE_MTU_EXPIRES=15,
......[     446]: NET_IPV4_ROUTE_MIN_PMTU=16,
......[     447]: NET_IPV4_ROUTE_MIN_ADVMSS=17,
......[     448]: NET_IPV4_ROUTE_SECRET_INTERVAL=18,
......[     449]: NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS=19,
......[     450]: };
......[     452]: enum
......[     453]: {
......[     454]: NET_PROTO_CONF_ALL=-2,
......[     455]: NET_PROTO_CONF_DEFAULT=-3
......[     458]: };
......[     460]: enum
......[     461]: {
......[     462]: NET_IPV4_CONF_FORWARDING=1,
......[     463]: NET_IPV4_CONF_MC_FORWARDING=2,
......[     464]: NET_IPV4_CONF_PROXY_ARP=3,
......[     465]: NET_IPV4_CONF_ACCEPT_REDIRECTS=4,
......[     466]: NET_IPV4_CONF_SECURE_REDIRECTS=5,
......[     467]: NET_IPV4_CONF_SEND_REDIRECTS=6,
......[     468]: NET_IPV4_CONF_SHARED_MEDIA=7,
......[     469]: NET_IPV4_CONF_RP_FILTER=8,
......[     470]: NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE=9,
......[     471]: NET_IPV4_CONF_BOOTP_RELAY=10,
......[     472]: NET_IPV4_CONF_LOG_MARTIANS=11,
......[     473]: NET_IPV4_CONF_TAG=12,
......[     474]: NET_IPV4_CONF_ARPFILTER=13,
......[     475]: NET_IPV4_CONF_MEDIUM_ID=14,
......[     476]: NET_IPV4_CONF_NOXFRM=15,
......[     477]: NET_IPV4_CONF_NOPOLICY=16,
......[     478]: NET_IPV4_CONF_FORCE_IGMP_VERSION=17,
......[     479]: NET_IPV4_CONF_ARP_ANNOUNCE=18,
......[     480]: NET_IPV4_CONF_ARP_IGNORE=19,
......[     481]: NET_IPV4_CONF_PROMOTE_SECONDARIES=20,
......[     482]: NET_IPV4_CONF_ARP_ACCEPT=21,
......[     483]: NET_IPV4_CONF_ARP_NOTIFY=22,
......[     484]: };
......[     487]: enum
......[     488]: {
......[     489]: NET_IPV4_NF_CONNTRACK_MAX=1,
......[     490]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT=2,
......[     491]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV=3,
......[     492]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED=4,
......[     493]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT=5,
......[     494]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT=6,
......[     495]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK=7,
......[     496]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT=8,
......[     497]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE=9,
......[     498]: NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT=10,
......[     499]: NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT_STREAM=11,
......[     500]: NET_IPV4_NF_CONNTRACK_ICMP_TIMEOUT=12,
......[     501]: NET_IPV4_NF_CONNTRACK_GENERIC_TIMEOUT=13,
......[     502]: NET_IPV4_NF_CONNTRACK_BUCKETS=14,
......[     503]: NET_IPV4_NF_CONNTRACK_LOG_INVALID=15,
......[     504]: NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS=16,
......[     505]: NET_IPV4_NF_CONNTRACK_TCP_LOOSE=17,
......[     506]: NET_IPV4_NF_CONNTRACK_TCP_BE_LIBERAL=18,
......[     507]: NET_IPV4_NF_CONNTRACK_TCP_MAX_RETRANS=19,
......[     508]: NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED=20,
......[     509]: NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT=21,
......[     510]: NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED=22,
......[     511]: NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED=23,
......[     512]: NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT=24,
......[     513]: NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD=25,
......[     514]: NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT=26,
......[     515]: NET_IPV4_NF_CONNTRACK_COUNT=27,
......[     516]: NET_IPV4_NF_CONNTRACK_CHECKSUM=28,
......[     517]: };
......[     520]: enum {
......[     521]: NET_IPV6_CONF=16,
......[     522]: NET_IPV6_NEIGH=17,
......[     523]: NET_IPV6_ROUTE=18,
......[     524]: NET_IPV6_ICMP=19,
......[     525]: NET_IPV6_BINDV6ONLY=20,
......[     526]: NET_IPV6_IP6FRAG_HIGH_THRESH=21,
......[     527]: NET_IPV6_IP6FRAG_LOW_THRESH=22,
......[     528]: NET_IPV6_IP6FRAG_TIME=23,
......[     529]: NET_IPV6_IP6FRAG_SECRET_INTERVAL=24,
......[     530]: NET_IPV6_MLD_MAX_MSF=25,
......[     531]: };
......[     533]: enum {
......[     534]: NET_IPV6_ROUTE_FLUSH=1,
......[     535]: NET_IPV6_ROUTE_GC_THRESH=2,
......[     536]: NET_IPV6_ROUTE_MAX_SIZE=3,
......[     537]: NET_IPV6_ROUTE_GC_MIN_INTERVAL=4,
......[     538]: NET_IPV6_ROUTE_GC_TIMEOUT=5,
......[     539]: NET_IPV6_ROUTE_GC_INTERVAL=6,
......[     540]: NET_IPV6_ROUTE_GC_ELASTICITY=7,
......[     541]: NET_IPV6_ROUTE_MTU_EXPIRES=8,
......[     542]: NET_IPV6_ROUTE_MIN_ADVMSS=9,
......[     543]: NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS=10
......[     544]: };
......[     546]: enum {
......[     547]: NET_IPV6_FORWARDING=1,
......[     548]: NET_IPV6_HOP_LIMIT=2,
......[     549]: NET_IPV6_MTU=3,
......[     550]: NET_IPV6_ACCEPT_RA=4,
......[     551]: NET_IPV6_ACCEPT_REDIRECTS=5,
......[     552]: NET_IPV6_AUTOCONF=6,
......[     553]: NET_IPV6_DAD_TRANSMITS=7,
......[     554]: NET_IPV6_RTR_SOLICITS=8,
......[     555]: NET_IPV6_RTR_SOLICIT_INTERVAL=9,
......[     556]: NET_IPV6_RTR_SOLICIT_DELAY=10,
......[     557]: NET_IPV6_USE_TEMPADDR=11,
......[     558]: NET_IPV6_TEMP_VALID_LFT=12,
......[     559]: NET_IPV6_TEMP_PREFERED_LFT=13,
......[     560]: NET_IPV6_REGEN_MAX_RETRY=14,
......[     561]: NET_IPV6_MAX_DESYNC_FACTOR=15,
......[     562]: NET_IPV6_MAX_ADDRESSES=16,
......[     563]: NET_IPV6_FORCE_MLD_VERSION=17,
......[     564]: NET_IPV6_ACCEPT_RA_DEFRTR=18,
......[     565]: NET_IPV6_ACCEPT_RA_PINFO=19,
......[     566]: NET_IPV6_ACCEPT_RA_RTR_PREF=20,
......[     567]: NET_IPV6_RTR_PROBE_INTERVAL=21,
......[     568]: NET_IPV6_ACCEPT_RA_RT_INFO_MAX_PLEN=22,
......[     569]: NET_IPV6_PROXY_NDP=23,
......[     570]: NET_IPV6_ACCEPT_SOURCE_ROUTE=25,
......[     571]: __NET_IPV6_MAX
......[     572]: };
......[     575]: enum {
......[     576]: NET_IPV6_ICMP_RATELIMIT=1
......[     577]: };
......[     580]: enum {
......[     581]: NET_NEIGH_MCAST_SOLICIT=1,
......[     582]: NET_NEIGH_UCAST_SOLICIT=2,
......[     583]: NET_NEIGH_APP_SOLICIT=3,
......[     584]: NET_NEIGH_RETRANS_TIME=4,
......[     585]: NET_NEIGH_REACHABLE_TIME=5,
......[     586]: NET_NEIGH_DELAY_PROBE_TIME=6,
......[     587]: NET_NEIGH_GC_STALE_TIME=7,
......[     588]: NET_NEIGH_UNRES_QLEN=8,
......[     589]: NET_NEIGH_PROXY_QLEN=9,
......[     590]: NET_NEIGH_ANYCAST_DELAY=10,
......[     591]: NET_NEIGH_PROXY_DELAY=11,
......[     592]: NET_NEIGH_LOCKTIME=12,
......[     593]: NET_NEIGH_GC_INTERVAL=13,
......[     594]: NET_NEIGH_GC_THRESH1=14,
......[     595]: NET_NEIGH_GC_THRESH2=15,
......[     596]: NET_NEIGH_GC_THRESH3=16,
......[     597]: NET_NEIGH_RETRANS_TIME_MS=17,
......[     598]: NET_NEIGH_REACHABLE_TIME_MS=18,
......[     599]: };
......[     602]: enum {
......[     603]: NET_DCCP_DEFAULT=1,
......[     604]: };
......[     607]: enum {
......[     608]: NET_IPX_PPROP_BROADCASTING=1,
......[     609]: NET_IPX_FORWARDING=2
......[     610]: };
......[     613]: enum {
......[     614]: NET_LLC2=1,
......[     615]: NET_LLC_STATION=2,
......[     616]: };
......[     619]: enum {
......[     620]: NET_LLC2_TIMEOUT=1,
......[     621]: };
......[     624]: enum {
......[     625]: NET_LLC_STATION_ACK_TIMEOUT=1,
......[     626]: };
......[     629]: enum {
......[     630]: NET_LLC2_ACK_TIMEOUT=1,
......[     631]: NET_LLC2_P_TIMEOUT=2,
......[     632]: NET_LLC2_REJ_TIMEOUT=3,
......[     633]: NET_LLC2_BUSY_TIMEOUT=4,
......[     634]: };
......[     637]: enum {
......[     638]: NET_ATALK_AARP_EXPIRY_TIME=1,
......[     639]: NET_ATALK_AARP_TICK_TIME=2,
......[     640]: NET_ATALK_AARP_RETRANSMIT_LIMIT=3,
......[     641]: NET_ATALK_AARP_RESOLVE_TIME=4
......[     642]: };
......[     646]: enum {
......[     647]: NET_NETROM_DEFAULT_PATH_QUALITY=1,
......[     648]: NET_NETROM_OBSOLESCENCE_COUNT_INITIALISER=2,
......[     649]: NET_NETROM_NETWORK_TTL_INITIALISER=3,
......[     650]: NET_NETROM_TRANSPORT_TIMEOUT=4,
......[     651]: NET_NETROM_TRANSPORT_MAXIMUM_TRIES=5,
......[     652]: NET_NETROM_TRANSPORT_ACKNOWLEDGE_DELAY=6,
......[     653]: NET_NETROM_TRANSPORT_BUSY_DELAY=7,
......[     654]: NET_NETROM_TRANSPORT_REQUESTED_WINDOW_SIZE=8,
......[     655]: NET_NETROM_TRANSPORT_NO_ACTIVITY_TIMEOUT=9,
......[     656]: NET_NETROM_ROUTING_CONTROL=10,
......[     657]: NET_NETROM_LINK_FAILS_COUNT=11,
......[     658]: NET_NETROM_RESET=12
......[     659]: };
......[     662]: enum {
......[     663]: NET_AX25_IP_DEFAULT_MODE=1,
......[     664]: NET_AX25_DEFAULT_MODE=2,
......[     665]: NET_AX25_BACKOFF_TYPE=3,
......[     666]: NET_AX25_CONNECT_MODE=4,
......[     667]: NET_AX25_STANDARD_WINDOW=5,
......[     668]: NET_AX25_EXTENDED_WINDOW=6,
......[     669]: NET_AX25_T1_TIMEOUT=7,
......[     670]: NET_AX25_T2_TIMEOUT=8,
......[     671]: NET_AX25_T3_TIMEOUT=9,
......[     672]: NET_AX25_IDLE_TIMEOUT=10,
......[     673]: NET_AX25_N2=11,
......[     674]: NET_AX25_PACLEN=12,
......[     675]: NET_AX25_PROTOCOL=13,
......[     676]: NET_AX25_DAMA_SLAVE_TIMEOUT=14
......[     677]: };
......[     680]: enum {
......[     681]: NET_ROSE_RESTART_REQUEST_TIMEOUT=1,
......[     682]: NET_ROSE_CALL_REQUEST_TIMEOUT=2,
......[     683]: NET_ROSE_RESET_REQUEST_TIMEOUT=3,
......[     684]: NET_ROSE_CLEAR_REQUEST_TIMEOUT=4,
......[     685]: NET_ROSE_ACK_HOLD_BACK_TIMEOUT=5,
......[     686]: NET_ROSE_ROUTING_CONTROL=6,
......[     687]: NET_ROSE_LINK_FAIL_TIMEOUT=7,
......[     688]: NET_ROSE_MAX_VCS=8,
......[     689]: NET_ROSE_WINDOW_SIZE=9,
......[     690]: NET_ROSE_NO_ACTIVITY_TIMEOUT=10
......[     691]: };
......[     694]: enum {
......[     695]: NET_X25_RESTART_REQUEST_TIMEOUT=1,
......[     696]: NET_X25_CALL_REQUEST_TIMEOUT=2,
......[     697]: NET_X25_RESET_REQUEST_TIMEOUT=3,
......[     698]: NET_X25_CLEAR_REQUEST_TIMEOUT=4,
......[     699]: NET_X25_ACK_HOLD_BACK_TIMEOUT=5,
......[     700]: NET_X25_FORWARD=6
......[     701]: };
......[     704]: enum
......[     705]: {
......[     706]: NET_TR_RIF_TIMEOUT=1
......[     707]: };
......[     710]: enum {
......[     711]: NET_DECNET_NODE_TYPE = 1,
......[     712]: NET_DECNET_NODE_ADDRESS = 2,
......[     713]: NET_DECNET_NODE_NAME = 3,
......[     714]: NET_DECNET_DEFAULT_DEVICE = 4,
......[     715]: NET_DECNET_TIME_WAIT = 5,
......[     716]: NET_DECNET_DN_COUNT = 6,
......[     717]: NET_DECNET_DI_COUNT = 7,
......[     718]: NET_DECNET_DR_COUNT = 8,
......[     719]: NET_DECNET_DST_GC_INTERVAL = 9,
......[     720]: NET_DECNET_CONF = 10,
......[     721]: NET_DECNET_NO_FC_MAX_CWND = 11,
......[     722]: NET_DECNET_MEM = 12,
......[     723]: NET_DECNET_RMEM = 13,
......[     724]: NET_DECNET_WMEM = 14,
......[     725]: NET_DECNET_DEBUG_LEVEL = 255
......[     726]: };
......[     729]: enum {
......[     730]: NET_DECNET_CONF_LOOPBACK = -2,
......[     731]: NET_DECNET_CONF_DDCMP = -3,
......[     732]: NET_DECNET_CONF_PPP = -4,
......[     733]: NET_DECNET_CONF_X25 = -5,
......[     734]: NET_DECNET_CONF_GRE = -6,
......[     735]: NET_DECNET_CONF_ETHER = -7
......[     738]: };
......[     741]: enum {
......[     742]: NET_DECNET_CONF_DEV_PRIORITY = 1,
......[     743]: NET_DECNET_CONF_DEV_T1 = 2,
......[     744]: NET_DECNET_CONF_DEV_T2 = 3,
......[     745]: NET_DECNET_CONF_DEV_T3 = 4,
......[     746]: NET_DECNET_CONF_DEV_FORWARDING = 5,
......[     747]: NET_DECNET_CONF_DEV_BLKSIZE = 6,
......[     748]: NET_DECNET_CONF_DEV_STATE = 7
......[     749]: };
......[     752]: enum {
......[     753]: NET_SCTP_RTO_INITIAL = 1,
......[     754]: NET_SCTP_RTO_MIN = 2,
......[     755]: NET_SCTP_RTO_MAX = 3,
......[     756]: NET_SCTP_RTO_ALPHA = 4,
......[     757]: NET_SCTP_RTO_BETA = 5,
......[     758]: NET_SCTP_VALID_COOKIE_LIFE = 6,
......[     759]: NET_SCTP_ASSOCIATION_MAX_RETRANS = 7,
......[     760]: NET_SCTP_PATH_MAX_RETRANS = 8,
......[     761]: NET_SCTP_MAX_INIT_RETRANSMITS = 9,
......[     762]: NET_SCTP_HB_INTERVAL = 10,
......[     763]: NET_SCTP_PRESERVE_ENABLE = 11,
......[     764]: NET_SCTP_MAX_BURST = 12,
......[     765]: NET_SCTP_ADDIP_ENABLE = 13,
......[     766]: NET_SCTP_PRSCTP_ENABLE = 14,
......[     767]: NET_SCTP_SNDBUF_POLICY = 15,
......[     768]: NET_SCTP_SACK_TIMEOUT = 16,
......[     769]: NET_SCTP_RCVBUF_POLICY = 17,
......[     770]: };
......[     773]: enum {
......[     774]: NET_BRIDGE_NF_CALL_ARPTABLES = 1,
......[     775]: NET_BRIDGE_NF_CALL_IPTABLES = 2,
......[     776]: NET_BRIDGE_NF_CALL_IP6TABLES = 3,
......[     777]: NET_BRIDGE_NF_FILTER_VLAN_TAGGED = 4,
......[     778]: NET_BRIDGE_NF_FILTER_PPPOE_TAGGED = 5,
......[     779]: };
......[     782]: enum {
......[     783]: NET_IRDA_DISCOVERY=1,
......[     784]: NET_IRDA_DEVNAME=2,
......[     785]: NET_IRDA_DEBUG=3,
......[     786]: NET_IRDA_FAST_POLL=4,
......[     787]: NET_IRDA_DISCOVERY_SLOTS=5,
......[     788]: NET_IRDA_DISCOVERY_TIMEOUT=6,
......[     789]: NET_IRDA_SLOT_TIMEOUT=7,
......[     790]: NET_IRDA_MAX_BAUD_RATE=8,
......[     791]: NET_IRDA_MIN_TX_TURN_TIME=9,
......[     792]: NET_IRDA_MAX_TX_DATA_SIZE=10,
......[     793]: NET_IRDA_MAX_TX_WINDOW=11,
......[     794]: NET_IRDA_MAX_NOREPLY_TIME=12,
......[     795]: NET_IRDA_WARN_NOREPLY_TIME=13,
......[     796]: NET_IRDA_LAP_KEEPALIVE_TIME=14,
......[     797]: };
......[     801]: enum
......[     802]: {
......[     803]: FS_NRINODE=1,
......[     804]: FS_STATINODE=2,
......[     805]: FS_MAXINODE=3,
......[     806]: FS_NRDQUOT=4,
......[     807]: FS_MAXDQUOT=5,
......[     808]: FS_NRFILE=6,
......[     809]: FS_MAXFILE=7,
......[     810]: FS_DENTRY=8,
......[     811]: FS_NRSUPER=9,
......[     812]: FS_MAXSUPER=10,
......[     813]: FS_OVERFLOWUID=11,
......[     814]: FS_OVERFLOWGID=12,
......[     815]: FS_LEASES=13,
......[     816]: FS_DIR_NOTIFY=14,
......[     817]: FS_LEASE_TIME=15,
......[     818]: FS_DQSTATS=16,
......[     819]: FS_XFS=17,
......[     820]: FS_AIO_NR=18,
......[     821]: FS_AIO_MAX_NR=19,
......[     822]: FS_INOTIFY=20,
......[     823]: FS_OCFS2=988,
......[     824]: };
......[     827]: enum {
......[     828]: FS_DQ_LOOKUPS = 1,
......[     829]: FS_DQ_DROPS = 2,
......[     830]: FS_DQ_READS = 3,
......[     831]: FS_DQ_WRITES = 4,
......[     832]: FS_DQ_CACHE_HITS = 5,
......[     833]: FS_DQ_ALLOCATED = 6,
......[     834]: FS_DQ_FREE = 7,
......[     835]: FS_DQ_SYNCS = 8,
......[     836]: FS_DQ_WARNINGS = 9,
......[     837]: };
......[     842]: enum {
......[     843]: DEV_CDROM=1,
......[     844]: DEV_HWMON=2,
......[     845]: DEV_PARPORT=3,
......[     846]: DEV_RAID=4,
......[     847]: DEV_MAC_HID=5,
......[     848]: DEV_SCSI=6,
......[     849]: DEV_IPMI=7,
......[     850]: };
......[     853]: enum {
......[     854]: DEV_CDROM_INFO=1,
......[     855]: DEV_CDROM_AUTOCLOSE=2,
......[     856]: DEV_CDROM_AUTOEJECT=3,
......[     857]: DEV_CDROM_DEBUG=4,
......[     858]: DEV_CDROM_LOCK=5,
......[     859]: DEV_CDROM_CHECK_MEDIA=6
......[     860]: };
......[     863]: enum {
......[     864]: DEV_PARPORT_DEFAULT=-3
......[     865]: };
......[     868]: enum {
......[     869]: DEV_RAID_SPEED_LIMIT_MIN=1,
......[     870]: DEV_RAID_SPEED_LIMIT_MAX=2
......[     871]: };
......[     874]: enum {
......[     875]: DEV_PARPORT_DEFAULT_TIMESLICE=1,
......[     876]: DEV_PARPORT_DEFAULT_SPINTIME=2
......[     877]: };
......[     880]: enum {
......[     881]: DEV_PARPORT_SPINTIME=1,
......[     882]: DEV_PARPORT_BASE_ADDR=2,
......[     883]: DEV_PARPORT_IRQ=3,
......[     884]: DEV_PARPORT_DMA=4,
......[     885]: DEV_PARPORT_MODES=5,
......[     886]: DEV_PARPORT_DEVICES=6,
......[     887]: DEV_PARPORT_AUTOPROBE=16
......[     888]: };
......[     891]: enum {
......[     892]: DEV_PARPORT_DEVICES_ACTIVE=-3,
......[     893]: };
......[     896]: enum {
......[     897]: DEV_PARPORT_DEVICE_TIMESLICE=1,
......[     898]: };
......[     901]: enum {
......[     902]: DEV_MAC_HID_KEYBOARD_SENDS_LINUX_KEYCODES=1,
......[     903]: DEV_MAC_HID_KEYBOARD_LOCK_KEYCODES=2,
......[     904]: DEV_MAC_HID_MOUSE_BUTTON_EMULATION=3,
......[     905]: DEV_MAC_HID_MOUSE_BUTTON2_KEYCODE=4,
......[     906]: DEV_MAC_HID_MOUSE_BUTTON3_KEYCODE=5,
......[     907]: DEV_MAC_HID_ADB_MOUSE_SENDS_KEYCODES=6
......[     908]: };
......[     911]: enum {
......[     912]: DEV_SCSI_LOGGING_LEVEL=1,
......[     913]: };
......[     916]: enum {
......[     917]: DEV_IPMI_POWEROFF_POWERCYCLE=1,
......[     918]: };
......[     921]: enum
......[     922]: {
......[     923]: ABI_DEFHANDLER_COFF=1,
......[     924]: ABI_DEFHANDLER_ELF=2,
......[     925]: ABI_DEFHANDLER_LCALL7=3,
......[     926]: ABI_DEFHANDLER_LIBCSO=4,
......[     927]: ABI_TRACE=5,
......[     928]: ABI_FAKE_UTSNAME=6,
......[     929]: };
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/sysctl.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysctl.h
.....[      31]: struct ctl_table;
.....[      32]: struct nsproxy;
.....[      33]: struct ctl_table_root;
.....[      34]: struct ctl_table_header;
.....[      35]: struct ctl_dir;
.....[      37]: typedef struct ctl_table ctl_table;
.....[      39]: typedef int proc_handler (struct ctl_table *ctl, int write,
.....[      40]: void *buffer, size_t *lenp, loff_t *ppos);
.....[      42]: extern int proc_dostring(struct ctl_table *, int,
.....[      43]: void *, size_t *, loff_t *);
.....[      44]: extern int proc_dointvec(struct ctl_table *, int,
.....[      45]: void *, size_t *, loff_t *);
.....[      46]: extern int proc_dointvec_minmax(struct ctl_table *, int,
.....[      47]: void *, size_t *, loff_t *);
.....[      48]: extern int proc_dointvec_jiffies(struct ctl_table *, int,
.....[      49]: void *, size_t *, loff_t *);
.....[      50]: extern int proc_dointvec_userhz_jiffies(struct ctl_table *, int,
.....[      51]: void *, size_t *, loff_t *);
.....[      52]: extern int proc_dointvec_ms_jiffies(struct ctl_table *, int,
.....[      53]: void *, size_t *, loff_t *);
.....[      54]: extern int proc_doulongvec_minmax(struct ctl_table *, int,
.....[      55]: void *, size_t *, loff_t *);
.....[      56]: extern int proc_doulongvec_ms_jiffies_minmax(struct ctl_table *table, int,
.....[      57]: void *, size_t *, loff_t *);
.....[      58]: extern int proc_do_large_bitmap(struct ctl_table *, int,
.....[      59]: void *, size_t *, loff_t *);
.....[      89]: struct ctl_table_poll {
.....[      90]: atomic_t event;
.....[      91]: wait_queue_head_t wait;
.....[      92]: };
.....[      94]: static inline __attribute__((no_instrument_function)) void *proc_sys_poll_event(struct ctl_table_poll *poll\
.....                )
.....[      95]: {
.....[      96]: return (void *)(unsigned long)atomic_read(&poll->event);
.....[      97]: }
.....[     107]: struct ctl_table
.....[     108]: {
.....[     109]: const char *procname;
.....[     110]: void *data;
.....[     111]: int maxlen;
.....[     112]: umode_t mode;
.....[     113]: struct ctl_table *child;
.....[     114]: proc_handler *proc_handler;
.....[     115]: struct ctl_table_poll *poll;
.....[     116]: void *extra1;
.....[     117]: void *extra2;
.....[     118]: };
.....[     120]: struct ctl_node {
.....[     121]: struct rb_node node;
.....[     122]: struct ctl_table_header *header;
.....[     123]: };
.....[     127]: struct ctl_table_header
.....[     128]: {
.....[     129]: union {
.....[     130]: struct {
.....[     131]: struct ctl_table *ctl_table;
.....[     132]: int used;
.....[     133]: int count;
.....[     134]: int nreg;
.....[     135]: };
.....[     136]: struct callback_head rcu;
.....[     137]: };
.....[     138]: struct completion *unregistering;
.....[     139]: struct ctl_table *ctl_table_arg;
.....[     140]: struct ctl_table_root *root;
.....[     141]: struct ctl_table_set *set;
.....[     142]: struct ctl_dir *parent;
.....[     143]: struct ctl_node *node;
.....[     144]: };
.....[     146]: struct ctl_dir {
.....[     148]: struct ctl_table_header header;
.....[     149]: struct rb_root root;
.....[     150]: };
.....[     152]: struct ctl_table_set {
.....[     153]: int (*is_seen)(struct ctl_table_set *);
.....[     154]: struct ctl_dir dir;
.....[     155]: };
.....[     157]: struct ctl_table_root {
.....[     158]: struct ctl_table_set default_set;
.....[     159]: struct ctl_table_set *(*lookup)(struct ctl_table_root *root,
.....[     160]: struct nsproxy *namespaces);
.....[     161]: int (*permissions)(struct ctl_table_header *head, struct ctl_table *table);
.....[     162]: };
.....[     165]: struct ctl_path {
.....[     166]: const char *procname;
.....[     167]: };
.....[     171]: void proc_sys_poll_notify(struct ctl_table_poll *poll);
.....[     173]: extern void setup_sysctl_set(struct ctl_table_set *p,
.....[     174]: struct ctl_table_root *root,
.....[     175]: int (*is_seen)(struct ctl_table_set *));
.....[     176]: extern void retire_sysctl_set(struct ctl_table_set *set);
.....[     178]: void register_sysctl_root(struct ctl_table_root *root);
.....[     179]: struct ctl_table_header *__register_sysctl_table(
.....[     180]: struct ctl_table_set *set,
.....[     181]: const char *path, struct ctl_table *table);
.....[     182]: struct ctl_table_header *__register_sysctl_paths(
.....[     183]: struct ctl_table_set *set,
.....[     184]: const struct ctl_path *path, struct ctl_table *table);
.....[     185]: struct ctl_table_header *register_sysctl(const char *path, struct ctl_table *table);
.....[     186]: struct ctl_table_header *register_sysctl_table(struct ctl_table * table);
.....[     187]: struct ctl_table_header *register_sysctl_paths(const struct ctl_path *path,
.....[     188]: struct ctl_table *table);
.....[     190]: void unregister_sysctl_table(struct ctl_table_header * table);
.....[     192]: extern int sysctl_init(void);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysctl.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/key.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/assoc_array.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/assoc_array.h
.....[      26]: struct assoc_array {
.....[      27]: struct assoc_array_ptr *root;
.....[      28]: unsigned long nr_leaves_on_tree;
.....[      29]: };
.....[      34]: struct assoc_array_ops {
.....[      36]: unsigned long (*get_key_chunk)(const void *index_key, int level);
.....[      39]: unsigned long (*get_object_key_chunk)(const void *object, int level);
.....[      42]: bool (*compare_object)(const void *object, const void *index_key);
.....[      47]: int (*diff_objects)(const void *object, const void *index_key);
.....[      50]: void (*free_object)(void *object);
.....[      51]: };
.....[      56]: struct assoc_array_edit;
.....[      58]: static inline __attribute__((no_instrument_function)) void assoc_array_init(struct assoc_array *array)
.....[      59]: {
.....[      60]: array->root = ((void *)0);
.....[      61]: array->nr_leaves_on_tree = 0;
.....[      62]: }
.....[      64]: extern int assoc_array_iterate(const struct assoc_array *array,
.....[      65]: int (*iterator)(const void *object,
.....[      66]: void *iterator_data),
.....[      67]: void *iterator_data);
.....[      68]: extern void *assoc_array_find(const struct assoc_array *array,
.....[      69]: const struct assoc_array_ops *ops,
.....[      70]: const void *index_key);
.....[      71]: extern void assoc_array_destroy(struct assoc_array *array,
.....[      72]: const struct assoc_array_ops *ops);
.....[      73]: extern struct assoc_array_edit *assoc_array_insert(struct assoc_array *array,
.....[      74]: const struct assoc_array_ops *ops,
.....[      75]: const void *index_key,
.....[      76]: void *object);
.....[      77]: extern void assoc_array_insert_set_object(struct assoc_array_edit *edit,
.....[      78]: void *object);
.....[      79]: extern struct assoc_array_edit *assoc_array_delete(struct assoc_array *array,
.....[      80]: const struct assoc_array_ops *ops,
.....[      81]: const void *index_key);
.....[      82]: extern struct assoc_array_edit *assoc_array_clear(struct assoc_array *array,
.....[      83]: const struct assoc_array_ops *ops);
.....[      84]: extern void assoc_array_apply_edit(struct assoc_array_edit *edit);
.....[      85]: extern void assoc_array_cancel_edit(struct assoc_array_edit *edit);
.....[      86]: extern int assoc_array_gc(struct assoc_array *array,
.....[      87]: const struct assoc_array_ops *ops,
.....[      88]: bool (*iterator)(void *object, void *iterator_data),
.....[      89]: void *iterator_data);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/assoc_array.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/key.h
....[      31]: typedef int32_t key_serial_t;
....[      34]: typedef uint32_t key_perm_t;
....[      36]: struct key;
....[      76]: struct seq_file;
....[      77]: struct user_struct;
....[      78]: struct signal_struct;
....[      79]: struct cred;
....[      81]: struct key_type;
....[      82]: struct key_owner;
....[      83]: struct keyring_list;
....[      84]: struct keyring_name;
....[      86]: struct keyring_index_key {
....[      87]: struct key_type *type;
....[      88]: const char *description;
....[      89]: size_t desc_len;
....[      90]: };
....[     106]: typedef struct __key_reference_with_attributes *key_ref_t;
....[     108]: static inline __attribute__((no_instrument_function)) key_ref_t make_key_ref(const struct key *key,
....[     109]: bool possession)
....[     110]: {
....[     111]: return (key_ref_t) ((unsigned long) key | possession);
....[     112]: }
....[     114]: static inline __attribute__((no_instrument_function)) struct key *key_ref_to_ptr(const key_ref_t key_ref)
....[     115]: {
....[     116]: return (struct key *) ((unsigned long) key_ref & ~1UL);
....[     117]: }
....[     119]: static inline __attribute__((no_instrument_function)) bool is_key_possessed(const key_ref_t key_ref)
....[     120]: {
....[     121]: return (unsigned long) key_ref & 1UL;
....[     122]: }
....[     132]: struct key {
....[     133]: atomic_t usage;
....[     134]: key_serial_t serial;
....[     135]: union {
....[     136]: struct list_head graveyard_link;
....[     137]: struct rb_node serial_node;
....[     138]: };
....[     139]: struct rw_semaphore sem;
....[     140]: struct key_user *user;
....[     141]: void *security;
....[     142]: union {
....[     143]: time_t expiry;
....[     144]: time_t revoked_at;
....[     145]: };
....[     146]: time_t last_used_at;
....[     147]: kuid_t uid;
....[     148]: kgid_t gid;
....[     149]: key_perm_t perm;
....[     150]: unsigned short quotalen;
....[     151]: unsigned short datalen;
....[     162]: unsigned long flags;
....[     179]: union {
....[     180]: struct keyring_index_key index_key;
....[     181]: struct {
....[     182]: struct key_type *type;
....[     183]: char *description;
....[     184]: };
....[     185]: };
....[     190]: union {
....[     191]: struct list_head link;
....[     192]: unsigned long x[2];
....[     193]: void *p[2];
....[     194]: int reject_error;
....[     195]: } type_data;
....[     201]: union {
....[     202]: union {
....[     203]: unsigned long value;
....[     204]: void *rcudata;
....[     205]: void *data;
....[     206]: void *data2[2];
....[     207]: } payload;
....[     208]: struct assoc_array keys;
....[     209]: };
....[     210]: };
....[     212]: extern struct key *key_alloc(struct key_type *type,
....[     213]: const char *desc,
....[     214]: kuid_t uid, kgid_t gid,
....[     215]: const struct cred *cred,
....[     216]: key_perm_t perm,
....[     217]: unsigned long flags);
....[     225]: extern void key_revoke(struct key *key);
....[     226]: extern void key_invalidate(struct key *key);
....[     227]: extern void key_put(struct key *key);
....[     229]: static inline __attribute__((no_instrument_function)) struct key *__key_get(struct key *key)
....[     230]: {
....[     231]: atomic_inc(&key->usage);
....[     232]: return key;
....[     233]: }
....[     235]: static inline __attribute__((no_instrument_function)) struct key *key_get(struct key *key)
....[     236]: {
....[     237]: return key ? __key_get(key) : key;
....[     238]: }
....[     240]: static inline __attribute__((no_instrument_function)) void key_ref_put(key_ref_t key_ref)
....[     241]: {
....[     242]: key_put(key_ref_to_ptr(key_ref));
....[     243]: }
....[     245]: extern struct key *request_key(struct key_type *type,
....[     246]: const char *description,
....[     247]: const char *callout_info);
....[     249]: extern struct key *request_key_with_auxdata(struct key_type *type,
....[     250]: const char *description,
....[     251]: const void *callout_info,
....[     252]: size_t callout_len,
....[     253]: void *aux);
....[     255]: extern struct key *request_key_async(struct key_type *type,
....[     256]: const char *description,
....[     257]: const void *callout_info,
....[     258]: size_t callout_len);
....[     260]: extern struct key *request_key_async_with_auxdata(struct key_type *type,
....[     261]: const char *description,
....[     262]: const void *callout_info,
....[     263]: size_t callout_len,
....[     264]: void *aux);
....[     266]: extern int wait_for_key_construction(struct key *key, bool intr);
....[     268]: extern int key_validate(const struct key *key);
....[     270]: extern key_ref_t key_create_or_update(key_ref_t keyring,
....[     271]: const char *type,
....[     272]: const char *description,
....[     273]: const void *payload,
....[     274]: size_t plen,
....[     275]: key_perm_t perm,
....[     276]: unsigned long flags);
....[     278]: extern int key_update(key_ref_t key,
....[     279]: const void *payload,
....[     280]: size_t plen);
....[     282]: extern int key_link(struct key *keyring,
....[     283]: struct key *key);
....[     285]: extern int key_unlink(struct key *keyring,
....[     286]: struct key *key);
....[     288]: extern struct key *keyring_alloc(const char *description, kuid_t uid, kgid_t gid,
....[     289]: const struct cred *cred,
....[     290]: key_perm_t perm,
....[     291]: unsigned long flags,
....[     292]: struct key *dest);
....[     294]: extern int keyring_clear(struct key *keyring);
....[     296]: extern key_ref_t keyring_search(key_ref_t keyring,
....[     297]: struct key_type *type,
....[     298]: const char *description);
....[     300]: extern int keyring_add_key(struct key *keyring,
....[     301]: struct key *key);
....[     303]: extern struct key *key_lookup(key_serial_t id);
....[     305]: static inline __attribute__((no_instrument_function)) key_serial_t key_serial(const struct key *key)
....[     306]: {
....[     307]: return key ? key->serial : 0;
....[     308]: }
....[     310]: extern void key_set_timeout(struct key *, unsigned);
....[     319]: static inline __attribute__((no_instrument_function)) bool key_is_instantiated(const struct key *key)
....[     320]: {
....[     321]: return (__builtin_constant_p((0)) ? constant_test_bit((0), (&key->flags)) : variable_test_bit((0), (&key->flags\
....                ))) &&
....[     322]: !(__builtin_constant_p((5)) ? constant_test_bit((5), (&key->flags)) : variable_test_bit((5), (&key->flags)\
....                ));
....[     323]: }
....[     335]: extern ctl_table key_sysctls[];
....[     340]: extern int install_thread_keyring_to_cred(struct cred *cred);
....[     341]: extern void key_fsuid_changed(struct task_struct *tsk);
....[     342]: extern void key_fsgid_changed(struct task_struct *tsk);
....[     343]: extern void key_init(void);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/key.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cred.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/selinux.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/selinux.h
....[      17]: struct selinux_audit_rule;
....[      18]: struct audit_context;
....[      19]: struct kern_ipc_perm;
....[      26]: bool selinux_is_enabled(void);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/selinux.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cred.h
...[      22]: struct user_struct;
...[      23]: struct cred;
...[      24]: struct inode;
...[      32]: struct group_info {
...[      33]: atomic_t usage;
...[      34]: int ngroups;
...[      35]: int nblocks;
...[      36]: kgid_t small_block[32];
...[      37]: kgid_t *blocks[0];
...[      38]: };
...[      49]: static inline __attribute__((no_instrument_function)) struct group_info *get_group_info(struct group_info *\
...                gi)
...[      50]: {
...[      51]: atomic_inc(&gi->usage);
...[      52]: return gi;
...[      53]: }
...[      65]: extern struct group_info *groups_alloc(int);
...[      66]: extern struct group_info init_groups;
...[      67]: extern void groups_free(struct group_info *);
...[      68]: extern int set_current_groups(struct group_info *);
...[      69]: extern int set_groups(struct cred *, struct group_info *);
...[      70]: extern int groups_search(const struct group_info *, kgid_t);
...[      76]: extern int in_group_p(kgid_t);
...[      77]: extern int in_egroup_p(kgid_t);
...[     102]: struct cred {
...[     103]: atomic_t usage;
...[     111]: kuid_t uid;
...[     112]: kgid_t gid;
...[     113]: kuid_t suid;
...[     114]: kgid_t sgid;
...[     115]: kuid_t euid;
...[     116]: kgid_t egid;
...[     117]: kuid_t fsuid;
...[     118]: kgid_t fsgid;
...[     119]: unsigned securebits;
...[     120]: kernel_cap_t cap_inheritable;
...[     121]: kernel_cap_t cap_permitted;
...[     122]: kernel_cap_t cap_effective;
...[     123]: kernel_cap_t cap_bset;
...[     125]: unsigned char jit_keyring;
...[     127]: struct key *session_keyring;
...[     128]: struct key *process_keyring;
...[     129]: struct key *thread_keyring;
...[     130]: struct key *request_key_auth;
...[     133]: void *security;
...[     135]: struct user_struct *user;
...[     136]: struct user_namespace *user_ns;
...[     137]: struct group_info *group_info;
...[     138]: struct callback_head rcu;
...[     139]: };
...[     141]: extern void __put_cred(struct cred *);
...[     142]: extern void exit_creds(struct task_struct *);
...[     143]: extern int copy_creds(struct task_struct *, unsigned long);
...[     144]: extern const struct cred *get_task_cred(struct task_struct *);
...[     145]: extern struct cred *cred_alloc_blank(void);
...[     146]: extern struct cred *prepare_creds(void);
...[     147]: extern struct cred *prepare_exec_creds(void);
...[     148]: extern int commit_creds(struct cred *);
...[     149]: extern void abort_creds(struct cred *);
...[     150]: extern const struct cred *override_creds(const struct cred *);
...[     151]: extern void revert_creds(const struct cred *);
...[     152]: extern struct cred *prepare_kernel_cred(struct task_struct *);
...[     153]: extern int change_create_files_as(struct cred *, struct inode *);
...[     154]: extern int set_security_override(struct cred *, u32);
...[     155]: extern int set_security_override_from_ctx(struct cred *, const char *);
...[     156]: extern int set_create_files_as(struct cred *, struct inode *);
...[     157]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) cred_init\
...                (void);
...[     188]: static inline __attribute__((no_instrument_function)) void validate_creds(const struct cred *cred)
...[     189]: {
...[     190]: }
...[     191]: static inline __attribute__((no_instrument_function)) void validate_creds_for_do_exit(struct task_struct *\
...                tsk)
...[     192]: {
...[     193]: }
...[     194]: static inline __attribute__((no_instrument_function)) void validate_process_creds(void)
...[     195]: {
...[     196]: }
...[     206]: static inline __attribute__((no_instrument_function)) struct cred *get_new_cred(struct cred *cred)
...[     207]: {
...[     208]: atomic_inc(&cred->usage);
...[     209]: return cred;
...[     210]: }
...[     225]: static inline __attribute__((no_instrument_function)) const struct cred *get_cred(const struct cred *cred)
...[     226]: {
...[     227]: struct cred *nonconst_cred = (struct cred *) cred;
...[     228]: validate_creds(cred);
...[     229]: return get_new_cred(nonconst_cred);
...[     230]: }
...[     243]: static inline __attribute__((no_instrument_function)) void put_cred(const struct cred *_cred)
...[     244]: {
...[     245]: struct cred *cred = (struct cred *) _cred;
...[     247]: validate_creds(cred);
...[     248]: if (atomic_dec_and_test(&(cred)->usage))
...[     249]: __put_cred(cred);
...[     250]: }
...[     343]: extern struct user_namespace init_user_ns;
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cred.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
..[      59]: struct exec_domain;
..[      60]: struct futex_pi_state;
..[      61]: struct robust_list_head;
..[      62]: struct bio_list;
..[      63]: struct fs_struct;
..[      64]: struct perf_event_context;
..[      65]: struct blk_plug;
..[      83]: extern unsigned long avenrun[];
..[      84]: extern void get_avenrun(unsigned long *loads, unsigned long offset, int shift);
..[      98]: extern unsigned long total_forks;
..[      99]: extern int nr_threads;
..[     100]: extern __attribute__((section(".data..percpu" ""))) __typeof__(unsigned long) process_counts;
..[     101]: extern int nr_processes(void);
..[     102]: extern unsigned long nr_running(void);
..[     103]: extern unsigned long nr_iowait(void);
..[     104]: extern unsigned long nr_iowait_cpu(int cpu);
..[     105]: extern unsigned long this_cpu_load(void);
..[     108]: extern void calc_global_load(unsigned long ticks);
..[     109]: extern void update_cpu_load_nohz(void);
..[     111]: extern unsigned long get_parent_ip(unsigned long addr);
..[     113]: extern void dump_cpu_task(int cpu);
..[     115]: struct seq_file;
..[     116]: struct cfs_rq;
..[     117]: struct task_group;
..[     119]: extern void proc_sched_show_task(struct task_struct *p, struct seq_file *m);
..[     120]: extern void proc_sched_set_task(struct task_struct *p);
..[     121]: extern void
..[     122]: print_cfs_rq(struct seq_file *m, int cpu, struct cfs_rq *cfs_rq);
..[     152]: extern char ___assert_task_state[1 - 2*!!(
..[     153]: sizeof("RSDTtZXxKWP")-1 != ( __builtin_constant_p(1024) ? ( (1024) < 1 ? ____ilog2_NaN() : (1024) & (1ULL << 63) ? 63 : \
..                (1024) & (1ULL << 62) ? 62 : (1024) & (1ULL << 61) ? 61 : (1024) & (1ULL << 60) ? 60 : (1024) & (1ULL << 59) ? 59 : (1024) & (1ULL << 58\
..                ) ? 58 : (1024) & (1ULL << 57) ? 57 : (1024) & (1ULL << 56) ? 56 : (1024) & (1ULL << 55) ? 55 : (1024) & (1ULL << 54) ? 54 : (1024) & (1ULL \
..                << 53) ? 53 : (1024) & (1ULL << 52) ? 52 : (1024) & (1ULL << 51) ? 51 : (1024) & (1ULL << 50) ? 50 : (1024) & (1ULL << 49) ? 49 : (1024) & \
..                (1ULL << 48) ? 48 : (1024) & (1ULL << 47) ? 47 : (1024) & (1ULL << 46) ? 46 : (1024) & (1ULL << 45) ? 45 : (1024) & (1ULL << 44) ? 44 : (1024\
..                ) & (1ULL << 43) ? 43 : (1024) & (1ULL << 42) ? 42 : (1024) & (1ULL << 41) ? 41 : (1024) & (1ULL << 40) ? 40 : (1024) & (1ULL << 39) ? 39 : \
..                (1024) & (1ULL << 38) ? 38 : (1024) & (1ULL << 37) ? 37 : (1024) & (1ULL << 36) ? 36 : (1024) & (1ULL << 35) ? 35 : (1024) & (1ULL << 34\
..                ) ? 34 : (1024) & (1ULL << 33) ? 33 : (1024) & (1ULL << 32) ? 32 : (1024) & (1ULL << 31) ? 31 : (1024) & (1ULL << 30) ? 30 : (1024) & (1ULL \
..                << 29) ? 29 : (1024) & (1ULL << 28) ? 28 : (1024) & (1ULL << 27) ? 27 : (1024) & (1ULL << 26) ? 26 : (1024) & (1ULL << 25) ? 25 : (1024) & \
..                (1ULL << 24) ? 24 : (1024) & (1ULL << 23) ? 23 : (1024) & (1ULL << 22) ? 22 : (1024) & (1ULL << 21) ? 21 : (1024) & (1ULL << 20) ? 20 : (1024\
..                ) & (1ULL << 19) ? 19 : (1024) & (1ULL << 18) ? 18 : (1024) & (1ULL << 17) ? 17 : (1024) & (1ULL << 16) ? 16 : (1024) & (1ULL << 15) ? 15 : \
..                (1024) & (1ULL << 14) ? 14 : (1024) & (1ULL << 13) ? 13 : (1024) & (1ULL << 12) ? 12 : (1024) & (1ULL << 11) ? 11 : (1024) & (1ULL << 10\
..                ) ? 10 : (1024) & (1ULL << 9) ? 9 : (1024) & (1ULL << 8) ? 8 : (1024) & (1ULL << 7) ? 7 : (1024) & (1ULL << 6) ? 6 : (1024) & (1ULL << 5) ? 5 : \
..                (1024) & (1ULL << 4) ? 4 : (1024) & (1ULL << 3) ? 3 : (1024) & (1ULL << 2) ? 2 : (1024) & (1ULL << 1) ? 1 : (1024) & (1ULL << 0) ? 0 : ____ilog2_NaN\
..                () ) : (sizeof(1024) <= 4) ? __ilog2_u32(1024) : __ilog2_u64(1024) )+1)];
..[     210]: extern rwlock_t tasklist_lock;
..[     211]: extern spinlock_t mmlist_lock;
..[     213]: struct task_struct;
..[     219]: extern void sched_init(void);
..[     220]: extern void sched_init_smp(void);
..[     221]: extern void schedule_tail(struct task_struct *prev);
..[     222]: extern void init_idle(struct task_struct *idle, int cpu);
..[     223]: extern void init_idle_bootup_task(struct task_struct *idle);
..[     225]: extern int runqueue_is_locked(int cpu);
..[     228]: extern void nohz_balance_enter_idle(int cpu);
..[     229]: extern void set_cpu_sd_state_idle(void);
..[     230]: extern int get_nohz_timer_target(void);
..[     239]: extern void show_state_filter(unsigned long state_filter);
..[     241]: static inline __attribute__((no_instrument_function)) void show_state(void)
..[     242]: {
..[     243]: show_state_filter(0);
..[     244]: }
..[     246]: extern void show_regs(struct pt_regs *);
..[     253]: extern void show_stack(struct task_struct *task, unsigned long *sp);
..[     255]: void io_schedule(void);
..[     256]: long io_schedule_timeout(long timeout);
..[     258]: extern void cpu_init (void);
..[     259]: extern void trap_init(void);
..[     260]: extern void update_process_times(int user);
..[     261]: extern void scheduler_tick(void);
..[     263]: extern void sched_show_task(struct task_struct *p);
..[     275]: static inline __attribute__((no_instrument_function)) void touch_softlockup_watchdog(void)
..[     276]: {
..[     277]: }
..[     278]: static inline __attribute__((no_instrument_function)) void touch_softlockup_watchdog_sync(void)
..[     279]: {
..[     280]: }
..[     281]: static inline __attribute__((no_instrument_function)) void touch_all_softlockup_watchdogs(void)
..[     282]: {
..[     283]: }
..[     284]: static inline __attribute__((no_instrument_function)) void lockup_detector_init(void)
..[     285]: {
..[     286]: }
..[     290]: void reset_hung_task_detector(void);
..[     301]: extern char __sched_text_start[], __sched_text_end[];
..[     304]: extern int in_sched_functions(unsigned long addr);
..[     307]: extern signed long schedule_timeout(signed long timeout);
..[     308]: extern signed long schedule_timeout_interruptible(signed long timeout);
..[     309]: extern signed long schedule_timeout_killable(signed long timeout);
..[     310]: extern signed long schedule_timeout_uninterruptible(signed long timeout);
..[     311]: void schedule(void);
..[     312]: extern void schedule_preempt_disabled(void);
..[     314]: struct nsproxy;
..[     315]: struct user_namespace;
..[     318]: extern void arch_pick_mmap_layout(struct mm_struct *mm);
..[     319]: extern unsigned long
..[     320]: arch_get_unmapped_area(struct file *, unsigned long, unsigned long,
..[     321]: unsigned long, unsigned long);
..[     322]: extern unsigned long
..[     323]: arch_get_unmapped_area_topdown(struct file *filp, unsigned long addr,
..[     324]: unsigned long len, unsigned long pgoff,
..[     325]: unsigned long flags);
..[     331]: extern void set_dumpable(struct mm_struct *mm, int value);
..[     332]: extern int get_dumpable(struct mm_struct *mm);
..[     378]: struct sighand_struct {
..[     379]: atomic_t count;
..[     380]: struct k_sigaction action[_NSIG];
..[     381]: spinlock_t siglock;
..[     382]: wait_queue_head_t signalfd_wqh;
..[     383]: };
..[     385]: struct pacct_struct {
..[     386]: int ac_flag;
..[     387]: long ac_exitcode;
..[     388]: unsigned long ac_mem;
..[     389]: cputime_t ac_utime, ac_stime;
..[     390]: unsigned long ac_minflt, ac_majflt;
..[     391]: };
..[     393]: struct cpu_itimer {
..[     394]: cputime_t expires;
..[     395]: cputime_t incr;
..[     396]: u32 error;
..[     397]: u32 incr_error;
..[     398]: };
..[     407]: struct cputime {
..[     408]: cputime_t utime;
..[     409]: cputime_t stime;
..[     410]: };
..[     426]: struct task_cputime {
..[     427]: cputime_t utime;
..[     428]: cputime_t stime;
..[     429]: unsigned long long sum_exec_runtime;
..[     430]: };
..[     468]: struct thread_group_cputimer {
..[     469]: struct task_cputime cputime;
..[     470]: int running;
..[     471]: raw_spinlock_t lock;
..[     472]: };
..[     475]: struct autogroup;
..[     484]: struct signal_struct {
..[     485]: atomic_t sigcnt;
..[     486]: atomic_t live;
..[     487]: int nr_threads;
..[     489]: wait_queue_head_t wait_chldexit;
..[     492]: struct task_struct *curr_target;
..[     495]: struct sigpending shared_pending;
..[     498]: int group_exit_code;
..[     504]: int notify_count;
..[     505]: struct task_struct *group_exit_task;
..[     508]: int group_stop_count;
..[     509]: unsigned int flags;
..[     520]: unsigned int is_child_subreaper:1;
..[     521]: unsigned int has_child_subreaper:1;
..[     524]: int posix_timer_id;
..[     525]: struct list_head posix_timers;
..[     528]: struct hrtimer real_timer;
..[     529]: struct pid *leader_pid;
..[     530]: ktime_t it_real_incr;
..[     537]: struct cpu_itimer it[2];
..[     543]: struct thread_group_cputimer cputimer;
..[     546]: struct task_cputime cputime_expires;
..[     548]: struct list_head cpu_timers[3];
..[     550]: struct pid *tty_old_pgrp;
..[     553]: int leader;
..[     555]: struct tty_struct *tty;
..[     566]: cputime_t utime, stime, cutime, cstime;
..[     567]: cputime_t gtime;
..[     568]: cputime_t cgtime;
..[     570]: struct cputime prev_cputime;
..[     572]: unsigned long nvcsw, nivcsw, cnvcsw, cnivcsw;
..[     573]: unsigned long min_flt, maj_flt, cmin_flt, cmaj_flt;
..[     574]: unsigned long inblock, oublock, cinblock, coublock;
..[     575]: unsigned long maxrss, cmaxrss;
..[     576]: struct task_io_accounting ioac;
..[     584]: unsigned long long sum_sched_runtime;
..[     595]: struct rlimit rlim[16];
..[     598]: struct pacct_struct pacct;
..[     601]: struct taskstats *stats;
..[     604]: unsigned audit_tty;
..[     605]: unsigned audit_tty_log_passwd;
..[     606]: struct tty_audit_buf *tty_audit_buf;
..[     618]: struct rw_semaphore group_rwsem;
..[     621]: oom_flags_t oom_flags;
..[     622]: short oom_score_adj;
..[     623]: short oom_score_adj_min;
..[     626]: struct mutex cred_guard_mutex;
..[     629]: };
..[     648]: static inline __attribute__((no_instrument_function)) int signal_group_exit(const struct signal_struct *sig\
..                )
..[     649]: {
..[     650]: return (sig->flags & 0x00000004) ||
..[     651]: (sig->group_exit_task != ((void *)0));
..[     652]: }
..[     657]: struct user_struct {
..[     658]: atomic_t __count;
..[     659]: atomic_t processes;
..[     660]: atomic_t files;
..[     661]: atomic_t sigpending;
..[     663]: atomic_t inotify_watches;
..[     664]: atomic_t inotify_devs;
..[     667]: atomic_t fanotify_listeners;
..[     670]: atomic_long_t epoll_watches;
..[     674]: unsigned long mq_bytes;
..[     676]: unsigned long locked_shm;
..[     679]: struct key *uid_keyring;
..[     680]: struct key *session_keyring;
..[     684]: struct hlist_node uidhash_node;
..[     685]: kuid_t uid;
..[     688]: atomic_long_t locked_vm;
..[     690]: };
..[     692]: extern int uids_sysfs_init(void);
..[     694]: extern struct user_struct *find_user(kuid_t);
..[     696]: extern struct user_struct root_user;
..[     700]: struct backing_dev_info;
..[     701]: struct reclaim_state;
..[     704]: struct sched_info {
..[     706]: unsigned long pcount;
..[     707]: unsigned long long run_delay;
..[     710]: unsigned long long last_arrival,
..[     711]: last_queued;
..[     712]: };
..[     716]: struct task_delay_info {
..[     717]: spinlock_t lock;
..[     718]: unsigned int flags;
..[     735]: struct timespec blkio_start, blkio_end;
..[     736]: u64 blkio_delay;
..[     737]: u64 swapin_delay;
..[     738]: u32 blkio_count;
..[     740]: u32 swapin_count;
..[     743]: struct timespec freepages_start, freepages_end;
..[     744]: u64 freepages_delay;
..[     745]: u32 freepages_count;
..[     746]: };
..[     749]: static inline __attribute__((no_instrument_function)) int sched_info_on(void)
..[     750]: {
..[     752]: return 1;
..[     759]: }
..[     761]: enum cpu_idle_type {
..[     762]: CPU_IDLE,
..[     763]: CPU_NOT_IDLE,
..[     764]: CPU_NEWLY_IDLE,
..[     765]: CPU_MAX_IDLE_TYPES
..[     766]: };
..[     792]: extern int __attribute__((weak)) arch_sd_sibiling_asym_packing(void);
..[     794]: struct sched_domain_attr {
..[     795]: int relax_domain_level;
..[     796]: };
..[     802]: extern int sched_domain_level_max;
..[     804]: struct sched_group;
..[     806]: struct sched_domain {
..[     808]: struct sched_domain *parent;
..[     809]: struct sched_domain *child;
..[     810]: struct sched_group *groups;
..[     811]: unsigned long min_interval;
..[     812]: unsigned long max_interval;
..[     813]: unsigned int busy_factor;
..[     814]: unsigned int imbalance_pct;
..[     815]: unsigned int cache_nice_tries;
..[     816]: unsigned int busy_idx;
..[     817]: unsigned int idle_idx;
..[     818]: unsigned int newidle_idx;
..[     819]: unsigned int wake_idx;
..[     820]: unsigned int forkexec_idx;
..[     821]: unsigned int smt_gain;
..[     823]: int nohz_idle;
..[     824]: int flags;
..[     825]: int level;
..[     828]: unsigned long last_balance;
..[     829]: unsigned int balance_interval;
..[     830]: unsigned int nr_balance_failed;
..[     833]: u64 max_newidle_lb_cost;
..[     834]: unsigned long next_decay_max_lb_cost;
..[     838]: unsigned int lb_count[CPU_MAX_IDLE_TYPES];
..[     839]: unsigned int lb_failed[CPU_MAX_IDLE_TYPES];
..[     840]: unsigned int lb_balanced[CPU_MAX_IDLE_TYPES];
..[     841]: unsigned int lb_imbalance[CPU_MAX_IDLE_TYPES];
..[     842]: unsigned int lb_gained[CPU_MAX_IDLE_TYPES];
..[     843]: unsigned int lb_hot_gained[CPU_MAX_IDLE_TYPES];
..[     844]: unsigned int lb_nobusyg[CPU_MAX_IDLE_TYPES];
..[     845]: unsigned int lb_nobusyq[CPU_MAX_IDLE_TYPES];
..[     848]: unsigned int alb_count;
..[     849]: unsigned int alb_failed;
..[     850]: unsigned int alb_pushed;
..[     853]: unsigned int sbe_count;
..[     854]: unsigned int sbe_balanced;
..[     855]: unsigned int sbe_pushed;
..[     858]: unsigned int sbf_count;
..[     859]: unsigned int sbf_balanced;
..[     860]: unsigned int sbf_pushed;
..[     863]: unsigned int ttwu_wake_remote;
..[     864]: unsigned int ttwu_move_affine;
..[     865]: unsigned int ttwu_move_balance;
..[     868]: char *name;
..[     870]: union {
..[     871]: void *private;
..[     872]: struct callback_head rcu;
..[     873]: };
..[     875]: unsigned int span_weight;
..[     883]: unsigned long span[0];
..[     884]: };
..[     886]: static inline __attribute__((no_instrument_function)) struct cpumask *sched_domain_span(struct sched_domain \
..                *sd)
..[     887]: {
..[     888]: return ((struct cpumask *)(1 ? (sd->span) : (void *)sizeof(__check_is_bitmap(sd->span))));
..[     889]: }
..[     891]: extern void partition_sched_domains(int ndoms_new, cpumask_var_t doms_new[],
..[     892]: struct sched_domain_attr *dattr_new);
..[     895]: cpumask_var_t *alloc_sched_domains(unsigned int ndoms);
..[     896]: void free_sched_domains(cpumask_var_t doms[], unsigned int ndoms);
..[     898]: bool cpus_share_cache(int this_cpu, int that_cpu);
..[     918]: struct io_context;
..[     924]: static inline __attribute__((no_instrument_function)) void prefetch_stack(struct task_struct *t) { }
..[     927]: struct audit_context;
..[     928]: struct mempolicy;
..[     929]: struct pipe_inode_info;
..[     930]: struct uts_namespace;
..[     932]: struct load_weight {
..[     933]: unsigned long weight;
..[     934]: u32 inv_weight;
..[     935]: };
..[     937]: struct sched_avg {
..[     943]: u32 runnable_avg_sum, runnable_avg_period;
..[     944]: u64 last_runnable_update;
..[     945]: s64 decay_count;
..[     946]: unsigned long load_avg_contrib;
..[     947]: };
..[     950]: struct sched_statistics {
..[     951]: u64 wait_start;
..[     952]: u64 wait_max;
..[     953]: u64 wait_count;
..[     954]: u64 wait_sum;
..[     955]: u64 iowait_count;
..[     956]: u64 iowait_sum;
..[     958]: u64 sleep_start;
..[     959]: u64 sleep_max;
..[     960]: s64 sum_sleep_runtime;
..[     962]: u64 block_start;
..[     963]: u64 block_max;
..[     964]: u64 exec_max;
..[     965]: u64 slice_max;
..[     967]: u64 nr_migrations_cold;
..[     968]: u64 nr_failed_migrations_affine;
..[     969]: u64 nr_failed_migrations_running;
..[     970]: u64 nr_failed_migrations_hot;
..[     971]: u64 nr_forced_migrations;
..[     973]: u64 nr_wakeups;
..[     974]: u64 nr_wakeups_sync;
..[     975]: u64 nr_wakeups_migrate;
..[     976]: u64 nr_wakeups_local;
..[     977]: u64 nr_wakeups_remote;
..[     978]: u64 nr_wakeups_affine;
..[     979]: u64 nr_wakeups_affine_attempts;
..[     980]: u64 nr_wakeups_passive;
..[     981]: u64 nr_wakeups_idle;
..[     982]: };
..[     985]: struct sched_entity {
..[     986]: struct load_weight load;
..[     987]: struct rb_node run_node;
..[     988]: struct list_head group_node;
..[     989]: unsigned int on_rq;
..[     991]: u64 exec_start;
..[     992]: u64 sum_exec_runtime;
..[     993]: u64 vruntime;
..[     994]: u64 prev_sum_exec_runtime;
..[     996]: u64 nr_migrations;
..[     999]: struct sched_statistics statistics;
..[    1003]: struct sched_entity *parent;
..[    1005]: struct cfs_rq *cfs_rq;
..[    1007]: struct cfs_rq *my_q;
..[    1012]: struct sched_avg avg;
..[    1014]: };
..[    1016]: struct sched_rt_entity {
..[    1017]: struct list_head run_list;
..[    1018]: unsigned long timeout;
..[    1019]: unsigned long watchdog_stamp;
..[    1020]: unsigned int time_slice;
..[    1022]: struct sched_rt_entity *back;
..[    1024]: struct sched_rt_entity *parent;
..[    1026]: struct rt_rq *rt_rq;
..[    1028]: struct rt_rq *my_q;
..[    1030]: };
..[    1033]: struct rcu_node;
..[    1035]: enum perf_event_task_context {
..[    1036]: perf_invalid_context = -1,
..[    1037]: perf_hw_context = 0,
..[    1038]: perf_sw_context,
..[    1039]: perf_nr_task_contexts,
..[    1040]: };
..[    1042]: struct task_struct {
..[    1043]: volatile long state;
..[    1044]: void *stack;
..[    1045]: atomic_t usage;
..[    1046]: unsigned int flags;
..[    1047]: unsigned int ptrace;
..[    1050]: struct llist_node wake_entry;
..[    1051]: int on_cpu;
..[    1052]: struct task_struct *last_wakee;
..[    1053]: unsigned long wakee_flips;
..[    1054]: unsigned long wakee_flip_decay_ts;
..[    1056]: int wake_cpu;
..[    1058]: int on_rq;
..[    1060]: int prio, static_prio, normal_prio;
..[    1061]: unsigned int rt_priority;
..[    1062]: const struct sched_class *sched_class;
..[    1063]: struct sched_entity se;
..[    1064]: struct sched_rt_entity rt;
..[    1066]: struct task_group *sched_task_group;
..[    1071]: struct hlist_head preempt_notifiers;
..[    1075]: unsigned int btrace_seq;
..[    1078]: unsigned int policy;
..[    1079]: int nr_cpus_allowed;
..[    1080]: cpumask_t cpus_allowed;
..[    1095]: struct sched_info sched_info;
..[    1098]: struct list_head tasks;
..[    1100]: struct plist_node pushable_tasks;
..[    1103]: struct mm_struct *mm, *active_mm;
..[    1108]: struct task_rss_stat rss_stat;
..[    1111]: int exit_state;
..[    1112]: int exit_code, exit_signal;
..[    1113]: int pdeath_signal;
..[    1114]: unsigned int jobctl;
..[    1117]: unsigned int personality;
..[    1119]: unsigned did_exec:1;
..[    1120]: unsigned in_execve:1;
..[    1122]: unsigned in_iowait:1;
..[    1125]: unsigned no_new_privs:1;
..[    1128]: unsigned sched_reset_on_fork:1;
..[    1129]: unsigned sched_contributes_to_load:1;
..[    1131]: pid_t pid;
..[    1132]: pid_t tgid;
..[    1136]: unsigned long stack_canary;
..[    1143]: struct task_struct *real_parent;
..[    1144]: struct task_struct *parent;
..[    1148]: struct list_head children;
..[    1149]: struct list_head sibling;
..[    1150]: struct task_struct *group_leader;
..[    1157]: struct list_head ptraced;
..[    1158]: struct list_head ptrace_entry;
..[    1161]: struct pid_link pids[PIDTYPE_MAX];
..[    1162]: struct list_head thread_group;
..[    1164]: struct completion *vfork_done;
..[    1165]: int *set_child_tid;
..[    1166]: int *clear_child_tid;
..[    1168]: cputime_t utime, stime, utimescaled, stimescaled;
..[    1169]: cputime_t gtime;
..[    1171]: struct cputime prev_cputime;
..[    1182]: unsigned long nvcsw, nivcsw;
..[    1183]: struct timespec start_time;
..[    1184]: struct timespec real_start_time;
..[    1186]: unsigned long min_flt, maj_flt;
..[    1188]: struct task_cputime cputime_expires;
..[    1189]: struct list_head cpu_timers[3];
..[    1192]: const struct cred *real_cred;
..[    1194]: const struct cred *cred;
..[    1196]: char comm[16];
..[    1201]: int link_count, total_link_count;
..[    1204]: struct sysv_sem sysvsem;
..[    1208]: unsigned long last_switch_count;
..[    1211]: struct thread_struct thread;
..[    1213]: struct fs_struct *fs;
..[    1215]: struct files_struct *files;
..[    1217]: struct nsproxy *nsproxy;
..[    1219]: struct signal_struct *signal;
..[    1220]: struct sighand_struct *sighand;
..[    1222]: sigset_t blocked, real_blocked;
..[    1223]: sigset_t saved_sigmask;
..[    1224]: struct sigpending pending;
..[    1226]: unsigned long sas_ss_sp;
..[    1227]: size_t sas_ss_size;
..[    1228]: int (*notifier)(void *priv);
..[    1229]: void *notifier_data;
..[    1230]: sigset_t *notifier_mask;
..[    1231]: struct callback_head *task_works;
..[    1233]: struct audit_context *audit_context;
..[    1235]: kuid_t loginuid;
..[    1236]: unsigned int sessionid;
..[    1238]: struct seccomp seccomp;
..[    1241]: u32 parent_exec_id;
..[    1242]: u32 self_exec_id;
..[    1245]: spinlock_t alloc_lock;
..[    1248]: raw_spinlock_t pi_lock;
..[    1252]: struct plist_head pi_waiters;
..[    1254]: struct rt_mutex_waiter *pi_blocked_on;
..[    1286]: void *journal_info;
..[    1289]: struct bio_list *bio_list;
..[    1293]: struct blk_plug *plug;
..[    1297]: struct reclaim_state *reclaim_state;
..[    1299]: struct backing_dev_info *backing_dev_info;
..[    1301]: struct io_context *io_context;
..[    1303]: unsigned long ptrace_message;
..[    1304]: siginfo_t *last_siginfo;
..[    1305]: struct task_io_accounting ioac;
..[    1307]: u64 acct_rss_mem1;
..[    1308]: u64 acct_vm_mem1;
..[    1309]: cputime_t acct_timexpd;
..[    1312]: nodemask_t mems_allowed;
..[    1313]: seqcount_t mems_allowed_seq;
..[    1314]: int cpuset_mem_spread_rotor;
..[    1315]: int cpuset_slab_spread_rotor;
..[    1319]: struct css_set *cgroups;
..[    1321]: struct list_head cg_list;
..[    1324]: struct robust_list_head *robust_list;
..[    1326]: struct compat_robust_list_head *compat_robust_list;
..[    1328]: struct list_head pi_state_list;
..[    1329]: struct futex_pi_state *pi_state_cache;
..[    1332]: struct perf_event_context *perf_event_ctxp[perf_nr_task_contexts];
..[    1333]: struct mutex perf_event_mutex;
..[    1334]: struct list_head perf_event_list;
..[    1337]: struct mempolicy *mempolicy;
..[    1338]: short il_next;
..[    1339]: short pref_node_fork;
..[    1380]: struct callback_head rcu;
..[    1385]: struct pipe_inode_info *splice_pipe;
..[    1387]: struct page_frag task_frag;
..[    1390]: struct task_delay_info *delays;
..[    1399]: int nr_dirtied;
..[    1400]: int nr_dirtied_pause;
..[    1401]: unsigned long dirty_paused_when;
..[    1404]: int latency_record_count;
..[    1405]: struct latency_record latency_record[32];
..[    1411]: unsigned long timer_slack_ns;
..[    1412]: unsigned long default_timer_slack_ns;
..[    1416]: int curr_ret_stack;
..[    1418]: struct ftrace_ret_stack *ret_stack;
..[    1420]: unsigned long long ftrace_timestamp;
..[    1425]: atomic_t trace_overrun;
..[    1427]: atomic_t tracing_graph_pause;
..[    1431]: unsigned long trace;
..[    1433]: unsigned long trace_recursion;
..[    1457]: };
..[    1475]: static inline __attribute__((no_instrument_function)) void task_numa_fault(int last_node, int node, int pages\
..                ,
..[    1476]: int flags)
..[    1477]: {
..[    1478]: }
..[    1479]: static inline __attribute__((no_instrument_function)) pid_t task_numa_group_id(struct task_struct *p)
..[    1480]: {
..[    1481]: return 0;
..[    1482]: }
..[    1483]: static inline __attribute__((no_instrument_function)) void set_numabalancing_state(bool enabled)
..[    1484]: {
..[    1485]: }
..[    1486]: static inline __attribute__((no_instrument_function)) void task_numa_free(struct task_struct *p)
..[    1487]: {
..[    1488]: }
..[    1491]: static inline __attribute__((no_instrument_function)) struct pid *task_pid(struct task_struct *task)
..[    1492]: {
..[    1493]: return task->pids[PIDTYPE_PID].pid;
..[    1494]: }
..[    1496]: static inline __attribute__((no_instrument_function)) struct pid *task_tgid(struct task_struct *task)
..[    1497]: {
..[    1498]: return task->group_leader->pids[PIDTYPE_PID].pid;
..[    1499]: }
..[    1506]: static inline __attribute__((no_instrument_function)) struct pid *task_pgrp(struct task_struct *task)
..[    1507]: {
..[    1508]: return task->group_leader->pids[PIDTYPE_PGID].pid;
..[    1509]: }
..[    1511]: static inline __attribute__((no_instrument_function)) struct pid *task_session(struct task_struct *task)
..[    1512]: {
..[    1513]: return task->group_leader->pids[PIDTYPE_SID].pid;
..[    1514]: }
..[    1516]: struct pid_namespace;
..[    1531]: pid_t __task_pid_nr_ns(struct task_struct *task, enum pid_type type,
..[    1532]: struct pid_namespace *ns);
..[    1534]: static inline __attribute__((no_instrument_function)) pid_t task_pid_nr(struct task_struct *tsk)
..[    1535]: {
..[    1536]: return tsk->pid;
..[    1537]: }
..[    1539]: static inline __attribute__((no_instrument_function)) pid_t task_pid_nr_ns(struct task_struct *tsk,
..[    1540]: struct pid_namespace *ns)
..[    1541]: {
..[    1542]: return __task_pid_nr_ns(tsk, PIDTYPE_PID, ns);
..[    1543]: }
..[    1545]: static inline __attribute__((no_instrument_function)) pid_t task_pid_vnr(struct task_struct *tsk)
..[    1546]: {
..[    1547]: return __task_pid_nr_ns(tsk, PIDTYPE_PID, ((void *)0));
..[    1548]: }
..[    1551]: static inline __attribute__((no_instrument_function)) pid_t task_tgid_nr(struct task_struct *tsk)
..[    1552]: {
..[    1553]: return tsk->tgid;
..[    1554]: }
..[    1556]: pid_t task_tgid_nr_ns(struct task_struct *tsk, struct pid_namespace *ns);
..[    1558]: static inline __attribute__((no_instrument_function)) pid_t task_tgid_vnr(struct task_struct *tsk)
..[    1559]: {
..[    1560]: return pid_vnr(task_tgid(tsk));
..[    1561]: }
..[    1564]: static inline __attribute__((no_instrument_function)) pid_t task_pgrp_nr_ns(struct task_struct *tsk,
..[    1565]: struct pid_namespace *ns)
..[    1566]: {
..[    1567]: return __task_pid_nr_ns(tsk, PIDTYPE_PGID, ns);
..[    1568]: }
..[    1570]: static inline __attribute__((no_instrument_function)) pid_t task_pgrp_vnr(struct task_struct *tsk)
..[    1571]: {
..[    1572]: return __task_pid_nr_ns(tsk, PIDTYPE_PGID, ((void *)0));
..[    1573]: }
..[    1576]: static inline __attribute__((no_instrument_function)) pid_t task_session_nr_ns(struct task_struct *tsk,
..[    1577]: struct pid_namespace *ns)
..[    1578]: {
..[    1579]: return __task_pid_nr_ns(tsk, PIDTYPE_SID, ns);
..[    1580]: }
..[    1582]: static inline __attribute__((no_instrument_function)) pid_t task_session_vnr(struct task_struct *tsk)
..[    1583]: {
..[    1584]: return __task_pid_nr_ns(tsk, PIDTYPE_SID, ((void *)0));
..[    1585]: }
..[    1588]: static inline __attribute__((no_instrument_function)) pid_t task_pgrp_nr(struct task_struct *tsk)
..[    1589]: {
..[    1590]: return task_pgrp_nr_ns(tsk, &init_pid_ns);
..[    1591]: }
..[    1603]: static inline __attribute__((no_instrument_function)) int pid_alive(struct task_struct *p)
..[    1604]: {
..[    1605]: return p->pids[PIDTYPE_PID].pid != ((void *)0);
..[    1606]: }
..[    1616]: static inline __attribute__((no_instrument_function)) int is_global_init(struct task_struct *tsk)
..[    1617]: {
..[    1618]: return tsk->pid == 1;
..[    1619]: }
..[    1621]: extern struct pid *cad_pid;
..[    1623]: extern void free_task(struct task_struct *tsk);
..[    1626]: extern void __put_task_struct(struct task_struct *t);
..[    1628]: static inline __attribute__((no_instrument_function)) void put_task_struct(struct task_struct *t)
..[    1629]: {
..[    1630]: if (atomic_dec_and_test(&t->usage))
..[    1631]: __put_task_struct(t);
..[    1632]: }
..[    1641]: static inline __attribute__((no_instrument_function)) void task_cputime(struct task_struct *t,
..[    1642]: cputime_t *utime, cputime_t *stime)
..[    1643]: {
..[    1644]: if (utime)
..[    1645]: *utime = t->utime;
..[    1646]: if (stime)
..[    1647]: *stime = t->stime;
..[    1648]: }
..[    1650]: static inline __attribute__((no_instrument_function)) void task_cputime_scaled(struct task_struct *t,
..[    1651]: cputime_t *utimescaled,
..[    1652]: cputime_t *stimescaled)
..[    1653]: {
..[    1654]: if (utimescaled)
..[    1655]: *utimescaled = t->utimescaled;
..[    1656]: if (stimescaled)
..[    1657]: *stimescaled = t->stimescaled;
..[    1658]: }
..[    1660]: static inline __attribute__((no_instrument_function)) cputime_t task_gtime(struct task_struct *t)
..[    1661]: {
..[    1662]: return t->gtime;
..[    1663]: }
..[    1665]: extern void task_cputime_adjusted(struct task_struct *p, cputime_t *ut, cputime_t *st);
..[    1666]: extern void thread_group_cputime_adjusted(struct task_struct *p, cputime_t *ut, cputime_t *st);
..[    1728]: static inline __attribute__((no_instrument_function)) gfp_t memalloc_noio_flags(gfp_t flags)
..[    1729]: {
..[    1730]: if (__builtin_expect(!!(get_current()->flags & 0x00080000), 0))
..[    1731]: flags &= ~(( gfp_t)0x40u);
..[    1732]: return flags;
..[    1733]: }
..[    1735]: static inline __attribute__((no_instrument_function)) unsigned int memalloc_noio_save(void)
..[    1736]: {
..[    1737]: unsigned int flags = get_current()->flags & 0x00080000;
..[    1738]: get_current()->flags |= 0x00080000;
..[    1739]: return flags;
..[    1740]: }
..[    1742]: static inline __attribute__((no_instrument_function)) void memalloc_noio_restore(unsigned int flags)
..[    1743]: {
..[    1744]: get_current()->flags = (get_current()->flags & ~0x00080000) | flags;
..[    1745]: }
..[    1771]: extern bool task_set_jobctl_pending(struct task_struct *task,
..[    1772]: unsigned int mask);
..[    1773]: extern void task_clear_jobctl_trapping(struct task_struct *task);
..[    1774]: extern void task_clear_jobctl_pending(struct task_struct *task,
..[    1775]: unsigned int mask);
..[    1797]: static inline __attribute__((no_instrument_function)) void rcu_copy_process(struct task_struct *p)
..[    1798]: {
..[    1799]: }
..[    1803]: static inline __attribute__((no_instrument_function)) void tsk_restore_flags(struct task_struct *task,
..[    1804]: unsigned long orig_flags, unsigned long flags)
..[    1805]: {
..[    1806]: task->flags &= ~flags;
..[    1807]: task->flags |= orig_flags & flags;
..[    1808]: }
..[    1811]: extern void do_set_cpus_allowed(struct task_struct *p,
..[    1812]: const struct cpumask *new_mask);
..[    1814]: extern int set_cpus_allowed_ptr(struct task_struct *p,
..[    1815]: const struct cpumask *new_mask);
..[    1831]: void calc_load_enter_idle(void);
..[    1832]: void calc_load_exit_idle(void);
..[    1839]: static inline __attribute__((no_instrument_function)) int set_cpus_allowed(struct task_struct *p, cpumask_t \
..                new_mask)
..[    1840]: {
..[    1841]: return set_cpus_allowed_ptr(p, &new_mask);
..[    1842]: }
..[    1853]: extern unsigned long long __attribute__((no_instrument_function)) sched_clock(void);
..[    1857]: extern u64 cpu_clock(int cpu);
..[    1858]: extern u64 local_clock(void);
..[    1859]: extern u64 sched_clock_cpu(int cpu);
..[    1862]: extern void sched_clock_init(void);
..[    1883]: extern int sched_clock_stable;
..[    1885]: extern void sched_clock_tick(void);
..[    1886]: extern void sched_clock_idle_sleep_event(void);
..[    1887]: extern void sched_clock_idle_wakeup_event(u64 delta_ns);
..[    1899]: static inline __attribute__((no_instrument_function)) void enable_sched_clock_irqtime(void) {}
..[    1900]: static inline __attribute__((no_instrument_function)) void disable_sched_clock_irqtime(void) {}
..[    1903]: extern unsigned long long
..[    1904]: task_sched_runtime(struct task_struct *task);
..[    1908]: extern void sched_exec(void);
..[    1913]: extern void sched_clock_idle_sleep_event(void);
..[    1914]: extern void sched_clock_idle_wakeup_event(u64 delta_ns);
..[    1917]: extern void idle_task_exit(void);
..[    1923]: extern void wake_up_nohz_cpu(int cpu);
..[    1932]: static inline __attribute__((no_instrument_function)) bool sched_can_stop_tick(void) { return false; }
..[    1945]: static inline __attribute__((no_instrument_function)) void sched_autogroup_create_attach(struct task_struct \
..                *p) { }
..[    1946]: static inline __attribute__((no_instrument_function)) void sched_autogroup_detach(struct task_struct *p) { }
..[    1947]: static inline __attribute__((no_instrument_function)) void sched_autogroup_fork(struct signal_struct *sig) \
..                { }
..[    1948]: static inline __attribute__((no_instrument_function)) void sched_autogroup_exit(struct signal_struct *sig) \
..                { }
..[    1951]: extern bool yield_to(struct task_struct *p, bool preempt);
..[    1952]: extern void set_user_nice(struct task_struct *p, long nice);
..[    1953]: extern int task_prio(const struct task_struct *p);
..[    1954]: extern int task_nice(const struct task_struct *p);
..[    1955]: extern int can_nice(const struct task_struct *p, const int nice);
..[    1956]: extern int task_curr(const struct task_struct *p);
..[    1957]: extern int idle_cpu(int cpu);
..[    1958]: extern int sched_setscheduler(struct task_struct *, int,
..[    1959]: const struct sched_param *);
..[    1960]: extern int sched_setscheduler_nocheck(struct task_struct *, int,
..[    1961]: const struct sched_param *);
..[    1962]: extern struct task_struct *idle_task(int cpu);
..[    1969]: static inline __attribute__((no_instrument_function)) bool is_idle_task(const struct task_struct *p)
..[    1970]: {
..[    1971]: return p->pid == 0;
..[    1972]: }
..[    1973]: extern struct task_struct *curr_task(int cpu);
..[    1974]: extern void set_curr_task(int cpu, struct task_struct *p);
..[    1976]: void yield(void);
..[    1981]: extern struct exec_domain default_exec_domain;
..[    1983]: union thread_union {
..[    1984]: struct thread_info thread_info;
..[    1985]: unsigned long stack[(((1UL) << 12) << 1)/sizeof(long)];
..[    1986]: };
..[    1989]: static inline __attribute__((no_instrument_function)) int kstack_end(void *addr)
..[    1990]: {
..[    1994]: return !(((unsigned long)addr+sizeof(void*)-1) & ((((1UL) << 12) << 1)-sizeof(void*)));
..[    1995]: }
..[    1998]: extern union thread_union init_thread_union;
..[    1999]: extern struct task_struct init_task;
..[    2001]: extern struct mm_struct init_mm;
..[    2003]: extern struct pid_namespace init_pid_ns;
..[    2016]: extern struct task_struct *find_task_by_vpid(pid_t nr);
..[    2017]: extern struct task_struct *find_task_by_pid_ns(pid_t nr,
..[    2018]: struct pid_namespace *ns);
..[    2021]: extern struct user_struct * alloc_uid(kuid_t);
..[    2022]: static inline __attribute__((no_instrument_function)) struct user_struct *get_uid(struct user_struct *u)
..[    2023]: {
..[    2024]: atomic_inc(&u->__count);
..[    2025]: return u;
..[    2026]: }
..[    2027]: extern void free_uid(struct user_struct *);
..[    2031]: extern void xtime_update(unsigned long ticks);
..[    2033]: extern int wake_up_state(struct task_struct *tsk, unsigned int state);
..[    2034]: extern int wake_up_process(struct task_struct *tsk);
..[    2035]: extern void wake_up_new_task(struct task_struct *tsk);
..[    2037]: extern void kick_process(struct task_struct *tsk);
..[    2041]: extern void sched_fork(unsigned long clone_flags, struct task_struct *p);
..[    2042]: extern void sched_dead(struct task_struct *p);
..[    2044]: extern void proc_caches_init(void);
..[    2045]: extern void flush_signals(struct task_struct *);
..[    2046]: extern void __flush_signals(struct task_struct *);
..[    2047]: extern void ignore_signals(struct task_struct *);
..[    2048]: extern void flush_signal_handlers(struct task_struct *, int force_default);
..[    2049]: extern int dequeue_signal(struct task_struct *tsk, sigset_t *mask, siginfo_t *info);
..[    2051]: static inline __attribute__((no_instrument_function)) int dequeue_signal_lock(struct task_struct *tsk, sigset_t \
..                *mask, siginfo_t *info)
..[    2052]: {
..[    2053]: unsigned long flags;
..[    2054]: int ret;
..[    2056]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = _raw_spin_lock_irqsave\
..                (spinlock_check(&tsk->sighand->siglock)); } while (0); } while (0);
..[    2057]: ret = dequeue_signal(tsk, mask, info);
..[    2058]: spin_unlock_irqrestore(&tsk->sighand->siglock, flags);
..[    2060]: return ret;
..[    2061]: }
..[    2063]: extern void block_all_signals(int (*notifier)(void *priv), void *priv,
..[    2064]: sigset_t *mask);
..[    2065]: extern void unblock_all_signals(void);
..[    2066]: extern void release_task(struct task_struct * p);
..[    2067]: extern int send_sig_info(int, struct siginfo *, struct task_struct *);
..[    2068]: extern int force_sigsegv(int, struct task_struct *);
..[    2069]: extern int force_sig_info(int, struct siginfo *, struct task_struct *);
..[    2070]: extern int __kill_pgrp_info(int sig, struct siginfo *info, struct pid *pgrp);
..[    2071]: extern int kill_pid_info(int sig, struct siginfo *info, struct pid *pid);
..[    2072]: extern int kill_pid_info_as_cred(int, struct siginfo *, struct pid *,
..[    2073]: const struct cred *, u32);
..[    2074]: extern int kill_pgrp(struct pid *pid, int sig, int priv);
..[    2075]: extern int kill_pid(struct pid *pid, int sig, int priv);
..[    2076]: extern int kill_proc_info(int, struct siginfo *, pid_t);
..[    2077]: extern bool do_notify_parent(struct task_struct *, int);
..[    2078]: extern void __wake_up_parent(struct task_struct *p, struct task_struct *parent);
..[    2079]: extern void force_sig(int, struct task_struct *);
..[    2080]: extern int send_sig(int, struct task_struct *, int);
..[    2081]: extern int zap_other_threads(struct task_struct *p);
..[    2082]: extern struct sigqueue *sigqueue_alloc(void);
..[    2083]: extern void sigqueue_free(struct sigqueue *);
..[    2084]: extern int send_sigqueue(struct sigqueue *, struct task_struct *, int group);
..[    2085]: extern int do_sigaction(int, struct k_sigaction *, struct k_sigaction *);
..[    2087]: static inline __attribute__((no_instrument_function)) void restore_saved_sigmask(void)
..[    2088]: {
..[    2089]: if (test_and_clear_restore_sigmask())
..[    2090]: __set_current_blocked(&get_current()->saved_sigmask);
..[    2091]: }
..[    2093]: static inline __attribute__((no_instrument_function)) sigset_t *sigmask_to_save(void)
..[    2094]: {
..[    2095]: sigset_t *res = &get_current()->blocked;
..[    2096]: if (__builtin_expect(!!(test_restore_sigmask()), 0))
..[    2097]: res = &get_current()->saved_sigmask;
..[    2098]: return res;
..[    2099]: }
..[    2101]: static inline __attribute__((no_instrument_function)) int kill_cad_pid(int sig, int priv)
..[    2102]: {
..[    2103]: return kill_pid(cad_pid, sig, priv);
..[    2104]: }
..[    2114]: static inline __attribute__((no_instrument_function)) int on_sig_stack(unsigned long sp)
..[    2115]: {
..[    2120]: return sp > get_current()->sas_ss_sp &&
..[    2121]: sp - get_current()->sas_ss_sp <= get_current()->sas_ss_size;
..[    2123]: }
..[    2125]: static inline __attribute__((no_instrument_function)) int sas_ss_flags(unsigned long sp)
..[    2126]: {
..[    2127]: return (get_current()->sas_ss_size == 0 ? 2
..[    2128]: : on_sig_stack(sp) ? 1 : 0);
..[    2129]: }
..[    2131]: static inline __attribute__((no_instrument_function)) unsigned long sigsp(unsigned long sp, struct ksignal *ksig\
..                )
..[    2132]: {
..[    2133]: if (__builtin_expect(!!((ksig->ka.sa.sa_flags & 0x08000000u)), 0) && ! sas_ss_flags(sp))
..[    2137]: return get_current()->sas_ss_sp + get_current()->sas_ss_size;
..[    2139]: return sp;
..[    2140]: }
..[    2145]: extern struct mm_struct * mm_alloc(void);
..[    2148]: extern void __mmdrop(struct mm_struct *);
..[    2149]: static inline __attribute__((no_instrument_function)) void mmdrop(struct mm_struct * mm)
..[    2150]: {
..[    2151]: if (__builtin_expect(!!(atomic_dec_and_test(&mm->mm_count)), 0))
..[    2152]: __mmdrop(mm);
..[    2153]: }
..[    2156]: extern void mmput(struct mm_struct *);
..[    2158]: extern struct mm_struct *get_task_mm(struct task_struct *task);
..[    2164]: extern struct mm_struct *mm_access(struct task_struct *task, unsigned int mode);
..[    2166]: extern void mm_release(struct task_struct *, struct mm_struct *);
..[    2168]: extern struct mm_struct *dup_mm(struct task_struct *tsk);
..[    2170]: extern int copy_thread(unsigned long, unsigned long, unsigned long,
..[    2171]: struct task_struct *);
..[    2172]: extern void flush_thread(void);
..[    2173]: extern void exit_thread(void);
..[    2175]: extern void exit_files(struct task_struct *);
..[    2176]: extern void __cleanup_sighand(struct sighand_struct *);
..[    2178]: extern void exit_itimers(struct signal_struct *);
..[    2179]: extern void flush_itimer_signals(void);
..[    2181]: extern void do_group_exit(int);
..[    2183]: extern int allow_signal(int);
..[    2184]: extern int disallow_signal(int);
..[    2186]: extern int do_execve(const char *,
..[    2187]: const char * const *,
..[    2188]: const char * const *);
..[    2189]: extern long do_fork(unsigned long, unsigned long, unsigned long, int *, int *);
..[    2190]: struct task_struct *fork_idle(int);
..[    2191]: extern pid_t kernel_thread(int (*fn)(void *), void *arg, unsigned long flags);
..[    2193]: extern void set_task_comm(struct task_struct *tsk, char *from);
..[    2194]: extern char *get_task_comm(char *to, struct task_struct *tsk);
..[    2197]: void scheduler_ipi(void);
..[    2198]: extern unsigned long wait_task_inactive(struct task_struct *, long match_state);
..[    2214]: extern bool current_is_single_threaded(void);
..[    2226]: static inline __attribute__((no_instrument_function)) int get_nr_threads(struct task_struct *tsk)
..[    2227]: {
..[    2228]: return tsk->signal->nr_threads;
..[    2229]: }
..[    2231]: static inline __attribute__((no_instrument_function)) bool thread_group_leader(struct task_struct *p)
..[    2232]: {
..[    2233]: return p->exit_signal >= 0;
..[    2234]: }
..[    2242]: static inline __attribute__((no_instrument_function)) bool has_group_leader_pid(struct task_struct *p)
..[    2243]: {
..[    2244]: return task_pid(p) == p->signal->leader_pid;
..[    2245]: }
..[    2247]: static inline __attribute__((no_instrument_function))
..[    2248]: bool same_thread_group(struct task_struct *p1, struct task_struct *p2)
..[    2249]: {
..[    2250]: return p1->signal == p2->signal;
..[    2251]: }
..[    2253]: static inline __attribute__((no_instrument_function)) struct task_struct *next_thread(const struct task_struct \
..                *p)
..[    2254]: {
..[    2255]: return ({typeof (*p->thread_group.next) *__ptr = (typeof (*p->thread_group.next) *)p->thread_group.next; ({ const \
..                typeof( ((struct task_struct *)0)->thread_group ) *__mptr = ((typeof(p->thread_group.next))({ typeof(*(__ptr\
..                )) *_________p1 = (typeof(*(__ptr))* )(*(volatile typeof((__ptr)) *)&((__ptr))); do { } while (0); ; do { } while (0)\
..                ; ((typeof(*(__ptr)) *)(_________p1)); })); (struct task_struct *)( (char *)__mptr - __builtin_offsetof(struct \
..                task_struct,thread_group) );}); });
..[    2257]: }
..[    2259]: static inline __attribute__((no_instrument_function)) int thread_group_empty(struct task_struct *p)
..[    2260]: {
..[    2261]: return list_empty(&p->thread_group);
..[    2262]: }
..[    2277]: static inline __attribute__((no_instrument_function)) void task_lock(struct task_struct *p)
..[    2278]: {
..[    2279]: spin_lock(&p->alloc_lock);
..[    2280]: }
..[    2282]: static inline __attribute__((no_instrument_function)) void task_unlock(struct task_struct *p)
..[    2283]: {
..[    2284]: spin_unlock(&p->alloc_lock);
..[    2285]: }
..[    2287]: extern struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
..[    2288]: unsigned long *flags);
..[    2290]: static inline __attribute__((no_instrument_function)) struct sighand_struct *lock_task_sighand(struct task_struct \
..                *tsk,
..[    2291]: unsigned long *flags)
..[    2292]: {
..[    2293]: struct sighand_struct *ret;
..[    2295]: ret = __lock_task_sighand(tsk, flags);
..[    2296]: (void)(ret);
..[    2297]: return ret;
..[    2298]: }
..[    2300]: static inline __attribute__((no_instrument_function)) void unlock_task_sighand(struct task_struct *tsk,
..[    2301]: unsigned long *flags)
..[    2302]: {
..[    2303]: spin_unlock_irqrestore(&tsk->sighand->siglock, *flags);
..[    2304]: }
..[    2307]: static inline __attribute__((no_instrument_function)) void threadgroup_change_begin(struct task_struct *tsk\
..                )
..[    2308]: {
..[    2309]: down_read(&tsk->signal->group_rwsem);
..[    2310]: }
..[    2311]: static inline __attribute__((no_instrument_function)) void threadgroup_change_end(struct task_struct *tsk)
..[    2312]: {
..[    2313]: up_read(&tsk->signal->group_rwsem);
..[    2314]: }
..[    2332]: static inline __attribute__((no_instrument_function)) void threadgroup_lock(struct task_struct *tsk)
..[    2333]: {
..[    2334]: down_write(&tsk->signal->group_rwsem);
..[    2335]: }
..[    2343]: static inline __attribute__((no_instrument_function)) void threadgroup_unlock(struct task_struct *tsk)
..[    2344]: {
..[    2345]: up_write(&tsk->signal->group_rwsem);
..[    2346]: }
..[    2359]: static inline __attribute__((no_instrument_function)) void setup_thread_stack(struct task_struct *p, struct \
..                task_struct *org)
..[    2360]: {
..[    2361]: *((struct thread_info *)(p)->stack) = *((struct thread_info *)(org)->stack);
..[    2362]: ((struct thread_info *)(p)->stack)->task = p;
..[    2363]: }
..[    2365]: static inline __attribute__((no_instrument_function)) unsigned long *end_of_stack(struct task_struct *p)
..[    2366]: {
..[    2367]: return (unsigned long *)(((struct thread_info *)(p)->stack) + 1);
..[    2368]: }
..[    2372]: static inline __attribute__((no_instrument_function)) int object_is_on_stack(void *obj)
..[    2373]: {
..[    2374]: void *stack = ((get_current())->stack);
..[    2376]: return (obj >= stack) && (obj < (stack + (((1UL) << 12) << 1)));
..[    2377]: }
..[    2379]: extern void thread_info_cache_init(void);
..[    2397]: static inline __attribute__((no_instrument_function)) void set_tsk_thread_flag(struct task_struct *tsk, int \
..                flag)
..[    2398]: {
..[    2399]: set_ti_thread_flag(((struct thread_info *)(tsk)->stack), flag);
..[    2400]: }
..[    2402]: static inline __attribute__((no_instrument_function)) void clear_tsk_thread_flag(struct task_struct *tsk, int \
..                flag)
..[    2403]: {
..[    2404]: clear_ti_thread_flag(((struct thread_info *)(tsk)->stack), flag);
..[    2405]: }
..[    2407]: static inline __attribute__((no_instrument_function)) int test_and_set_tsk_thread_flag(struct task_struct \
..                *tsk, int flag)
..[    2408]: {
..[    2409]: return test_and_set_ti_thread_flag(((struct thread_info *)(tsk)->stack), flag);
..[    2410]: }
..[    2412]: static inline __attribute__((no_instrument_function)) int test_and_clear_tsk_thread_flag(struct task_struct \
..                *tsk, int flag)
..[    2413]: {
..[    2414]: return test_and_clear_ti_thread_flag(((struct thread_info *)(tsk)->stack), flag);
..[    2415]: }
..[    2417]: static inline __attribute__((no_instrument_function)) int test_tsk_thread_flag(struct task_struct *tsk, int \
..                flag)
..[    2418]: {
..[    2419]: return test_ti_thread_flag(((struct thread_info *)(tsk)->stack), flag);
..[    2420]: }
..[    2422]: static inline __attribute__((no_instrument_function)) void set_tsk_need_resched(struct task_struct *tsk)
..[    2423]: {
..[    2424]: set_tsk_thread_flag(tsk,3);
..[    2425]: }
..[    2427]: static inline __attribute__((no_instrument_function)) void clear_tsk_need_resched(struct task_struct *tsk)
..[    2428]: {
..[    2429]: clear_tsk_thread_flag(tsk,3);
..[    2430]: }
..[    2432]: static inline __attribute__((no_instrument_function)) int test_tsk_need_resched(struct task_struct *tsk)
..[    2433]: {
..[    2434]: return __builtin_expect(!!(test_tsk_thread_flag(tsk,3)), 0);
..[    2435]: }
..[    2437]: static inline __attribute__((no_instrument_function)) int restart_syscall(void)
..[    2438]: {
..[    2439]: set_tsk_thread_flag(get_current(), 2);
..[    2440]: return -513;
..[    2441]: }
..[    2443]: static inline __attribute__((no_instrument_function)) int signal_pending(struct task_struct *p)
..[    2444]: {
..[    2445]: return __builtin_expect(!!(test_tsk_thread_flag(p,2)), 0);
..[    2446]: }
..[    2448]: static inline __attribute__((no_instrument_function)) int __fatal_signal_pending(struct task_struct *p)
..[    2449]: {
..[    2450]: return __builtin_expect(!!(sigismember(&p->pending.signal, 9)), 0);
..[    2451]: }
..[    2453]: static inline __attribute__((no_instrument_function)) int fatal_signal_pending(struct task_struct *p)
..[    2454]: {
..[    2455]: return signal_pending(p) && __fatal_signal_pending(p);
..[    2456]: }
..[    2458]: static inline __attribute__((no_instrument_function)) int signal_pending_state(long state, struct task_struct \
..                *p)
..[    2459]: {
..[    2460]: if (!(state & (1 | 128)))
..[    2461]: return 0;
..[    2462]: if (!signal_pending(p))
..[    2463]: return 0;
..[    2465]: return (state & 1) || __fatal_signal_pending(p);
..[    2466]: }
..[    2475]: extern int _cond_resched(void);
..[    2482]: extern int __cond_resched_lock(spinlock_t *lock);
..[    2495]: extern int __cond_resched_softirq(void);
..[    2502]: static inline __attribute__((no_instrument_function)) void cond_resched_rcu(void)
..[    2503]: {
..[    2505]: rcu_read_unlock();
..[    2506]: ({ __might_sleep(__FILE__, __LINE__, 0); _cond_resched(); });
..[    2507]: rcu_read_lock();
..[    2509]: }
..[    2516]: static inline __attribute__((no_instrument_function)) int spin_needbreak(spinlock_t *lock)
..[    2517]: {
..[    2521]: return 0;
..[    2523]: }
..[    2532]: static inline __attribute__((no_instrument_function)) int tsk_is_polling(struct task_struct *p)
..[    2533]: {
..[    2534]: return ((struct thread_info *)(p)->stack)->status & 0x0004;
..[    2535]: }
..[    2536]: static inline __attribute__((no_instrument_function)) void __current_set_polling(void)
..[    2537]: {
..[    2538]: current_thread_info()->status |= 0x0004;
..[    2539]: }
..[    2541]: static inline __attribute__((no_instrument_function)) bool current_set_polling_and_test(void)
..[    2542]: {
..[    2543]: __current_set_polling();
..[    2549]: asm volatile("mfence":::"memory");
..[    2551]: return __builtin_expect(!!(test_ti_thread_flag(current_thread_info(), 3)), 0);
..[    2552]: }
..[    2554]: static inline __attribute__((no_instrument_function)) void __current_clr_polling(void)
..[    2555]: {
..[    2556]: current_thread_info()->status &= ~0x0004;
..[    2557]: }
..[    2559]: static inline __attribute__((no_instrument_function)) bool current_clr_polling_and_test(void)
..[    2560]: {
..[    2561]: __current_clr_polling();
..[    2567]: asm volatile("mfence":::"memory");
..[    2569]: return __builtin_expect(!!(test_ti_thread_flag(current_thread_info(), 3)), 0);
..[    2570]: }
..[    2630]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) bool need_resched(void\
..                )
..[    2631]: {
..[    2632]: return __builtin_expect(!!(test_ti_thread_flag(current_thread_info(), 3)), 0);
..[    2633]: }
..[    2638]: void thread_group_cputime(struct task_struct *tsk, struct task_cputime *times);
..[    2639]: void thread_group_cputimer(struct task_struct *tsk, struct task_cputime *times);
..[    2641]: static inline __attribute__((no_instrument_function)) void thread_group_cputime_init(struct signal_struct \
..                *sig)
..[    2642]: {
..[    2643]: do { *(&sig->cputimer.lock) = (raw_spinlock_t) { .raw_lock = { { 0 } }, }; } while (0);
..[    2644]: }
..[    2652]: extern void recalc_sigpending_and_wake(struct task_struct *t);
..[    2653]: extern void recalc_sigpending(void);
..[    2655]: extern void signal_wake_up_state(struct task_struct *t, unsigned int state);
..[    2657]: static inline __attribute__((no_instrument_function)) void signal_wake_up(struct task_struct *t, bool resume\
..                )
..[    2658]: {
..[    2659]: signal_wake_up_state(t, resume ? 128 : 0);
..[    2660]: }
..[    2661]: static inline __attribute__((no_instrument_function)) void ptrace_signal_wake_up(struct task_struct *t, bool \
..                resume)
..[    2662]: {
..[    2663]: signal_wake_up_state(t, resume ? 8 : 0);
..[    2664]: }
..[    2671]: static inline __attribute__((no_instrument_function)) unsigned int task_cpu(const struct task_struct *p)
..[    2672]: {
..[    2673]: return ((struct thread_info *)(p)->stack)->cpu;
..[    2674]: }
..[    2676]: static inline __attribute__((no_instrument_function)) int task_node(const struct task_struct *p)
..[    2677]: {
..[    2678]: return cpu_to_node(task_cpu(p));
..[    2679]: }
..[    2681]: extern void set_task_cpu(struct task_struct *p, unsigned int cpu);
..[    2696]: extern long sched_setaffinity(pid_t pid, const struct cpumask *new_mask);
..[    2697]: extern long sched_getaffinity(pid_t pid, struct cpumask *mask);
..[    2700]: extern struct task_group root_task_group;
..[    2703]: extern int task_can_switch_user(struct user_struct *up,
..[    2704]: struct task_struct *tsk);
..[    2707]: static inline __attribute__((no_instrument_function)) void add_rchar(struct task_struct *tsk, ssize_t amt)
..[    2708]: {
..[    2709]: tsk->ioac.rchar += amt;
..[    2710]: }
..[    2712]: static inline __attribute__((no_instrument_function)) void add_wchar(struct task_struct *tsk, ssize_t amt)
..[    2713]: {
..[    2714]: tsk->ioac.wchar += amt;
..[    2715]: }
..[    2717]: static inline __attribute__((no_instrument_function)) void inc_syscr(struct task_struct *tsk)
..[    2718]: {
..[    2719]: tsk->ioac.syscr++;
..[    2720]: }
..[    2722]: static inline __attribute__((no_instrument_function)) void inc_syscw(struct task_struct *tsk)
..[    2723]: {
..[    2724]: tsk->ioac.syscw++;
..[    2725]: }
..[    2752]: static inline __attribute__((no_instrument_function)) void mm_update_next_owner(struct mm_struct *mm)
..[    2753]: {
..[    2754]: }
..[    2756]: static inline __attribute__((no_instrument_function)) void mm_init_owner(struct mm_struct *mm, struct task_struct \
..                *p)
..[    2757]: {
..[    2758]: }
..[    2761]: static inline __attribute__((no_instrument_function)) unsigned long task_rlimit(const struct task_struct *tsk\
..                ,
..[    2762]: unsigned int limit)
..[    2763]: {
..[    2764]: return (*(volatile typeof(tsk->signal->rlim[limit].rlim_cur) *)&(tsk->signal->rlim[limit].rlim_cur));
..[    2765]: }
..[    2767]: static inline __attribute__((no_instrument_function)) unsigned long task_rlimit_max(const struct task_struct \
..                *tsk,
..[    2768]: unsigned int limit)
..[    2769]: {
..[    2770]: return (*(volatile typeof(tsk->signal->rlim[limit].rlim_max) *)&(tsk->signal->rlim[limit].rlim_max));
..[    2771]: }
..[    2773]: static inline __attribute__((no_instrument_function)) unsigned long rlimit(unsigned int limit)
..[    2774]: {
..[    2775]: return task_rlimit(get_current(), limit);
..[    2776]: }
..[    2778]: static inline __attribute__((no_instrument_function)) unsigned long rlimit_max(unsigned int limit)
..[    2779]: {
..[    2780]: return task_rlimit_max(get_current(), limit);
..[    2781]: }
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sched.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpu.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpu.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/node.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/node.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ioport.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ioport.h
.....[      18]: struct resource {
.....[      19]: resource_size_t start;
.....[      20]: resource_size_t end;
.....[      21]: const char *name;
.....[      22]: unsigned long flags;
.....[      23]: struct resource *parent, *sibling, *child;
.....[      24]: };
.....[     138]: extern struct resource ioport_resource;
.....[     139]: extern struct resource iomem_resource;
.....[     141]: extern struct resource *request_resource_conflict(struct resource *root, struct resource *new);
.....[     142]: extern int request_resource(struct resource *root, struct resource *new);
.....[     143]: extern int release_resource(struct resource *new);
.....[     144]: void release_child_resources(struct resource *new);
.....[     145]: extern void reserve_region_with_split(struct resource *root,
.....[     146]: resource_size_t start, resource_size_t end,
.....[     147]: const char *name);
.....[     148]: extern struct resource *insert_resource_conflict(struct resource *parent, struct resource *new);
.....[     149]: extern int insert_resource(struct resource *parent, struct resource *new);
.....[     150]: extern void insert_resource_expand_to_fit(struct resource *root, struct resource *new);
.....[     151]: extern void arch_remove_reservations(struct resource *avail);
.....[     152]: extern int allocate_resource(struct resource *root, struct resource *new,
.....[     153]: resource_size_t size, resource_size_t min,
.....[     154]: resource_size_t max, resource_size_t align,
.....[     155]: resource_size_t (*alignf)(void *,
.....[     156]: const struct resource *,
.....[     157]: resource_size_t,
.....[     158]: resource_size_t),
.....[     159]: void *alignf_data);
.....[     160]: struct resource *lookup_resource(struct resource *root, resource_size_t start);
.....[     161]: int adjust_resource(struct resource *res, resource_size_t start,
.....[     162]: resource_size_t size);
.....[     163]: resource_size_t resource_alignment(struct resource *res);
.....[     164]: static inline __attribute__((no_instrument_function)) resource_size_t resource_size(const struct resource *\
.....                res)
.....[     165]: {
.....[     166]: return res->end - res->start + 1;
.....[     167]: }
.....[     168]: static inline __attribute__((no_instrument_function)) unsigned long resource_type(const struct resource *res\
.....                )
.....[     169]: {
.....[     170]: return res->flags & 0x00001f00;
.....[     171]: }
.....[     182]: extern struct resource * __request_region(struct resource *,
.....[     183]: resource_size_t start,
.....[     184]: resource_size_t n,
.....[     185]: const char *name, int flags);
.....[     192]: extern int __check_region(struct resource *, resource_size_t, resource_size_t);
.....[     193]: extern void __release_region(struct resource *, resource_size_t,
.....[     194]: resource_size_t);
.....[     200]: static inline __attribute__((no_instrument_function)) int check_region(resource_size_t s,
.....[     201]: resource_size_t n)
.....[     202]: {
.....[     203]: return __check_region(&ioport_resource, s, n);
.....[     204]: }
.....[     207]: struct device;
.....[     213]: extern struct resource * __devm_request_region(struct device *dev,
.....[     214]: struct resource *parent, resource_size_t start,
.....[     215]: resource_size_t n, const char *name);
.....[     222]: extern void __devm_release_region(struct device *dev, struct resource *parent,
.....[     223]: resource_size_t start, resource_size_t n);
.....[     224]: extern int iomem_map_sanity_check(resource_size_t addr, unsigned long size);
.....[     225]: extern int iomem_is_exclusive(u64 addr);
.....[     227]: extern int
.....[     228]: walk_system_ram_range(unsigned long start_pfn, unsigned long nr_pages,
.....[     229]: void *arg, int (*func)(unsigned long, unsigned long, void *));
.....[     232]: static inline __attribute__((no_instrument_function)) bool resource_overlaps(struct resource *r1, struct resource \
.....                *r2)
.....[     233]: {
.....[     234]: return (r1->start <= r2->end && r1->end >= r2->start);
.....[     235]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ioport.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysfs.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysfs.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject_ns.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject_ns.h
.......[      20]: struct sock;
.......[      21]: struct kobject;
.......[      27]: enum kobj_ns_type {
.......[      28]: KOBJ_NS_TYPE_NONE = 0,
.......[      29]: KOBJ_NS_TYPE_NET,
.......[      30]: KOBJ_NS_TYPES
.......[      31]: };
.......[      40]: struct kobj_ns_type_operations {
.......[      41]: enum kobj_ns_type type;
.......[      42]: bool (*current_may_mount)(void);
.......[      43]: void *(*grab_current_ns)(void);
.......[      44]: const void *(*netlink_ns)(struct sock *sk);
.......[      45]: const void *(*initial_ns)(void);
.......[      46]: void (*drop_ns)(void *);
.......[      47]: };
.......[      49]: int kobj_ns_type_register(const struct kobj_ns_type_operations *ops);
.......[      50]: int kobj_ns_type_registered(enum kobj_ns_type type);
.......[      51]: const struct kobj_ns_type_operations *kobj_child_ns_ops(struct kobject *parent);
.......[      52]: const struct kobj_ns_type_operations *kobj_ns_ops(struct kobject *kobj);
.......[      54]: bool kobj_ns_current_may_mount(enum kobj_ns_type type);
.......[      55]: void *kobj_ns_grab_current(enum kobj_ns_type type);
.......[      56]: const void *kobj_ns_netlink(enum kobj_ns_type type, struct sock *sk);
.......[      57]: const void *kobj_ns_initial(enum kobj_ns_type type);
.......[      58]: void kobj_ns_drop(enum kobj_ns_type type, void *ns);
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject_ns.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysfs.h
......[      23]: struct kobject;
......[      24]: struct module;
......[      25]: struct bin_attribute;
......[      26]: enum kobj_ns_type;
......[      28]: struct attribute {
......[      29]: const char *name;
......[      30]: umode_t mode;
......[      36]: };
......[      59]: struct attribute_group {
......[      60]: const char *name;
......[      61]: umode_t (*is_visible)(struct kobject *,
......[      62]: struct attribute *, int);
......[      63]: struct attribute **attrs;
......[      64]: struct bin_attribute **bin_attrs;
......[      65]: };
......[     116]: struct file;
......[     117]: struct vm_area_struct;
......[     119]: struct bin_attribute {
......[     120]: struct attribute attr;
......[     121]: size_t size;
......[     122]: void *private;
......[     123]: ssize_t (*read)(struct file *, struct kobject *, struct bin_attribute *,
......[     124]: char *, loff_t, size_t);
......[     125]: ssize_t (*write)(struct file *, struct kobject *, struct bin_attribute *,
......[     126]: char *, loff_t, size_t);
......[     127]: int (*mmap)(struct file *, struct kobject *, struct bin_attribute *attr,
......[     128]: struct vm_area_struct *vma);
......[     129]: };
......[     173]: struct sysfs_ops {
......[     174]: ssize_t (*show)(struct kobject *, struct attribute *, char *);
......[     175]: ssize_t (*store)(struct kobject *, struct attribute *, const char *, size_t);
......[     176]: };
......[     178]: struct sysfs_dirent;
......[     182]: int sysfs_schedule_callback(struct kobject *kobj, void (*func)(void *),
......[     183]: void *data, struct module *owner);
......[     185]: int sysfs_create_dir_ns(struct kobject *kobj, const void *ns);
......[     186]: void sysfs_remove_dir(struct kobject *kobj);
......[     187]: int sysfs_rename_dir_ns(struct kobject *kobj, const char *new_name,
......[     188]: const void *new_ns);
......[     189]: int sysfs_move_dir_ns(struct kobject *kobj,
......[     190]: struct kobject *new_parent_kobj,
......[     191]: const void *new_ns);
......[     193]: int sysfs_create_file_ns(struct kobject *kobj,
......[     194]: const struct attribute *attr,
......[     195]: const void *ns);
......[     196]: int sysfs_create_files(struct kobject *kobj,
......[     197]: const struct attribute **attr);
......[     198]: int sysfs_chmod_file(struct kobject *kobj,
......[     199]: const struct attribute *attr, umode_t mode);
......[     200]: void sysfs_remove_file_ns(struct kobject *kobj, const struct attribute *attr,
......[     201]: const void *ns);
......[     202]: void sysfs_remove_files(struct kobject *kobj, const struct attribute **attr);
......[     204]: int sysfs_create_bin_file(struct kobject *kobj,
......[     205]: const struct bin_attribute *attr);
......[     206]: void sysfs_remove_bin_file(struct kobject *kobj,
......[     207]: const struct bin_attribute *attr);
......[     209]: int sysfs_create_link(struct kobject *kobj, struct kobject *target,
......[     210]: const char *name);
......[     211]: int sysfs_create_link_nowarn(struct kobject *kobj,
......[     212]: struct kobject *target,
......[     213]: const char *name);
......[     214]: void sysfs_remove_link(struct kobject *kobj, const char *name);
......[     216]: int sysfs_rename_link_ns(struct kobject *kobj, struct kobject *target,
......[     217]: const char *old_name, const char *new_name,
......[     218]: const void *new_ns);
......[     220]: void sysfs_delete_link(struct kobject *dir, struct kobject *targ,
......[     221]: const char *name);
......[     223]: int sysfs_create_group(struct kobject *kobj,
......[     224]: const struct attribute_group *grp);
......[     225]: int sysfs_create_groups(struct kobject *kobj,
......[     226]: const struct attribute_group **groups);
......[     227]: int sysfs_update_group(struct kobject *kobj,
......[     228]: const struct attribute_group *grp);
......[     229]: void sysfs_remove_group(struct kobject *kobj,
......[     230]: const struct attribute_group *grp);
......[     231]: void sysfs_remove_groups(struct kobject *kobj,
......[     232]: const struct attribute_group **groups);
......[     233]: int sysfs_add_file_to_group(struct kobject *kobj,
......[     234]: const struct attribute *attr, const char *group);
......[     235]: void sysfs_remove_file_from_group(struct kobject *kobj,
......[     236]: const struct attribute *attr, const char *group);
......[     237]: int sysfs_merge_group(struct kobject *kobj,
......[     238]: const struct attribute_group *grp);
......[     239]: void sysfs_unmerge_group(struct kobject *kobj,
......[     240]: const struct attribute_group *grp);
......[     241]: int sysfs_add_link_to_group(struct kobject *kobj, const char *group_name,
......[     242]: struct kobject *target, const char *link_name);
......[     243]: void sysfs_remove_link_from_group(struct kobject *kobj, const char *group_name,
......[     244]: const char *link_name);
......[     246]: void sysfs_notify(struct kobject *kobj, const char *dir, const char *attr);
......[     247]: void sysfs_notify_dirent(struct sysfs_dirent *sd);
......[     248]: struct sysfs_dirent *sysfs_get_dirent_ns(struct sysfs_dirent *parent_sd,
......[     249]: const unsigned char *name,
......[     250]: const void *ns);
......[     251]: struct sysfs_dirent *sysfs_get(struct sysfs_dirent *sd);
......[     252]: void sysfs_put(struct sysfs_dirent *sd);
......[     254]: int sysfs_init(void);
......[     446]: static inline __attribute__((no_instrument_function)) int sysfs_create_file(struct kobject *kobj,
......[     447]: const struct attribute *attr)
......[     448]: {
......[     449]: return sysfs_create_file_ns(kobj, attr, ((void *)0));
......[     450]: }
......[     452]: static inline __attribute__((no_instrument_function)) void sysfs_remove_file(struct kobject *kobj,
......[     453]: const struct attribute *attr)
......[     454]: {
......[     455]: return sysfs_remove_file_ns(kobj, attr, ((void *)0));
......[     456]: }
......[     458]: static inline __attribute__((no_instrument_function)) int sysfs_rename_link(struct kobject *kobj, struct kobject \
......                *target,
......[     459]: const char *old_name, const char *new_name)
......[     460]: {
......[     461]: return sysfs_rename_link_ns(kobj, target, old_name, new_name, ((void *)0));
......[     462]: }
......[     464]: static inline __attribute__((no_instrument_function)) struct sysfs_dirent *
......[     465]: sysfs_get_dirent(struct sysfs_dirent *parent_sd, const unsigned char *name)
......[     466]: {
......[     467]: return sysfs_get_dirent_ns(parent_sd, name, ((void *)0));
......[     468]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/sysfs.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kref.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kref.h
......[      24]: struct kref {
......[      25]: atomic_t refcount;
......[      26]: };
......[      32]: static inline __attribute__((no_instrument_function)) void kref_init(struct kref *kref)
......[      33]: {
......[      34]: atomic_set(&kref->refcount, 1);
......[      35]: }
......[      41]: static inline __attribute__((no_instrument_function)) void kref_get(struct kref *kref)
......[      42]: {
......[      47]: ({ static bool __attribute__ ((__section__(".data.unlikely"))) __warned; int __ret_warn_once = !!((atomic_add_return\
......                (1, &kref->refcount)) < 2); if (__builtin_expect(!!(__ret_warn_once), 0)) if (({ int __ret_warn_on = !!(!__warned\
......                ); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null(__FILE__, __LINE__); __builtin_expect(!!\
......                (__ret_warn_on), 0); })) __warned = true; __builtin_expect(!!(__ret_warn_once), 0); });
......[      48]: }
......[      68]: static inline __attribute__((no_instrument_function)) int kref_sub(struct kref *kref, unsigned int count,
......[      69]: void (*release)(struct kref *kref))
......[      70]: {
......[      71]: ({ int __ret_warn_on = !!(release == ((void *)0)); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null\
......                (__FILE__, __LINE__); __builtin_expect(!!(__ret_warn_on), 0); });
......[      73]: if (atomic_sub_and_test((int) count, &kref->refcount)) {
......[      74]: release(kref);
......[      75]: return 1;
......[      76]: }
......[      77]: return 0;
......[      78]: }
......[      97]: static inline __attribute__((no_instrument_function)) int kref_put(struct kref *kref, void (*release)(struct \
......                kref *kref))
......[      98]: {
......[      99]: return kref_sub(kref, 1, release);
......[     100]: }
......[     115]: static inline __attribute__((no_instrument_function)) int kref_put_spinlock_irqsave(struct kref *kref,
......[     116]: void (*release)(struct kref *kref),
......[     117]: spinlock_t *lock)
......[     118]: {
......[     119]: unsigned long flags;
......[     121]: ({ int __ret_warn_on = !!(release == ((void *)0)); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null\
......                (__FILE__, __LINE__); __builtin_expect(!!(__ret_warn_on), 0); });
......[     122]: if (atomic_add_unless(&kref->refcount, -1, 1))
......[     123]: return 0;
......[     124]: do { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); flags = _raw_spin_lock_irqsave\
......                (spinlock_check(lock)); } while (0); } while (0);
......[     125]: if (atomic_dec_and_test(&kref->refcount)) {
......[     126]: release(kref);
......[     127]: do { if (({ ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_irqs_disabled_flags\
......                (flags); })) { do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void)(&__dummy == &__dummy2); 1; }); arch_local_irq_restore\
......                (flags); } while (0); do { } while (0); } else { do { } while (0); do { ({ unsigned long __dummy; typeof(flags) __dummy2; (void\
......                )(&__dummy == &__dummy2); 1; }); arch_local_irq_restore(flags); } while (0); } } while (0);
......[     128]: return 1;
......[     129]: }
......[     130]: spin_unlock_irqrestore(lock, flags);
......[     131]: return 0;
......[     132]: }
......[     134]: static inline __attribute__((no_instrument_function)) int kref_put_mutex(struct kref *kref,
......[     135]: void (*release)(struct kref *kref),
......[     136]: struct mutex *lock)
......[     137]: {
......[     138]: ({ int __ret_warn_on = !!(release == ((void *)0)); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null\
......                (__FILE__, __LINE__); __builtin_expect(!!(__ret_warn_on), 0); });
......[     139]: if (__builtin_expect(!!(!atomic_add_unless(&kref->refcount, -1, 1)), 0)) {
......[     140]: mutex_lock(lock);
......[     141]: if (__builtin_expect(!!(!atomic_dec_and_test(&kref->refcount)), 0)) {
......[     142]: mutex_unlock(lock);
......[     143]: return 0;
......[     144]: }
......[     145]: release(kref);
......[     146]: return 1;
......[     147]: }
......[     148]: return 0;
......[     149]: }
......[     167]: static inline __attribute__((no_instrument_function)) int kref_get_unless_zero(struct kref *kref)
......[     168]: {
......[     169]: return atomic_add_unless(&kref->refcount, 1, 0);
......[     170]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kref.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject.h
.....[      36]: extern char uevent_helper[];
.....[      39]: extern u64 uevent_seqnum;
.....[      51]: enum kobject_action {
.....[      52]: KOBJ_ADD,
.....[      53]: KOBJ_REMOVE,
.....[      54]: KOBJ_CHANGE,
.....[      55]: KOBJ_MOVE,
.....[      56]: KOBJ_ONLINE,
.....[      57]: KOBJ_OFFLINE,
.....[      58]: KOBJ_MAX
.....[      59]: };
.....[      61]: struct kobject {
.....[      62]: const char *name;
.....[      63]: struct list_head entry;
.....[      64]: struct kobject *parent;
.....[      65]: struct kset *kset;
.....[      66]: struct kobj_type *ktype;
.....[      67]: struct sysfs_dirent *sd;
.....[      68]: struct kref kref;
.....[      72]: unsigned int state_initialized:1;
.....[      73]: unsigned int state_in_sysfs:1;
.....[      74]: unsigned int state_add_uevent_sent:1;
.....[      75]: unsigned int state_remove_uevent_sent:1;
.....[      76]: unsigned int uevent_suppress:1;
.....[      77]: };
.....[      79]: extern __attribute__((format(printf, 2, 3)))
.....[      80]: int kobject_set_name(struct kobject *kobj, const char *name, ...);
.....[      81]: extern int kobject_set_name_vargs(struct kobject *kobj, const char *fmt,
.....[      82]: va_list vargs);
.....[      84]: static inline __attribute__((no_instrument_function)) const char *kobject_name(const struct kobject *kobj)
.....[      85]: {
.....[      86]: return kobj->name;
.....[      87]: }
.....[      89]: extern void kobject_init(struct kobject *kobj, struct kobj_type *ktype);
.....[      90]: extern __attribute__((format(printf, 3, 4)))
.....[      91]: int kobject_add(struct kobject *kobj, struct kobject *parent,
.....[      92]: const char *fmt, ...);
.....[      93]: extern __attribute__((format(printf, 4, 5)))
.....[      94]: int kobject_init_and_add(struct kobject *kobj,
.....[      95]: struct kobj_type *ktype, struct kobject *parent,
.....[      96]: const char *fmt, ...);
.....[      98]: extern void kobject_del(struct kobject *kobj);
.....[     100]: extern struct kobject * kobject_create(void);
.....[     101]: extern struct kobject * kobject_create_and_add(const char *name,
.....[     102]: struct kobject *parent);
.....[     104]: extern int kobject_rename(struct kobject *, const char *new_name);
.....[     105]: extern int kobject_move(struct kobject *, struct kobject *);
.....[     107]: extern struct kobject *kobject_get(struct kobject *kobj);
.....[     108]: extern void kobject_put(struct kobject *kobj);
.....[     110]: extern const void *kobject_namespace(struct kobject *kobj);
.....[     111]: extern char *kobject_get_path(struct kobject *kobj, gfp_t flag);
.....[     113]: struct kobj_type {
.....[     114]: void (*release)(struct kobject *kobj);
.....[     115]: const struct sysfs_ops *sysfs_ops;
.....[     116]: struct attribute **default_attrs;
.....[     117]: const struct kobj_ns_type_operations *(*child_ns_type)(struct kobject *kobj);
.....[     118]: const void *(*namespace)(struct kobject *kobj);
.....[     119]: };
.....[     121]: struct kobj_uevent_env {
.....[     122]: char *envp[32];
.....[     123]: int envp_idx;
.....[     124]: char buf[2048];
.....[     125]: int buflen;
.....[     126]: };
.....[     128]: struct kset_uevent_ops {
.....[     129]: int (* const filter)(struct kset *kset, struct kobject *kobj);
.....[     130]: const char *(* const name)(struct kset *kset, struct kobject *kobj);
.....[     131]: int (* const uevent)(struct kset *kset, struct kobject *kobj,
.....[     132]: struct kobj_uevent_env *env);
.....[     133]: };
.....[     135]: struct kobj_attribute {
.....[     136]: struct attribute attr;
.....[     137]: ssize_t (*show)(struct kobject *kobj, struct kobj_attribute *attr,
.....[     138]: char *buf);
.....[     139]: ssize_t (*store)(struct kobject *kobj, struct kobj_attribute *attr,
.....[     140]: const char *buf, size_t count);
.....[     141]: };
.....[     143]: extern const struct sysfs_ops kobj_sysfs_ops;
.....[     145]: struct sock;
.....[     164]: struct kset {
.....[     165]: struct list_head list;
.....[     166]: spinlock_t list_lock;
.....[     167]: struct kobject kobj;
.....[     168]: const struct kset_uevent_ops *uevent_ops;
.....[     169]: };
.....[     171]: extern void kset_init(struct kset *kset);
.....[     172]: extern int kset_register(struct kset *kset);
.....[     173]: extern void kset_unregister(struct kset *kset);
.....[     174]: extern struct kset * kset_create_and_add(const char *name,
.....[     175]: const struct kset_uevent_ops *u,
.....[     176]: struct kobject *parent_kobj);
.....[     178]: static inline __attribute__((no_instrument_function)) struct kset *to_kset(struct kobject *kobj)
.....[     179]: {
.....[     180]: return kobj ? ({ const typeof( ((struct kset *)0)->kobj ) *__mptr = (kobj); (struct kset *)( (char *)__mptr - __builtin_offsetof\
.....                (struct kset,kobj) );}) : ((void *)0);
.....[     181]: }
.....[     183]: static inline __attribute__((no_instrument_function)) struct kset *kset_get(struct kset *k)
.....[     184]: {
.....[     185]: return k ? to_kset(kobject_get(&k->kobj)) : ((void *)0);
.....[     186]: }
.....[     188]: static inline __attribute__((no_instrument_function)) void kset_put(struct kset *k)
.....[     189]: {
.....[     190]: kobject_put(&k->kobj);
.....[     191]: }
.....[     193]: static inline __attribute__((no_instrument_function)) struct kobj_type *get_ktype(struct kobject *kobj)
.....[     194]: {
.....[     195]: return kobj->ktype;
.....[     196]: }
.....[     198]: extern struct kobject *kset_find_obj(struct kset *, const char *);
.....[     201]: extern struct kobject *kernel_kobj;
.....[     203]: extern struct kobject *mm_kobj;
.....[     205]: extern struct kobject *hypervisor_kobj;
.....[     207]: extern struct kobject *power_kobj;
.....[     209]: extern struct kobject *firmware_kobj;
.....[     211]: int kobject_uevent(struct kobject *kobj, enum kobject_action action);
.....[     212]: int kobject_uevent_env(struct kobject *kobj, enum kobject_action action,
.....[     213]: char *envp[]);
.....[     215]: __attribute__((format(printf, 2, 3)))
.....[     216]: int add_uevent_var(struct kobj_uevent_env *env, const char *format, ...);
.....[     218]: int kobject_action_type(const char *buf, size_t count,
.....[     219]: enum kobject_action *type);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kobject.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/klist.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/klist.h
.....[      19]: struct klist_node;
.....[      20]: struct klist {
.....[      21]: spinlock_t k_lock;
.....[      22]: struct list_head k_list;
.....[      23]: void (*get)(struct klist_node *);
.....[      24]: void (*put)(struct klist_node *);
.....[      25]: } __attribute__ ((aligned (sizeof(void *))));
.....[      36]: extern void klist_init(struct klist *k, void (*get)(struct klist_node *),
.....[      37]: void (*put)(struct klist_node *));
.....[      39]: struct klist_node {
.....[      40]: void *n_klist;
.....[      41]: struct list_head n_node;
.....[      42]: struct kref n_ref;
.....[      43]: };
.....[      45]: extern void klist_add_tail(struct klist_node *n, struct klist *k);
.....[      46]: extern void klist_add_head(struct klist_node *n, struct klist *k);
.....[      47]: extern void klist_add_after(struct klist_node *n, struct klist_node *pos);
.....[      48]: extern void klist_add_before(struct klist_node *n, struct klist_node *pos);
.....[      50]: extern void klist_del(struct klist_node *n);
.....[      51]: extern void klist_remove(struct klist_node *n);
.....[      53]: extern int klist_node_attached(struct klist_node *n);
.....[      56]: struct klist_iter {
.....[      57]: struct klist *i_klist;
.....[      58]: struct klist_node *i_cur;
.....[      59]: };
.....[      62]: extern void klist_iter_init(struct klist *k, struct klist_iter *i);
.....[      63]: extern void klist_iter_init_node(struct klist *k, struct klist_iter *i,
.....[      64]: struct klist_node *n);
.....[      65]: extern void klist_iter_exit(struct klist_iter *i);
.....[      66]: extern struct klist_node *klist_next(struct klist_iter *i);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/klist.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pinctrl/devinfo.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pinctrl/devinfo.h
.....[      43]: static inline __attribute__((no_instrument_function)) int pinctrl_bind_pins(struct device *dev)
.....[      44]: {
.....[      45]: return 0;
.....[      46]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pinctrl/devinfo.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ratelimit.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ratelimit.h
.....[      10]: struct ratelimit_state {
.....[      11]: raw_spinlock_t lock;
.....[      13]: int interval;
.....[      14]: int burst;
.....[      15]: int printed;
.....[      16]: int missed;
.....[      17]: unsigned long begin;
.....[      18]: };
.....[      28]: static inline __attribute__((no_instrument_function)) void ratelimit_state_init(struct ratelimit_state *rs\
.....                ,
.....[      29]: int interval, int burst)
.....[      30]: {
.....[      31]: do { *(&rs->lock) = (raw_spinlock_t) { .raw_lock = { { 0 } }, }; } while (0);
.....[      32]: rs->interval = interval;
.....[      33]: rs->burst = burst;
.....[      34]: rs->printed = 0;
.....[      35]: rs->missed = 0;
.....[      36]: rs->begin = 0;
.....[      37]: }
.....[      39]: extern struct ratelimit_state printk_ratelimit_state;
.....[      41]: extern int ___ratelimit(struct ratelimit_state *rs, const char *func);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ratelimit.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/device.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/device.h
.....[       4]: struct dev_archdata {
.....[       6]: struct dma_map_ops *dma_ops;
.....[       9]: void *iommu;
.....[      11]: };
.....[      13]: struct pdev_archdata {
.....[      14]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/device.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....[      32]: struct device;
....[      33]: struct device_private;
....[      34]: struct device_driver;
....[      35]: struct driver_private;
....[      36]: struct module;
....[      37]: struct class;
....[      38]: struct subsys_private;
....[      39]: struct bus_type;
....[      40]: struct device_node;
....[      41]: struct iommu_ops;
....[      42]: struct iommu_group;
....[      44]: struct bus_attribute {
....[      45]: struct attribute attr;
....[      46]: ssize_t (*show)(struct bus_type *bus, char *buf);
....[      47]: ssize_t (*store)(struct bus_type *bus, const char *buf, size_t count);
....[      48]: };
....[      57]: extern int bus_create_file(struct bus_type *,
....[      58]: struct bus_attribute *);
....[      59]: extern void bus_remove_file(struct bus_type *, struct bus_attribute *);
....[     104]: struct bus_type {
....[     105]: const char *name;
....[     106]: const char *dev_name;
....[     107]: struct device *dev_root;
....[     108]: struct device_attribute *dev_attrs;
....[     109]: const struct attribute_group **bus_groups;
....[     110]: const struct attribute_group **dev_groups;
....[     111]: const struct attribute_group **drv_groups;
....[     113]: int (*match)(struct device *dev, struct device_driver *drv);
....[     114]: int (*uevent)(struct device *dev, struct kobj_uevent_env *env);
....[     115]: int (*probe)(struct device *dev);
....[     116]: int (*remove)(struct device *dev);
....[     117]: void (*shutdown)(struct device *dev);
....[     119]: int (*online)(struct device *dev);
....[     120]: int (*offline)(struct device *dev);
....[     122]: int (*suspend)(struct device *dev, pm_message_t state);
....[     123]: int (*resume)(struct device *dev);
....[     125]: const struct dev_pm_ops *pm;
....[     127]: struct iommu_ops *iommu_ops;
....[     129]: struct subsys_private *p;
....[     130]: struct lock_class_key lock_key;
....[     131]: };
....[     133]: extern int bus_register(struct bus_type *bus);
....[     135]: extern void bus_unregister(struct bus_type *bus);
....[     137]: extern int bus_rescan_devices(struct bus_type *bus);
....[     140]: struct subsys_dev_iter {
....[     141]: struct klist_iter ki;
....[     142]: const struct device_type *type;
....[     143]: };
....[     144]: void subsys_dev_iter_init(struct subsys_dev_iter *iter,
....[     145]: struct bus_type *subsys,
....[     146]: struct device *start,
....[     147]: const struct device_type *type);
....[     148]: struct device *subsys_dev_iter_next(struct subsys_dev_iter *iter);
....[     149]: void subsys_dev_iter_exit(struct subsys_dev_iter *iter);
....[     151]: int bus_for_each_dev(struct bus_type *bus, struct device *start, void *data,
....[     152]: int (*fn)(struct device *dev, void *data));
....[     153]: struct device *bus_find_device(struct bus_type *bus, struct device *start,
....[     154]: void *data,
....[     155]: int (*match)(struct device *dev, void *data));
....[     156]: struct device *bus_find_device_by_name(struct bus_type *bus,
....[     157]: struct device *start,
....[     158]: const char *name);
....[     159]: struct device *subsys_find_device_by_id(struct bus_type *bus, unsigned int id,
....[     160]: struct device *hint);
....[     161]: int bus_for_each_drv(struct bus_type *bus, struct device_driver *start,
....[     162]: void *data, int (*fn)(struct device_driver *, void *));
....[     163]: void bus_sort_breadthfirst(struct bus_type *bus,
....[     164]: int (*compare)(const struct device *a,
....[     165]: const struct device *b));
....[     172]: struct notifier_block;
....[     174]: extern int bus_register_notifier(struct bus_type *bus,
....[     175]: struct notifier_block *nb);
....[     176]: extern int bus_unregister_notifier(struct bus_type *bus,
....[     177]: struct notifier_block *nb);
....[     193]: extern struct kset *bus_get_kset(struct bus_type *bus);
....[     194]: extern struct klist *bus_get_device_klist(struct bus_type *bus);
....[     228]: struct device_driver {
....[     229]: const char *name;
....[     230]: struct bus_type *bus;
....[     232]: struct module *owner;
....[     233]: const char *mod_name;
....[     235]: bool suppress_bind_attrs;
....[     237]: const struct of_device_id *of_match_table;
....[     238]: const struct acpi_device_id *acpi_match_table;
....[     240]: int (*probe) (struct device *dev);
....[     241]: int (*remove) (struct device *dev);
....[     242]: void (*shutdown) (struct device *dev);
....[     243]: int (*suspend) (struct device *dev, pm_message_t state);
....[     244]: int (*resume) (struct device *dev);
....[     245]: const struct attribute_group **groups;
....[     247]: const struct dev_pm_ops *pm;
....[     249]: struct driver_private *p;
....[     250]: };
....[     253]: extern int driver_register(struct device_driver *drv);
....[     254]: extern void driver_unregister(struct device_driver *drv);
....[     256]: extern struct device_driver *driver_find(const char *name,
....[     257]: struct bus_type *bus);
....[     258]: extern int driver_probe_done(void);
....[     259]: extern void wait_for_device_probe(void);
....[     264]: struct driver_attribute {
....[     265]: struct attribute attr;
....[     266]: ssize_t (*show)(struct device_driver *driver, char *buf);
....[     267]: ssize_t (*store)(struct device_driver *driver, const char *buf,
....[     268]: size_t count);
....[     269]: };
....[     280]: extern int driver_create_file(struct device_driver *driver,
....[     281]: const struct driver_attribute *attr);
....[     282]: extern void driver_remove_file(struct device_driver *driver,
....[     283]: const struct driver_attribute *attr);
....[     285]: extern int driver_for_each_device(struct device_driver *drv,
....[     286]: struct device *start,
....[     287]: void *data,
....[     288]: int (*fn)(struct device *dev,
....[     289]: void *));
....[     290]: struct device *driver_find_device(struct device_driver *drv,
....[     291]: struct device *start, void *data,
....[     292]: int (*match)(struct device *dev, void *data));
....[     307]: struct subsys_interface {
....[     308]: const char *name;
....[     309]: struct bus_type *subsys;
....[     310]: struct list_head node;
....[     311]: int (*add_dev)(struct device *dev, struct subsys_interface *sif);
....[     312]: int (*remove_dev)(struct device *dev, struct subsys_interface *sif);
....[     313]: };
....[     315]: int subsys_interface_register(struct subsys_interface *sif);
....[     316]: void subsys_interface_unregister(struct subsys_interface *sif);
....[     318]: int subsys_system_register(struct bus_type *subsys,
....[     319]: const struct attribute_group **groups);
....[     320]: int subsys_virtual_register(struct bus_type *subsys,
....[     321]: const struct attribute_group **groups);
....[     351]: struct class {
....[     352]: const char *name;
....[     353]: struct module *owner;
....[     355]: struct class_attribute *class_attrs;
....[     356]: const struct attribute_group **dev_groups;
....[     357]: struct kobject *dev_kobj;
....[     359]: int (*dev_uevent)(struct device *dev, struct kobj_uevent_env *env);
....[     360]: char *(*devnode)(struct device *dev, umode_t *mode);
....[     362]: void (*class_release)(struct class *class);
....[     363]: void (*dev_release)(struct device *dev);
....[     365]: int (*suspend)(struct device *dev, pm_message_t state);
....[     366]: int (*resume)(struct device *dev);
....[     368]: const struct kobj_ns_type_operations *ns_type;
....[     369]: const void *(*namespace)(struct device *dev);
....[     371]: const struct dev_pm_ops *pm;
....[     373]: struct subsys_private *p;
....[     374]: };
....[     376]: struct class_dev_iter {
....[     377]: struct klist_iter ki;
....[     378]: const struct device_type *type;
....[     379]: };
....[     381]: extern struct kobject *sysfs_dev_block_kobj;
....[     382]: extern struct kobject *sysfs_dev_char_kobj;
....[     383]: extern int __class_register(struct class *class,
....[     384]: struct lock_class_key *key);
....[     385]: extern void class_unregister(struct class *class);
....[     395]: struct class_compat;
....[     396]: struct class_compat *class_compat_register(const char *name);
....[     397]: void class_compat_unregister(struct class_compat *cls);
....[     398]: int class_compat_create_link(struct class_compat *cls, struct device *dev,
....[     399]: struct device *device_link);
....[     400]: void class_compat_remove_link(struct class_compat *cls, struct device *dev,
....[     401]: struct device *device_link);
....[     403]: extern void class_dev_iter_init(struct class_dev_iter *iter,
....[     404]: struct class *class,
....[     405]: struct device *start,
....[     406]: const struct device_type *type);
....[     407]: extern struct device *class_dev_iter_next(struct class_dev_iter *iter);
....[     408]: extern void class_dev_iter_exit(struct class_dev_iter *iter);
....[     410]: extern int class_for_each_device(struct class *class, struct device *start,
....[     411]: void *data,
....[     412]: int (*fn)(struct device *dev, void *data));
....[     413]: extern struct device *class_find_device(struct class *class,
....[     414]: struct device *start, const void *data,
....[     415]: int (*match)(struct device *, const void *));
....[     417]: struct class_attribute {
....[     418]: struct attribute attr;
....[     419]: ssize_t (*show)(struct class *class, struct class_attribute *attr,
....[     420]: char *buf);
....[     421]: ssize_t (*store)(struct class *class, struct class_attribute *attr,
....[     422]: const char *buf, size_t count);
....[     423]: };
....[     432]: extern int class_create_file_ns(struct class *class,
....[     433]: const struct class_attribute *attr,
....[     434]: const void *ns);
....[     435]: extern void class_remove_file_ns(struct class *class,
....[     436]: const struct class_attribute *attr,
....[     437]: const void *ns);
....[     439]: static inline __attribute__((no_instrument_function)) int class_create_file(struct class *class,
....[     440]: const struct class_attribute *attr)
....[     441]: {
....[     442]: return class_create_file_ns(class, attr, ((void *)0));
....[     443]: }
....[     445]: static inline __attribute__((no_instrument_function)) void class_remove_file(struct class *class,
....[     446]: const struct class_attribute *attr)
....[     447]: {
....[     448]: return class_remove_file_ns(class, attr, ((void *)0));
....[     449]: }
....[     452]: struct class_attribute_string {
....[     453]: struct class_attribute attr;
....[     454]: char *str;
....[     455]: };
....[     464]: extern ssize_t show_class_attr_string(struct class *class, struct class_attribute *attr,
....[     465]: char *buf);
....[     467]: struct class_interface {
....[     468]: struct list_head node;
....[     469]: struct class *class;
....[     471]: int (*add_dev) (struct device *, struct class_interface *);
....[     472]: void (*remove_dev) (struct device *, struct class_interface *);
....[     473]: };
....[     475]: extern int class_interface_register(struct class_interface *);
....[     476]: extern void class_interface_unregister(struct class_interface *);
....[     478]: extern struct class * __class_create(struct module *owner,
....[     479]: const char *name,
....[     480]: struct lock_class_key *key);
....[     481]: extern void class_destroy(struct class *cls);
....[     500]: struct device_type {
....[     501]: const char *name;
....[     502]: const struct attribute_group **groups;
....[     503]: int (*uevent)(struct device *dev, struct kobj_uevent_env *env);
....[     504]: char *(*devnode)(struct device *dev, umode_t *mode,
....[     505]: kuid_t *uid, kgid_t *gid);
....[     506]: void (*release)(struct device *dev);
....[     508]: const struct dev_pm_ops *pm;
....[     509]: };
....[     512]: struct device_attribute {
....[     513]: struct attribute attr;
....[     514]: ssize_t (*show)(struct device *dev, struct device_attribute *attr,
....[     515]: char *buf);
....[     516]: ssize_t (*store)(struct device *dev, struct device_attribute *attr,
....[     517]: const char *buf, size_t count);
....[     518]: };
....[     520]: struct dev_ext_attribute {
....[     521]: struct device_attribute attr;
....[     522]: void *var;
....[     523]: };
....[     525]: ssize_t device_show_ulong(struct device *dev, struct device_attribute *attr,
....[     526]: char *buf);
....[     527]: ssize_t device_store_ulong(struct device *dev, struct device_attribute *attr,
....[     528]: const char *buf, size_t count);
....[     529]: ssize_t device_show_int(struct device *dev, struct device_attribute *attr,
....[     530]: char *buf);
....[     531]: ssize_t device_store_int(struct device *dev, struct device_attribute *attr,
....[     532]: const char *buf, size_t count);
....[     533]: ssize_t device_show_bool(struct device *dev, struct device_attribute *attr,
....[     534]: char *buf);
....[     535]: ssize_t device_store_bool(struct device *dev, struct device_attribute *attr,
....[     536]: const char *buf, size_t count);
....[     559]: extern int device_create_file(struct device *device,
....[     560]: const struct device_attribute *entry);
....[     561]: extern void device_remove_file(struct device *dev,
....[     562]: const struct device_attribute *attr);
....[     563]: extern int device_create_bin_file(struct device *dev,
....[     564]: const struct bin_attribute *attr);
....[     565]: extern void device_remove_bin_file(struct device *dev,
....[     566]: const struct bin_attribute *attr);
....[     567]: extern int device_schedule_callback_owner(struct device *dev,
....[     568]: void (*func)(struct device *dev), struct module *owner);
....[     575]: typedef void (*dr_release_t)(struct device *dev, void *res);
....[     576]: typedef int (*dr_match_t)(struct device *dev, void *res, void *match_data);
....[     584]: extern void *devres_alloc(dr_release_t release, size_t size, gfp_t gfp);
....[     586]: extern void devres_for_each_res(struct device *dev, dr_release_t release,
....[     587]: dr_match_t match, void *match_data,
....[     588]: void (*fn)(struct device *, void *, void *),
....[     589]: void *data);
....[     590]: extern void devres_free(void *res);
....[     591]: extern void devres_add(struct device *dev, void *res);
....[     592]: extern void *devres_find(struct device *dev, dr_release_t release,
....[     593]: dr_match_t match, void *match_data);
....[     594]: extern void *devres_get(struct device *dev, void *new_res,
....[     595]: dr_match_t match, void *match_data);
....[     596]: extern void *devres_remove(struct device *dev, dr_release_t release,
....[     597]: dr_match_t match, void *match_data);
....[     598]: extern int devres_destroy(struct device *dev, dr_release_t release,
....[     599]: dr_match_t match, void *match_data);
....[     600]: extern int devres_release(struct device *dev, dr_release_t release,
....[     601]: dr_match_t match, void *match_data);
....[     604]: extern void * devres_open_group(struct device *dev, void *id,
....[     605]: gfp_t gfp);
....[     606]: extern void devres_close_group(struct device *dev, void *id);
....[     607]: extern void devres_remove_group(struct device *dev, void *id);
....[     608]: extern int devres_release_group(struct device *dev, void *id);
....[     611]: extern void *devm_kmalloc(struct device *dev, size_t size, gfp_t gfp);
....[     612]: static inline __attribute__((no_instrument_function)) void *devm_kzalloc(struct device *dev, size_t size, gfp_t \
....                gfp)
....[     613]: {
....[     614]: return devm_kmalloc(dev, size, gfp | (( gfp_t)0x8000u));
....[     615]: }
....[     616]: static inline __attribute__((no_instrument_function)) void *devm_kmalloc_array(struct device *dev,
....[     617]: size_t n, size_t size, gfp_t flags)
....[     618]: {
....[     619]: if (size != 0 && n > (~(size_t)0) / size)
....[     620]: return ((void *)0);
....[     621]: return devm_kmalloc(dev, n * size, flags);
....[     622]: }
....[     623]: static inline __attribute__((no_instrument_function)) void *devm_kcalloc(struct device *dev,
....[     624]: size_t n, size_t size, gfp_t flags)
....[     625]: {
....[     626]: return devm_kmalloc_array(dev, n, size, flags | (( gfp_t)0x8000u));
....[     627]: }
....[     628]: extern void devm_kfree(struct device *dev, void *p);
....[     630]: void *devm_ioremap_resource(struct device *dev, struct resource *res);
....[     631]: void *devm_request_and_ioremap(struct device *dev,
....[     632]: struct resource *res);
....[     635]: int devm_add_action(struct device *dev, void (*action)(void *), void *data);
....[     636]: void devm_remove_action(struct device *dev, void (*action)(void *), void *data);
....[     638]: struct device_dma_parameters {
....[     643]: unsigned int max_segment_size;
....[     644]: unsigned long segment_boundary_mask;
....[     645]: };
....[     647]: struct acpi_device;
....[     649]: struct acpi_dev_node {
....[     651]: struct acpi_device *companion;
....[     653]: };
....[     722]: struct device {
....[     723]: struct device *parent;
....[     725]: struct device_private *p;
....[     727]: struct kobject kobj;
....[     728]: const char *init_name;
....[     729]: const struct device_type *type;
....[     731]: struct mutex mutex;
....[     735]: struct bus_type *bus;
....[     736]: struct device_driver *driver;
....[     738]: void *platform_data;
....[     740]: struct dev_pm_info power;
....[     741]: struct dev_pm_domain *pm_domain;
....[     748]: int numa_node;
....[     750]: u64 *dma_mask;
....[     751]: u64 coherent_dma_mask;
....[     757]: struct device_dma_parameters *dma_parms;
....[     759]: struct list_head dma_pools;
....[     761]: struct dma_coherent_mem *dma_mem;
....[     768]: struct dev_archdata archdata;
....[     770]: struct device_node *of_node;
....[     771]: struct acpi_dev_node acpi_node;
....[     773]: dev_t devt;
....[     774]: u32 id;
....[     776]: spinlock_t devres_lock;
....[     777]: struct list_head devres_head;
....[     779]: struct klist_node knode_class;
....[     780]: struct class *class;
....[     781]: const struct attribute_group **groups;
....[     783]: void (*release)(struct device *dev);
....[     784]: struct iommu_group *iommu_group;
....[     786]: bool offline_disabled:1;
....[     787]: bool offline:1;
....[     788]: };
....[     790]: static inline __attribute__((no_instrument_function)) struct device *kobj_to_dev(struct kobject *kobj)
....[     791]: {
....[     792]: return ({ const typeof( ((struct device *)0)->kobj ) *__mptr = (kobj); (struct device *)( (char *)__mptr - __builtin_offsetof\
....                (struct device,kobj) );});
....[     793]: }
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pm_wakeup.h
.....[      46]: struct wakeup_source {
.....[      47]: const char *name;
.....[      48]: struct list_head entry;
.....[      49]: spinlock_t lock;
.....[      50]: struct timer_list timer;
.....[      51]: unsigned long timer_expires;
.....[      52]: ktime_t total_time;
.....[      53]: ktime_t max_time;
.....[      54]: ktime_t last_time;
.....[      55]: ktime_t start_prevent_time;
.....[      56]: ktime_t prevent_sleep_time;
.....[      57]: unsigned long event_count;
.....[      58]: unsigned long active_count;
.....[      59]: unsigned long relax_count;
.....[      60]: unsigned long expire_count;
.....[      61]: unsigned long wakeup_count;
.....[      62]: bool active:1;
.....[      63]: bool autosleep_enabled:1;
.....[      64]: };
.....[      72]: static inline __attribute__((no_instrument_function)) bool device_can_wakeup(struct device *dev)
.....[      73]: {
.....[      74]: return dev->power.can_wakeup;
.....[      75]: }
.....[      77]: static inline __attribute__((no_instrument_function)) bool device_may_wakeup(struct device *dev)
.....[      78]: {
.....[      79]: return dev->power.can_wakeup && !!dev->power.wakeup;
.....[      80]: }
.....[      83]: extern void wakeup_source_prepare(struct wakeup_source *ws, const char *name);
.....[      84]: extern struct wakeup_source *wakeup_source_create(const char *name);
.....[      85]: extern void wakeup_source_drop(struct wakeup_source *ws);
.....[      86]: extern void wakeup_source_destroy(struct wakeup_source *ws);
.....[      87]: extern void wakeup_source_add(struct wakeup_source *ws);
.....[      88]: extern void wakeup_source_remove(struct wakeup_source *ws);
.....[      89]: extern struct wakeup_source *wakeup_source_register(const char *name);
.....[      90]: extern void wakeup_source_unregister(struct wakeup_source *ws);
.....[      91]: extern int device_wakeup_enable(struct device *dev);
.....[      92]: extern int device_wakeup_disable(struct device *dev);
.....[      93]: extern void device_set_wakeup_capable(struct device *dev, bool capable);
.....[      94]: extern int device_init_wakeup(struct device *dev, bool val);
.....[      95]: extern int device_set_wakeup_enable(struct device *dev, bool enable);
.....[      96]: extern void __pm_stay_awake(struct wakeup_source *ws);
.....[      97]: extern void pm_stay_awake(struct device *dev);
.....[      98]: extern void __pm_relax(struct wakeup_source *ws);
.....[      99]: extern void pm_relax(struct device *dev);
.....[     100]: extern void __pm_wakeup_event(struct wakeup_source *ws, unsigned int msec);
.....[     101]: extern void pm_wakeup_event(struct device *dev, unsigned int msec);
.....[     182]: static inline __attribute__((no_instrument_function)) void wakeup_source_init(struct wakeup_source *ws,
.....[     183]: const char *name)
.....[     184]: {
.....[     185]: wakeup_source_prepare(ws, name);
.....[     186]: wakeup_source_add(ws);
.....[     187]: }
.....[     189]: static inline __attribute__((no_instrument_function)) void wakeup_source_trash(struct wakeup_source *ws)
.....[     190]: {
.....[     191]: wakeup_source_remove(ws);
.....[     192]: wakeup_source_drop(ws);
.....[     193]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/pm_wakeup.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
....[     798]: static inline __attribute__((no_instrument_function)) const char *dev_name(const struct device *dev)
....[     799]: {
....[     801]: if (dev->init_name)
....[     802]: return dev->init_name;
....[     804]: return kobject_name(&dev->kobj);
....[     805]: }
....[     807]: extern __attribute__((format(printf, 2, 3)))
....[     808]: int dev_set_name(struct device *dev, const char *name, ...);
....[     811]: static inline __attribute__((no_instrument_function)) int dev_to_node(struct device *dev)
....[     812]: {
....[     813]: return dev->numa_node;
....[     814]: }
....[     815]: static inline __attribute__((no_instrument_function)) void set_dev_node(struct device *dev, int node)
....[     816]: {
....[     817]: dev->numa_node = node;
....[     818]: }
....[     829]: static inline __attribute__((no_instrument_function)) struct pm_subsys_data *dev_to_psd(struct device *dev)
....[     830]: {
....[     831]: return dev ? dev->power.subsys_data : ((void *)0);
....[     832]: }
....[     834]: static inline __attribute__((no_instrument_function)) unsigned int dev_get_uevent_suppress(const struct device \
....                *dev)
....[     835]: {
....[     836]: return dev->kobj.uevent_suppress;
....[     837]: }
....[     839]: static inline __attribute__((no_instrument_function)) void dev_set_uevent_suppress(struct device *dev, int val\
....                )
....[     840]: {
....[     841]: dev->kobj.uevent_suppress = val;
....[     842]: }
....[     844]: static inline __attribute__((no_instrument_function)) int device_is_registered(struct device *dev)
....[     845]: {
....[     846]: return dev->kobj.state_in_sysfs;
....[     847]: }
....[     849]: static inline __attribute__((no_instrument_function)) void device_enable_async_suspend(struct device *dev)
....[     850]: {
....[     851]: if (!dev->power.is_prepared)
....[     852]: dev->power.async_suspend = true;
....[     853]: }
....[     855]: static inline __attribute__((no_instrument_function)) void device_disable_async_suspend(struct device *dev\
....                )
....[     856]: {
....[     857]: if (!dev->power.is_prepared)
....[     858]: dev->power.async_suspend = false;
....[     859]: }
....[     861]: static inline __attribute__((no_instrument_function)) bool device_async_suspend_enabled(struct device *dev\
....                )
....[     862]: {
....[     863]: return !!dev->power.async_suspend;
....[     864]: }
....[     866]: static inline __attribute__((no_instrument_function)) void pm_suspend_ignore_children(struct device *dev, bool \
....                enable)
....[     867]: {
....[     868]: dev->power.ignore_children = enable;
....[     869]: }
....[     871]: static inline __attribute__((no_instrument_function)) void dev_pm_syscore_device(struct device *dev, bool val\
....                )
....[     872]: {
....[     874]: dev->power.syscore = val;
....[     876]: }
....[     878]: static inline __attribute__((no_instrument_function)) void device_lock(struct device *dev)
....[     879]: {
....[     880]: mutex_lock(&dev->mutex);
....[     881]: }
....[     883]: static inline __attribute__((no_instrument_function)) int device_trylock(struct device *dev)
....[     884]: {
....[     885]: return mutex_trylock(&dev->mutex);
....[     886]: }
....[     888]: static inline __attribute__((no_instrument_function)) void device_unlock(struct device *dev)
....[     889]: {
....[     890]: mutex_unlock(&dev->mutex);
....[     891]: }
....[     893]: void driver_init(void);
....[     898]: extern int device_register(struct device *dev);
....[     899]: extern void device_unregister(struct device *dev);
....[     900]: extern void device_initialize(struct device *dev);
....[     901]: extern int device_add(struct device *dev);
....[     902]: extern void device_del(struct device *dev);
....[     903]: extern int device_for_each_child(struct device *dev, void *data,
....[     904]: int (*fn)(struct device *dev, void *data));
....[     905]: extern struct device *device_find_child(struct device *dev, void *data,
....[     906]: int (*match)(struct device *dev, void *data));
....[     907]: extern int device_rename(struct device *dev, const char *new_name);
....[     908]: extern int device_move(struct device *dev, struct device *new_parent,
....[     909]: enum dpm_order dpm_order);
....[     910]: extern const char *device_get_devnode(struct device *dev,
....[     911]: umode_t *mode, kuid_t *uid, kgid_t *gid,
....[     912]: const char **tmp);
....[     913]: extern void *dev_get_drvdata(const struct device *dev);
....[     914]: extern int dev_set_drvdata(struct device *dev, void *data);
....[     916]: static inline __attribute__((no_instrument_function)) bool device_supports_offline(struct device *dev)
....[     917]: {
....[     918]: return dev->bus && dev->bus->offline && dev->bus->online;
....[     919]: }
....[     921]: extern void lock_device_hotplug(void);
....[     922]: extern void unlock_device_hotplug(void);
....[     923]: extern int lock_device_hotplug_sysfs(void);
....[     924]: extern int device_offline(struct device *dev);
....[     925]: extern int device_online(struct device *dev);
....[     929]: extern struct device *__root_device_register(const char *name,
....[     930]: struct module *owner);
....[     939]: extern void root_device_unregister(struct device *root);
....[     941]: static inline __attribute__((no_instrument_function)) void *dev_get_platdata(const struct device *dev)
....[     942]: {
....[     943]: return dev->platform_data;
....[     944]: }
....[     950]: extern int device_bind_driver(struct device *dev);
....[     951]: extern void device_release_driver(struct device *dev);
....[     952]: extern int device_attach(struct device *dev);
....[     953]: extern int driver_attach(struct device_driver *drv);
....[     954]: extern int device_reprobe(struct device *dev);
....[     959]: extern struct device *device_create_vargs(struct class *cls,
....[     960]: struct device *parent,
....[     961]: dev_t devt,
....[     962]: void *drvdata,
....[     963]: const char *fmt,
....[     964]: va_list vargs);
....[     965]: extern __attribute__((format(printf, 5, 6)))
....[     966]: struct device *device_create(struct class *cls, struct device *parent,
....[     967]: dev_t devt, void *drvdata,
....[     968]: const char *fmt, ...);
....[     969]: extern __attribute__((format(printf, 6, 7)))
....[     970]: struct device *device_create_with_groups(struct class *cls,
....[     971]: struct device *parent, dev_t devt, void *drvdata,
....[     972]: const struct attribute_group **groups,
....[     973]: const char *fmt, ...);
....[     974]: extern void device_destroy(struct class *cls, dev_t devt);
....[     982]: extern int (*platform_notify)(struct device *dev);
....[     984]: extern int (*platform_notify_remove)(struct device *dev);
....[     991]: extern struct device *get_device(struct device *dev);
....[     992]: extern void put_device(struct device *dev);
....[     995]: extern int devtmpfs_create_node(struct device *dev);
....[     996]: extern int devtmpfs_delete_node(struct device *dev);
....[     997]: extern int devtmpfs_mount(const char *mntdir);
....[    1005]: extern void device_shutdown(void);
....[    1008]: extern const char *dev_driver_string(const struct device *dev);
....[    1013]: extern __attribute__((format(printf, 3, 0)))
....[    1014]: int dev_vprintk_emit(int level, const struct device *dev,
....[    1015]: const char *fmt, va_list args);
....[    1016]: extern __attribute__((format(printf, 3, 4)))
....[    1017]: int dev_printk_emit(int level, const struct device *dev, const char *fmt, ...);
....[    1019]: extern __attribute__((format(printf, 3, 4)))
....[    1020]: int dev_printk(const char *level, const struct device *dev,
....[    1021]: const char *fmt, ...);
....[    1022]: extern __attribute__((format(printf, 2, 3)))
....[    1023]: int dev_emerg(const struct device *dev, const char *fmt, ...);
....[    1024]: extern __attribute__((format(printf, 2, 3)))
....[    1025]: int dev_alert(const struct device *dev, const char *fmt, ...);
....[    1026]: extern __attribute__((format(printf, 2, 3)))
....[    1027]: int dev_crit(const struct device *dev, const char *fmt, ...);
....[    1028]: extern __attribute__((format(printf, 2, 3)))
....[    1029]: int dev_err(const struct device *dev, const char *fmt, ...);
....[    1030]: extern __attribute__((format(printf, 2, 3)))
....[    1031]: int dev_warn(const struct device *dev, const char *fmt, ...);
....[    1032]: extern __attribute__((format(printf, 2, 3)))
....[    1033]: int dev_notice(const struct device *dev, const char *fmt, ...);
....[    1034]: extern __attribute__((format(printf, 2, 3)))
....[    1035]: int _dev_info(const struct device *dev, const char *fmt, ...);
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/device.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/node.h
...[      21]: struct node {
...[      22]: struct device dev;
...[      27]: };
...[      29]: struct memory_block;
...[      30]: extern struct node *node_devices[];
...[      31]: typedef void (*node_registration_func_t)(struct node *);
...[      33]: extern void unregister_node(struct node *node);
...[      35]: extern int register_one_node(int nid);
...[      36]: extern void unregister_one_node(int nid);
...[      37]: extern int register_cpu_under_node(unsigned int cpu, unsigned int nid);
...[      38]: extern int unregister_cpu_under_node(unsigned int cpu, unsigned int nid);
...[      39]: extern int register_mem_sect_under_node(struct memory_block *mem_blk,
...[      40]: int nid);
...[      41]: extern int unregister_mem_sect_under_nodes(struct memory_block *mem_blk,
...[      42]: unsigned long phys_index);
...[      45]: extern void register_hugetlbfs_with_node(node_registration_func_t doregister,
...[      46]: node_registration_func_t unregister);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/node.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpu.h
..[      20]: struct device;
..[      21]: struct device_node;
..[      23]: struct cpu {
..[      24]: int node_id;
..[      25]: int hotpluggable;
..[      26]: struct device dev;
..[      27]: };
..[      29]: extern int register_cpu(struct cpu *cpu, int num);
..[      30]: extern struct device *get_cpu_device(unsigned cpu);
..[      31]: extern bool cpu_is_hotpluggable(unsigned cpu);
..[      32]: extern bool arch_match_cpu_phys_id(int cpu, u64 phys_id);
..[      33]: extern bool arch_find_n_match_cpu_physical_id(struct device_node *cpun,
..[      34]: int cpu, unsigned int *thread);
..[      36]: extern int cpu_add_dev_attr(struct device_attribute *attr);
..[      37]: extern void cpu_remove_dev_attr(struct device_attribute *attr);
..[      39]: extern int cpu_add_dev_attr_group(struct attribute_group *attrs);
..[      40]: extern void cpu_remove_dev_attr_group(struct attribute_group *attrs);
..[      43]: extern void unregister_cpu(struct cpu *cpu);
..[      44]: extern ssize_t arch_cpu_probe(const char *, size_t);
..[      45]: extern ssize_t arch_cpu_release(const char *, size_t);
..[      47]: struct notifier_block;
..[      50]: extern int arch_cpu_uevent(struct device *dev, struct kobj_uevent_env *env);
..[      51]: extern ssize_t arch_print_cpu_modalias(struct device *dev,
..[      52]: struct device_attribute *attr,
..[      53]: char *bufptr);
..[      59]: enum {
..[      71]: CPU_PRI_SCHED_ACTIVE = ((int)(~0U>>1)),
..[      72]: CPU_PRI_CPUSET_ACTIVE = ((int)(~0U>>1)) - 1,
..[      73]: CPU_PRI_SCHED_INACTIVE = (-((int)(~0U>>1)) - 1) + 1,
..[      74]: CPU_PRI_CPUSET_INACTIVE = (-((int)(~0U>>1)) - 1),
..[      77]: CPU_PRI_PERF = 20,
..[      78]: CPU_PRI_MIGRATION = 10,
..[      80]: CPU_PRI_WORKQUEUE_UP = 5,
..[      81]: CPU_PRI_WORKQUEUE_DOWN = -5,
..[      82]: };
..[     129]: extern int register_cpu_notifier(struct notifier_block *nb);
..[     130]: extern void unregister_cpu_notifier(struct notifier_block *nb);
..[     147]: int cpu_up(unsigned int cpu);
..[     148]: void notify_cpu_starting(unsigned int cpu);
..[     149]: extern void cpu_maps_update_begin(void);
..[     150]: extern void cpu_maps_update_done(void);
..[     174]: extern struct bus_type cpu_subsys;
..[     179]: extern void cpu_hotplug_begin(void);
..[     180]: extern void cpu_hotplug_done(void);
..[     181]: extern void get_online_cpus(void);
..[     182]: extern void put_online_cpus(void);
..[     183]: extern void cpu_hotplug_disable(void);
..[     184]: extern void cpu_hotplug_enable(void);
..[     188]: void clear_tasks_mm_cpumask(int cpu);
..[     189]: int cpu_down(unsigned int cpu);
..[     206]: extern int disable_nonboot_cpus(void);
..[     207]: extern void enable_nonboot_cpus(void);
..[     213]: enum cpuhp_state {
..[     214]: CPUHP_OFFLINE,
..[     215]: CPUHP_ONLINE,
..[     216]: };
..[     218]: void cpu_startup_entry(enum cpuhp_state state);
..[     219]: void cpu_idle(void);
..[     221]: void cpu_idle_poll_ctrl(bool enable);
..[     223]: void arch_cpu_idle(void);
..[     224]: void arch_cpu_idle_prepare(void);
..[     225]: void arch_cpu_idle_enter(void);
..[     226]: void arch_cpu_idle_exit(void);
..[     227]: void arch_cpu_idle_dead(void);
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cpu.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/oom.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/oom.h
..[      10]: struct zonelist;
..[      11]: struct notifier_block;
..[      12]: struct mem_cgroup;
..[      13]: struct task_struct;
..[      18]: enum oom_constraint {
..[      19]: CONSTRAINT_NONE,
..[      20]: CONSTRAINT_CPUSET,
..[      21]: CONSTRAINT_MEMORY_POLICY,
..[      22]: CONSTRAINT_MEMCG,
..[      23]: };
..[      25]: enum oom_scan_t {
..[      26]: OOM_SCAN_OK,
..[      27]: OOM_SCAN_CONTINUE,
..[      28]: OOM_SCAN_ABORT,
..[      29]: OOM_SCAN_SELECT,
..[      30]: };
..[      35]: static inline __attribute__((no_instrument_function)) void set_current_oom_origin(void)
..[      36]: {
..[      37]: get_current()->signal->oom_flags |= (( oom_flags_t)0x1);
..[      38]: }
..[      40]: static inline __attribute__((no_instrument_function)) void clear_current_oom_origin(void)
..[      41]: {
..[      42]: get_current()->signal->oom_flags &= ~(( oom_flags_t)0x1);
..[      43]: }
..[      45]: static inline __attribute__((no_instrument_function)) bool oom_task_origin(const struct task_struct *p)
..[      46]: {
..[      47]: return !!(p->signal->oom_flags & (( oom_flags_t)0x1));
..[      48]: }
..[      50]: extern unsigned long oom_badness(struct task_struct *p,
..[      51]: struct mem_cgroup *memcg, const nodemask_t *nodemask,
..[      52]: unsigned long totalpages);
..[      53]: extern void oom_kill_process(struct task_struct *p, gfp_t gfp_mask, int order,
..[      54]: unsigned int points, unsigned long totalpages,
..[      55]: struct mem_cgroup *memcg, nodemask_t *nodemask,
..[      56]: const char *message);
..[      58]: extern int try_set_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags);
..[      59]: extern void clear_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags);
..[      61]: extern void check_panic_on_oom(enum oom_constraint constraint, gfp_t gfp_mask,
..[      62]: int order, const nodemask_t *nodemask);
..[      64]: extern enum oom_scan_t oom_scan_process_thread(struct task_struct *task,
..[      65]: unsigned long totalpages, const nodemask_t *nodemask,
..[      66]: bool force_kill);
..[      68]: extern void out_of_memory(struct zonelist *zonelist, gfp_t gfp_mask,
..[      69]: int order, nodemask_t *mask, bool force_kill);
..[      70]: extern int register_oom_notifier(struct notifier_block *nb);
..[      71]: extern int unregister_oom_notifier(struct notifier_block *nb);
..[      73]: extern bool oom_killer_disabled;
..[      75]: static inline __attribute__((no_instrument_function)) void oom_killer_disable(void)
..[      76]: {
..[      77]: oom_killer_disabled = true;
..[      78]: }
..[      80]: static inline __attribute__((no_instrument_function)) void oom_killer_enable(void)
..[      81]: {
..[      82]: oom_killer_disabled = false;
..[      83]: }
..[      85]: static inline __attribute__((no_instrument_function)) bool oom_gfp_allowed(gfp_t gfp_mask)
..[      86]: {
..[      87]: return (gfp_mask & (( gfp_t)0x80u)) && !(gfp_mask & (( gfp_t)0x1000u));
..[      88]: }
..[      90]: extern struct task_struct *find_lock_task_mm(struct task_struct *p);
..[      93]: extern int sysctl_oom_dump_tasks;
..[      94]: extern int sysctl_oom_kill_allocating_task;
..[      95]: extern int sysctl_panic_on_oom;
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/oom.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kthread.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kthread.h
..[       7]: __attribute__((format(printf, 4, 5)))
..[       8]: struct task_struct *kthread_create_on_node(int (*threadfn)(void *data),
..[       9]: void *data,
..[      10]: int node,
..[      11]: const char namefmt[], ...);
..[      17]: struct task_struct *kthread_create_on_cpu(int (*threadfn)(void *data),
..[      18]: void *data,
..[      19]: unsigned int cpu,
..[      20]: const char *namefmt);
..[      40]: void kthread_bind(struct task_struct *k, unsigned int cpu);
..[      41]: int kthread_stop(struct task_struct *k);
..[      42]: bool kthread_should_stop(void);
..[      43]: bool kthread_should_park(void);
..[      44]: bool kthread_freezable_should_stop(bool *was_frozen);
..[      45]: void *kthread_data(struct task_struct *k);
..[      46]: void *probe_kthread_data(struct task_struct *k);
..[      47]: int kthread_park(struct task_struct *k);
..[      48]: void kthread_unpark(struct task_struct *k);
..[      49]: void kthread_parkme(void);
..[      51]: int kthreadd(void *unused);
..[      52]: extern struct task_struct *kthreadd_task;
..[      53]: extern int tsk_fork_get_node(struct task_struct *tsk);
..[      63]: struct kthread_work;
..[      64]: typedef void (*kthread_work_func_t)(struct kthread_work *work);
..[      66]: struct kthread_worker {
..[      67]: spinlock_t lock;
..[      68]: struct list_head work_list;
..[      69]: struct task_struct *task;
..[      70]: struct kthread_work *current_work;
..[      71]: };
..[      73]: struct kthread_work {
..[      74]: struct list_head node;
..[      75]: kthread_work_func_t func;
..[      76]: wait_queue_head_t done;
..[      77]: struct kthread_worker *worker;
..[      78]: };
..[     116]: extern void __init_kthread_worker(struct kthread_worker *worker,
..[     117]: const char *name, struct lock_class_key *key);
..[     133]: int kthread_worker_fn(void *worker_ptr);
..[     135]: bool queue_kthread_work(struct kthread_worker *worker,
..[     136]: struct kthread_work *work);
..[     137]: void flush_kthread_work(struct kthread_work *work);
..[     138]: void flush_kthread_worker(struct kthread_worker *worker);
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kthread.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stop_machine.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stop_machine.h
..[      19]: typedef int (*cpu_stop_fn_t)(void *arg);
..[      23]: struct cpu_stop_work {
..[      24]: struct list_head list;
..[      25]: cpu_stop_fn_t fn;
..[      26]: void *arg;
..[      27]: struct cpu_stop_done *done;
..[      28]: };
..[      30]: int stop_one_cpu(unsigned int cpu, cpu_stop_fn_t fn, void *arg);
..[      31]: int stop_two_cpus(unsigned int cpu1, unsigned int cpu2, cpu_stop_fn_t fn, void *arg);
..[      32]: void stop_one_cpu_nowait(unsigned int cpu, cpu_stop_fn_t fn, void *arg,
..[      33]: struct cpu_stop_work *work_buf);
..[      34]: int stop_cpus(const struct cpumask *cpumask, cpu_stop_fn_t fn, void *arg);
..[      35]: int try_stop_cpus(const struct cpumask *cpumask, cpu_stop_fn_t fn, void *arg);
..[     115]: int stop_machine(int (*fn)(void *), void *data, const struct cpumask *cpus);
..[     126]: int __stop_machine(int (*fn)(void *), void *data, const struct cpumask *cpus);
..[     128]: int stop_machine_from_inactive_cpu(int (*fn)(void *), void *data,
..[     129]: const struct cpumask *cpus);
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/stop_machine.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/suspend.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/suspend.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swap.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swap.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memcontrol.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memcontrol.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/cgroupstats.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/cgroupstats.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/taskstats.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/taskstats.h
.......[      40]: struct taskstats {
.......[      46]: __u16 version;
.......[      47]: __u32 ac_exitcode;
.......[      52]: __u8 ac_flag;
.......[      53]: __u8 ac_nice;
.......[      71]: __u64 cpu_count __attribute__((aligned(8)));
.......[      72]: __u64 cpu_delay_total;
.......[      79]: __u64 blkio_count;
.......[      80]: __u64 blkio_delay_total;
.......[      83]: __u64 swapin_count;
.......[      84]: __u64 swapin_delay_total;
.......[      92]: __u64 cpu_run_real_total;
.......[     100]: __u64 cpu_run_virtual_total;
.......[     105]: char ac_comm[32];
.......[     106]: __u8 ac_sched __attribute__((aligned(8)));
.......[     108]: __u8 ac_pad[3];
.......[     109]: __u32 ac_uid __attribute__((aligned(8)));
.......[     111]: __u32 ac_gid;
.......[     112]: __u32 ac_pid;
.......[     113]: __u32 ac_ppid;
.......[     114]: __u32 ac_btime;
.......[     115]: __u64 ac_etime __attribute__((aligned(8)));
.......[     117]: __u64 ac_utime;
.......[     118]: __u64 ac_stime;
.......[     119]: __u64 ac_minflt;
.......[     120]: __u64 ac_majflt;
.......[     130]: __u64 coremem;
.......[     134]: __u64 virtmem;
.......[     139]: __u64 hiwater_rss;
.......[     140]: __u64 hiwater_vm;
.......[     143]: __u64 read_char;
.......[     144]: __u64 write_char;
.......[     145]: __u64 read_syscalls;
.......[     146]: __u64 write_syscalls;
.......[     151]: __u64 read_bytes;
.......[     152]: __u64 write_bytes;
.......[     153]: __u64 cancelled_write_bytes;
.......[     155]: __u64 nvcsw;
.......[     156]: __u64 nivcsw;
.......[     159]: __u64 ac_utimescaled;
.......[     160]: __u64 ac_stimescaled;
.......[     161]: __u64 cpu_scaled_run_real_total;
.......[     164]: __u64 freepages_count;
.......[     165]: __u64 freepages_delay_total;
.......[     166]: };
.......[     175]: enum {
.......[     176]: TASKSTATS_CMD_UNSPEC = 0,
.......[     177]: TASKSTATS_CMD_GET,
.......[     178]: TASKSTATS_CMD_NEW,
.......[     179]: __TASKSTATS_CMD_MAX,
.......[     180]: };
.......[     184]: enum {
.......[     185]: TASKSTATS_TYPE_UNSPEC = 0,
.......[     186]: TASKSTATS_TYPE_PID,
.......[     187]: TASKSTATS_TYPE_TGID,
.......[     188]: TASKSTATS_TYPE_STATS,
.......[     189]: TASKSTATS_TYPE_AGGR_PID,
.......[     190]: TASKSTATS_TYPE_AGGR_TGID,
.......[     191]: TASKSTATS_TYPE_NULL,
.......[     192]: __TASKSTATS_TYPE_MAX,
.......[     193]: };
.......[     197]: enum {
.......[     198]: TASKSTATS_CMD_ATTR_UNSPEC = 0,
.......[     199]: TASKSTATS_CMD_ATTR_PID,
.......[     200]: TASKSTATS_CMD_ATTR_TGID,
.......[     201]: TASKSTATS_CMD_ATTR_REGISTER_CPUMASK,
.......[     202]: TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK,
.......[     203]: __TASKSTATS_CMD_ATTR_MAX,
.......[     204]: };
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/taskstats.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/cgroupstats.h
......[      31]: struct cgroupstats {
......[      32]: __u64 nr_sleeping;
......[      33]: __u64 nr_running;
......[      34]: __u64 nr_stopped;
......[      35]: __u64 nr_uninterruptible;
......[      37]: __u64 nr_io_wait;
......[      38]: };
......[      46]: enum {
......[      47]: CGROUPSTATS_CMD_UNSPEC = __TASKSTATS_CMD_MAX,
......[      48]: CGROUPSTATS_CMD_GET,
......[      49]: CGROUPSTATS_CMD_NEW,
......[      50]: __CGROUPSTATS_CMD_MAX,
......[      51]: };
......[      55]: enum {
......[      56]: CGROUPSTATS_TYPE_UNSPEC = 0,
......[      57]: CGROUPSTATS_TYPE_CGROUP_STATS,
......[      58]: __CGROUPSTATS_TYPE_MAX,
......[      59]: };
......[      63]: enum {
......[      64]: CGROUPSTATS_CMD_ATTR_UNSPEC = 0,
......[      65]: CGROUPSTATS_CMD_ATTR_FD,
......[      66]: __CGROUPSTATS_CMD_ATTR_MAX,
......[      67]: };
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/cgroupstats.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/prio_heap.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/prio_heap.h
......[      18]: struct ptr_heap {
......[      19]: void **ptrs;
......[      20]: int max;
......[      21]: int size;
......[      22]: int (*gt)(void *, void *);
......[      23]: };
......[      32]: extern int heap_init(struct ptr_heap *heap, size_t size, gfp_t gfp_mask,
......[      33]: int (*gt)(void *, void *));
......[      39]: void heap_free(struct ptr_heap *heap);
......[      54]: extern void *heap_insert(struct ptr_heap *heap, void *p);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/prio_heap.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/idr.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/idr.h
......[      30]: struct idr_layer {
......[      31]: int prefix;
......[      32]: unsigned long bitmap[((((1 << 8)) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))];
......[      33]: struct idr_layer *ary[1<<8];
......[      34]: int count;
......[      35]: int layer;
......[      36]: struct callback_head callback_head;
......[      37]: };
......[      39]: struct idr {
......[      40]: struct idr_layer *hint;
......[      41]: struct idr_layer *top;
......[      42]: struct idr_layer *id_free;
......[      43]: int layers;
......[      44]: int id_free_cnt;
......[      45]: int cur;
......[      46]: spinlock_t lock;
......[      47]: };
......[      76]: void *idr_find_slowpath(struct idr *idp, int id);
......[      77]: void idr_preload(gfp_t gfp_mask);
......[      78]: int idr_alloc(struct idr *idp, void *ptr, int start, int end, gfp_t gfp_mask);
......[      79]: int idr_alloc_cyclic(struct idr *idr, void *ptr, int start, int end, gfp_t gfp_mask);
......[      80]: int idr_for_each(struct idr *idp,
......[      81]: int (*fn)(int id, void *p, void *data), void *data);
......[      82]: void *idr_get_next(struct idr *idp, int *nextid);
......[      83]: void *idr_replace(struct idr *idp, void *ptr, int id);
......[      84]: void idr_remove(struct idr *idp, int id);
......[      85]: void idr_free(struct idr *idp, int id);
......[      86]: void idr_destroy(struct idr *idp);
......[      87]: void idr_init(struct idr *idp);
......[      95]: static inline __attribute__((no_instrument_function)) void idr_preload_end(void)
......[      96]: {
......[      97]: __asm__ __volatile__("": : :"memory");
......[      98]: }
......[     112]: static inline __attribute__((no_instrument_function)) void *idr_find(struct idr *idr, int id)
......[     113]: {
......[     114]: struct idr_layer *hint = ({ typeof(*(idr->hint)) *_________p1 = (typeof(*(idr->hint))* )(*(volatile typeof((idr\
......                ->hint)) *)&((idr->hint))); do { } while (0); ; do { } while (0); ((typeof(*(idr->hint)) *)(_________p1)); });
......[     116]: if (hint && (id & ~((1 << 8)-1)) == hint->prefix)
......[     117]: return ({ typeof(*(hint->ary[id &(( 1 << 8)-1)])) *_________p1 = (typeof(*(hint->ary[id &(( 1 << 8)-1)]))* )(*(volatile \
......                typeof((hint->ary[id &(( 1 << 8)-1)])) *)&((hint->ary[id &(( 1 << 8)-1)]))); do { } while (0); ; do { } while (0); ((typeof\
......                (*(hint->ary[id &(( 1 << 8)-1)])) *)(_________p1)); });
......[     119]: return idr_find_slowpath(idr, id);
......[     120]: }
......[     139]: int __idr_pre_get(struct idr *idp, gfp_t gfp_mask);
......[     140]: int __idr_get_new_above(struct idr *idp, void *ptr, int starting_id, int *id);
......[     141]: void __idr_remove_all(struct idr *idp);
......[     151]: static inline __attribute__((no_instrument_function)) int idr_pre_get(struct idr *idp, gfp_t gfp_mask)
......[     152]: {
......[     153]: return __idr_pre_get(idp, gfp_mask);
......[     154]: }
......[     166]: static inline __attribute__((no_instrument_function)) int idr_get_new_above(struct idr *idp, void *ptr,
......[     167]: int starting_id, int *id)
......[     168]: {
......[     169]: return __idr_get_new_above(idp, ptr, starting_id, id);
......[     170]: }
......[     181]: static inline __attribute__((no_instrument_function)) int idr_get_new(struct idr *idp, void *ptr, int *id)
......[     182]: {
......[     183]: return __idr_get_new_above(idp, ptr, 0, id);
......[     184]: }
......[     193]: static inline __attribute__((no_instrument_function)) void idr_remove_all(struct idr *idp)
......[     194]: {
......[     195]: __idr_remove_all(idp);
......[     196]: }
......[     209]: struct ida_bitmap {
......[     210]: long nr_busy;
......[     211]: unsigned long bitmap[(128 / sizeof(long) - 1)];
......[     212]: };
......[     214]: struct ida {
......[     215]: struct idr idr;
......[     216]: struct ida_bitmap *free_bitmap;
......[     217]: };
......[     222]: int ida_pre_get(struct ida *ida, gfp_t gfp_mask);
......[     223]: int ida_get_new_above(struct ida *ida, int starting_id, int *p_id);
......[     224]: void ida_remove(struct ida *ida, int id);
......[     225]: void ida_destroy(struct ida *ida);
......[     226]: void ida_init(struct ida *ida);
......[     228]: int ida_simple_get(struct ida *ida, unsigned int start, unsigned int end,
......[     229]: gfp_t gfp_mask);
......[     230]: void ida_simple_remove(struct ida *ida, unsigned int id);
......[     239]: static inline __attribute__((no_instrument_function)) int ida_get_new(struct ida *ida, int *p_id)
......[     240]: {
......[     241]: return ida_get_new_above(ida, 0, p_id);
......[     242]: }
......[     244]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) idr_init_cache(\
......                void);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/idr.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/xattr.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/xattr.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slab.h
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slab.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kmemleak.h
........#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kmemleak.h
........[      61]: static inline __attribute__((no_instrument_function)) void kmemleak_init(void)
........[      62]: {
........[      63]: }
........[      64]: static inline __attribute__((no_instrument_function)) void kmemleak_alloc(const void *ptr, size_t size, int min_count\
........                ,
........[      65]: gfp_t gfp)
........[      66]: {
........[      67]: }
........[      68]: static inline __attribute__((no_instrument_function)) void kmemleak_alloc_recursive(const void *ptr, size_t \
........                size,
........[      69]: int min_count, unsigned long flags,
........[      70]: gfp_t gfp)
........[      71]: {
........[      72]: }
........[      73]: static inline __attribute__((no_instrument_function)) void kmemleak_alloc_percpu(const void *ptr, size_t size\
........                )
........[      74]: {
........[      75]: }
........[      76]: static inline __attribute__((no_instrument_function)) void kmemleak_free(const void *ptr)
........[      77]: {
........[      78]: }
........[      79]: static inline __attribute__((no_instrument_function)) void kmemleak_free_part(const void *ptr, size_t size)
........[      80]: {
........[      81]: }
........[      82]: static inline __attribute__((no_instrument_function)) void kmemleak_free_recursive(const void *ptr, unsigned \
........                long flags)
........[      83]: {
........[      84]: }
........[      85]: static inline __attribute__((no_instrument_function)) void kmemleak_free_percpu(const void *ptr)
........[      86]: {
........[      87]: }
........[      88]: static inline __attribute__((no_instrument_function)) void kmemleak_not_leak(const void *ptr)
........[      89]: {
........[      90]: }
........[      91]: static inline __attribute__((no_instrument_function)) void kmemleak_ignore(const void *ptr)
........[      92]: {
........[      93]: }
........[      94]: static inline __attribute__((no_instrument_function)) void kmemleak_scan_area(const void *ptr, size_t size, gfp_t \
........                gfp)
........[      95]: {
........[      96]: }
........[      97]: static inline __attribute__((no_instrument_function)) void kmemleak_erase(void **ptr)
........[      98]: {
........[      99]: }
........[     100]: static inline __attribute__((no_instrument_function)) void kmemleak_no_scan(const void *ptr)
........[     101]: {
........[     102]: }
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/kmemleak.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slab.h
.......[     108]: struct mem_cgroup;
.......[     112]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) kmem_cache_init\
.......                (void);
.......[     113]: int slab_is_available(void);
.......[     115]: struct kmem_cache *kmem_cache_create(const char *, size_t, size_t,
.......[     116]: unsigned long,
.......[     117]: void (*)(void *));
.......[     118]: struct kmem_cache *
.......[     119]: kmem_cache_create_memcg(struct mem_cgroup *, const char *, size_t, size_t,
.......[     120]: unsigned long, void (*)(void *), struct kmem_cache *);
.......[     121]: void kmem_cache_destroy(struct kmem_cache *);
.......[     122]: int kmem_cache_shrink(struct kmem_cache *);
.......[     123]: void kmem_cache_free(struct kmem_cache *, void *);
.......[     140]: void * __krealloc(const void *, size_t, gfp_t);
.......[     141]: void * krealloc(const void *, size_t, gfp_t);
.......[     142]: void kfree(const void *);
.......[     143]: void kzfree(const void *);
.......[     144]: size_t ksize(const void *);
.......[     246]: extern struct kmem_cache *kmalloc_caches[(12 + 1) + 1];
.......[     248]: extern struct kmem_cache *kmalloc_dma_caches[(12 + 1) + 1];
.......[     259]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int kmalloc_index(size_t \
.......                size)
.......[     260]: {
.......[     261]: if (!size)
.......[     262]: return 0;
.......[     264]: if (size <= (1 << 3))
.......[     265]: return 3;
.......[     267]: if ((1 << 3) <= 32 && size > 64 && size <= 96)
.......[     268]: return 1;
.......[     269]: if ((1 << 3) <= 64 && size > 128 && size <= 192)
.......[     270]: return 2;
.......[     271]: if (size <= 8) return 3;
.......[     272]: if (size <= 16) return 4;
.......[     273]: if (size <= 32) return 5;
.......[     274]: if (size <= 64) return 6;
.......[     275]: if (size <= 128) return 7;
.......[     276]: if (size <= 256) return 8;
.......[     277]: if (size <= 512) return 9;
.......[     278]: if (size <= 1024) return 10;
.......[     279]: if (size <= 2 * 1024) return 11;
.......[     280]: if (size <= 4 * 1024) return 12;
.......[     281]: if (size <= 8 * 1024) return 13;
.......[     282]: if (size <= 16 * 1024) return 14;
.......[     283]: if (size <= 32 * 1024) return 15;
.......[     284]: if (size <= 64 * 1024) return 16;
.......[     285]: if (size <= 128 * 1024) return 17;
.......[     286]: if (size <= 256 * 1024) return 18;
.......[     287]: if (size <= 512 * 1024) return 19;
.......[     288]: if (size <= 1024 * 1024) return 20;
.......[     289]: if (size <= 2 * 1024 * 1024) return 21;
.......[     290]: if (size <= 4 * 1024 * 1024) return 22;
.......[     291]: if (size <= 8 * 1024 * 1024) return 23;
.......[     292]: if (size <= 16 * 1024 * 1024) return 24;
.......[     293]: if (size <= 32 * 1024 * 1024) return 25;
.......[     294]: if (size <= 64 * 1024 * 1024) return 26;
.......[     295]: do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" \
.......                "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry))); do { } while (\
.......                1); } while (0);
.......[     298]: return -1;
.......[     299]: }
.......[     302]: void *__kmalloc(size_t size, gfp_t flags);
.......[     303]: void *kmem_cache_alloc(struct kmem_cache *, gfp_t flags);
.......[     306]: void *__kmalloc_node(size_t size, gfp_t flags, int node);
.......[     307]: void *kmem_cache_alloc_node(struct kmem_cache *, gfp_t flags, int node);
.......[     321]: extern void *kmem_cache_alloc_trace(struct kmem_cache *, gfp_t, size_t);
.......[     324]: extern void *kmem_cache_alloc_node_trace(struct kmem_cache *s,
.......[     325]: gfp_t gfpflags,
.......[     326]: int node, size_t size);
......#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slab.h
.......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slub_def.h
........[      11]: enum stat_item {
........[      12]: ALLOC_FASTPATH,
........[      13]: ALLOC_SLOWPATH,
........[      14]: FREE_FASTPATH,
........[      15]: FREE_SLOWPATH,
........[      16]: FREE_FROZEN,
........[      17]: FREE_ADD_PARTIAL,
........[      18]: FREE_REMOVE_PARTIAL,
........[      19]: ALLOC_FROM_PARTIAL,
........[      20]: ALLOC_SLAB,
........[      21]: ALLOC_REFILL,
........[      22]: ALLOC_NODE_MISMATCH,
........[      23]: FREE_SLAB,
........[      24]: CPUSLAB_FLUSH,
........[      25]: DEACTIVATE_FULL,
........[      26]: DEACTIVATE_EMPTY,
........[      27]: DEACTIVATE_TO_HEAD,
........[      28]: DEACTIVATE_TO_TAIL,
........[      29]: DEACTIVATE_REMOTE_FREES,
........[      30]: DEACTIVATE_BYPASS,
........[      31]: ORDER_FALLBACK,
........[      32]: CMPXCHG_DOUBLE_CPU_FAIL,
........[      33]: CMPXCHG_DOUBLE_FAIL,
........[      34]: CPU_PARTIAL_ALLOC,
........[      35]: CPU_PARTIAL_FREE,
........[      36]: CPU_PARTIAL_NODE,
........[      37]: CPU_PARTIAL_DRAIN,
........[      38]: NR_SLUB_STAT_ITEMS };
........[      40]: struct kmem_cache_cpu {
........[      41]: void **freelist;
........[      42]: unsigned long tid;
........[      43]: struct page *page;
........[      44]: struct page *partial;
........[      48]: };
........[      55]: struct kmem_cache_order_objects {
........[      56]: unsigned long x;
........[      57]: };
........[      62]: struct kmem_cache {
........[      63]: struct kmem_cache_cpu *cpu_slab;
........[      65]: unsigned long flags;
........[      66]: unsigned long min_partial;
........[      67]: int size;
........[      68]: int object_size;
........[      69]: int offset;
........[      70]: int cpu_partial;
........[      71]: struct kmem_cache_order_objects oo;
........[      74]: struct kmem_cache_order_objects max;
........[      75]: struct kmem_cache_order_objects min;
........[      76]: gfp_t allocflags;
........[      77]: int refcount;
........[      78]: void (*ctor)(void *);
........[      79]: int inuse;
........[      80]: int align;
........[      81]: int reserved;
........[      82]: const char *name;
........[      83]: struct list_head list;
........[      85]: struct kobject kobj;
........[      96]: int remote_node_defrag_ratio;
........[      98]: struct kmem_cache_node *node[(1 << 6)];
........[      99]: };
........#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slub_def.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slab.h
.......[     361]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void *
.......[     362]: kmalloc_order(size_t size, gfp_t flags, unsigned int order)
.......[     363]: {
.......[     364]: void *ret;
.......[     366]: flags |= ((( gfp_t)0x4000u) | (( gfp_t)0x100000u));
.......[     367]: ret = (void *) __get_free_pages(flags, order);
.......[     368]: kmemleak_alloc(ret, size, 1, flags);
.......[     369]: return ret;
.......[     370]: }
.......[     373]: extern void *kmalloc_order_trace(size_t size, gfp_t flags, unsigned int order);
.......[     382]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void *kmalloc_large(\
.......                size_t size, gfp_t flags)
.......[     383]: {
.......[     384]: unsigned int order = ( __builtin_constant_p(size) ? ( ((size) == 0UL) ? 64 - 12 : (((size) < (1UL << 12)) ? 0 : ( __builtin_constant_p\
.......                ((size) - 1) ? ( ((size) - 1) < 1 ? ____ilog2_NaN() : ((size) - 1) & (1ULL << 63) ? 63 : ((size) - 1) & (1ULL << 62) ? 62 : ((size) - 1\
.......                ) & (1ULL << 61) ? 61 : ((size) - 1) & (1ULL << 60) ? 60 : ((size) - 1) & (1ULL << 59) ? 59 : ((size) - 1) & (1ULL << 58) ? 58 : ((size) - 1\
.......                ) & (1ULL << 57) ? 57 : ((size) - 1) & (1ULL << 56) ? 56 : ((size) - 1) & (1ULL << 55) ? 55 : ((size) - 1) & (1ULL << 54) ? 54 : ((size) - 1\
.......                ) & (1ULL << 53) ? 53 : ((size) - 1) & (1ULL << 52) ? 52 : ((size) - 1) & (1ULL << 51) ? 51 : ((size) - 1) & (1ULL << 50) ? 50 : ((size) - 1\
.......                ) & (1ULL << 49) ? 49 : ((size) - 1) & (1ULL << 48) ? 48 : ((size) - 1) & (1ULL << 47) ? 47 : ((size) - 1) & (1ULL << 46) ? 46 : ((size) - 1\
.......                ) & (1ULL << 45) ? 45 : ((size) - 1) & (1ULL << 44) ? 44 : ((size) - 1) & (1ULL << 43) ? 43 : ((size) - 1) & (1ULL << 42) ? 42 : ((size) - 1\
.......                ) & (1ULL << 41) ? 41 : ((size) - 1) & (1ULL << 40) ? 40 : ((size) - 1) & (1ULL << 39) ? 39 : ((size) - 1) & (1ULL << 38) ? 38 : ((size) - 1\
.......                ) & (1ULL << 37) ? 37 : ((size) - 1) & (1ULL << 36) ? 36 : ((size) - 1) & (1ULL << 35) ? 35 : ((size) - 1) & (1ULL << 34) ? 34 : ((size) - 1\
.......                ) & (1ULL << 33) ? 33 : ((size) - 1) & (1ULL << 32) ? 32 : ((size) - 1) & (1ULL << 31) ? 31 : ((size) - 1) & (1ULL << 30) ? 30 : ((size) - 1\
.......                ) & (1ULL << 29) ? 29 : ((size) - 1) & (1ULL << 28) ? 28 : ((size) - 1) & (1ULL << 27) ? 27 : ((size) - 1) & (1ULL << 26) ? 26 : ((size) - 1\
.......                ) & (1ULL << 25) ? 25 : ((size) - 1) & (1ULL << 24) ? 24 : ((size) - 1) & (1ULL << 23) ? 23 : ((size) - 1) & (1ULL << 22) ? 22 : ((size) - 1\
.......                ) & (1ULL << 21) ? 21 : ((size) - 1) & (1ULL << 20) ? 20 : ((size) - 1) & (1ULL << 19) ? 19 : ((size) - 1) & (1ULL << 18) ? 18 : ((size) - 1\
.......                ) & (1ULL << 17) ? 17 : ((size) - 1) & (1ULL << 16) ? 16 : ((size) - 1) & (1ULL << 15) ? 15 : ((size) - 1) & (1ULL << 14) ? 14 : ((size) - 1\
.......                ) & (1ULL << 13) ? 13 : ((size) - 1) & (1ULL << 12) ? 12 : ((size) - 1) & (1ULL << 11) ? 11 : ((size) - 1) & (1ULL << 10) ? 10 : ((size) - 1\
.......                ) & (1ULL << 9) ? 9 : ((size) - 1) & (1ULL << 8) ? 8 : ((size) - 1) & (1ULL << 7) ? 7 : ((size) - 1) & (1ULL << 6) ? 6 : ((size) - 1) & (1ULL << \
.......                5) ? 5 : ((size) - 1) & (1ULL << 4) ? 4 : ((size) - 1) & (1ULL << 3) ? 3 : ((size) - 1) & (1ULL << 2) ? 2 : ((size) - 1) & (1ULL << 1) ? 1 : ((size\
.......                ) - 1) & (1ULL << 0) ? 0 : ____ilog2_NaN() ) : (sizeof((size) - 1) <= 4) ? __ilog2_u32((size) - 1) : __ilog2_u64((size) - 1) ) \
.......                - 12 + 1) ) : __get_order(size) );
.......[     385]: return kmalloc_order_trace(size, flags, order);
.......[     386]: }
.......[     441]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void *kmalloc(size_t \
.......                size, gfp_t flags)
.......[     442]: {
.......[     443]: if (__builtin_constant_p(size)) {
.......[     444]: if (size > (1UL << (12 + 1)))
.......[     445]: return kmalloc_large(size, flags);
.......[     447]: if (!(flags & (( gfp_t)0x01u))) {
.......[     448]: int index = kmalloc_index(size);
.......[     450]: if (!index)
.......[     451]: return ((void *)16);
.......[     453]: return kmem_cache_alloc_trace(kmalloc_caches[index],
.......[     454]: flags, size);
.......[     455]: }
.......[     457]: }
.......[     458]: return __kmalloc(size, flags);
.......[     459]: }
.......[     466]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) int kmalloc_size(int \
.......                n)
.......[     467]: {
.......[     469]: if (n > 2)
.......[     470]: return 1 << n;
.......[     472]: if (n == 1 && (1 << 3) <= 32)
.......[     473]: return 96;
.......[     475]: if (n == 2 && (1 << 3) <= 64)
.......[     476]: return 192;
.......[     478]: return 0;
.......[     479]: }
.......[     481]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void *kmalloc_node(size_t \
.......                size, gfp_t flags, int node)
.......[     482]: {
.......[     484]: if (__builtin_constant_p(size) &&
.......[     485]: size <= (1UL << (12 + 1)) && !(flags & (( gfp_t)0x01u))) {
.......[     486]: int i = kmalloc_index(size);
.......[     488]: if (!i)
.......[     489]: return ((void *)16);
.......[     491]: return kmem_cache_alloc_node_trace(kmalloc_caches[i],
.......[     492]: flags, node, size);
.......[     493]: }
.......[     495]: return __kmalloc_node(size, flags, node);
.......[     496]: }
.......[     528]: struct memcg_cache_params {
.......[     529]: bool is_root_cache;
.......[     530]: union {
.......[     531]: struct kmem_cache *memcg_caches[0];
.......[     532]: struct {
.......[     533]: struct mem_cgroup *memcg;
.......[     534]: struct list_head list;
.......[     535]: struct kmem_cache *root_cache;
.......[     536]: bool dead;
.......[     537]: atomic_t nr_pages;
.......[     538]: struct work_struct destroy;
.......[     539]: };
.......[     540]: };
.......[     541]: };
.......[     543]: int memcg_update_all_caches(int num_memcgs);
.......[     545]: struct seq_file;
.......[     546]: int cache_show(struct kmem_cache *s, struct seq_file *m);
.......[     547]: void print_slabinfo_header(struct seq_file *m);
.......[     555]: static inline __attribute__((no_instrument_function)) void *kmalloc_array(size_t n, size_t size, gfp_t flags)
.......[     556]: {
.......[     557]: if (size != 0 && n > (~(size_t)0) / size)
.......[     558]: return ((void *)0);
.......[     559]: return __kmalloc(n * size, flags);
.......[     560]: }
.......[     568]: static inline __attribute__((no_instrument_function)) void *kcalloc(size_t n, size_t size, gfp_t flags)
.......[     569]: {
.......[     570]: return kmalloc_array(n, size, flags | (( gfp_t)0x8000u));
.......[     571]: }
.......[     584]: extern void *__kmalloc_track_caller(size_t, gfp_t, unsigned long);
.......[     604]: extern void *__kmalloc_node_track_caller(size_t, gfp_t, int, unsigned long);
.......[     623]: static inline __attribute__((no_instrument_function)) void *kmem_cache_zalloc(struct kmem_cache *k, gfp_t flags\
.......                )
.......[     624]: {
.......[     625]: return kmem_cache_alloc(k, flags | (( gfp_t)0x8000u));
.......[     626]: }
.......[     633]: static inline __attribute__((no_instrument_function)) void *kzalloc(size_t size, gfp_t flags)
.......[     634]: {
.......[     635]: return kmalloc(size, flags | (( gfp_t)0x8000u));
.......[     636]: }
.......[     644]: static inline __attribute__((no_instrument_function)) void *kzalloc_node(size_t size, gfp_t flags, int node)
.......[     645]: {
.......[     646]: return kmalloc_node(size, flags | (( gfp_t)0x8000u), node);
.......[     647]: }
.......[     652]: static inline __attribute__((no_instrument_function)) unsigned int kmem_cache_size(struct kmem_cache *s)
.......[     653]: {
.......[     654]: return s->object_size;
.......[     655]: }
.......[     657]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) kmem_cache_init_late\
.......                (void);
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/slab.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/xattr.h
......[      19]: struct inode;
......[      20]: struct dentry;
......[      22]: struct xattr_handler {
......[      23]: const char *prefix;
......[      24]: int flags;
......[      25]: size_t (*list)(struct dentry *dentry, char *list, size_t list_size,
......[      26]: const char *name, size_t name_len, int handler_flags);
......[      27]: int (*get)(struct dentry *dentry, const char *name, void *buffer,
......[      28]: size_t size, int handler_flags);
......[      29]: int (*set)(struct dentry *dentry, const char *name, const void *buffer,
......[      30]: size_t size, int flags, int handler_flags);
......[      31]: };
......[      33]: struct xattr {
......[      34]: const char *name;
......[      35]: void *value;
......[      36]: size_t value_len;
......[      37]: };
......[      39]: ssize_t xattr_getsecurity(struct inode *, const char *, void *, size_t);
......[      40]: ssize_t vfs_getxattr(struct dentry *, const char *, void *, size_t);
......[      41]: ssize_t vfs_listxattr(struct dentry *d, char *list, size_t size);
......[      42]: int __vfs_setxattr_noperm(struct dentry *, const char *, const void *, size_t, int);
......[      43]: int vfs_setxattr(struct dentry *, const char *, const void *, size_t, int);
......[      44]: int vfs_removexattr(struct dentry *, const char *);
......[      46]: ssize_t generic_getxattr(struct dentry *dentry, const char *name, void *buffer, size_t size);
......[      47]: ssize_t generic_listxattr(struct dentry *dentry, char *buffer, size_t buffer_size);
......[      48]: int generic_setxattr(struct dentry *dentry, const char *name, const void *value, size_t size, int flags);
......[      49]: int generic_removexattr(struct dentry *dentry, const char *name);
......[      50]: ssize_t vfs_getxattr_alloc(struct dentry *dentry, const char *name,
......[      51]: char **xattr_value, size_t size, gfp_t flags);
......[      52]: int vfs_xattr_cmp(struct dentry *dentry, const char *xattr_name,
......[      53]: const char *value, size_t size, gfp_t flags);
......[      55]: struct simple_xattrs {
......[      56]: struct list_head head;
......[      57]: spinlock_t lock;
......[      58]: };
......[      60]: struct simple_xattr {
......[      61]: struct list_head list;
......[      62]: char *name;
......[      63]: size_t size;
......[      64]: char value[0];
......[      65]: };
......[      70]: static inline __attribute__((no_instrument_function)) void simple_xattrs_init(struct simple_xattrs *xattrs\
......                )
......[      71]: {
......[      72]: INIT_LIST_HEAD(&xattrs->head);
......[      73]: do { spinlock_check(&xattrs->lock); do { *(&(&xattrs->lock)->rlock) = (raw_spinlock_t) { .raw_lock = { { 0 } }, }; } while \
......                (0); } while (0);
......[      74]: }
......[      79]: static inline __attribute__((no_instrument_function)) void simple_xattrs_free(struct simple_xattrs *xattrs\
......                )
......[      80]: {
......[      81]: struct simple_xattr *xattr, *node;
......[      83]: for (xattr = ({ const typeof( ((typeof(*xattr) *)0)->list ) *__mptr = ((&xattrs->head)->next); (typeof(*xattr) *)\
......                ( (char *)__mptr - __builtin_offsetof(typeof(*xattr),list) );}), node = ({ const typeof( ((typeof(*(xattr)) *)0)\
......                ->list ) *__mptr = ((xattr)->list.next); (typeof(*(xattr)) *)( (char *)__mptr - __builtin_offsetof(typeof(*(xattr\
......                )),list) );}); &xattr->list != (&xattrs->head); xattr = node, node = ({ const typeof( ((typeof(*(node)) *)0)->list \
......                ) *__mptr = ((node)->list.next); (typeof(*(node)) *)( (char *)__mptr - __builtin_offsetof(typeof(*(node)),list\
......                ) );})) {
......[      84]: kfree(xattr->name);
......[      85]: kfree(xattr);
......[      86]: }
......[      87]: }
......[      89]: struct simple_xattr *simple_xattr_alloc(const void *value, size_t size);
......[      90]: int simple_xattr_get(struct simple_xattrs *xattrs, const char *name,
......[      91]: void *buffer, size_t size);
......[      92]: int simple_xattr_set(struct simple_xattrs *xattrs, const char *name,
......[      93]: const void *value, size_t size, int flags);
......[      94]: int simple_xattr_remove(struct simple_xattrs *xattrs, const char *name);
......[      95]: ssize_t simple_xattr_list(struct simple_xattrs *xattrs, char *buffer,
......[      96]: size_t size);
......[      97]: void simple_xattr_list_add(struct simple_xattrs *xattrs,
......[      98]: struct simple_xattr *new_xattr);
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/xattr.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-refcount.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-refcount.h
......[      53]: struct percpu_ref;
......[      54]: typedef void (percpu_ref_func_t)(struct percpu_ref *);
......[      56]: struct percpu_ref {
......[      57]: atomic_t count;
......[      64]: unsigned *pcpu_count;
......[      65]: percpu_ref_func_t *release;
......[      66]: percpu_ref_func_t *confirm_kill;
......[      67]: struct callback_head rcu;
......[      68]: };
......[      70]: int percpu_ref_init(struct percpu_ref *ref,
......[      71]: percpu_ref_func_t *release);
......[      72]: void percpu_ref_cancel_init(struct percpu_ref *ref);
......[      73]: void percpu_ref_kill_and_confirm(struct percpu_ref *ref,
......[      74]: percpu_ref_func_t *confirm_kill);
......[      86]: static inline __attribute__((no_instrument_function)) void percpu_ref_kill(struct percpu_ref *ref)
......[      87]: {
......[      88]: return percpu_ref_kill_and_confirm(ref, ((void *)0));
......[      89]: }
......[     104]: static inline __attribute__((no_instrument_function)) void percpu_ref_get(struct percpu_ref *ref)
......[     105]: {
......[     106]: unsigned *pcpu_count;
......[     108]: rcu_read_lock_sched();
......[     110]: pcpu_count = (*(volatile typeof(ref->pcpu_count) *)&(ref->pcpu_count));
......[     112]: if (__builtin_expect(!!((((unsigned long) pcpu_count) & ((1 << 2) - 1)) == 0), 1))
......[     113]: do { do { const void *__vpp_verify = (typeof((&(((*pcpu_count)))) + 0))((void *)0); (void)__vpp_verify; } while (0)\
......                ; switch(sizeof(((*pcpu_count)))) { case 1: do { typedef typeof((((*pcpu_count)))) pao_T__; const int pao_ID__ = (\
......                __builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)\
......                ); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" \
......                "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))\
......                ))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__)((1)))); break; case 2: \
......                if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decw "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count\
......                )))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count\
......                ))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addl %1, "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ == 1) asm("incq "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" ((\
......                ((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" ((pao_T__)((1))\
......                )); break; default: __bad_percpu_size(); } } while (0);break; case 2: do { typedef typeof((((*pcpu_count)))) pao_T__\
......                ; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__\
......                ; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm("incb "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((\
......                ((*pcpu_count))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__)((1))\
......                )); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ \
......                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else \
......                asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
......                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" \
......                "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" (\
......                (pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; case 4: do { typedef typeof((((*pcpu_count\
......                )))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ \
......                pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm\
......                ("incb ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" \
......                : "+m" ((((*pcpu_count))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__\
......                )((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ \
......                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else \
......                asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
......                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" \
......                "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" (\
......                (pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; case 8: do { typedef typeof((((*pcpu_count\
......                )))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ \
......                pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm\
......                ("incb ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" \
......                : "+m" ((((*pcpu_count))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__\
......                )((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ \
......                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else \
......                asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
......                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" \
......                "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" (\
......                (pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter\
......                ();break; } } while (0);
......[     114]: else
......[     115]: atomic_inc(&ref->count);
......[     117]: rcu_read_unlock_sched();
......[     118]: }
......[     132]: static inline __attribute__((no_instrument_function)) bool percpu_ref_tryget(struct percpu_ref *ref)
......[     133]: {
......[     134]: unsigned *pcpu_count;
......[     135]: int ret = false;
......[     137]: rcu_read_lock_sched();
......[     139]: pcpu_count = (*(volatile typeof(ref->pcpu_count) *)&(ref->pcpu_count));
......[     141]: if (__builtin_expect(!!((((unsigned long) pcpu_count) & ((1 << 2) - 1)) == 0), 1)) {
......[     142]: do { do { const void *__vpp_verify = (typeof((&(((*pcpu_count)))) + 0))((void *)0); (void)__vpp_verify; } while (0)\
......                ; switch(sizeof(((*pcpu_count)))) { case 1: do { typedef typeof((((*pcpu_count)))) pao_T__; const int pao_ID__ = (\
......                __builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)\
......                ); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" \
......                "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))\
......                ))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__)((1)))); break; case 2: \
......                if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decw "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count\
......                )))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count\
......                ))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addl %1, "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ == 1) asm("incq "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" ((\
......                ((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" ((pao_T__)((1))\
......                )); break; default: __bad_percpu_size(); } } while (0);break; case 2: do { typedef typeof((((*pcpu_count)))) pao_T__\
......                ; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__\
......                ; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm("incb "\
......                "%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((\
......                ((*pcpu_count))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__)((1))\
......                )); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ \
......                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else \
......                asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
......                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" \
......                "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" (\
......                (pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; case 4: do { typedef typeof((((*pcpu_count\
......                )))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ \
......                pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm\
......                ("incb ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" \
......                : "+m" ((((*pcpu_count))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__\
......                )((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ \
......                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else \
......                asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
......                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" \
......                "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" (\
......                (pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; case 8: do { typedef typeof((((*pcpu_count\
......                )))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ \
......                pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((*pcpu_count))))) { case 1: if (pao_ID__ == 1) asm\
......                ("incb ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" \
......                : "+m" ((((*pcpu_count))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "qi" ((pao_T__\
......                )((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ \
......                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
......                ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else \
......                asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
......                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" \
......                "%P" "0" : "+m" ((((*pcpu_count))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((*pcpu_count)))) : "re" (\
......                (pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter\
......                ();break; } } while (0);
......[     143]: ret = true;
......[     144]: }
......[     146]: rcu_read_unlock_sched();
......[     148]: return ret;
......[     149]: }
......[     158]: static inline __attribute__((no_instrument_function)) void percpu_ref_put(struct percpu_ref *ref)
......[     159]: {
......[     160]: unsigned *pcpu_count;
......[     162]: rcu_read_lock_sched();
......[     164]: pcpu_count = (*(volatile typeof(ref->pcpu_count) *)&(ref->pcpu_count));
......[     166]: if (__builtin_expect(!!((((unsigned long) pcpu_count) & ((1 << 2) - 1)) == 0), 1))
......[     167]: do { do { const void *__vpp_verify = (typeof((&((((*pcpu_count))))) + 0))((void *)0); (void)__vpp_verify; } while (\
......                0); switch(sizeof((((*pcpu_count))))) { case 1: do { typedef typeof(((((*pcpu_count))))) pao_T__; const int pao_ID__ \
......                = (__builtin_constant_p((-(typeof((*pcpu_count)))(1))) && (((-(typeof((*pcpu_count)))(1))) == 1 || ((-(typeof\
......                ((*pcpu_count)))(1))) == -1)) ? (int)((-(typeof((*pcpu_count)))(1))) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = \
......                ((-(typeof((*pcpu_count)))(1))); (void)pao_tmp__; } switch (sizeof(((((*pcpu_count)))))) { case 1: if (pao_ID__ \
......                == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"\
......                ":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))\
......                ) : "qi" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" \
......                "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count\
......                )))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))) : "ri" ((pao_T__)((-(typeof((*pcpu_count\
......                )))(1))))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if \
......                (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addl %1, ""%%""gs"":" \
......                "%P" "0" : "+m" (((((*pcpu_count))))) : "ri" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 8: if (pao_ID__ \
......                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"\
......                ":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))\
......                ) : "re" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; default: __bad_percpu_size(); } } while (0);break\
......                ; case 2: do { typedef typeof(((((*pcpu_count))))) pao_T__; const int pao_ID__ = (__builtin_constant_p((-(typeof\
......                ((*pcpu_count)))(1))) && (((-(typeof((*pcpu_count)))(1))) == 1 || ((-(typeof((*pcpu_count)))(1))) == -1)) ? (int\
......                )((-(typeof((*pcpu_count)))(1))) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((-(typeof((*pcpu_count)))(1))); \
......                (void)pao_tmp__; } switch (sizeof(((((*pcpu_count)))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" \
......                "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count\
......                )))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))) : "qi" ((pao_T__)((-(typeof((*pcpu_count\
......                )))(1))))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if \
......                (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addw %1, ""%%""gs"":" \
......                "%P" "0" : "+m" (((((*pcpu_count))))) : "ri" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 4: if (pao_ID__ \
......                == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"\
......                ":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))\
......                ) : "ri" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" \
......                "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count\
......                )))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))) : "re" ((pao_T__)((-(typeof((*pcpu_count\
......                )))(1))))); break; default: __bad_percpu_size(); } } while (0);break; case 4: do { typedef typeof(((((*pcpu_count\
......                ))))) pao_T__; const int pao_ID__ = (__builtin_constant_p((-(typeof((*pcpu_count)))(1))) && (((-(typeof((*pcpu_count\
......                )))(1))) == 1 || ((-(typeof((*pcpu_count)))(1))) == -1)) ? (int)((-(typeof((*pcpu_count)))(1))) : 0; if (0) { pao_T__ \
......                pao_tmp__; pao_tmp__ = ((-(typeof((*pcpu_count)))(1))); (void)pao_tmp__; } switch (sizeof(((((*pcpu_count))\
......                )))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == \
......                -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" \
......                (((((*pcpu_count))))) : "qi" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 2: if (pao_ID__ == 1) asm\
......                ("incw ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" \
......                "0" : "+m" (((((*pcpu_count)))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))) : "ri" (\
......                (pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : \
......                "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))\
......                ))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))) : "ri" ((pao_T__)((-(typeof((*pcpu_count\
......                )))(1))))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if \
......                (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addq %1, ""%%""gs"":" \
......                "%P" "0" : "+m" (((((*pcpu_count))))) : "re" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; default: __bad_percpu_size\
......                (); } } while (0);break; case 8: do { typedef typeof(((((*pcpu_count))))) pao_T__; const int pao_ID__ = (__builtin_constant_p\
......                ((-(typeof((*pcpu_count)))(1))) && (((-(typeof((*pcpu_count)))(1))) == 1 || ((-(typeof((*pcpu_count)))(1))\
......                ) == -1)) ? (int)((-(typeof((*pcpu_count)))(1))) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((-(typeof((*pcpu_count\
......                )))(1))); (void)pao_tmp__; } switch (sizeof(((((*pcpu_count)))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"\
......                ":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count\
......                )))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))) : "qi" ((pao_T__)((-(typeof((*pcpu_count\
......                )))(1))))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if \
......                (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addw %1, ""%%""gs"":" \
......                "%P" "0" : "+m" (((((*pcpu_count))))) : "ri" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 4: if (pao_ID__ \
......                == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"\
......                ":" "%P" "0" : "+m" (((((*pcpu_count)))))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))\
......                ) : "ri" ((pao_T__)((-(typeof((*pcpu_count)))(1))))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" \
......                "0" : "+m" (((((*pcpu_count)))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count\
......                )))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((((*pcpu_count))))) : "re" ((pao_T__)((-(typeof((*pcpu_count\
......                )))(1))))); break; default: __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter();break\
......                ; } } while (0);
......[     168]: else if (__builtin_expect(!!(atomic_dec_and_test(&ref->count)), 0))
......[     169]: ref->release(ref);
......[     171]: rcu_read_unlock_sched();
......[     172]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/percpu-refcount.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....[      27]: struct cgroupfs_root;
.....[      28]: struct cgroup_subsys;
.....[      29]: struct inode;
.....[      30]: struct cgroup;
.....[      31]: struct css_id;
.....[      32]: struct eventfd_ctx;
.....[      34]: extern int cgroup_init_early(void);
.....[      35]: extern int cgroup_init(void);
.....[      36]: extern void cgroup_fork(struct task_struct *p);
.....[      37]: extern void cgroup_post_fork(struct task_struct *p);
.....[      38]: extern void cgroup_exit(struct task_struct *p, int run_callbacks);
.....[      39]: extern int cgroupstats_build(struct cgroupstats *stats,
.....[      40]: struct dentry *dentry);
.....[      41]: extern int cgroup_load_subsys(struct cgroup_subsys *ss);
.....[      42]: extern void cgroup_unload_subsys(struct cgroup_subsys *ss);
.....[      44]: extern int proc_cgroup_show(struct seq_file *, void *);
.....[      52]: enum cgroup_subsys_id {
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup_subsys.h
......[       7]: cpuset_subsys_id,
......[      15]: cpu_cgroup_subsys_id,
......[      19]: cpuacct_subsys_id,
......[      27]: devices_subsys_id,
......[      31]: freezer_subsys_id,
......[      35]: net_cls_subsys_id,
......[      39]: blkio_subsys_id,
......[      43]: perf_subsys_id,
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup_subsys.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....[      56]: CGROUP_BUILTIN_SUBSYS_COUNT,
.....[      58]: __CGROUP_SUBSYS_TEMP_PLACEHOLDER = CGROUP_BUILTIN_SUBSYS_COUNT - 1,
.....[      63]: CGROUP_SUBSYS_COUNT,
.....[      64]: };
.....[      68]: struct cgroup_subsys_state {
.....[      70]: struct cgroup *cgroup;
.....[      73]: struct cgroup_subsys *ss;
.....[      76]: struct percpu_ref refcnt;
.....[      79]: struct cgroup_subsys_state *parent;
.....[      81]: unsigned long flags;
.....[      83]: struct css_id *id;
.....[      86]: struct callback_head callback_head;
.....[      87]: struct work_struct destroy_work;
.....[      88]: };
.....[      91]: enum {
.....[      92]: CSS_ROOT = (1 << 0),
.....[      93]: CSS_ONLINE = (1 << 1),
.....[      94]: };
.....[     102]: static inline __attribute__((no_instrument_function)) void css_get(struct cgroup_subsys_state *css)
.....[     103]: {
.....[     105]: if (!(css->flags & CSS_ROOT))
.....[     106]: percpu_ref_get(&css->refcnt);
.....[     107]: }
.....[     119]: static inline __attribute__((no_instrument_function)) bool css_tryget(struct cgroup_subsys_state *css)
.....[     120]: {
.....[     121]: if (css->flags & CSS_ROOT)
.....[     122]: return true;
.....[     123]: return percpu_ref_tryget(&css->refcnt);
.....[     124]: }
.....[     132]: static inline __attribute__((no_instrument_function)) void css_put(struct cgroup_subsys_state *css)
.....[     133]: {
.....[     134]: if (!(css->flags & CSS_ROOT))
.....[     135]: percpu_ref_put(&css->refcnt);
.....[     136]: }
.....[     139]: enum {
.....[     141]: CGRP_DEAD,
.....[     146]: CGRP_RELEASABLE,
.....[     148]: CGRP_NOTIFY_ON_RELEASE,
.....[     154]: CGRP_CPUSET_CLONE_CHILDREN,
.....[     156]: CGRP_SANE_BEHAVIOR,
.....[     157]: };
.....[     159]: struct cgroup_name {
.....[     160]: struct callback_head callback_head;
.....[     161]: char name[];
.....[     162]: };
.....[     164]: struct cgroup {
.....[     165]: unsigned long flags;
.....[     173]: int id;
.....[     176]: int nr_css;
.....[     182]: struct list_head sibling;
.....[     183]: struct list_head children;
.....[     184]: struct list_head files;
.....[     186]: struct cgroup *parent;
.....[     187]: struct dentry *dentry;
.....[     195]: u64 serial_nr;
.....[     208]: struct cgroup_name *name;
.....[     211]: struct cgroup_subsys_state *subsys[CGROUP_SUBSYS_COUNT];
.....[     213]: struct cgroupfs_root *root;
.....[     219]: struct list_head cset_links;
.....[     226]: struct list_head release_list;
.....[     232]: struct list_head pidlists;
.....[     233]: struct mutex pidlist_mutex;
.....[     236]: struct cgroup_subsys_state dummy_css;
.....[     239]: struct callback_head callback_head;
.....[     240]: struct work_struct destroy_work;
.....[     243]: struct list_head event_list;
.....[     244]: spinlock_t event_list_lock;
.....[     247]: struct simple_xattrs xattrs;
.....[     248]: };
.....[     253]: enum {
.....[     298]: CGRP_ROOT_SANE_BEHAVIOR = (1 << 0),
.....[     300]: CGRP_ROOT_NOPREFIX = (1 << 1),
.....[     301]: CGRP_ROOT_XATTR = (1 << 2),
.....[     304]: CGRP_ROOT_OPTION_MASK = (1 << 16) - 1,
.....[     306]: CGRP_ROOT_SUBSYS_BOUND = (1 << 16),
.....[     307]: };
.....[     314]: struct cgroupfs_root {
.....[     315]: struct super_block *sb;
.....[     318]: unsigned long subsys_mask;
.....[     321]: int hierarchy_id;
.....[     324]: struct list_head subsys_list;
.....[     327]: struct cgroup top_cgroup;
.....[     330]: int number_of_cgroups;
.....[     333]: struct list_head root_list;
.....[     336]: unsigned long flags;
.....[     339]: struct idr cgroup_idr;
.....[     342]: char release_agent_path[4096];
.....[     345]: char name[64];
.....[     346]: };
.....[     356]: struct css_set {
.....[     359]: atomic_t refcount;
.....[     365]: struct hlist_node hlist;
.....[     371]: struct list_head tasks;
.....[     377]: struct list_head cgrp_links;
.....[     385]: struct cgroup_subsys_state *subsys[CGROUP_SUBSYS_COUNT];
.....[     388]: struct callback_head callback_head;
.....[     389]: };
.....[     396]: struct cgroup_map_cb {
.....[     397]: int (*fill)(struct cgroup_map_cb *cb, const char *key, u64 value);
.....[     398]: void *state;
.....[     399]: };
.....[     410]: enum {
.....[     411]: CFTYPE_ONLY_ON_ROOT = (1 << 0),
.....[     412]: CFTYPE_NOT_ON_ROOT = (1 << 1),
.....[     413]: CFTYPE_INSANE = (1 << 2),
.....[     414]: CFTYPE_NO_PREFIX = (1 << 3),
.....[     415]: };
.....[     419]: struct cftype {
.....[     425]: char name[64];
.....[     426]: int private;
.....[     431]: umode_t mode;
.....[     437]: size_t max_write_len;
.....[     440]: unsigned int flags;
.....[     446]: struct cgroup_subsys *ss;
.....[     448]: int (*open)(struct inode *inode, struct file *file);
.....[     449]: ssize_t (*read)(struct cgroup_subsys_state *css, struct cftype *cft,
.....[     450]: struct file *file,
.....[     451]: char *buf, size_t nbytes, loff_t *ppos);
.....[     456]: u64 (*read_u64)(struct cgroup_subsys_state *css, struct cftype *cft);
.....[     460]: s64 (*read_s64)(struct cgroup_subsys_state *css, struct cftype *cft);
.....[     467]: int (*read_map)(struct cgroup_subsys_state *css, struct cftype *cft,
.....[     468]: struct cgroup_map_cb *cb);
.....[     473]: int (*read_seq_string)(struct cgroup_subsys_state *css,
.....[     474]: struct cftype *cft, struct seq_file *m);
.....[     476]: ssize_t (*write)(struct cgroup_subsys_state *css, struct cftype *cft,
.....[     477]: struct file *file,
.....[     478]: const char *buf, size_t nbytes, loff_t *ppos);
.....[     485]: int (*write_u64)(struct cgroup_subsys_state *css, struct cftype *cft,
.....[     486]: u64 val);
.....[     490]: int (*write_s64)(struct cgroup_subsys_state *css, struct cftype *cft,
.....[     491]: s64 val);
.....[     498]: int (*write_string)(struct cgroup_subsys_state *css, struct cftype *cft,
.....[     499]: const char *buffer);
.....[     506]: int (*trigger)(struct cgroup_subsys_state *css, unsigned int event);
.....[     508]: int (*release)(struct inode *inode, struct file *file);
.....[     516]: int (*register_event)(struct cgroup_subsys_state *css,
.....[     517]: struct cftype *cft, struct eventfd_ctx *eventfd,
.....[     518]: const char *args);
.....[     525]: void (*unregister_event)(struct cgroup_subsys_state *css,
.....[     526]: struct cftype *cft,
.....[     527]: struct eventfd_ctx *eventfd);
.....[     528]: };
.....[     535]: struct cftype_set {
.....[     536]: struct list_head node;
.....[     537]: struct cftype *cfts;
.....[     538]: };
.....[     544]: static inline __attribute__((no_instrument_function)) bool cgroup_sane_behavior(const struct cgroup *cgrp)
.....[     545]: {
.....[     546]: return cgrp->root->flags & CGRP_ROOT_SANE_BEHAVIOR;
.....[     547]: }
.....[     550]: static inline __attribute__((no_instrument_function)) const char *cgroup_name(const struct cgroup *cgrp)
.....[     551]: {
.....[     552]: return ({ typeof(*(cgrp->name)) *_________p1 = (typeof(*(cgrp->name))* )(*(volatile typeof((cgrp->name)) *)&\
.....                ((cgrp->name))); do { } while (0); ; do { } while (0); ((typeof(*(cgrp->name)) *)(_________p1)); })->name;
.....[     553]: }
.....[     555]: int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts);
.....[     556]: int cgroup_rm_cftypes(struct cftype *cfts);
.....[     558]: bool cgroup_is_descendant(struct cgroup *cgrp, struct cgroup *ancestor);
.....[     560]: int cgroup_path(const struct cgroup *cgrp, char *buf, int buflen);
.....[     561]: int task_cgroup_path(struct task_struct *task, char *buf, size_t buflen);
.....[     563]: int cgroup_task_count(const struct cgroup *cgrp);
.....[     569]: struct cgroup_taskset;
.....[     570]: struct task_struct *cgroup_taskset_first(struct cgroup_taskset *tset);
.....[     571]: struct task_struct *cgroup_taskset_next(struct cgroup_taskset *tset);
.....[     572]: struct cgroup_subsys_state *cgroup_taskset_cur_css(struct cgroup_taskset *tset,
.....[     573]: int subsys_id);
.....[     574]: int cgroup_taskset_size(struct cgroup_taskset *tset);
.....[     594]: struct cgroup_subsys {
.....[     595]: struct cgroup_subsys_state *(*css_alloc)(struct cgroup_subsys_state *parent_css);
.....[     596]: int (*css_online)(struct cgroup_subsys_state *css);
.....[     597]: void (*css_offline)(struct cgroup_subsys_state *css);
.....[     598]: void (*css_free)(struct cgroup_subsys_state *css);
.....[     600]: int (*can_attach)(struct cgroup_subsys_state *css,
.....[     601]: struct cgroup_taskset *tset);
.....[     602]: void (*cancel_attach)(struct cgroup_subsys_state *css,
.....[     603]: struct cgroup_taskset *tset);
.....[     604]: void (*attach)(struct cgroup_subsys_state *css,
.....[     605]: struct cgroup_taskset *tset);
.....[     606]: void (*fork)(struct task_struct *task);
.....[     607]: void (*exit)(struct cgroup_subsys_state *css,
.....[     608]: struct cgroup_subsys_state *old_css,
.....[     609]: struct task_struct *task);
.....[     610]: void (*bind)(struct cgroup_subsys_state *root_css);
.....[     612]: int subsys_id;
.....[     613]: int disabled;
.....[     614]: int early_init;
.....[     628]: bool broken_hierarchy;
.....[     629]: bool warned_broken_hierarchy;
.....[     632]: const char *name;
.....[     638]: struct cgroupfs_root *root;
.....[     639]: struct list_head sibling;
.....[     642]: struct list_head cftsets;
.....[     645]: struct cftype *base_cftypes;
.....[     646]: struct cftype_set base_cftset;
.....[     649]: struct module *module;
.....[     650]: };
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup_subsys.h
......[       7]: extern struct cgroup_subsys cpuset_subsys;
......[      15]: extern struct cgroup_subsys cpu_cgroup_subsys;
......[      19]: extern struct cgroup_subsys cpuacct_subsys;
......[      27]: extern struct cgroup_subsys devices_subsys;
......[      31]: extern struct cgroup_subsys freezer_subsys;
......[      35]: extern struct cgroup_subsys net_cls_subsys;
......[      39]: extern struct cgroup_subsys blkio_subsys;
......[      43]: extern struct cgroup_subsys perf_subsys;
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup_subsys.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
.....[     665]: static inline __attribute__((no_instrument_function))
.....[     666]: struct cgroup_subsys_state *css_parent(struct cgroup_subsys_state *css)
.....[     667]: {
.....[     668]: return css->parent;
.....[     669]: }
.....[     713]: static inline __attribute__((no_instrument_function)) struct css_set *task_css_set(struct task_struct *task\
.....                )
.....[     714]: {
.....[     715]: return ({ typeof(*((task)->cgroups)) *_________p1 = (typeof(*((task)->cgroups))* )(*(volatile typeof(((task\
.....                )->cgroups)) *)&(((task)->cgroups))); do { } while (0); ; do { } while (0); ((typeof(*((task)->cgroups)) *)(_________p1\
.....                )); });
.....[     716]: }
.....[     725]: static inline __attribute__((no_instrument_function)) struct cgroup_subsys_state *task_css(struct task_struct \
.....                *task,
.....[     726]: int subsys_id)
.....[     727]: {
.....[     728]: return ({ typeof(*(((task))->cgroups)) *_________p1 = (typeof(*(((task))->cgroups))* )(*(volatile typeof(((\
.....                (task))->cgroups)) *)&((((task))->cgroups))); do { } while (0); ; do { } while (0); ((typeof(*(((task))->cgroups)\
.....                ) *)(_________p1)); })->subsys[(subsys_id)];
.....[     729]: }
.....[     731]: static inline __attribute__((no_instrument_function)) struct cgroup *task_cgroup(struct task_struct *task,
.....[     732]: int subsys_id)
.....[     733]: {
.....[     734]: return task_css(task, subsys_id)->cgroup;
.....[     735]: }
.....[     737]: struct cgroup_subsys_state *css_next_child(struct cgroup_subsys_state *pos,
.....[     738]: struct cgroup_subsys_state *parent);
.....[     740]: struct cgroup_subsys_state *css_from_id(int id, struct cgroup_subsys *ss);
.....[     764]: struct cgroup_subsys_state *
.....[     765]: css_next_descendant_pre(struct cgroup_subsys_state *pos,
.....[     766]: struct cgroup_subsys_state *css);
.....[     768]: struct cgroup_subsys_state *
.....[     769]: css_rightmost_descendant(struct cgroup_subsys_state *pos);
.....[     832]: struct cgroup_subsys_state *
.....[     833]: css_next_descendant_post(struct cgroup_subsys_state *pos,
.....[     834]: struct cgroup_subsys_state *css);
.....[     851]: struct css_task_iter {
.....[     852]: struct cgroup_subsys_state *origin_css;
.....[     853]: struct list_head *cset_link;
.....[     854]: struct list_head *task;
.....[     855]: };
.....[     857]: void css_task_iter_start(struct cgroup_subsys_state *css,
.....[     858]: struct css_task_iter *it);
.....[     859]: struct task_struct *css_task_iter_next(struct css_task_iter *it);
.....[     860]: void css_task_iter_end(struct css_task_iter *it);
.....[     862]: int css_scan_tasks(struct cgroup_subsys_state *css,
.....[     863]: bool (*test)(struct task_struct *, void *),
.....[     864]: void (*process)(struct task_struct *, void *),
.....[     865]: void *data, struct ptr_heap *heap);
.....[     867]: int cgroup_attach_task_all(struct task_struct *from, struct task_struct *);
.....[     868]: int cgroup_transfer_tasks(struct cgroup *to, struct cgroup *from);
.....[     870]: struct cgroup_subsys_state *css_from_dir(struct dentry *dentry,
.....[     871]: struct cgroup_subsys *ss);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/cgroup.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memcontrol.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vm_event_item.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vm_event_item.h
.....[      24]: enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT,
.....[      25]: PGALLOC_DMA, PGALLOC_DMA32, PGALLOC_NORMAL , PGALLOC_MOVABLE,
.....[      26]: PGFREE, PGACTIVATE, PGDEACTIVATE,
.....[      27]: PGFAULT, PGMAJFAULT,
.....[      28]: PGREFILL_DMA, PGREFILL_DMA32, PGREFILL_NORMAL , PGREFILL_MOVABLE,
.....[      29]: PGSTEAL_KSWAPD_DMA, PGSTEAL_KSWAPD_DMA32, PGSTEAL_KSWAPD_NORMAL , PGSTEAL_KSWAPD_MOVABLE,
.....[      30]: PGSTEAL_DIRECT_DMA, PGSTEAL_DIRECT_DMA32, PGSTEAL_DIRECT_NORMAL , PGSTEAL_DIRECT_MOVABLE,
.....[      31]: PGSCAN_KSWAPD_DMA, PGSCAN_KSWAPD_DMA32, PGSCAN_KSWAPD_NORMAL , PGSCAN_KSWAPD_MOVABLE,
.....[      32]: PGSCAN_DIRECT_DMA, PGSCAN_DIRECT_DMA32, PGSCAN_DIRECT_NORMAL , PGSCAN_DIRECT_MOVABLE,
.....[      33]: PGSCAN_DIRECT_THROTTLE,
.....[      35]: PGSCAN_ZONE_RECLAIM_FAILED,
.....[      37]: PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL,
.....[      38]: KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY,
.....[      39]: PAGEOUTRUN, ALLOCSTALL, PGROTATED,
.....[      48]: PGMIGRATE_SUCCESS, PGMIGRATE_FAIL,
.....[      56]: HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL,
.....[      58]: UNEVICTABLE_PGCULLED,
.....[      59]: UNEVICTABLE_PGSCANNED,
.....[      60]: UNEVICTABLE_PGRESCUED,
.....[      61]: UNEVICTABLE_PGMLOCKED,
.....[      62]: UNEVICTABLE_PGMUNLOCKED,
.....[      63]: UNEVICTABLE_PGCLEARED,
.....[      64]: UNEVICTABLE_PGSTRANDED,
.....[      75]: NR_TLB_REMOTE_FLUSH,
.....[      76]: NR_TLB_REMOTE_FLUSH_RECEIVED,
.....[      78]: NR_TLB_LOCAL_FLUSH_ALL,
.....[      79]: NR_TLB_LOCAL_FLUSH_ONE,
.....[      80]: NR_VM_EVENT_ITEMS
.....[      81]: };
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vm_event_item.h
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memcontrol.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hardirq.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hardirq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ftrace_irq.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ftrace_irq.h
......[       9]: static inline __attribute__((no_instrument_function)) void ftrace_nmi_enter(void) { }
......[      10]: static inline __attribute__((no_instrument_function)) void ftrace_nmi_exit(void) { }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/ftrace_irq.h
....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hardirq.h
.....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vtime.h
.....#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vtime.h
......# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/context_tracking_state.h
.......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/context_tracking_state.h
.......[       7]: struct context_tracking {
.......[      14]: bool active;
.......[      15]: enum ctx_state {
.......[      16]: IN_KERNEL = 0,
.......[      17]: IN_USER,
.......[      18]: } state;
.......[      19]: };
.......[      35]: static inline __attribute__((no_instrument_function)) bool context_tracking_in_user(void) { return false; }
.......[      36]: static inline __attribute__((no_instrument_function)) bool context_tracking_active(void) { return false; }
.......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/context_tracking_state.h
......#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vtime.h
......[      10]: struct task_struct;
......[      32]: static inline __attribute__((no_instrument_function)) bool vtime_accounting_enabled(void) { return false; }
......[      69]: static inline __attribute__((no_instrument_function)) void vtime_task_switch(struct task_struct *prev) { }
......[      70]: static inline __attribute__((no_instrument_function)) void vtime_account_system(struct task_struct *tsk) { }
......[      71]: static inline __attribute__((no_instrument_function)) void vtime_account_user(struct task_struct *tsk) { }
......[      72]: static inline __attribute__((no_instrument_function)) void vtime_account_irq_enter(struct task_struct *tsk\
......                ) { }
......[      95]: static inline __attribute__((no_instrument_function)) void vtime_account_irq_exit(struct task_struct *tsk)
......[      96]: {
......[      98]: vtime_account_system(tsk);
......[      99]: }
......[     100]: static inline __attribute__((no_instrument_function)) void vtime_user_enter(struct task_struct *tsk) { }
......[     101]: static inline __attribute__((no_instrument_function)) void vtime_user_exit(struct task_struct *tsk) { }
......[     102]: static inline __attribute__((no_instrument_function)) void vtime_guest_enter(struct task_struct *tsk) { }
......[     103]: static inline __attribute__((no_instrument_function)) void vtime_guest_exit(struct task_struct *tsk) { }
......[     104]: static inline __attribute__((no_instrument_function)) void vtime_init_idle(struct task_struct *tsk, int cpu) \
......                { }
......[     110]: static inline __attribute__((no_instrument_function)) void irqtime_account_irq(struct task_struct *tsk) { }
......[     113]: static inline __attribute__((no_instrument_function)) void account_irq_enter_time(struct task_struct *tsk)
......[     114]: {
......[     115]: vtime_account_irq_enter(tsk);
......[     116]: irqtime_account_irq(tsk);
......[     117]: }
......[     119]: static inline __attribute__((no_instrument_function)) void account_irq_exit_time(struct task_struct *tsk)
......[     120]: {
......[     121]: vtime_account_irq_exit(tsk);
......[     122]: irqtime_account_irq(tsk);
......[     123]: }
......#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vtime.h
.....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hardirq.h
.....[      10]: extern void synchronize_irq(unsigned int irq);
.....[      23]: extern void rcu_nmi_enter(void);
.....[      24]: extern void rcu_nmi_exit(void);
.....[      43]: extern void irq_enter(void);
.....[      58]: extern void irq_exit(void);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/hardirq.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memcontrol.h
....[      27]: struct mem_cgroup;
....[      28]: struct page_cgroup;
....[      29]: struct page;
....[      30]: struct mm_struct;
....[      31]: struct kmem_cache;
....[      37]: enum mem_cgroup_stat_index {
....[      41]: MEM_CGROUP_STAT_CACHE,
....[      42]: MEM_CGROUP_STAT_RSS,
....[      43]: MEM_CGROUP_STAT_RSS_HUGE,
....[      44]: MEM_CGROUP_STAT_FILE_MAPPED,
....[      45]: MEM_CGROUP_STAT_WRITEBACK,
....[      46]: MEM_CGROUP_STAT_SWAP,
....[      47]: MEM_CGROUP_STAT_NSTATS,
....[      48]: };
....[      50]: struct mem_cgroup_reclaim_cookie {
....[      51]: struct zone *zone;
....[      52]: int priority;
....[      53]: unsigned int generation;
....[      54]: };
....[     235]: struct mem_cgroup;
....[     237]: static inline __attribute__((no_instrument_function)) int mem_cgroup_newpage_charge(struct page *page,
....[     238]: struct mm_struct *mm, gfp_t gfp_mask)
....[     239]: {
....[     240]: return 0;
....[     241]: }
....[     243]: static inline __attribute__((no_instrument_function)) int mem_cgroup_cache_charge(struct page *page,
....[     244]: struct mm_struct *mm, gfp_t gfp_mask)
....[     245]: {
....[     246]: return 0;
....[     247]: }
....[     249]: static inline __attribute__((no_instrument_function)) int mem_cgroup_try_charge_swapin(struct mm_struct *mm\
....                ,
....[     250]: struct page *page, gfp_t gfp_mask, struct mem_cgroup **memcgp)
....[     251]: {
....[     252]: return 0;
....[     253]: }
....[     255]: static inline __attribute__((no_instrument_function)) void mem_cgroup_commit_charge_swapin(struct page *page\
....                ,
....[     256]: struct mem_cgroup *memcg)
....[     257]: {
....[     258]: }
....[     260]: static inline __attribute__((no_instrument_function)) void mem_cgroup_cancel_charge_swapin(struct mem_cgroup \
....                *memcg)
....[     261]: {
....[     262]: }
....[     264]: static inline __attribute__((no_instrument_function)) void mem_cgroup_uncharge_start(void)
....[     265]: {
....[     266]: }
....[     268]: static inline __attribute__((no_instrument_function)) void mem_cgroup_uncharge_end(void)
....[     269]: {
....[     270]: }
....[     272]: static inline __attribute__((no_instrument_function)) void mem_cgroup_uncharge_page(struct page *page)
....[     273]: {
....[     274]: }
....[     276]: static inline __attribute__((no_instrument_function)) void mem_cgroup_uncharge_cache_page(struct page *page\
....                )
....[     277]: {
....[     278]: }
....[     280]: static inline __attribute__((no_instrument_function)) struct lruvec *mem_cgroup_zone_lruvec(struct zone *zone\
....                ,
....[     281]: struct mem_cgroup *memcg)
....[     282]: {
....[     283]: return &zone->lruvec;
....[     284]: }
....[     286]: static inline __attribute__((no_instrument_function)) struct lruvec *mem_cgroup_page_lruvec(struct page *page\
....                ,
....[     287]: struct zone *zone)
....[     288]: {
....[     289]: return &zone->lruvec;
....[     290]: }
....[     292]: static inline __attribute__((no_instrument_function)) struct mem_cgroup *try_get_mem_cgroup_from_page(struct \
....                page *page)
....[     293]: {
....[     294]: return ((void *)0);
....[     295]: }
....[     297]: static inline __attribute__((no_instrument_function)) struct mem_cgroup *try_get_mem_cgroup_from_mm(struct \
....                mm_struct *mm)
....[     298]: {
....[     299]: return ((void *)0);
....[     300]: }
....[     302]: static inline __attribute__((no_instrument_function)) bool mm_match_cgroup(struct mm_struct *mm,
....[     303]: struct mem_cgroup *memcg)
....[     304]: {
....[     305]: return true;
....[     306]: }
....[     308]: static inline __attribute__((no_instrument_function)) bool task_in_mem_cgroup(struct task_struct *task,
....[     309]: const struct mem_cgroup *memcg)
....[     310]: {
....[     311]: return true;
....[     312]: }
....[     314]: static inline __attribute__((no_instrument_function)) struct cgroup_subsys_state
....[     315]: *mem_cgroup_css(struct mem_cgroup *memcg)
....[     316]: {
....[     317]: return ((void *)0);
....[     318]: }
....[     320]: static inline __attribute__((no_instrument_function)) void
....[     321]: mem_cgroup_prepare_migration(struct page *page, struct page *newpage,
....[     322]: struct mem_cgroup **memcgp)
....[     323]: {
....[     324]: }
....[     326]: static inline __attribute__((no_instrument_function)) void mem_cgroup_end_migration(struct mem_cgroup *memcg\
....                ,
....[     327]: struct page *oldpage, struct page *newpage, bool migration_ok)
....[     328]: {
....[     329]: }
....[     331]: static inline __attribute__((no_instrument_function)) struct mem_cgroup *
....[     332]: mem_cgroup_iter(struct mem_cgroup *root,
....[     333]: struct mem_cgroup *prev,
....[     334]: struct mem_cgroup_reclaim_cookie *reclaim)
....[     335]: {
....[     336]: return ((void *)0);
....[     337]: }
....[     339]: static inline __attribute__((no_instrument_function)) void mem_cgroup_iter_break(struct mem_cgroup *root,
....[     340]: struct mem_cgroup *prev)
....[     341]: {
....[     342]: }
....[     344]: static inline __attribute__((no_instrument_function)) bool mem_cgroup_disabled(void)
....[     345]: {
....[     346]: return true;
....[     347]: }
....[     349]: static inline __attribute__((no_instrument_function)) int
....[     350]: mem_cgroup_inactive_anon_is_low(struct lruvec *lruvec)
....[     351]: {
....[     352]: return 1;
....[     353]: }
....[     355]: static inline __attribute__((no_instrument_function)) unsigned long
....[     356]: mem_cgroup_get_lru_size(struct lruvec *lruvec, enum lru_list lru)
....[     357]: {
....[     358]: return 0;
....[     359]: }
....[     361]: static inline __attribute__((no_instrument_function)) void
....[     362]: mem_cgroup_update_lru_size(struct lruvec *lruvec, enum lru_list lru,
....[     363]: int increment)
....[     364]: {
....[     365]: }
....[     367]: static inline __attribute__((no_instrument_function)) void
....[     368]: mem_cgroup_print_oom_info(struct mem_cgroup *memcg, struct task_struct *p)
....[     369]: {
....[     370]: }
....[     372]: static inline __attribute__((no_instrument_function)) void mem_cgroup_begin_update_page_stat(struct page *\
....                page,
....[     373]: bool *locked, unsigned long *flags)
....[     374]: {
....[     375]: }
....[     377]: static inline __attribute__((no_instrument_function)) void mem_cgroup_end_update_page_stat(struct page *page\
....                ,
....[     378]: bool *locked, unsigned long *flags)
....[     379]: {
....[     380]: }
....[     382]: static inline __attribute__((no_instrument_function)) void mem_cgroup_oom_enable(void)
....[     383]: {
....[     384]: }
....[     386]: static inline __attribute__((no_instrument_function)) void mem_cgroup_oom_disable(void)
....[     387]: {
....[     388]: }
....[     390]: static inline __attribute__((no_instrument_function)) bool task_in_memcg_oom(struct task_struct *p)
....[     391]: {
....[     392]: return false;
....[     393]: }
....[     395]: static inline __attribute__((no_instrument_function)) bool mem_cgroup_oom_synchronize(bool wait)
....[     396]: {
....[     397]: return false;
....[     398]: }
....[     400]: static inline __attribute__((no_instrument_function)) void mem_cgroup_inc_page_stat(struct page *page,
....[     401]: enum mem_cgroup_stat_index idx)
....[     402]: {
....[     403]: }
....[     405]: static inline __attribute__((no_instrument_function)) void mem_cgroup_dec_page_stat(struct page *page,
....[     406]: enum mem_cgroup_stat_index idx)
....[     407]: {
....[     408]: }
....[     410]: static inline __attribute__((no_instrument_function))
....[     411]: unsigned long mem_cgroup_soft_limit_reclaim(struct zone *zone, int order,
....[     412]: gfp_t gfp_mask,
....[     413]: unsigned long *total_scanned)
....[     414]: {
....[     415]: return 0;
....[     416]: }
....[     418]: static inline __attribute__((no_instrument_function)) void mem_cgroup_split_huge_fixup(struct page *head)
....[     419]: {
....[     420]: }
....[     422]: static inline __attribute__((no_instrument_function))
....[     423]: void mem_cgroup_count_vm_event(struct mm_struct *mm, enum vm_event_item idx)
....[     424]: {
....[     425]: }
....[     426]: static inline __attribute__((no_instrument_function)) void mem_cgroup_replace_page_cache(struct page *oldpage\
....                ,
....[     427]: struct page *newpage)
....[     428]: {
....[     429]: }
....[     433]: static inline __attribute__((no_instrument_function)) bool
....[     434]: mem_cgroup_bad_page_check(struct page *page)
....[     435]: {
....[     436]: return false;
....[     437]: }
....[     439]: static inline __attribute__((no_instrument_function)) void
....[     440]: mem_cgroup_print_bad_page(struct page *page)
....[     441]: {
....[     442]: }
....[     445]: enum {
....[     446]: UNDER_LIMIT,
....[     447]: SOFT_LIMIT,
....[     448]: OVER_LIMIT,
....[     449]: };
....[     451]: struct sock;
....[     456]: static inline __attribute__((no_instrument_function)) void sock_update_memcg(struct sock *sk)
....[     457]: {
....[     458]: }
....[     459]: static inline __attribute__((no_instrument_function)) void sock_release_memcg(struct sock *sk)
....[     460]: {
....[     461]: }
....[     618]: static inline __attribute__((no_instrument_function)) bool memcg_kmem_enabled(void)
....[     619]: {
....[     620]: return false;
....[     621]: }
....[     623]: static inline __attribute__((no_instrument_function)) bool
....[     624]: memcg_kmem_newpage_charge(gfp_t gfp, struct mem_cgroup **memcg, int order)
....[     625]: {
....[     626]: return true;
....[     627]: }
....[     629]: static inline __attribute__((no_instrument_function)) void memcg_kmem_uncharge_pages(struct page *page, int \
....                order)
....[     630]: {
....[     631]: }
....[     633]: static inline __attribute__((no_instrument_function)) void
....[     634]: memcg_kmem_commit_charge(struct page *page, struct mem_cgroup *memcg, int order)
....[     635]: {
....[     636]: }
....[     638]: static inline __attribute__((no_instrument_function)) int memcg_cache_id(struct mem_cgroup *memcg)
....[     639]: {
....[     640]: return -1;
....[     641]: }
....[     643]: static inline __attribute__((no_instrument_function)) int
....[     644]: memcg_register_cache(struct mem_cgroup *memcg, struct kmem_cache *s,
....[     645]: struct kmem_cache *root_cache)
....[     646]: {
....[     647]: return 0;
....[     648]: }
....[     650]: static inline __attribute__((no_instrument_function)) void memcg_release_cache(struct kmem_cache *cachep)
....[     651]: {
....[     652]: }
....[     654]: static inline __attribute__((no_instrument_function)) void memcg_cache_list_add(struct mem_cgroup *memcg,
....[     655]: struct kmem_cache *s)
....[     656]: {
....[     657]: }
....[     659]: static inline __attribute__((no_instrument_function)) struct kmem_cache *
....[     660]: memcg_kmem_get_cache(struct kmem_cache *cachep, gfp_t gfp)
....[     661]: {
....[     662]: return cachep;
....[     663]: }
....[     665]: static inline __attribute__((no_instrument_function)) void kmem_cache_destroy_memcg_children(struct kmem_cache \
....                *s)
....[     666]: {
....[     667]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/memcontrol.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swap.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/page-flags.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/page-flags.h
....[      74]: enum pageflags {
....[      75]: PG_locked,
....[      76]: PG_error,
....[      77]: PG_referenced,
....[      78]: PG_uptodate,
....[      79]: PG_dirty,
....[      80]: PG_lru,
....[      81]: PG_active,
....[      82]: PG_slab,
....[      83]: PG_owner_priv_1,
....[      84]: PG_arch_1,
....[      85]: PG_reserved,
....[      86]: PG_private,
....[      87]: PG_private_2,
....[      88]: PG_writeback,
....[      90]: PG_head,
....[      91]: PG_tail,
....[      95]: PG_swapcache,
....[      96]: PG_mappedtodisk,
....[      97]: PG_reclaim,
....[      98]: PG_swapbacked,
....[      99]: PG_unevictable,
....[     101]: PG_mlocked,
....[     104]: PG_uncached,
....[     107]: PG_hwpoison,
....[     112]: __NR_PAGEFLAGS,
....[     115]: PG_checked = PG_owner_priv_1,
....[     121]: PG_fscache = PG_private_2,
....[     124]: PG_pinned = PG_owner_priv_1,
....[     125]: PG_savepinned = PG_dirty,
....[     128]: PG_slob_free = PG_private,
....[     129]: };
....[     196]: struct page;
....[     198]: static inline __attribute__((no_instrument_function)) int PageLocked(const struct page *page) { return (__builtin_constant_p\
....                ((PG_locked)) ? constant_test_bit((PG_locked), (&page->flags)) : variable_test_bit((PG_locked), (&page->flags\
....                ))); }
....[     199]: static inline __attribute__((no_instrument_function)) int PageError(const struct page *page) { return (__builtin_constant_p\
....                ((PG_error)) ? constant_test_bit((PG_error), (&page->flags)) : variable_test_bit((PG_error), (&page->flags\
....                ))); } static inline __attribute__((no_instrument_function)) void SetPageError(struct page *page) { set_bit(PG_error\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageError(struct page *page\
....                ) { clear_bit(PG_error, &page->flags); } static inline __attribute__((no_instrument_function)) int TestClearPageError\
....                (struct page *page) { return test_and_clear_bit(PG_error, &page->flags); }
....[     200]: static inline __attribute__((no_instrument_function)) int PageReferenced(const struct page *page) { return (__builtin_constant_p\
....                ((PG_referenced)) ? constant_test_bit((PG_referenced), (&page->flags)) : variable_test_bit((PG_referenced\
....                ), (&page->flags))); } static inline __attribute__((no_instrument_function)) void SetPageReferenced(struct page \
....                *page) { set_bit(PG_referenced, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageReferenced\
....                (struct page *page) { clear_bit(PG_referenced, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) int TestClearPageReferenced(struct page *page) { return test_and_clear_bit(PG_referenced, &page->flags); }
....[     201]: static inline __attribute__((no_instrument_function)) int PageDirty(const struct page *page) { return (__builtin_constant_p\
....                ((PG_dirty)) ? constant_test_bit((PG_dirty), (&page->flags)) : variable_test_bit((PG_dirty), (&page->flags\
....                ))); } static inline __attribute__((no_instrument_function)) void SetPageDirty(struct page *page) { set_bit(PG_dirty\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageDirty(struct page *page\
....                ) { clear_bit(PG_dirty, &page->flags); } static inline __attribute__((no_instrument_function)) int TestSetPageDirty\
....                (struct page *page) { return test_and_set_bit(PG_dirty, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) int TestClearPageDirty(struct page *page) { return test_and_clear_bit(PG_dirty, &page->flags); } static inline \
....                __attribute__((no_instrument_function)) void __ClearPageDirty(struct page *page) { __clear_bit(PG_dirty, &page\
....                ->flags); }
....[     202]: static inline __attribute__((no_instrument_function)) int PageLRU(const struct page *page) { return (__builtin_constant_p\
....                ((PG_lru)) ? constant_test_bit((PG_lru), (&page->flags)) : variable_test_bit((PG_lru), (&page->flags))); } static \
....                inline __attribute__((no_instrument_function)) void SetPageLRU(struct page *page) { set_bit(PG_lru, &page->flags\
....                ); } static inline __attribute__((no_instrument_function)) void ClearPageLRU(struct page *page) { clear_bit(PG_lru\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void __ClearPageLRU(struct page *page\
....                ) { __clear_bit(PG_lru, &page->flags); }
....[     203]: static inline __attribute__((no_instrument_function)) int PageActive(const struct page *page) { return (__builtin_constant_p\
....                ((PG_active)) ? constant_test_bit((PG_active), (&page->flags)) : variable_test_bit((PG_active), (&page->flags\
....                ))); } static inline __attribute__((no_instrument_function)) void SetPageActive(struct page *page) { set_bit(PG_active\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageActive(struct page *page\
....                ) { clear_bit(PG_active, &page->flags); } static inline __attribute__((no_instrument_function)) void __ClearPageActive\
....                (struct page *page) { __clear_bit(PG_active, &page->flags); }
....[     204]: static inline __attribute__((no_instrument_function)) int TestClearPageActive(struct page *page) { return test_and_clear_bit\
....                (PG_active, &page->flags); }
....[     205]: static inline __attribute__((no_instrument_function)) int PageSlab(const struct page *page) { return (__builtin_constant_p\
....                ((PG_slab)) ? constant_test_bit((PG_slab), (&page->flags)) : variable_test_bit((PG_slab), (&page->flags)))\
....                ; } static inline __attribute__((no_instrument_function)) void __SetPageSlab(struct page *page) { __set_bit(PG_slab\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void __ClearPageSlab(struct page *page\
....                ) { __clear_bit(PG_slab, &page->flags); }
....[     206]: static inline __attribute__((no_instrument_function)) int PageChecked(const struct page *page) { return (__builtin_constant_p\
....                ((PG_checked)) ? constant_test_bit((PG_checked), (&page->flags)) : variable_test_bit((PG_checked), (&page->\
....                flags))); } static inline __attribute__((no_instrument_function)) void SetPageChecked(struct page *page) { set_bit\
....                (PG_checked, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageChecked(struct \
....                page *page) { clear_bit(PG_checked, &page->flags); }
....[     207]: static inline __attribute__((no_instrument_function)) int PagePinned(const struct page *page) { return (__builtin_constant_p\
....                ((PG_pinned)) ? constant_test_bit((PG_pinned), (&page->flags)) : variable_test_bit((PG_pinned), (&page->flags\
....                ))); } static inline __attribute__((no_instrument_function)) void SetPagePinned(struct page *page) { set_bit(PG_pinned\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPagePinned(struct page *page\
....                ) { clear_bit(PG_pinned, &page->flags); } static inline __attribute__((no_instrument_function)) int TestSetPagePinned\
....                (struct page *page) { return test_and_set_bit(PG_pinned, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) int TestClearPagePinned(struct page *page) { return test_and_clear_bit(PG_pinned, &page->flags); }
....[     208]: static inline __attribute__((no_instrument_function)) int PageSavePinned(const struct page *page) { return (__builtin_constant_p\
....                ((PG_savepinned)) ? constant_test_bit((PG_savepinned), (&page->flags)) : variable_test_bit((PG_savepinned\
....                ), (&page->flags))); } static inline __attribute__((no_instrument_function)) void SetPageSavePinned(struct page \
....                *page) { set_bit(PG_savepinned, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageSavePinned\
....                (struct page *page) { clear_bit(PG_savepinned, &page->flags); };
....[     209]: static inline __attribute__((no_instrument_function)) int PageReserved(const struct page *page) { return (__builtin_constant_p\
....                ((PG_reserved)) ? constant_test_bit((PG_reserved), (&page->flags)) : variable_test_bit((PG_reserved), (&page\
....                ->flags))); } static inline __attribute__((no_instrument_function)) void SetPageReserved(struct page *page) { \
....                set_bit(PG_reserved, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageReserved\
....                (struct page *page) { clear_bit(PG_reserved, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) void __ClearPageReserved(struct page *page) { __clear_bit(PG_reserved, &page->flags); }
....[     210]: static inline __attribute__((no_instrument_function)) int PageSwapBacked(const struct page *page) { return (__builtin_constant_p\
....                ((PG_swapbacked)) ? constant_test_bit((PG_swapbacked), (&page->flags)) : variable_test_bit((PG_swapbacked\
....                ), (&page->flags))); } static inline __attribute__((no_instrument_function)) void SetPageSwapBacked(struct page \
....                *page) { set_bit(PG_swapbacked, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageSwapBacked\
....                (struct page *page) { clear_bit(PG_swapbacked, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) void __ClearPageSwapBacked(struct page *page) { __clear_bit(PG_swapbacked, &page->flags); }
....[     212]: static inline __attribute__((no_instrument_function)) int PageSlobFree(const struct page *page) { return (__builtin_constant_p\
....                ((PG_slob_free)) ? constant_test_bit((PG_slob_free), (&page->flags)) : variable_test_bit((PG_slob_free), (\
....                &page->flags))); } static inline __attribute__((no_instrument_function)) void __SetPageSlobFree(struct page \
....                *page) { __set_bit(PG_slob_free, &page->flags); } static inline __attribute__((no_instrument_function)) void \
....                __ClearPageSlobFree(struct page *page) { __clear_bit(PG_slob_free, &page->flags); }
....[     219]: static inline __attribute__((no_instrument_function)) int PagePrivate(const struct page *page) { return (__builtin_constant_p\
....                ((PG_private)) ? constant_test_bit((PG_private), (&page->flags)) : variable_test_bit((PG_private), (&page->\
....                flags))); } static inline __attribute__((no_instrument_function)) void SetPagePrivate(struct page *page) { set_bit\
....                (PG_private, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPagePrivate(struct \
....                page *page) { clear_bit(PG_private, &page->flags); } static inline __attribute__((no_instrument_function)) void \
....                __SetPagePrivate(struct page *page) { __set_bit(PG_private, &page->flags); }
....[     220]: static inline __attribute__((no_instrument_function)) void __ClearPagePrivate(struct page *page) { __clear_bit\
....                (PG_private, &page->flags); }
....[     221]: static inline __attribute__((no_instrument_function)) int PagePrivate2(const struct page *page) { return (__builtin_constant_p\
....                ((PG_private_2)) ? constant_test_bit((PG_private_2), (&page->flags)) : variable_test_bit((PG_private_2), (\
....                &page->flags))); } static inline __attribute__((no_instrument_function)) void SetPagePrivate2(struct page *page\
....                ) { set_bit(PG_private_2, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPagePrivate2\
....                (struct page *page) { clear_bit(PG_private_2, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) int TestSetPagePrivate2(struct page *page) { return test_and_set_bit(PG_private_2, &page->flags); } static inline \
....                __attribute__((no_instrument_function)) int TestClearPagePrivate2(struct page *page) { return test_and_clear_bit\
....                (PG_private_2, &page->flags); }
....[     222]: static inline __attribute__((no_instrument_function)) int PageOwnerPriv1(const struct page *page) { return (__builtin_constant_p\
....                ((PG_owner_priv_1)) ? constant_test_bit((PG_owner_priv_1), (&page->flags)) : variable_test_bit((PG_owner_priv_1\
....                ), (&page->flags))); } static inline __attribute__((no_instrument_function)) void SetPageOwnerPriv1(struct page \
....                *page) { set_bit(PG_owner_priv_1, &page->flags); } static inline __attribute__((no_instrument_function)) void \
....                ClearPageOwnerPriv1(struct page *page) { clear_bit(PG_owner_priv_1, &page->flags); } static inline __attribute__\
....                ((no_instrument_function)) int TestClearPageOwnerPriv1(struct page *page) { return test_and_clear_bit(PG_owner_priv_1\
....                , &page->flags); }
....[     228]: static inline __attribute__((no_instrument_function)) int PageWriteback(const struct page *page) { return (__builtin_constant_p\
....                ((PG_writeback)) ? constant_test_bit((PG_writeback), (&page->flags)) : variable_test_bit((PG_writeback), (\
....                &page->flags))); } static inline __attribute__((no_instrument_function)) int TestSetPageWriteback(struct page \
....                *page) { return test_and_set_bit(PG_writeback, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) int TestClearPageWriteback(struct page *page) { return test_and_clear_bit(PG_writeback, &page->flags); }
....[     229]: static inline __attribute__((no_instrument_function)) int PageMappedToDisk(const struct page *page) { return (\
....                __builtin_constant_p((PG_mappedtodisk)) ? constant_test_bit((PG_mappedtodisk), (&page->flags)) : variable_test_bit\
....                ((PG_mappedtodisk), (&page->flags))); } static inline __attribute__((no_instrument_function)) void SetPageMappedToDisk\
....                (struct page *page) { set_bit(PG_mappedtodisk, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) void ClearPageMappedToDisk(struct page *page) { clear_bit(PG_mappedtodisk, &page->flags); }
....[     232]: static inline __attribute__((no_instrument_function)) int PageReclaim(const struct page *page) { return (__builtin_constant_p\
....                ((PG_reclaim)) ? constant_test_bit((PG_reclaim), (&page->flags)) : variable_test_bit((PG_reclaim), (&page->\
....                flags))); } static inline __attribute__((no_instrument_function)) void SetPageReclaim(struct page *page) { set_bit\
....                (PG_reclaim, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageReclaim(struct \
....                page *page) { clear_bit(PG_reclaim, &page->flags); } static inline __attribute__((no_instrument_function)) int \
....                TestClearPageReclaim(struct page *page) { return test_and_clear_bit(PG_reclaim, &page->flags); }
....[     233]: static inline __attribute__((no_instrument_function)) int PageReadahead(const struct page *page) { return (__builtin_constant_p\
....                ((PG_reclaim)) ? constant_test_bit((PG_reclaim), (&page->flags)) : variable_test_bit((PG_reclaim), (&page->\
....                flags))); } static inline __attribute__((no_instrument_function)) void SetPageReadahead(struct page *page) { set_bit\
....                (PG_reclaim, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageReadahead\
....                (struct page *page) { clear_bit(PG_reclaim, &page->flags); }
....[     242]: static inline __attribute__((no_instrument_function)) int PageHighMem(const struct page *page) { return 0; }
....[     246]: static inline __attribute__((no_instrument_function)) int PageSwapCache(const struct page *page) { return (__builtin_constant_p\
....                ((PG_swapcache)) ? constant_test_bit((PG_swapcache), (&page->flags)) : variable_test_bit((PG_swapcache), (\
....                &page->flags))); } static inline __attribute__((no_instrument_function)) void SetPageSwapCache(struct page *\
....                page) { set_bit(PG_swapcache, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageSwapCache\
....                (struct page *page) { clear_bit(PG_swapcache, &page->flags); }
....[     252]: static inline __attribute__((no_instrument_function)) int PageUnevictable(const struct page *page) { return (__builtin_constant_p\
....                ((PG_unevictable)) ? constant_test_bit((PG_unevictable), (&page->flags)) : variable_test_bit((PG_unevictable\
....                ), (&page->flags))); } static inline __attribute__((no_instrument_function)) void SetPageUnevictable(struct \
....                page *page) { set_bit(PG_unevictable, &page->flags); } static inline __attribute__((no_instrument_function)) \
....                void ClearPageUnevictable(struct page *page) { clear_bit(PG_unevictable, &page->flags); } static inline __attribute__\
....                ((no_instrument_function)) void __ClearPageUnevictable(struct page *page) { __clear_bit(PG_unevictable, &page\
....                ->flags); }
....[     253]: static inline __attribute__((no_instrument_function)) int TestClearPageUnevictable(struct page *page) { return \
....                test_and_clear_bit(PG_unevictable, &page->flags); }
....[     256]: static inline __attribute__((no_instrument_function)) int PageMlocked(const struct page *page) { return (__builtin_constant_p\
....                ((PG_mlocked)) ? constant_test_bit((PG_mlocked), (&page->flags)) : variable_test_bit((PG_mlocked), (&page->\
....                flags))); } static inline __attribute__((no_instrument_function)) void SetPageMlocked(struct page *page) { set_bit\
....                (PG_mlocked, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageMlocked(struct \
....                page *page) { clear_bit(PG_mlocked, &page->flags); } static inline __attribute__((no_instrument_function)) void \
....                __ClearPageMlocked(struct page *page) { __clear_bit(PG_mlocked, &page->flags); }
....[     257]: static inline __attribute__((no_instrument_function)) int TestSetPageMlocked(struct page *page) { return test_and_set_bit\
....                (PG_mlocked, &page->flags); } static inline __attribute__((no_instrument_function)) int TestClearPageMlocked\
....                (struct page *page) { return test_and_clear_bit(PG_mlocked, &page->flags); } static inline __attribute__((no_instrument_function\
....                )) int __TestClearPageMlocked(struct page *page) { return __test_and_clear_bit(PG_mlocked, &page->flags); }
....[     264]: static inline __attribute__((no_instrument_function)) int PageUncached(const struct page *page) { return (__builtin_constant_p\
....                ((PG_uncached)) ? constant_test_bit((PG_uncached), (&page->flags)) : variable_test_bit((PG_uncached), (&page\
....                ->flags))); } static inline __attribute__((no_instrument_function)) void SetPageUncached(struct page *page) { \
....                set_bit(PG_uncached, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageUncached\
....                (struct page *page) { clear_bit(PG_uncached, &page->flags); }
....[     270]: static inline __attribute__((no_instrument_function)) int PageHWPoison(const struct page *page) { return (__builtin_constant_p\
....                ((PG_hwpoison)) ? constant_test_bit((PG_hwpoison), (&page->flags)) : variable_test_bit((PG_hwpoison), (&page\
....                ->flags))); } static inline __attribute__((no_instrument_function)) void SetPageHWPoison(struct page *page) { \
....                set_bit(PG_hwpoison, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageHWPoison\
....                (struct page *page) { clear_bit(PG_hwpoison, &page->flags); }
....[     271]: static inline __attribute__((no_instrument_function)) int TestSetPageHWPoison(struct page *page) { return test_and_set_bit\
....                (PG_hwpoison, &page->flags); } static inline __attribute__((no_instrument_function)) int TestClearPageHWPoison\
....                (struct page *page) { return test_and_clear_bit(PG_hwpoison, &page->flags); }
....[     278]: u64 stable_page_flags(struct page *page);
....[     280]: static inline __attribute__((no_instrument_function)) int PageUptodate(struct page *page)
....[     281]: {
....[     282]: int ret = (__builtin_constant_p((PG_uptodate)) ? constant_test_bit((PG_uptodate), (&(page)->flags)) : variable_test_bit\
....                ((PG_uptodate), (&(page)->flags)));
....[     292]: if (ret)
....[     293]: __asm__ __volatile__("": : :"memory");
....[     295]: return ret;
....[     296]: }
....[     298]: static inline __attribute__((no_instrument_function)) void __SetPageUptodate(struct page *page)
....[     299]: {
....[     300]: __asm__ __volatile__("": : :"memory");
....[     301]: __set_bit(PG_uptodate, &(page)->flags);
....[     302]: }
....[     304]: static inline __attribute__((no_instrument_function)) void SetPageUptodate(struct page *page)
....[     305]: {
....[     311]: __asm__ __volatile__("": : :"memory");
....[     312]: set_bit(PG_uptodate, &(page)->flags);
....[     313]: }
....[     315]: static inline __attribute__((no_instrument_function)) void ClearPageUptodate(struct page *page) { clear_bit(\
....                PG_uptodate, &page->flags); }
....[     317]: extern void cancel_dirty_page(struct page *page, unsigned int account_size);
....[     319]: int test_clear_page_writeback(struct page *page);
....[     320]: int test_set_page_writeback(struct page *page);
....[     322]: static inline __attribute__((no_instrument_function)) void set_page_writeback(struct page *page)
....[     323]: {
....[     324]: test_set_page_writeback(page);
....[     325]: }
....[     336]: static inline __attribute__((no_instrument_function)) int PageHead(const struct page *page) { return (__builtin_constant_p\
....                ((PG_head)) ? constant_test_bit((PG_head), (&page->flags)) : variable_test_bit((PG_head), (&page->flags)))\
....                ; } static inline __attribute__((no_instrument_function)) void __SetPageHead(struct page *page) { __set_bit(PG_head\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void __ClearPageHead(struct page *page\
....                ) { __clear_bit(PG_head, &page->flags); } static inline __attribute__((no_instrument_function)) void ClearPageHead\
....                (struct page *page) { clear_bit(PG_head, &page->flags); }
....[     337]: static inline __attribute__((no_instrument_function)) int PageTail(const struct page *page) { return (__builtin_constant_p\
....                ((PG_tail)) ? constant_test_bit((PG_tail), (&page->flags)) : variable_test_bit((PG_tail), (&page->flags)))\
....                ; } static inline __attribute__((no_instrument_function)) void __SetPageTail(struct page *page) { __set_bit(PG_tail\
....                , &page->flags); } static inline __attribute__((no_instrument_function)) void __ClearPageTail(struct page *page\
....                ) { __clear_bit(PG_tail, &page->flags); }
....[     339]: static inline __attribute__((no_instrument_function)) int PageCompound(struct page *page)
....[     340]: {
....[     341]: return page->flags & ((1L << PG_head) | (1L << PG_tail));
....[     343]: }
....[     441]: static inline __attribute__((no_instrument_function)) int PageTransHuge(struct page *page)
....[     442]: {
....[     443]: return 0;
....[     444]: }
....[     446]: static inline __attribute__((no_instrument_function)) int PageTransCompound(struct page *page)
....[     447]: {
....[     448]: return 0;
....[     449]: }
....[     451]: static inline __attribute__((no_instrument_function)) int PageTransTail(struct page *page)
....[     452]: {
....[     453]: return 0;
....[     454]: }
....[     461]: static inline __attribute__((no_instrument_function)) int PageSlabPfmemalloc(struct page *page)
....[     462]: {
....[     463]: ((void)(sizeof(( long)(!PageSlab(page)))));
....[     464]: return PageActive(page);
....[     465]: }
....[     467]: static inline __attribute__((no_instrument_function)) void SetPageSlabPfmemalloc(struct page *page)
....[     468]: {
....[     469]: ((void)(sizeof(( long)(!PageSlab(page)))));
....[     470]: SetPageActive(page);
....[     471]: }
....[     473]: static inline __attribute__((no_instrument_function)) void __ClearPageSlabPfmemalloc(struct page *page)
....[     474]: {
....[     475]: ((void)(sizeof(( long)(!PageSlab(page)))));
....[     476]: __ClearPageActive(page);
....[     477]: }
....[     479]: static inline __attribute__((no_instrument_function)) void ClearPageSlabPfmemalloc(struct page *page)
....[     480]: {
....[     481]: ((void)(sizeof(( long)(!PageSlab(page)))));
....[     482]: ClearPageActive(page);
....[     483]: }
....[     525]: static inline __attribute__((no_instrument_function)) int page_has_private(struct page *page)
....[     526]: {
....[     527]: return !!(page->flags & (1 << PG_private | 1 << PG_private_2));
....[     528]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/page-flags.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swap.h
...[      16]: struct notifier_block;
...[      18]: struct bio;
...[      31]: static inline __attribute__((no_instrument_function)) int current_is_kswapd(void)
...[      32]: {
...[      33]: return get_current()->flags & 0x00040000;
...[      34]: }
...[      88]: union swap_header {
...[      89]: struct {
...[      90]: char reserved[((1UL) << 12) - 10];
...[      91]: char magic[10];
...[      92]: } magic;
...[      93]: struct {
...[      94]: char bootbits[1024];
...[      95]: __u32 version;
...[      96]: __u32 last_page;
...[      97]: __u32 nr_badpages;
...[      98]: unsigned char sws_uuid[16];
...[      99]: unsigned char sws_volume[16];
...[     100]: __u32 padding[117];
...[     101]: __u32 badpages[1];
...[     102]: } info;
...[     103]: };
...[     109]: typedef struct {
...[     110]: unsigned long val;
...[     111]: } swp_entry_t;
...[     117]: struct reclaim_state {
...[     118]: unsigned long reclaimed_slab;
...[     119]: };
...[     123]: struct address_space;
...[     124]: struct sysinfo;
...[     125]: struct writeback_control;
...[     126]: struct zone;
...[     136]: struct swap_extent {
...[     137]: struct list_head list;
...[     138]: unsigned long start_page;
...[     139]: unsigned long nr_pages;
...[     140]: sector_t start_block;
...[     141]: };
...[     150]: enum {
...[     151]: SWP_USED = (1 << 0),
...[     152]: SWP_WRITEOK = (1 << 1),
...[     153]: SWP_DISCARDABLE = (1 << 2),
...[     154]: SWP_DISCARDING = (1 << 3),
...[     155]: SWP_SOLIDSTATE = (1 << 4),
...[     156]: SWP_CONTINUED = (1 << 5),
...[     157]: SWP_BLKDEV = (1 << 6),
...[     158]: SWP_FILE = (1 << 7),
...[     159]: SWP_AREA_DISCARD = (1 << 8),
...[     160]: SWP_PAGE_DISCARD = (1 << 9),
...[     162]: SWP_SCANNING = (1 << 10),
...[     163]: };
...[     194]: struct swap_cluster_info {
...[     195]: unsigned int data:24;
...[     196]: unsigned int flags:8;
...[     197]: };
...[     206]: struct percpu_cluster {
...[     207]: struct swap_cluster_info index;
...[     208]: unsigned int next;
...[     209]: };
...[     214]: struct swap_info_struct {
...[     215]: unsigned long flags;
...[     216]: signed short prio;
...[     217]: signed char type;
...[     218]: signed char next;
...[     219]: unsigned int max;
...[     220]: unsigned char *swap_map;
...[     221]: struct swap_cluster_info *cluster_info;
...[     222]: struct swap_cluster_info free_cluster_head;
...[     223]: struct swap_cluster_info free_cluster_tail;
...[     224]: unsigned int lowest_bit;
...[     225]: unsigned int highest_bit;
...[     226]: unsigned int pages;
...[     227]: unsigned int inuse_pages;
...[     228]: unsigned int cluster_next;
...[     229]: unsigned int cluster_nr;
...[     230]: struct percpu_cluster *percpu_cluster;
...[     231]: struct swap_extent *curr_swap_extent;
...[     232]: struct swap_extent first_swap_extent;
...[     233]: struct block_device *bdev;
...[     234]: struct file *swap_file;
...[     235]: unsigned int old_block_size;
...[     240]: spinlock_t lock;
...[     253]: struct work_struct discard_work;
...[     254]: struct swap_cluster_info discard_cluster_head;
...[     255]: struct swap_cluster_info discard_cluster_tail;
...[     256]: };
...[     258]: struct swap_list_t {
...[     259]: int head;
...[     260]: int next;
...[     261]: };
...[     264]: extern unsigned long totalram_pages;
...[     265]: extern unsigned long totalreserve_pages;
...[     266]: extern unsigned long dirty_balance_reserve;
...[     267]: extern unsigned long nr_free_buffer_pages(void);
...[     268]: extern unsigned long nr_free_pagecache_pages(void);
...[     275]: extern void __lru_cache_add(struct page *);
...[     276]: extern void lru_cache_add(struct page *);
...[     277]: extern void lru_add_page_tail(struct page *page, struct page *page_tail,
...[     278]: struct lruvec *lruvec, struct list_head *head);
...[     279]: extern void activate_page(struct page *);
...[     280]: extern void mark_page_accessed(struct page *);
...[     281]: extern void lru_add_drain(void);
...[     282]: extern void lru_add_drain_cpu(int cpu);
...[     283]: extern void lru_add_drain_all(void);
...[     284]: extern void rotate_reclaimable_page(struct page *page);
...[     285]: extern void deactivate_page(struct page *page);
...[     286]: extern void swap_setup(void);
...[     288]: extern void add_page_to_unevictable_list(struct page *page);
...[     294]: static inline __attribute__((no_instrument_function)) void lru_cache_add_anon(struct page *page)
...[     295]: {
...[     296]: ClearPageActive(page);
...[     297]: __lru_cache_add(page);
...[     298]: }
...[     300]: static inline __attribute__((no_instrument_function)) void lru_cache_add_file(struct page *page)
...[     301]: {
...[     302]: ClearPageActive(page);
...[     303]: __lru_cache_add(page);
...[     304]: }
...[     307]: extern unsigned long try_to_free_pages(struct zonelist *zonelist, int order,
...[     308]: gfp_t gfp_mask, nodemask_t *mask);
...[     309]: extern int __isolate_lru_page(struct page *page, isolate_mode_t mode);
...[     310]: extern unsigned long try_to_free_mem_cgroup_pages(struct mem_cgroup *mem,
...[     311]: gfp_t gfp_mask, bool noswap);
...[     312]: extern unsigned long mem_cgroup_shrink_node_zone(struct mem_cgroup *mem,
...[     313]: gfp_t gfp_mask, bool noswap,
...[     314]: struct zone *zone,
...[     315]: unsigned long *nr_scanned);
...[     316]: extern unsigned long shrink_all_memory(unsigned long nr_pages);
...[     317]: extern int vm_swappiness;
...[     318]: extern int remove_mapping(struct address_space *mapping, struct page *page);
...[     319]: extern unsigned long vm_total_pages;
...[     322]: extern int zone_reclaim_mode;
...[     323]: extern int sysctl_min_unmapped_ratio;
...[     324]: extern int sysctl_min_slab_ratio;
...[     325]: extern int zone_reclaim(struct zone *, gfp_t, unsigned int);
...[     334]: extern int page_evictable(struct page *page);
...[     335]: extern void check_move_unevictable_pages(struct page **, int nr_pages);
...[     337]: extern unsigned long scan_unevictable_pages;
...[     338]: extern int scan_unevictable_handler(struct ctl_table *, int,
...[     339]: void *, size_t *, loff_t *);
...[     341]: extern int scan_unevictable_register_node(struct node *node);
...[     342]: extern void scan_unevictable_unregister_node(struct node *node);
...[     353]: extern int kswapd_run(int nid);
...[     354]: extern void kswapd_stop(int nid);
...[     358]: static inline __attribute__((no_instrument_function)) int mem_cgroup_swappiness(struct mem_cgroup *mem)
...[     359]: {
...[     360]: return vm_swappiness;
...[     361]: }
...[     366]: static inline __attribute__((no_instrument_function)) void mem_cgroup_uncharge_swap(swp_entry_t ent)
...[     367]: {
...[     368]: }
...[     372]: extern int swap_readpage(struct page *);
...[     373]: extern int swap_writepage(struct page *page, struct writeback_control *wbc);
...[     374]: extern void end_swap_bio_write(struct bio *bio, int err);
...[     375]: extern int __swap_writepage(struct page *page, struct writeback_control *wbc,
...[     376]: void (*end_write_func)(struct bio *, int));
...[     377]: extern int swap_set_page_dirty(struct page *page);
...[     378]: extern void end_swap_bio_read(struct bio *bio, int err);
...[     380]: int add_swap_extent(struct swap_info_struct *sis, unsigned long start_page,
...[     381]: unsigned long nr_pages, sector_t start_block);
...[     382]: int generic_swapfile_activate(struct swap_info_struct *, struct file *,
...[     383]: sector_t *);
...[     386]: extern struct address_space swapper_spaces[];
...[     388]: extern unsigned long total_swapcache_pages(void);
...[     389]: extern void show_swap_cache_info(void);
...[     390]: extern int add_to_swap(struct page *, struct list_head *list);
...[     391]: extern int add_to_swap_cache(struct page *, swp_entry_t, gfp_t);
...[     392]: extern int __add_to_swap_cache(struct page *page, swp_entry_t entry);
...[     393]: extern void __delete_from_swap_cache(struct page *);
...[     394]: extern void delete_from_swap_cache(struct page *);
...[     395]: extern void free_page_and_swap_cache(struct page *);
...[     396]: extern void free_pages_and_swap_cache(struct page **, int);
...[     397]: extern struct page *lookup_swap_cache(swp_entry_t);
...[     398]: extern struct page *read_swap_cache_async(swp_entry_t, gfp_t,
...[     399]: struct vm_area_struct *vma, unsigned long addr);
...[     400]: extern struct page *swapin_readahead(swp_entry_t, gfp_t,
...[     401]: struct vm_area_struct *vma, unsigned long addr);
...[     404]: extern atomic_long_t nr_swap_pages;
...[     405]: extern long total_swap_pages;
...[     408]: static inline __attribute__((no_instrument_function)) bool vm_swap_full(void)
...[     409]: {
...[     410]: return atomic_long_read(&nr_swap_pages) * 2 < total_swap_pages;
...[     411]: }
...[     413]: static inline __attribute__((no_instrument_function)) long get_nr_swap_pages(void)
...[     414]: {
...[     415]: return atomic_long_read(&nr_swap_pages);
...[     416]: }
...[     418]: extern void si_swapinfo(struct sysinfo *);
...[     419]: extern swp_entry_t get_swap_page(void);
...[     420]: extern swp_entry_t get_swap_page_of_type(int);
...[     421]: extern int add_swap_count_continuation(swp_entry_t, gfp_t);
...[     422]: extern void swap_shmem_alloc(swp_entry_t);
...[     423]: extern int swap_duplicate(swp_entry_t);
...[     424]: extern int swapcache_prepare(swp_entry_t);
...[     425]: extern void swap_free(swp_entry_t);
...[     426]: extern void swapcache_free(swp_entry_t, struct page *page);
...[     427]: extern int free_swap_and_cache(swp_entry_t);
...[     428]: extern int swap_type_of(dev_t, sector_t, struct block_device **);
...[     429]: extern unsigned int count_swap_pages(int, int);
...[     430]: extern sector_t map_swap_page(struct page *, struct block_device **);
...[     431]: extern sector_t swapdev_block(int, unsigned long);
...[     432]: extern int page_swapcount(struct page *);
...[     433]: extern struct swap_info_struct *page_swap_info(struct page *);
...[     434]: extern int reuse_swap_page(struct page *);
...[     435]: extern int try_to_free_swap(struct page *);
...[     436]: struct backing_dev_info;
...[     442]: static inline __attribute__((no_instrument_function)) void
...[     443]: mem_cgroup_uncharge_swapcache(struct page *page, swp_entry_t ent, bool swapout)
...[     444]: {
...[     445]: }
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/swap.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/suspend.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/debug_locks.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/debug_locks.h
....[       8]: struct task_struct;
....[      10]: extern int debug_locks;
....[      11]: extern int debug_locks_silent;
....[      14]: static inline __attribute__((no_instrument_function)) int __debug_locks_off(void)
....[      15]: {
....[      16]: return ({ __typeof__ (*((&debug_locks))) __ret = ((0)); switch (sizeof(*((&debug_locks)))) { case 1: asm volatile \
....                ("" "xchg" "b %b0, %1\n" : "+q" (__ret), "+m" (*((&debug_locks))) : : "memory", "cc"); break; case 2: asm volatile ("" \
....                "xchg" "w %w0, %1\n" : "+r" (__ret), "+m" (*((&debug_locks))) : : "memory", "cc"); break; case 4: asm volatile ("" "xchg" \
....                "l %0, %1\n" : "+r" (__ret), "+m" (*((&debug_locks))) : : "memory", "cc"); break; case 8: asm volatile ("" "xchg" "q %q0, %1\n" \
....                : "+r" (__ret), "+m" (*((&debug_locks))) : : "memory", "cc"); break; default: __xchg_wrong_size(); } __ret; });
....[      17]: }
....[      22]: extern int debug_locks_off(void);
....[      48]: struct task_struct;
....[      56]: static inline __attribute__((no_instrument_function)) void debug_show_all_locks(void)
....[      57]: {
....[      58]: }
....[      60]: static inline __attribute__((no_instrument_function)) void debug_show_held_locks(struct task_struct *task)
....[      61]: {
....[      62]: }
....[      64]: static inline __attribute__((no_instrument_function)) void
....[      65]: debug_check_no_locks_freed(const void *from, unsigned long len)
....[      66]: {
....[      67]: }
....[      69]: static inline __attribute__((no_instrument_function)) void
....[      70]: debug_check_no_locks_held(void)
....[      71]: {
....[      72]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/debug_locks.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...[      21]: struct mempolicy;
...[      22]: struct anon_vma;
...[      23]: struct anon_vma_chain;
...[      24]: struct file_ra_state;
...[      25]: struct user_struct;
...[      26]: struct writeback_control;
...[      36]: static inline __attribute__((no_instrument_function)) void set_max_mapnr(unsigned long limit) { }
...[      39]: extern unsigned long totalram_pages;
...[      40]: extern void * high_memory;
...[      41]: extern int page_cluster;
...[      44]: extern int sysctl_legacy_va_layout;
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable.h
....[      25]: extern unsigned long empty_zero_page[((1UL) << 12) / sizeof(unsigned long)]
....[      26]: ;
....[      29]: extern spinlock_t pgd_lock;
....[      30]: extern struct list_head pgd_list;
....[      32]: extern struct mm_struct *pgd_page_get_mm(struct page *page);
....[      91]: static inline __attribute__((no_instrument_function)) int pte_dirty(pte_t pte)
....[      92]: {
....[      93]: return pte_flags(pte) & (((pteval_t)(1)) << 6);
....[      94]: }
....[      96]: static inline __attribute__((no_instrument_function)) int pte_young(pte_t pte)
....[      97]: {
....[      98]: return pte_flags(pte) & (((pteval_t)(1)) << 5);
....[      99]: }
....[     101]: static inline __attribute__((no_instrument_function)) int pmd_young(pmd_t pmd)
....[     102]: {
....[     103]: return pmd_flags(pmd) & (((pteval_t)(1)) << 5);
....[     104]: }
....[     106]: static inline __attribute__((no_instrument_function)) int pte_write(pte_t pte)
....[     107]: {
....[     108]: return pte_flags(pte) & (((pteval_t)(1)) << 1);
....[     109]: }
....[     111]: static inline __attribute__((no_instrument_function)) int pte_file(pte_t pte)
....[     112]: {
....[     113]: return pte_flags(pte) & (((pteval_t)(1)) << 6);
....[     114]: }
....[     116]: static inline __attribute__((no_instrument_function)) int pte_huge(pte_t pte)
....[     117]: {
....[     118]: return pte_flags(pte) & (((pteval_t)(1)) << 7);
....[     119]: }
....[     121]: static inline __attribute__((no_instrument_function)) int pte_global(pte_t pte)
....[     122]: {
....[     123]: return pte_flags(pte) & (((pteval_t)(1)) << 8);
....[     124]: }
....[     126]: static inline __attribute__((no_instrument_function)) int pte_exec(pte_t pte)
....[     127]: {
....[     128]: return !(pte_flags(pte) & (((pteval_t)(1)) << 63));
....[     129]: }
....[     131]: static inline __attribute__((no_instrument_function)) int pte_special(pte_t pte)
....[     132]: {
....[     133]: return pte_flags(pte) & (((pteval_t)(1)) << 9);
....[     134]: }
....[     136]: static inline __attribute__((no_instrument_function)) unsigned long pte_pfn(pte_t pte)
....[     137]: {
....[     138]: return (native_pte_val(pte) & ((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)\
....                )))) >> 12;
....[     139]: }
....[     141]: static inline __attribute__((no_instrument_function)) unsigned long pmd_pfn(pmd_t pmd)
....[     142]: {
....[     143]: return (native_pmd_val(pmd) & ((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)\
....                )))) >> 12;
....[     144]: }
....[     146]: static inline __attribute__((no_instrument_function)) unsigned long pud_pfn(pud_t pud)
....[     147]: {
....[     148]: return (native_pud_val(pud) & ((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)\
....                )))) >> 12;
....[     149]: }
....[     153]: static inline __attribute__((no_instrument_function)) int pmd_large(pmd_t pte)
....[     154]: {
....[     155]: return pmd_flags(pte) & (((pteval_t)(1)) << 7);
....[     156]: }
....[     175]: static inline __attribute__((no_instrument_function)) pte_t pte_set_flags(pte_t pte, pteval_t set)
....[     176]: {
....[     177]: pteval_t v = native_pte_val(pte);
....[     179]: return native_make_pte(v | set);
....[     180]: }
....[     182]: static inline __attribute__((no_instrument_function)) pte_t pte_clear_flags(pte_t pte, pteval_t clear)
....[     183]: {
....[     184]: pteval_t v = native_pte_val(pte);
....[     186]: return native_make_pte(v & ~clear);
....[     187]: }
....[     189]: static inline __attribute__((no_instrument_function)) pte_t pte_mkclean(pte_t pte)
....[     190]: {
....[     191]: return pte_clear_flags(pte, (((pteval_t)(1)) << 6));
....[     192]: }
....[     194]: static inline __attribute__((no_instrument_function)) pte_t pte_mkold(pte_t pte)
....[     195]: {
....[     196]: return pte_clear_flags(pte, (((pteval_t)(1)) << 5));
....[     197]: }
....[     199]: static inline __attribute__((no_instrument_function)) pte_t pte_wrprotect(pte_t pte)
....[     200]: {
....[     201]: return pte_clear_flags(pte, (((pteval_t)(1)) << 1));
....[     202]: }
....[     204]: static inline __attribute__((no_instrument_function)) pte_t pte_mkexec(pte_t pte)
....[     205]: {
....[     206]: return pte_clear_flags(pte, (((pteval_t)(1)) << 63));
....[     207]: }
....[     209]: static inline __attribute__((no_instrument_function)) pte_t pte_mkdirty(pte_t pte)
....[     210]: {
....[     211]: return pte_set_flags(pte, (((pteval_t)(1)) << 6) | (((pteval_t)(0))));
....[     212]: }
....[     214]: static inline __attribute__((no_instrument_function)) pte_t pte_mkyoung(pte_t pte)
....[     215]: {
....[     216]: return pte_set_flags(pte, (((pteval_t)(1)) << 5));
....[     217]: }
....[     219]: static inline __attribute__((no_instrument_function)) pte_t pte_mkwrite(pte_t pte)
....[     220]: {
....[     221]: return pte_set_flags(pte, (((pteval_t)(1)) << 1));
....[     222]: }
....[     224]: static inline __attribute__((no_instrument_function)) pte_t pte_mkhuge(pte_t pte)
....[     225]: {
....[     226]: return pte_set_flags(pte, (((pteval_t)(1)) << 7));
....[     227]: }
....[     229]: static inline __attribute__((no_instrument_function)) pte_t pte_clrhuge(pte_t pte)
....[     230]: {
....[     231]: return pte_clear_flags(pte, (((pteval_t)(1)) << 7));
....[     232]: }
....[     234]: static inline __attribute__((no_instrument_function)) pte_t pte_mkglobal(pte_t pte)
....[     235]: {
....[     236]: return pte_set_flags(pte, (((pteval_t)(1)) << 8));
....[     237]: }
....[     239]: static inline __attribute__((no_instrument_function)) pte_t pte_clrglobal(pte_t pte)
....[     240]: {
....[     241]: return pte_clear_flags(pte, (((pteval_t)(1)) << 8));
....[     242]: }
....[     244]: static inline __attribute__((no_instrument_function)) pte_t pte_mkspecial(pte_t pte)
....[     245]: {
....[     246]: return pte_set_flags(pte, (((pteval_t)(1)) << 9));
....[     247]: }
....[     249]: static inline __attribute__((no_instrument_function)) pmd_t pmd_set_flags(pmd_t pmd, pmdval_t set)
....[     250]: {
....[     251]: pmdval_t v = native_pmd_val(pmd);
....[     253]: return native_make_pmd(v | set);
....[     254]: }
....[     256]: static inline __attribute__((no_instrument_function)) pmd_t pmd_clear_flags(pmd_t pmd, pmdval_t clear)
....[     257]: {
....[     258]: pmdval_t v = native_pmd_val(pmd);
....[     260]: return native_make_pmd(v & ~clear);
....[     261]: }
....[     263]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mkold(pmd_t pmd)
....[     264]: {
....[     265]: return pmd_clear_flags(pmd, (((pteval_t)(1)) << 5));
....[     266]: }
....[     268]: static inline __attribute__((no_instrument_function)) pmd_t pmd_wrprotect(pmd_t pmd)
....[     269]: {
....[     270]: return pmd_clear_flags(pmd, (((pteval_t)(1)) << 1));
....[     271]: }
....[     273]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mkdirty(pmd_t pmd)
....[     274]: {
....[     275]: return pmd_set_flags(pmd, (((pteval_t)(1)) << 6) | (((pteval_t)(0))));
....[     276]: }
....[     278]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mkhuge(pmd_t pmd)
....[     279]: {
....[     280]: return pmd_set_flags(pmd, (((pteval_t)(1)) << 7));
....[     281]: }
....[     283]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mkyoung(pmd_t pmd)
....[     284]: {
....[     285]: return pmd_set_flags(pmd, (((pteval_t)(1)) << 5));
....[     286]: }
....[     288]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mkwrite(pmd_t pmd)
....[     289]: {
....[     290]: return pmd_set_flags(pmd, (((pteval_t)(1)) << 1));
....[     291]: }
....[     293]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mknotpresent(pmd_t pmd)
....[     294]: {
....[     295]: return pmd_clear_flags(pmd, (((pteval_t)(1)) << 0));
....[     296]: }
....[     298]: static inline __attribute__((no_instrument_function)) int pte_soft_dirty(pte_t pte)
....[     299]: {
....[     300]: return pte_flags(pte) & (((pteval_t)(0)));
....[     301]: }
....[     303]: static inline __attribute__((no_instrument_function)) int pmd_soft_dirty(pmd_t pmd)
....[     304]: {
....[     305]: return pmd_flags(pmd) & (((pteval_t)(0)));
....[     306]: }
....[     308]: static inline __attribute__((no_instrument_function)) pte_t pte_mksoft_dirty(pte_t pte)
....[     309]: {
....[     310]: return pte_set_flags(pte, (((pteval_t)(0))));
....[     311]: }
....[     313]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mksoft_dirty(pmd_t pmd)
....[     314]: {
....[     315]: return pmd_set_flags(pmd, (((pteval_t)(0))));
....[     316]: }
....[     318]: static inline __attribute__((no_instrument_function)) pte_t pte_file_clear_soft_dirty(pte_t pte)
....[     319]: {
....[     320]: return pte_clear_flags(pte, (((pteval_t)(0))));
....[     321]: }
....[     323]: static inline __attribute__((no_instrument_function)) pte_t pte_file_mksoft_dirty(pte_t pte)
....[     324]: {
....[     325]: return pte_set_flags(pte, (((pteval_t)(0))));
....[     326]: }
....[     328]: static inline __attribute__((no_instrument_function)) int pte_file_soft_dirty(pte_t pte)
....[     329]: {
....[     330]: return pte_flags(pte) & (((pteval_t)(0)));
....[     331]: }
....[     337]: static inline __attribute__((no_instrument_function)) pgprotval_t massage_pgprot(pgprot_t pgprot)
....[     338]: {
....[     339]: pgprotval_t protval = ((pgprot).pgprot);
....[     341]: if (protval & (((pteval_t)(1)) << 0))
....[     342]: protval &= __supported_pte_mask;
....[     344]: return protval;
....[     345]: }
....[     347]: static inline __attribute__((no_instrument_function)) pte_t pfn_pte(unsigned long page_nr, pgprot_t pgprot)
....[     348]: {
....[     349]: return native_make_pte(((phys_addr_t)page_nr << 12) | massage_pgprot(pgprot));
....[     351]: }
....[     353]: static inline __attribute__((no_instrument_function)) pmd_t pfn_pmd(unsigned long page_nr, pgprot_t pgprot)
....[     354]: {
....[     355]: return native_make_pmd(((phys_addr_t)page_nr << 12) | massage_pgprot(pgprot));
....[     357]: }
....[     359]: static inline __attribute__((no_instrument_function)) pte_t pte_modify(pte_t pte, pgprot_t newprot)
....[     360]: {
....[     361]: pteval_t val = native_pte_val(pte);
....[     367]: val &= (((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)))) | (((pteval_t)(1)) << \
....                4) | (((pteval_t)(1)) << 3) | (((pteval_t)(1)) << 9) | (((pteval_t)(1)) << 5) | (((pteval_t)(1)) << 6));
....[     368]: val |= massage_pgprot(newprot) & ~(((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46\
....                ) - 1)))) | (((pteval_t)(1)) << 4) | (((pteval_t)(1)) << 3) | (((pteval_t)(1)) << 9) | (((pteval_t)(1)) << 5) | (((pteval_t\
....                )(1)) << 6));
....[     370]: return native_make_pte(val);
....[     371]: }
....[     373]: static inline __attribute__((no_instrument_function)) pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot)
....[     374]: {
....[     375]: pmdval_t val = native_pmd_val(pmd);
....[     377]: val &= ((((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)))) | (((pteval_t)(1)) \
....                << 4) | (((pteval_t)(1)) << 3) | (((pteval_t)(1)) << 9) | (((pteval_t)(1)) << 5) | (((pteval_t)(1)) << 6)) | (((pteval_t\
....                )(1)) << 7));
....[     378]: val |= massage_pgprot(newprot) & ~((((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46\
....                ) - 1)))) | (((pteval_t)(1)) << 4) | (((pteval_t)(1)) << 3) | (((pteval_t)(1)) << 9) | (((pteval_t)(1)) << 5) | (((pteval_t\
....                )(1)) << 6)) | (((pteval_t)(1)) << 7));
....[     380]: return native_make_pmd(val);
....[     381]: }
....[     385]: static inline __attribute__((no_instrument_function)) pgprot_t pgprot_modify(pgprot_t oldprot, pgprot_t newprot\
....                )
....[     386]: {
....[     387]: pgprotval_t preservebits = ((oldprot).pgprot) & (((pteval_t)(((signed long)(~(((1UL) << 12)-1))) & ((phys_addr_t\
....                )((1ULL << 46) - 1)))) | (((pteval_t)(1)) << 4) | (((pteval_t)(1)) << 3) | (((pteval_t)(1)) << 9) | (((pteval_t)(1)) << \
....                5) | (((pteval_t)(1)) << 6));
....[     388]: pgprotval_t addbits = ((newprot).pgprot);
....[     389]: return ((pgprot_t) { (preservebits | addbits) } );
....[     390]: }
....[     396]: static inline __attribute__((no_instrument_function)) int is_new_memtype_allowed(u64 paddr, unsigned long size\
....                ,
....[     397]: unsigned long flags,
....[     398]: unsigned long new_flags)
....[     399]: {
....[     403]: if (x86_platform.is_untracked_pat_range(paddr, paddr + size))
....[     404]: return 1;
....[     412]: if ((flags == ((((pteval_t)(1)) << 4)) &&
....[     413]: new_flags == (0)) ||
....[     414]: (flags == ((((pteval_t)(1)) << 3)) &&
....[     415]: new_flags == (0))) {
....[     416]: return 0;
....[     417]: }
....[     419]: return 1;
....[     420]: }
....[     422]: pmd_t *populate_extra_pmd(unsigned long vaddr);
....[     423]: pte_t *populate_extra_pte(unsigned long vaddr);
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_64.h
.....[      17]: extern pud_t level3_kernel_pgt[512];
.....[      18]: extern pud_t level3_ident_pgt[512];
.....[      19]: extern pmd_t level2_kernel_pgt[512];
.....[      20]: extern pmd_t level2_fixmap_pgt[512];
.....[      21]: extern pmd_t level2_ident_pgt[512];
.....[      22]: extern pgd_t init_level4_pgt[];
.....[      26]: extern void paging_init(void);
.....[      41]: struct mm_struct;
.....[      43]: void set_pte_vaddr_pud(pud_t *pud_page, unsigned long vaddr, pte_t new_pte);
.....[      46]: static inline __attribute__((no_instrument_function)) void native_pte_clear(struct mm_struct *mm, unsigned long \
.....                addr,
.....[      47]: pte_t *ptep)
.....[      48]: {
.....[      49]: *ptep = native_make_pte(0);
.....[      50]: }
.....[      52]: static inline __attribute__((no_instrument_function)) void native_set_pte(pte_t *ptep, pte_t pte)
.....[      53]: {
.....[      54]: *ptep = pte;
.....[      55]: }
.....[      57]: static inline __attribute__((no_instrument_function)) void native_set_pte_atomic(pte_t *ptep, pte_t pte)
.....[      58]: {
.....[      59]: native_set_pte(ptep, pte);
.....[      60]: }
.....[      62]: static inline __attribute__((no_instrument_function)) void native_set_pmd(pmd_t *pmdp, pmd_t pmd)
.....[      63]: {
.....[      64]: *pmdp = pmd;
.....[      65]: }
.....[      67]: static inline __attribute__((no_instrument_function)) void native_pmd_clear(pmd_t *pmd)
.....[      68]: {
.....[      69]: native_set_pmd(pmd, native_make_pmd(0));
.....[      70]: }
.....[      72]: static inline __attribute__((no_instrument_function)) pte_t native_ptep_get_and_clear(pte_t *xp)
.....[      73]: {
.....[      75]: return native_make_pte(({ __typeof__ (*((&xp->pte))) __ret = ((0)); switch (sizeof(*((&xp->pte)))) { case 1: asm \
.....                volatile ("" "xchg" "b %b0, %1\n" : "+q" (__ret), "+m" (*((&xp->pte))) : : "memory", "cc"); break; case 2: asm volatile \
.....                ("" "xchg" "w %w0, %1\n" : "+r" (__ret), "+m" (*((&xp->pte))) : : "memory", "cc"); break; case 4: asm volatile ("" "xchg" \
.....                "l %0, %1\n" : "+r" (__ret), "+m" (*((&xp->pte))) : : "memory", "cc"); break; case 8: asm volatile ("" "xchg" "q %q0, %1\n" \
.....                : "+r" (__ret), "+m" (*((&xp->pte))) : : "memory", "cc"); break; default: __xchg_wrong_size(); } __ret; }));
.....[      83]: }
.....[      85]: static inline __attribute__((no_instrument_function)) pmd_t native_pmdp_get_and_clear(pmd_t *xp)
.....[      86]: {
.....[      88]: return native_make_pmd(({ __typeof__ (*((&xp->pmd))) __ret = ((0)); switch (sizeof(*((&xp->pmd)))) { case 1: asm \
.....                volatile ("" "xchg" "b %b0, %1\n" : "+q" (__ret), "+m" (*((&xp->pmd))) : : "memory", "cc"); break; case 2: asm volatile \
.....                ("" "xchg" "w %w0, %1\n" : "+r" (__ret), "+m" (*((&xp->pmd))) : : "memory", "cc"); break; case 4: asm volatile ("" "xchg" \
.....                "l %0, %1\n" : "+r" (__ret), "+m" (*((&xp->pmd))) : : "memory", "cc"); break; case 8: asm volatile ("" "xchg" "q %q0, %1\n" \
.....                : "+r" (__ret), "+m" (*((&xp->pmd))) : : "memory", "cc"); break; default: __xchg_wrong_size(); } __ret; }));
.....[      96]: }
.....[      98]: static inline __attribute__((no_instrument_function)) void native_set_pud(pud_t *pudp, pud_t pud)
.....[      99]: {
.....[     100]: *pudp = pud;
.....[     101]: }
.....[     103]: static inline __attribute__((no_instrument_function)) void native_pud_clear(pud_t *pud)
.....[     104]: {
.....[     105]: native_set_pud(pud, native_make_pud(0));
.....[     106]: }
.....[     108]: static inline __attribute__((no_instrument_function)) void native_set_pgd(pgd_t *pgdp, pgd_t pgd)
.....[     109]: {
.....[     110]: *pgdp = pgd;
.....[     111]: }
.....[     113]: static inline __attribute__((no_instrument_function)) void native_pgd_clear(pgd_t *pgd)
.....[     114]: {
.....[     115]: native_set_pgd(pgd, native_make_pgd(0));
.....[     116]: }
.....[     118]: extern void sync_global_pgds(unsigned long start, unsigned long end);
.....[     128]: static inline __attribute__((no_instrument_function)) int pgd_large(pgd_t pgd) { return 0; }
.....[     165]: extern int kern_addr_valid(unsigned long addr);
.....[     166]: extern void cleanup_highmap(void);
.....[     185]: extern void init_extra_mapping_uc(unsigned long phys, unsigned long size);
.....[     186]: extern void init_extra_mapping_wb(unsigned long phys, unsigned long size);
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable_64.h
....#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable.h
....[     437]: static inline __attribute__((no_instrument_function)) int pte_none(pte_t pte)
....[     438]: {
....[     439]: return !pte.pte;
....[     440]: }
....[     443]: static inline __attribute__((no_instrument_function)) int pte_same(pte_t a, pte_t b)
....[     444]: {
....[     445]: return a.pte == b.pte;
....[     446]: }
....[     448]: static inline __attribute__((no_instrument_function)) int pte_present(pte_t a)
....[     449]: {
....[     450]: return pte_flags(a) & ((((pteval_t)(1)) << 0) | (((pteval_t)(1)) << 8) |
....[     451]: (((pteval_t)(1)) << 8));
....[     452]: }
....[     455]: static inline __attribute__((no_instrument_function)) bool pte_accessible(struct mm_struct *mm, pte_t a)
....[     456]: {
....[     457]: if (pte_flags(a) & (((pteval_t)(1)) << 0))
....[     458]: return true;
....[     460]: if ((pte_flags(a) & ((((pteval_t)(1)) << 8) | (((pteval_t)(1)) << 8))) &&
....[     461]: mm_tlb_flush_pending(mm))
....[     462]: return true;
....[     464]: return false;
....[     465]: }
....[     467]: static inline __attribute__((no_instrument_function)) int pte_hidden(pte_t pte)
....[     468]: {
....[     469]: return pte_flags(pte) & (((pteval_t)(0)));
....[     470]: }
....[     472]: static inline __attribute__((no_instrument_function)) int pmd_present(pmd_t pmd)
....[     473]: {
....[     480]: return pmd_flags(pmd) & ((((pteval_t)(1)) << 0) | (((pteval_t)(1)) << 8) | (((pteval_t)(1)) << 7) |
....[     481]: (((pteval_t)(1)) << 8));
....[     482]: }
....[     484]: static inline __attribute__((no_instrument_function)) int pmd_none(pmd_t pmd)
....[     485]: {
....[     488]: return (unsigned long)native_pmd_val(pmd) == 0;
....[     489]: }
....[     491]: static inline __attribute__((no_instrument_function)) unsigned long pmd_page_vaddr(pmd_t pmd)
....[     492]: {
....[     493]: return (unsigned long)((void *)((unsigned long)(native_pmd_val(pmd) & ((pteval_t)(((signed long)(~(((1UL) << \
....                12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)))))+((unsigned long)(0xffff880000000000UL))));
....[     494]: }
....[     508]: static inline __attribute__((no_instrument_function)) unsigned long pmd_index(unsigned long address)
....[     509]: {
....[     510]: return (address >> 21) & (512 - 1);
....[     511]: }
....[     528]: static inline __attribute__((no_instrument_function)) unsigned long pte_index(unsigned long address)
....[     529]: {
....[     530]: return (address >> 12) & (512 - 1);
....[     531]: }
....[     533]: static inline __attribute__((no_instrument_function)) pte_t *pte_offset_kernel(pmd_t *pmd, unsigned long address\
....                )
....[     534]: {
....[     535]: return (pte_t *)pmd_page_vaddr(*pmd) + pte_index(address);
....[     536]: }
....[     538]: static inline __attribute__((no_instrument_function)) int pmd_bad(pmd_t pmd)
....[     539]: {
....[     545]: return (pmd_flags(pmd) & ~(((pteval_t)(1)) << 2)) != ((((pteval_t)(1)) << 0) | (((pteval_t)(1)) << 1) | (((pteval_t\
....                )(1)) << 5) | (((pteval_t)(1)) << 6));
....[     546]: }
....[     548]: static inline __attribute__((no_instrument_function)) unsigned long pages_to_mb(unsigned long npg)
....[     549]: {
....[     550]: return npg >> (20 - 12);
....[     551]: }
....[     554]: static inline __attribute__((no_instrument_function)) int pud_none(pud_t pud)
....[     555]: {
....[     556]: return native_pud_val(pud) == 0;
....[     557]: }
....[     559]: static inline __attribute__((no_instrument_function)) int pud_present(pud_t pud)
....[     560]: {
....[     561]: return pud_flags(pud) & (((pteval_t)(1)) << 0);
....[     562]: }
....[     564]: static inline __attribute__((no_instrument_function)) unsigned long pud_page_vaddr(pud_t pud)
....[     565]: {
....[     566]: return (unsigned long)((void *)((unsigned long)((unsigned long)native_pud_val(pud) & ((pteval_t)(((signed long\
....                )(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)))))+((unsigned long)(0xffff880000000000UL))));
....[     567]: }
....[     576]: static inline __attribute__((no_instrument_function)) pmd_t *pmd_offset(pud_t *pud, unsigned long address)
....[     577]: {
....[     578]: return (pmd_t *)pud_page_vaddr(*pud) + pmd_index(address);
....[     579]: }
....[     581]: static inline __attribute__((no_instrument_function)) int pud_large(pud_t pud)
....[     582]: {
....[     583]: return (native_pud_val(pud) & ((((pteval_t)(1)) << 7) | (((pteval_t)(1)) << 0))) ==
....[     584]: ((((pteval_t)(1)) << 7) | (((pteval_t)(1)) << 0));
....[     585]: }
....[     587]: static inline __attribute__((no_instrument_function)) int pud_bad(pud_t pud)
....[     588]: {
....[     589]: return (pud_flags(pud) & ~(((((pteval_t)(1)) << 0) | (((pteval_t)(1)) << 1) | (((pteval_t)(1)) << 5) | (((pteval_t)\
....                (1)) << 6)) | (((pteval_t)(1)) << 2))) != 0;
....[     590]: }
....[     599]: static inline __attribute__((no_instrument_function)) int pgd_present(pgd_t pgd)
....[     600]: {
....[     601]: return pgd_flags(pgd) & (((pteval_t)(1)) << 0);
....[     602]: }
....[     604]: static inline __attribute__((no_instrument_function)) unsigned long pgd_page_vaddr(pgd_t pgd)
....[     605]: {
....[     606]: return (unsigned long)((void *)((unsigned long)((unsigned long)native_pgd_val(pgd) & ((pteval_t)(((signed long\
....                )(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1)))))+((unsigned long)(0xffff880000000000UL))));
....[     607]: }
....[     616]: static inline __attribute__((no_instrument_function)) unsigned long pud_index(unsigned long address)
....[     617]: {
....[     618]: return (address >> 30) & (512 - 1);
....[     619]: }
....[     621]: static inline __attribute__((no_instrument_function)) pud_t *pud_offset(pgd_t *pgd, unsigned long address)
....[     622]: {
....[     623]: return (pud_t *)pgd_page_vaddr(*pgd) + pud_index(address);
....[     624]: }
....[     626]: static inline __attribute__((no_instrument_function)) int pgd_bad(pgd_t pgd)
....[     627]: {
....[     628]: return (pgd_flags(pgd) & ~(((pteval_t)(1)) << 2)) != ((((pteval_t)(1)) << 0) | (((pteval_t)(1)) << 1) | (((pteval_t\
....                )(1)) << 5) | (((pteval_t)(1)) << 6));
....[     629]: }
....[     631]: static inline __attribute__((no_instrument_function)) int pgd_none(pgd_t pgd)
....[     632]: {
....[     633]: return !native_pgd_val(pgd);
....[     634]: }
....[     664]: extern int direct_gbpages;
....[     665]: void init_mem_mapping(void);
....[     666]: void early_alloc_pgt_buf(void);
....[     669]: static inline __attribute__((no_instrument_function)) pte_t native_local_ptep_get_and_clear(pte_t *ptep)
....[     670]: {
....[     671]: pte_t res = *ptep;
....[     674]: native_pte_clear(((void *)0), 0, ptep);
....[     675]: return res;
....[     676]: }
....[     678]: static inline __attribute__((no_instrument_function)) pmd_t native_local_pmdp_get_and_clear(pmd_t *pmdp)
....[     679]: {
....[     680]: pmd_t res = *pmdp;
....[     682]: native_pmd_clear(pmdp);
....[     683]: return res;
....[     684]: }
....[     686]: static inline __attribute__((no_instrument_function)) void native_set_pte_at(struct mm_struct *mm, unsigned \
....                long addr,
....[     687]: pte_t *ptep , pte_t pte)
....[     688]: {
....[     689]: native_set_pte(ptep, pte);
....[     690]: }
....[     692]: static inline __attribute__((no_instrument_function)) void native_set_pmd_at(struct mm_struct *mm, unsigned \
....                long addr,
....[     693]: pmd_t *pmdp , pmd_t pmd)
....[     694]: {
....[     695]: native_set_pmd(pmdp, pmd);
....[     696]: }
....[     723]: struct vm_area_struct;
....[     726]: extern int ptep_set_access_flags(struct vm_area_struct *vma,
....[     727]: unsigned long address, pte_t *ptep,
....[     728]: pte_t entry, int dirty);
....[     731]: extern int ptep_test_and_clear_young(struct vm_area_struct *vma,
....[     732]: unsigned long addr, pte_t *ptep);
....[     735]: extern int ptep_clear_flush_young(struct vm_area_struct *vma,
....[     736]: unsigned long address, pte_t *ptep);
....[     739]: static inline __attribute__((no_instrument_function)) pte_t ptep_get_and_clear(struct mm_struct *mm, unsigned \
....                long addr,
....[     740]: pte_t *ptep)
....[     741]: {
....[     742]: pte_t pte = native_ptep_get_and_clear(ptep);
....[     743]: do { } while (0);
....[     744]: return pte;
....[     745]: }
....[     748]: static inline __attribute__((no_instrument_function)) pte_t ptep_get_and_clear_full(struct mm_struct *mm,
....[     749]: unsigned long addr, pte_t *ptep,
....[     750]: int full)
....[     751]: {
....[     752]: pte_t pte;
....[     753]: if (full) {
....[     758]: pte = native_local_ptep_get_and_clear(ptep);
....[     759]: } else {
....[     760]: pte = ptep_get_and_clear(mm, addr, ptep);
....[     761]: }
....[     762]: return pte;
....[     763]: }
....[     766]: static inline __attribute__((no_instrument_function)) void ptep_set_wrprotect(struct mm_struct *mm,
....[     767]: unsigned long addr, pte_t *ptep)
....[     768]: {
....[     769]: clear_bit(1, (unsigned long *)&ptep->pte);
....[     770]: do { } while (0);
....[     771]: }
....[     778]: extern int pmdp_set_access_flags(struct vm_area_struct *vma,
....[     779]: unsigned long address, pmd_t *pmdp,
....[     780]: pmd_t entry, int dirty);
....[     783]: extern int pmdp_test_and_clear_young(struct vm_area_struct *vma,
....[     784]: unsigned long addr, pmd_t *pmdp);
....[     787]: extern int pmdp_clear_flush_young(struct vm_area_struct *vma,
....[     788]: unsigned long address, pmd_t *pmdp);
....[     792]: extern void pmdp_splitting_flush(struct vm_area_struct *vma,
....[     793]: unsigned long addr, pmd_t *pmdp);
....[     796]: static inline __attribute__((no_instrument_function)) int pmd_write(pmd_t pmd)
....[     797]: {
....[     798]: return pmd_flags(pmd) & (((pteval_t)(1)) << 1);
....[     799]: }
....[     802]: static inline __attribute__((no_instrument_function)) pmd_t pmdp_get_and_clear(struct mm_struct *mm, unsigned \
....                long addr,
....[     803]: pmd_t *pmdp)
....[     804]: {
....[     805]: pmd_t pmd = native_pmdp_get_and_clear(pmdp);
....[     806]: do { } while (0);
....[     807]: return pmd;
....[     808]: }
....[     811]: static inline __attribute__((no_instrument_function)) void pmdp_set_wrprotect(struct mm_struct *mm,
....[     812]: unsigned long addr, pmd_t *pmdp)
....[     813]: {
....[     814]: clear_bit(1, (unsigned long *)pmdp);
....[     815]: do { } while (0);
....[     816]: }
....[     828]: static inline __attribute__((no_instrument_function)) void clone_pgd_range(pgd_t *dst, pgd_t *src, int count)
....[     829]: {
....[     830]: ({ size_t __len = (count * sizeof(pgd_t)); void *__ret; if (__builtin_constant_p(count * sizeof(pgd_t)) && __len >= \
....                64) __ret = __memcpy((dst), (src), __len); else __ret = __builtin_memcpy((dst), (src), __len); __ret; });
....[     831]: }
....[     834]: static inline __attribute__((no_instrument_function)) int page_level_shift(enum pg_level level)
....[     835]: {
....[     836]: return (12 - ( __builtin_constant_p(512) ? ( (512) < 1 ? ____ilog2_NaN() : (512) & (1ULL << 63) ? 63 : (512) & (1ULL << 62) ? 62 \
....                : (512) & (1ULL << 61) ? 61 : (512) & (1ULL << 60) ? 60 : (512) & (1ULL << 59) ? 59 : (512) & (1ULL << 58) ? 58 : (512) & (1ULL << 57) ? 57 \
....                : (512) & (1ULL << 56) ? 56 : (512) & (1ULL << 55) ? 55 : (512) & (1ULL << 54) ? 54 : (512) & (1ULL << 53) ? 53 : (512) & (1ULL << 52) ? 52 \
....                : (512) & (1ULL << 51) ? 51 : (512) & (1ULL << 50) ? 50 : (512) & (1ULL << 49) ? 49 : (512) & (1ULL << 48) ? 48 : (512) & (1ULL << 47) ? 47 \
....                : (512) & (1ULL << 46) ? 46 : (512) & (1ULL << 45) ? 45 : (512) & (1ULL << 44) ? 44 : (512) & (1ULL << 43) ? 43 : (512) & (1ULL << 42) ? 42 \
....                : (512) & (1ULL << 41) ? 41 : (512) & (1ULL << 40) ? 40 : (512) & (1ULL << 39) ? 39 : (512) & (1ULL << 38) ? 38 : (512) & (1ULL << 37) ? 37 \
....                : (512) & (1ULL << 36) ? 36 : (512) & (1ULL << 35) ? 35 : (512) & (1ULL << 34) ? 34 : (512) & (1ULL << 33) ? 33 : (512) & (1ULL << 32) ? 32 \
....                : (512) & (1ULL << 31) ? 31 : (512) & (1ULL << 30) ? 30 : (512) & (1ULL << 29) ? 29 : (512) & (1ULL << 28) ? 28 : (512) & (1ULL << 27) ? 27 \
....                : (512) & (1ULL << 26) ? 26 : (512) & (1ULL << 25) ? 25 : (512) & (1ULL << 24) ? 24 : (512) & (1ULL << 23) ? 23 : (512) & (1ULL << 22) ? 22 \
....                : (512) & (1ULL << 21) ? 21 : (512) & (1ULL << 20) ? 20 : (512) & (1ULL << 19) ? 19 : (512) & (1ULL << 18) ? 18 : (512) & (1ULL << 17) ? 17 \
....                : (512) & (1ULL << 16) ? 16 : (512) & (1ULL << 15) ? 15 : (512) & (1ULL << 14) ? 14 : (512) & (1ULL << 13) ? 13 : (512) & (1ULL << 12) ? 12 \
....                : (512) & (1ULL << 11) ? 11 : (512) & (1ULL << 10) ? 10 : (512) & (1ULL << 9) ? 9 : (512) & (1ULL << 8) ? 8 : (512) & (1ULL << 7) ? 7 : (512) \
....                & (1ULL << 6) ? 6 : (512) & (1ULL << 5) ? 5 : (512) & (1ULL << 4) ? 4 : (512) & (1ULL << 3) ? 3 : (512) & (1ULL << 2) ? 2 : (512) & (1ULL << 1) \
....                ? 1 : (512) & (1ULL << 0) ? 0 : ____ilog2_NaN() ) : (sizeof(512) <= 4) ? __ilog2_u32(512) : __ilog2_u64(512) )) + level * ( __builtin_constant_p\
....                (512) ? ( (512) < 1 ? ____ilog2_NaN() : (512) & (1ULL << 63) ? 63 : (512) & (1ULL << 62) ? 62 : (512) & (1ULL << 61) ? 61 : (512) & (1ULL \
....                << 60) ? 60 : (512) & (1ULL << 59) ? 59 : (512) & (1ULL << 58) ? 58 : (512) & (1ULL << 57) ? 57 : (512) & (1ULL << 56) ? 56 : (512) & (1ULL \
....                << 55) ? 55 : (512) & (1ULL << 54) ? 54 : (512) & (1ULL << 53) ? 53 : (512) & (1ULL << 52) ? 52 : (512) & (1ULL << 51) ? 51 : (512) & (1ULL \
....                << 50) ? 50 : (512) & (1ULL << 49) ? 49 : (512) & (1ULL << 48) ? 48 : (512) & (1ULL << 47) ? 47 : (512) & (1ULL << 46) ? 46 : (512) & (1ULL \
....                << 45) ? 45 : (512) & (1ULL << 44) ? 44 : (512) & (1ULL << 43) ? 43 : (512) & (1ULL << 42) ? 42 : (512) & (1ULL << 41) ? 41 : (512) & (1ULL \
....                << 40) ? 40 : (512) & (1ULL << 39) ? 39 : (512) & (1ULL << 38) ? 38 : (512) & (1ULL << 37) ? 37 : (512) & (1ULL << 36) ? 36 : (512) & (1ULL \
....                << 35) ? 35 : (512) & (1ULL << 34) ? 34 : (512) & (1ULL << 33) ? 33 : (512) & (1ULL << 32) ? 32 : (512) & (1ULL << 31) ? 31 : (512) & (1ULL \
....                << 30) ? 30 : (512) & (1ULL << 29) ? 29 : (512) & (1ULL << 28) ? 28 : (512) & (1ULL << 27) ? 27 : (512) & (1ULL << 26) ? 26 : (512) & (1ULL \
....                << 25) ? 25 : (512) & (1ULL << 24) ? 24 : (512) & (1ULL << 23) ? 23 : (512) & (1ULL << 22) ? 22 : (512) & (1ULL << 21) ? 21 : (512) & (1ULL \
....                << 20) ? 20 : (512) & (1ULL << 19) ? 19 : (512) & (1ULL << 18) ? 18 : (512) & (1ULL << 17) ? 17 : (512) & (1ULL << 16) ? 16 : (512) & (1ULL \
....                << 15) ? 15 : (512) & (1ULL << 14) ? 14 : (512) & (1ULL << 13) ? 13 : (512) & (1ULL << 12) ? 12 : (512) & (1ULL << 11) ? 11 : (512) & (1ULL \
....                << 10) ? 10 : (512) & (1ULL << 9) ? 9 : (512) & (1ULL << 8) ? 8 : (512) & (1ULL << 7) ? 7 : (512) & (1ULL << 6) ? 6 : (512) & (1ULL << 5) ? 5 : (\
....                512) & (1ULL << 4) ? 4 : (512) & (1ULL << 3) ? 3 : (512) & (1ULL << 2) ? 2 : (512) & (1ULL << 1) ? 1 : (512) & (1ULL << 0) ? 0 : ____ilog2_NaN\
....                () ) : (sizeof(512) <= 4) ? __ilog2_u32(512) : __ilog2_u64(512) );
....[     837]: }
....[     838]: static inline __attribute__((no_instrument_function)) unsigned long page_level_size(enum pg_level level)
....[     839]: {
....[     840]: return 1UL << page_level_shift(level);
....[     841]: }
....[     842]: static inline __attribute__((no_instrument_function)) unsigned long page_level_mask(enum pg_level level)
....[     843]: {
....[     844]: return ~(page_level_size(level) - 1);
....[     845]: }
....[     851]: static inline __attribute__((no_instrument_function)) void update_mmu_cache(struct vm_area_struct *vma,
....[     852]: unsigned long addr, pte_t *ptep)
....[     853]: {
....[     854]: }
....[     855]: static inline __attribute__((no_instrument_function)) void update_mmu_cache_pmd(struct vm_area_struct *vma\
....                ,
....[     856]: unsigned long addr, pmd_t *pmd)
....[     857]: {
....[     858]: }
....[     860]: static inline __attribute__((no_instrument_function)) pte_t pte_swp_mksoft_dirty(pte_t pte)
....[     861]: {
....[     862]: ((void)(sizeof(( long)(pte_present(pte)))));
....[     863]: return pte_set_flags(pte, (((pteval_t)(0))));
....[     864]: }
....[     866]: static inline __attribute__((no_instrument_function)) int pte_swp_soft_dirty(pte_t pte)
....[     867]: {
....[     868]: ((void)(sizeof(( long)(pte_present(pte)))));
....[     869]: return pte_flags(pte) & (((pteval_t)(0)));
....[     870]: }
....[     872]: static inline __attribute__((no_instrument_function)) pte_t pte_swp_clear_soft_dirty(pte_t pte)
....[     873]: {
....[     874]: ((void)(sizeof(( long)(pte_present(pte)))));
....[     875]: return pte_clear_flags(pte, (((pteval_t)(0))));
....[     876]: }
...#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable.h
....# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/pgtable.h
.....[     123]: static inline __attribute__((no_instrument_function)) void pte_clear_not_present_full(struct mm_struct *mm\
.....                ,
.....[     124]: unsigned long address,
.....[     125]: pte_t *ptep,
.....[     126]: int full)
.....[     127]: {
.....[     128]: native_pte_clear(mm, address, ptep);
.....[     129]: }
.....[     133]: extern pte_t ptep_clear_flush(struct vm_area_struct *vma,
.....[     134]: unsigned long address,
.....[     135]: pte_t *ptep);
.....[     139]: extern pmd_t pmdp_clear_flush(struct vm_area_struct *vma,
.....[     140]: unsigned long address,
.....[     141]: pmd_t *pmdp);
.....[     176]: extern void pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp,
.....[     177]: pgtable_t pgtable);
.....[     181]: extern pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp);
.....[     185]: extern void pmdp_invalidate(struct vm_area_struct *vma, unsigned long address,
.....[     186]: pmd_t *pmdp);
.....[     203]: static inline __attribute__((no_instrument_function)) int pmd_same(pmd_t pmd_a, pmd_t pmd_b)
.....[     204]: {
.....[     205]: do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" \
.....                "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry))); do { } while (\
.....                1); } while (0);
.....[     206]: return 0;
.....[     207]: }
.....[     265]: void pgd_clear_bad(pgd_t *);
.....[     266]: void pud_clear_bad(pud_t *);
.....[     267]: void pmd_clear_bad(pmd_t *);
.....[     269]: static inline __attribute__((no_instrument_function)) int pgd_none_or_clear_bad(pgd_t *pgd)
.....[     270]: {
.....[     271]: if (pgd_none(*pgd))
.....[     272]: return 1;
.....[     273]: if (__builtin_expect(!!(pgd_bad(*pgd)), 0)) {
.....[     274]: pgd_clear_bad(pgd);
.....[     275]: return 1;
.....[     276]: }
.....[     277]: return 0;
.....[     278]: }
.....[     280]: static inline __attribute__((no_instrument_function)) int pud_none_or_clear_bad(pud_t *pud)
.....[     281]: {
.....[     282]: if (pud_none(*pud))
.....[     283]: return 1;
.....[     284]: if (__builtin_expect(!!(pud_bad(*pud)), 0)) {
.....[     285]: pud_clear_bad(pud);
.....[     286]: return 1;
.....[     287]: }
.....[     288]: return 0;
.....[     289]: }
.....[     291]: static inline __attribute__((no_instrument_function)) int pmd_none_or_clear_bad(pmd_t *pmd)
.....[     292]: {
.....[     293]: if (pmd_none(*pmd))
.....[     294]: return 1;
.....[     295]: if (__builtin_expect(!!(pmd_bad(*pmd)), 0)) {
.....[     296]: pmd_clear_bad(pmd);
.....[     297]: return 1;
.....[     298]: }
.....[     299]: return 0;
.....[     300]: }
.....[     302]: static inline __attribute__((no_instrument_function)) pte_t __ptep_modify_prot_start(struct mm_struct *mm,
.....[     303]: unsigned long addr,
.....[     304]: pte_t *ptep)
.....[     305]: {
.....[     311]: return ptep_get_and_clear(mm, addr, ptep);
.....[     312]: }
.....[     314]: static inline __attribute__((no_instrument_function)) void __ptep_modify_prot_commit(struct mm_struct *mm,
.....[     315]: unsigned long addr,
.....[     316]: pte_t *ptep, pte_t pte)
.....[     317]: {
.....[     322]: native_set_pte_at(mm, addr, ptep, pte);
.....[     323]: }
.....[     340]: static inline __attribute__((no_instrument_function)) pte_t ptep_modify_prot_start(struct mm_struct *mm,
.....[     341]: unsigned long addr,
.....[     342]: pte_t *ptep)
.....[     343]: {
.....[     344]: return __ptep_modify_prot_start(mm, addr, ptep);
.....[     345]: }
.....[     351]: static inline __attribute__((no_instrument_function)) void ptep_modify_prot_commit(struct mm_struct *mm,
.....[     352]: unsigned long addr,
.....[     353]: pte_t *ptep, pte_t pte)
.....[     354]: {
.....[     355]: __ptep_modify_prot_commit(mm, addr, ptep, pte);
.....[     356]: }
.....[     495]: extern int track_pfn_remap(struct vm_area_struct *vma, pgprot_t *prot,
.....[     496]: unsigned long pfn, unsigned long addr,
.....[     497]: unsigned long size);
.....[     498]: extern int track_pfn_insert(struct vm_area_struct *vma, pgprot_t *prot,
.....[     499]: unsigned long pfn);
.....[     500]: extern int track_pfn_copy(struct vm_area_struct *vma);
.....[     501]: extern void untrack_pfn(struct vm_area_struct *vma, unsigned long pfn,
.....[     502]: unsigned long size);
.....[     516]: static inline __attribute__((no_instrument_function)) int is_zero_pfn(unsigned long pfn)
.....[     517]: {
.....[     518]: extern unsigned long zero_pfn;
.....[     519]: return pfn == zero_pfn;
.....[     520]: }
.....[     522]: static inline __attribute__((no_instrument_function)) unsigned long my_zero_pfn(unsigned long addr)
.....[     523]: {
.....[     524]: extern unsigned long zero_pfn;
.....[     525]: return zero_pfn;
.....[     526]: }
.....[     532]: static inline __attribute__((no_instrument_function)) int pmd_trans_huge(pmd_t pmd)
.....[     533]: {
.....[     534]: return 0;
.....[     535]: }
.....[     536]: static inline __attribute__((no_instrument_function)) int pmd_trans_splitting(pmd_t pmd)
.....[     537]: {
.....[     538]: return 0;
.....[     539]: }
.....[     550]: static inline __attribute__((no_instrument_function)) pmd_t pmd_read_atomic(pmd_t *pmdp)
.....[     551]: {
.....[     557]: return *pmdp;
.....[     558]: }
.....[     582]: static inline __attribute__((no_instrument_function)) int pmd_none_or_trans_huge_or_clear_bad(pmd_t *pmd)
.....[     583]: {
.....[     584]: pmd_t pmdval = pmd_read_atomic(pmd);
.....[     602]: if (pmd_none(pmdval) || pmd_trans_huge(pmdval))
.....[     603]: return 1;
.....[     604]: if (__builtin_expect(!!(pmd_bad(pmdval)), 0)) {
.....[     605]: pmd_clear_bad(pmd);
.....[     606]: return 1;
.....[     607]: }
.....[     608]: return 0;
.....[     609]: }
.....[     624]: static inline __attribute__((no_instrument_function)) int pmd_trans_unstable(pmd_t *pmd)
.....[     625]: {
.....[     629]: return 0;
.....[     631]: }
.....[     708]: static inline __attribute__((no_instrument_function)) int pmd_numa(pmd_t pmd)
.....[     709]: {
.....[     710]: return 0;
.....[     711]: }
.....[     713]: static inline __attribute__((no_instrument_function)) int pte_numa(pte_t pte)
.....[     714]: {
.....[     715]: return 0;
.....[     716]: }
.....[     718]: static inline __attribute__((no_instrument_function)) pte_t pte_mknonnuma(pte_t pte)
.....[     719]: {
.....[     720]: return pte;
.....[     721]: }
.....[     723]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mknonnuma(pmd_t pmd)
.....[     724]: {
.....[     725]: return pmd;
.....[     726]: }
.....[     728]: static inline __attribute__((no_instrument_function)) pte_t pte_mknuma(pte_t pte)
.....[     729]: {
.....[     730]: return pte;
.....[     731]: }
.....[     733]: static inline __attribute__((no_instrument_function)) pmd_t pmd_mknuma(pmd_t pmd)
.....[     734]: {
.....[     735]: return pmd;
.....[     736]: }
.....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/pgtable.h
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/pgtable.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...[      57]: extern unsigned long sysctl_user_reserve_kbytes;
...[      58]: extern unsigned long sysctl_admin_reserve_kbytes;
...[      77]: extern struct kmem_cache *vm_area_cachep;
...[     174]: extern pgprot_t protection_map[16];
...[     193]: struct vm_fault {
...[     194]: unsigned int flags;
...[     195]: unsigned long pgoff;
...[     196]: void *virtual_address;
...[     198]: struct page *page;
...[     203]: };
...[     210]: struct vm_operations_struct {
...[     211]: void (*open)(struct vm_area_struct * area);
...[     212]: void (*close)(struct vm_area_struct * area);
...[     213]: int (*fault)(struct vm_area_struct *vma, struct vm_fault *vmf);
...[     217]: int (*page_mkwrite)(struct vm_area_struct *vma, struct vm_fault *vmf);
...[     222]: int (*access)(struct vm_area_struct *vma, unsigned long addr,
...[     223]: void *buf, int len, int write);
...[     232]: int (*set_policy)(struct vm_area_struct *vma, struct mempolicy *new);
...[     244]: struct mempolicy *(*get_policy)(struct vm_area_struct *vma,
...[     245]: unsigned long addr);
...[     246]: int (*migrate)(struct vm_area_struct *vma, const nodemask_t *from,
...[     247]: const nodemask_t *to, unsigned long flags);
...[     250]: int (*remap_pages)(struct vm_area_struct *vma, unsigned long addr,
...[     251]: unsigned long size, unsigned long pgoff);
...[     252]: };
...[     254]: struct mmu_gather;
...[     255]: struct inode;
...[     261]: static inline __attribute__((no_instrument_function)) void set_freepage_migratetype(struct page *page, int migratetype\
...                )
...[     262]: {
...[     263]: page->index = migratetype;
...[     264]: }
...[     267]: static inline __attribute__((no_instrument_function)) int get_freepage_migratetype(struct page *page)
...[     268]: {
...[     269]: return page->index;
...[     270]: }
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/huge_mm.h
....[       4]: extern int do_huge_pmd_anonymous_page(struct mm_struct *mm,
....[       5]: struct vm_area_struct *vma,
....[       6]: unsigned long address, pmd_t *pmd,
....[       7]: unsigned int flags);
....[       8]: extern int copy_huge_pmd(struct mm_struct *dst_mm, struct mm_struct *src_mm,
....[       9]: pmd_t *dst_pmd, pmd_t *src_pmd, unsigned long addr,
....[      10]: struct vm_area_struct *vma);
....[      11]: extern void huge_pmd_set_accessed(struct mm_struct *mm,
....[      12]: struct vm_area_struct *vma,
....[      13]: unsigned long address, pmd_t *pmd,
....[      14]: pmd_t orig_pmd, int dirty);
....[      15]: extern int do_huge_pmd_wp_page(struct mm_struct *mm, struct vm_area_struct *vma,
....[      16]: unsigned long address, pmd_t *pmd,
....[      17]: pmd_t orig_pmd);
....[      18]: extern struct page *follow_trans_huge_pmd(struct vm_area_struct *vma,
....[      19]: unsigned long addr,
....[      20]: pmd_t *pmd,
....[      21]: unsigned int flags);
....[      22]: extern int zap_huge_pmd(struct mmu_gather *tlb,
....[      23]: struct vm_area_struct *vma,
....[      24]: pmd_t *pmd, unsigned long addr);
....[      25]: extern int mincore_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
....[      26]: unsigned long addr, unsigned long end,
....[      27]: unsigned char *vec);
....[      28]: extern int move_huge_pmd(struct vm_area_struct *vma,
....[      29]: struct vm_area_struct *new_vma,
....[      30]: unsigned long old_addr,
....[      31]: unsigned long new_addr, unsigned long old_end,
....[      32]: pmd_t *old_pmd, pmd_t *new_pmd);
....[      33]: extern int change_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
....[      34]: unsigned long addr, pgprot_t newprot,
....[      35]: int prot_numa);
....[      37]: enum transparent_hugepage_flag {
....[      38]: TRANSPARENT_HUGEPAGE_FLAG,
....[      39]: TRANSPARENT_HUGEPAGE_REQ_MADV_FLAG,
....[      40]: TRANSPARENT_HUGEPAGE_DEFRAG_FLAG,
....[      41]: TRANSPARENT_HUGEPAGE_DEFRAG_REQ_MADV_FLAG,
....[      42]: TRANSPARENT_HUGEPAGE_DEFRAG_KHUGEPAGED_FLAG,
....[      43]: TRANSPARENT_HUGEPAGE_USE_ZERO_PAGE_FLAG,
....[      47]: };
....[      49]: enum page_check_address_pmd_flag {
....[      50]: PAGE_CHECK_ADDRESS_PMD_FLAG,
....[      51]: PAGE_CHECK_ADDRESS_PMD_NOTSPLITTING_FLAG,
....[      52]: PAGE_CHECK_ADDRESS_PMD_SPLITTING_FLAG,
....[      53]: };
....[      54]: extern pmd_t *page_check_address_pmd(struct page *page,
....[      55]: struct mm_struct *mm,
....[      56]: unsigned long address,
....[      57]: enum page_check_address_pmd_flag flag,
....[      58]: spinlock_t **ptl);
....[     191]: static inline __attribute__((no_instrument_function)) int
....[     192]: split_huge_page_to_list(struct page *page, struct list_head *list)
....[     193]: {
....[     194]: return 0;
....[     195]: }
....[     196]: static inline __attribute__((no_instrument_function)) int split_huge_page(struct page *page)
....[     197]: {
....[     198]: return 0;
....[     199]: }
....[     207]: static inline __attribute__((no_instrument_function)) int hugepage_madvise(struct vm_area_struct *vma,
....[     208]: unsigned long *vm_flags, int advice)
....[     209]: {
....[     210]: do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" \
....                "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry))); do { } while (\
....                1); } while (0);
....[     211]: return 0;
....[     212]: }
....[     213]: static inline __attribute__((no_instrument_function)) void vma_adjust_trans_huge(struct vm_area_struct *vma\
....                ,
....[     214]: unsigned long start,
....[     215]: unsigned long end,
....[     216]: long adjust_next)
....[     217]: {
....[     218]: }
....[     219]: static inline __attribute__((no_instrument_function)) int pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct \
....                *vma,
....[     220]: spinlock_t **ptl)
....[     221]: {
....[     222]: return 0;
....[     223]: }
....[     225]: static inline __attribute__((no_instrument_function)) int do_huge_pmd_numa_page(struct mm_struct *mm, struct \
....                vm_area_struct *vma,
....[     226]: unsigned long addr, pmd_t pmd, pmd_t *pmdp)
....[     227]: {
....[     228]: return 0;
....[     229]: }
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/huge_mm.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...[     295]: static inline __attribute__((no_instrument_function)) int put_page_testzero(struct page *page)
...[     296]: {
...[     297]: ((void)(sizeof(( long)(atomic_read(&page->_count) == 0))));
...[     298]: return atomic_dec_and_test(&page->_count);
...[     299]: }
...[     307]: static inline __attribute__((no_instrument_function)) int get_page_unless_zero(struct page *page)
...[     308]: {
...[     309]: return atomic_add_unless((&page->_count), 1, 0);
...[     310]: }
...[     319]: static inline __attribute__((no_instrument_function)) int put_page_unless_one(struct page *page)
...[     320]: {
...[     321]: return atomic_add_unless(&page->_count, -1, 1);
...[     322]: }
...[     324]: extern int page_is_ram(unsigned long pfn);
...[     327]: struct page *vmalloc_to_page(const void *addr);
...[     328]: unsigned long vmalloc_to_pfn(const void *addr);
...[     336]: static inline __attribute__((no_instrument_function)) int is_vmalloc_addr(const void *x)
...[     337]: {
...[     339]: unsigned long addr = (unsigned long)x;
...[     341]: return addr >= (0xffffc90000000000UL) && addr < (0xffffe8ffffffffffUL);
...[     345]: }
...[     347]: extern int is_vmalloc_or_module_addr(const void *x);
...[     355]: static inline __attribute__((no_instrument_function)) void compound_lock(struct page *page)
...[     356]: {
...[     361]: }
...[     363]: static inline __attribute__((no_instrument_function)) void compound_unlock(struct page *page)
...[     364]: {
...[     369]: }
...[     371]: static inline __attribute__((no_instrument_function)) unsigned long compound_lock_irqsave(struct page *page\
...                )
...[     372]: {
...[     373]: unsigned long flags = flags;
...[     378]: return flags;
...[     379]: }
...[     381]: static inline __attribute__((no_instrument_function)) void compound_unlock_irqrestore(struct page *page,
...[     382]: unsigned long flags)
...[     383]: {
...[     388]: }
...[     390]: static inline __attribute__((no_instrument_function)) struct page *compound_head(struct page *page)
...[     391]: {
...[     392]: if (__builtin_expect(!!(PageTail(page)), 0))
...[     393]: return page->first_page;
...[     394]: return page;
...[     395]: }
...[     402]: static inline __attribute__((no_instrument_function)) void page_mapcount_reset(struct page *page)
...[     403]: {
...[     404]: atomic_set(&(page)->_mapcount, -1);
...[     405]: }
...[     407]: static inline __attribute__((no_instrument_function)) int page_mapcount(struct page *page)
...[     408]: {
...[     409]: return atomic_read(&(page)->_mapcount) + 1;
...[     410]: }
...[     412]: static inline __attribute__((no_instrument_function)) int page_count(struct page *page)
...[     413]: {
...[     414]: return atomic_read(&compound_head(page)->_count);
...[     415]: }
...[     417]: static inline __attribute__((no_instrument_function)) void get_huge_page_tail(struct page *page)
...[     418]: {
...[     423]: ((void)(sizeof(( long)(page_mapcount(page) < 0))));
...[     424]: ((void)(sizeof(( long)(atomic_read(&page->_count) != 0))));
...[     425]: atomic_inc(&page->_mapcount);
...[     426]: }
...[     428]: extern bool __get_page_tail(struct page *page);
...[     430]: static inline __attribute__((no_instrument_function)) void get_page(struct page *page)
...[     431]: {
...[     432]: if (__builtin_expect(!!(PageTail(page)), 0))
...[     433]: if (__builtin_expect(!!(__get_page_tail(page)), 1))
...[     434]: return;
...[     439]: ((void)(sizeof(( long)(atomic_read(&page->_count) <= 0))));
...[     440]: atomic_inc(&page->_count);
...[     441]: }
...[     443]: static inline __attribute__((no_instrument_function)) struct page *virt_to_head_page(const void *x)
...[     444]: {
...[     445]: struct page *page = (((struct page *)(0xffffea0000000000UL)) + (__phys_addr_nodebug((unsigned long)(x)) >> 12))\
...                ;
...[     446]: return compound_head(page);
...[     447]: }
...[     453]: static inline __attribute__((no_instrument_function)) void init_page_count(struct page *page)
...[     454]: {
...[     455]: atomic_set(&page->_count, 1);
...[     456]: }
...[     469]: static inline __attribute__((no_instrument_function)) int PageBuddy(struct page *page)
...[     470]: {
...[     471]: return atomic_read(&page->_mapcount) == (-128);
...[     472]: }
...[     474]: static inline __attribute__((no_instrument_function)) void __SetPageBuddy(struct page *page)
...[     475]: {
...[     476]: ((void)(sizeof(( long)(atomic_read(&page->_mapcount) != -1))));
...[     477]: atomic_set(&page->_mapcount, (-128));
...[     478]: }
...[     480]: static inline __attribute__((no_instrument_function)) void __ClearPageBuddy(struct page *page)
...[     481]: {
...[     482]: ((void)(sizeof(( long)(!PageBuddy(page)))));
...[     483]: atomic_set(&page->_mapcount, -1);
...[     484]: }
...[     486]: void put_page(struct page *page);
...[     487]: void put_pages_list(struct list_head *pages);
...[     489]: void split_page(struct page *page, unsigned int order);
...[     490]: int split_free_page(struct page *page);
...[     497]: typedef void compound_page_dtor(struct page *);
...[     499]: static inline __attribute__((no_instrument_function)) void set_compound_page_dtor(struct page *page,
...[     500]: compound_page_dtor *dtor)
...[     501]: {
...[     502]: page[1].lru.next = (void *)dtor;
...[     503]: }
...[     505]: static inline __attribute__((no_instrument_function)) compound_page_dtor *get_compound_page_dtor(struct page \
...                *page)
...[     506]: {
...[     507]: return (compound_page_dtor *)page[1].lru.next;
...[     508]: }
...[     510]: static inline __attribute__((no_instrument_function)) int compound_order(struct page *page)
...[     511]: {
...[     512]: if (!PageHead(page))
...[     513]: return 0;
...[     514]: return (unsigned long)page[1].lru.prev;
...[     515]: }
...[     517]: static inline __attribute__((no_instrument_function)) void set_compound_order(struct page *page, unsigned long \
...                order)
...[     518]: {
...[     519]: page[1].lru.prev = (void *)order;
...[     520]: }
...[     529]: static inline __attribute__((no_instrument_function)) pte_t maybe_mkwrite(pte_t pte, struct vm_area_struct *\
...                vma)
...[     530]: {
...[     531]: if (__builtin_expect(!!(vma->vm_flags & 0x00000002), 1))
...[     532]: pte = pte_mkwrite(pte);
...[     533]: return pte;
...[     534]: }
...[     641]: static inline __attribute__((no_instrument_function)) enum zone_type page_zonenum(const struct page *page)
...[     642]: {
...[     643]: return (page->flags >> (((((sizeof(unsigned long)*8) - 0) - 6) - 2) * (2 != 0))) & ((1UL << 2) - 1);
...[     644]: }
...[     658]: static inline __attribute__((no_instrument_function)) int page_zone_id(struct page *page)
...[     659]: {
...[     660]: return (page->flags >> (((((sizeof(unsigned long)*8) - 0) < ((((sizeof(unsigned long)*8) - 0) - 6) - 2))? ((sizeof(unsigned \
...                long)*8) - 0) : ((((sizeof(unsigned long)*8) - 0) - 6) - 2)) * (((46 - 27) + 2) != 0))) & ((1UL << ((46 - 27) + 2)) - 1);
...[     661]: }
...[     663]: static inline __attribute__((no_instrument_function)) int zone_to_nid(struct zone *zone)
...[     664]: {
...[     666]: return zone->node;
...[     670]: }
...[     673]: extern int page_to_nid(const struct page *page);
...[     749]: static inline __attribute__((no_instrument_function)) int page_cpupid_xchg_last(struct page *page, int cpupid\
...                )
...[     750]: {
...[     751]: return page_to_nid(page);
...[     752]: }
...[     754]: static inline __attribute__((no_instrument_function)) int page_cpupid_last(struct page *page)
...[     755]: {
...[     756]: return page_to_nid(page);
...[     757]: }
...[     759]: static inline __attribute__((no_instrument_function)) int cpupid_to_nid(int cpupid)
...[     760]: {
...[     761]: return -1;
...[     762]: }
...[     764]: static inline __attribute__((no_instrument_function)) int cpupid_to_pid(int cpupid)
...[     765]: {
...[     766]: return -1;
...[     767]: }
...[     769]: static inline __attribute__((no_instrument_function)) int cpupid_to_cpu(int cpupid)
...[     770]: {
...[     771]: return -1;
...[     772]: }
...[     774]: static inline __attribute__((no_instrument_function)) int cpu_pid_to_cpupid(int nid, int pid)
...[     775]: {
...[     776]: return -1;
...[     777]: }
...[     779]: static inline __attribute__((no_instrument_function)) bool cpupid_pid_unset(int cpupid)
...[     780]: {
...[     781]: return 1;
...[     782]: }
...[     784]: static inline __attribute__((no_instrument_function)) void page_cpupid_reset_last(struct page *page)
...[     785]: {
...[     786]: }
...[     788]: static inline __attribute__((no_instrument_function)) bool cpupid_match_pid(struct task_struct *task, int cpupid\
...                )
...[     789]: {
...[     790]: return false;
...[     791]: }
...[     794]: static inline __attribute__((no_instrument_function)) struct zone *page_zone(const struct page *page)
...[     795]: {
...[     796]: return &(node_data[page_to_nid(page)])->node_zones[page_zonenum(page)];
...[     797]: }
...[     812]: static inline __attribute__((no_instrument_function)) void set_page_zone(struct page *page, enum zone_type zone\
...                )
...[     813]: {
...[     814]: page->flags &= ~(((1UL << 2) - 1) << (((((sizeof(unsigned long)*8) - 0) - 6) - 2) * (2 != 0)));
...[     815]: page->flags |= (zone & ((1UL << 2) - 1)) << (((((sizeof(unsigned long)*8) - 0) - 6) - 2) * (2 != 0));
...[     816]: }
...[     818]: static inline __attribute__((no_instrument_function)) void set_page_node(struct page *page, unsigned long node\
...                )
...[     819]: {
...[     820]: page->flags &= ~(((1UL << 6) - 1) << ((((sizeof(unsigned long)*8) - 0) - 6) * (6 != 0)));
...[     821]: page->flags |= (node & ((1UL << 6) - 1)) << ((((sizeof(unsigned long)*8) - 0) - 6) * (6 != 0));
...[     822]: }
...[     824]: static inline __attribute__((no_instrument_function)) void set_page_links(struct page *page, enum zone_type zone\
...                ,
...[     825]: unsigned long node, unsigned long pfn)
...[     826]: {
...[     827]: set_page_zone(page, zone);
...[     828]: set_page_node(page, node);
...[     832]: }
..#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vmstat.h
....[      11]: extern int sysctl_stat_interval;
....[      24]: struct vm_event_state {
....[      25]: unsigned long event[NR_VM_EVENT_ITEMS];
....[      26]: };
....[      28]: extern __attribute__((section(".data..percpu" ""))) __typeof__(struct vm_event_state) vm_event_states;
....[      30]: static inline __attribute__((no_instrument_function)) void __count_vm_event(enum vm_event_item item)
....[      31]: {
....[      32]: do { do { const void *__vpp_verify = (typeof((&(((vm_event_states.event[item])))) + 0))((void *)0); (void)__vpp_verify\
....                ; } while (0); switch(sizeof(((vm_event_states.event[item])))) { case 1: do { typedef typeof((((vm_event_states\
....                .event[item])))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1\
....                )) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((vm_event_states.event[\
....                item]))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))\
....                )); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm\
....                ("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "qi" ((pao_T__)((1)))); break; case \
....                2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ \
....                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addw %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) \
....                asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decl "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" \
....                ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%"\
....                "gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" \
....                "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item])))) : "re" ((pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; case 2: do { typedef \
....                typeof((((vm_event_states.event[item])))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) \
....                == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof(\
....                (((vm_event_states.event[item]))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item]))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item\
....                ]))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "qi" ((pao_T__)(\
....                (1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])\
....                )))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else \
....                asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break\
....                ; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (\
....                pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addl %1, "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
....                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decq "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" \
....                ((((vm_event_states.event[item])))) : "re" ((pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (\
....                0);break; case 4: do { typedef typeof((((vm_event_states.event[item])))) pao_T__; const int pao_ID__ = (__builtin_constant_p\
....                ((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch \
....                (sizeof((((vm_event_states.event[item]))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (\
....                (((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item]))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "qi" \
....                ((pao_T__)((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event\
....                [item]))))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))\
....                )); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1))\
....                )); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))))\
....                ; else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm(\
....                "addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case \
....                8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ \
....                == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addq %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "re" ((pao_T__)((1)))); break; default: __bad_percpu_size\
....                (); } } while (0);break; case 8: do { typedef typeof((((vm_event_states.event[item])))) pao_T__; const int pao_ID__ \
....                = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((\
....                1)); (void)pao_tmp__; } switch (sizeof((((vm_event_states.event[item]))))) { case 1: if (pao_ID__ == 1) asm("incb "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" \
....                "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item])))) : "qi" ((pao_T__)((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" \
....                ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item]))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" \
....                ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event\
....                [item]))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))\
....                )); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1))\
....                )); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))))\
....                ; else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm(\
....                "addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "re" ((pao_T__)((1)))); break; default\
....                : __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter();break; } } while (0);
....[      33]: }
....[      35]: static inline __attribute__((no_instrument_function)) void count_vm_event(enum vm_event_item item)
....[      36]: {
....[      37]: do { do { const void *__vpp_verify = (typeof((&(((vm_event_states.event[item])))) + 0))((void *)0); (void)__vpp_verify\
....                ; } while (0); switch(sizeof(((vm_event_states.event[item])))) { case 1: do { typedef typeof((((vm_event_states\
....                .event[item])))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1\
....                )) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof((((vm_event_states.event[\
....                item]))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))\
....                )); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm\
....                ("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "qi" ((pao_T__)((1)))); break; case \
....                2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ \
....                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addw %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) \
....                asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decl "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" \
....                ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%"\
....                "gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" \
....                "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item])))) : "re" ((pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (0);break; case 2: do { typedef \
....                typeof((((vm_event_states.event[item])))) pao_T__; const int pao_ID__ = (__builtin_constant_p((1)) && (((1)) \
....                == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch (sizeof(\
....                (((vm_event_states.event[item]))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item]))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item\
....                ]))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "qi" ((pao_T__)(\
....                (1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])\
....                )))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else \
....                asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break\
....                ; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (\
....                pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addl %1, "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case 8: if (pao_ID__ \
....                == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decq "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" \
....                ((((vm_event_states.event[item])))) : "re" ((pao_T__)((1)))); break; default: __bad_percpu_size(); } } while (\
....                0);break; case 4: do { typedef typeof((((vm_event_states.event[item])))) pao_T__; const int pao_ID__ = (__builtin_constant_p\
....                ((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((1)); (void)pao_tmp__; } switch \
....                (sizeof((((vm_event_states.event[item]))))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (\
....                (((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item]))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "qi" \
....                ((pao_T__)((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event\
....                [item]))))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))\
....                )); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1))\
....                )); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))))\
....                ; else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm(\
....                "addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1)))); break; case \
....                8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ \
....                == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addq %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "re" ((pao_T__)((1)))); break; default: __bad_percpu_size\
....                (); } } while (0);break; case 8: do { typedef typeof((((vm_event_states.event[item])))) pao_T__; const int pao_ID__ \
....                = (__builtin_constant_p((1)) && (((1)) == 1 || ((1)) == -1)) ? (int)((1)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((\
....                1)); (void)pao_tmp__; } switch (sizeof((((vm_event_states.event[item]))))) { case 1: if (pao_ID__ == 1) asm("incb "\
....                "%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" \
....                "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item])))) : "qi" ((pao_T__)((1)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" \
....                ((((vm_event_states.event[item]))))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states\
....                .event[item]))))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" \
....                ((pao_T__)((1)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event\
....                [item]))))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))\
....                )); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "ri" ((pao_T__)((1))\
....                )); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))))\
....                ; else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item]))))); else asm(\
....                "addq %1, ""%%""gs"":" "%P" "0" : "+m" ((((vm_event_states.event[item])))) : "re" ((pao_T__)((1)))); break; default\
....                : __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter();break; } } while (0);
....[      38]: }
....[      40]: static inline __attribute__((no_instrument_function)) void __count_vm_events(enum vm_event_item item, long delta\
....                )
....[      41]: {
....[      42]: do { do { const void *__vpp_verify = (typeof((&((vm_event_states.event[item]))) + 0))((void *)0); (void)__vpp_verify\
....                ; } while (0); switch(sizeof((vm_event_states.event[item]))) { case 1: do { typedef typeof(((vm_event_states.event\
....                [item]))) pao_T__; const int pao_ID__ = (__builtin_constant_p((delta)) && (((delta)) == 1 || ((delta)) == -1)) ? (int\
....                )((delta)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((delta)); (void)pao_tmp__; } switch (sizeof(((vm_event_states\
....                .event[item])))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item\
....                ])))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm\
....                ("addb %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "qi" ((pao_T__)((delta)))); break\
....                ; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ \
....                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addw %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break; case 4: if (pao_ID__ == \
....                1) asm("incl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decl "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%"\
....                "gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" \
....                "0" : "+m" (((vm_event_states.event[item])))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item]))) : "re" ((pao_T__)((delta)))); break; default: __bad_percpu_size(); } } while (0);break; case 2: do \
....                { typedef typeof(((vm_event_states.event[item]))) pao_T__; const int pao_ID__ = (__builtin_constant_p((delta\
....                )) && (((delta)) == 1 || ((delta)) == -1)) ? (int)((delta)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((delta)); (void\
....                )pao_tmp__; } switch (sizeof(((vm_event_states.event[item])))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"\
....                ":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : \
....                "+m" (((vm_event_states.event[item])))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.\
....                event[item]))) : "qi" ((pao_T__)((delta)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item])))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__\
....                )((delta)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item\
....                ])))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm\
....                ("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break\
....                ; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ \
....                == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addq %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "re" ((pao_T__)((delta)))); break; default: __bad_percpu_size\
....                (); } } while (0);break; case 4: do { typedef typeof(((vm_event_states.event[item]))) pao_T__; const int pao_ID__ = \
....                (__builtin_constant_p((delta)) && (((delta)) == 1 || ((delta)) == -1)) ? (int)((delta)) : 0; if (0) { pao_T__ pao_tmp__\
....                ; pao_tmp__ = ((delta)); (void)pao_tmp__; } switch (sizeof(((vm_event_states.event[item])))) { case 1: if (pao_ID__ \
....                == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decb "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item]))) : "qi" ((pao_T__)((delta)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%"\
....                "gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" \
....                "0" : "+m" (((vm_event_states.event[item])))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item]))) : "ri" ((pao_T__)((delta)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item])))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__\
....                )((delta)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item\
....                ])))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm\
....                ("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "re" ((pao_T__)((delta)))); break\
....                ; default: __bad_percpu_size(); } } while (0);break; case 8: do { typedef typeof(((vm_event_states.event[item]))\
....                ) pao_T__; const int pao_ID__ = (__builtin_constant_p((delta)) && (((delta)) == 1 || ((delta)) == -1)) ? (int)((delta\
....                )) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((delta)); (void)pao_tmp__; } switch (sizeof(((vm_event_states.event\
....                [item])))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))))\
....                ; else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addb %1, "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "qi" ((pao_T__)((delta)))); break; case 2: if (pao_ID__ \
....                == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decw "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%"\
....                "gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" \
....                "0" : "+m" (((vm_event_states.event[item])))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item]))) : "ri" ((pao_T__)((delta)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item])))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "re" ((pao_T__\
....                )((delta)))); break; default: __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter();\
....                break; } } while (0);
....[      43]: }
....[      45]: static inline __attribute__((no_instrument_function)) void count_vm_events(enum vm_event_item item, long delta\
....                )
....[      46]: {
....[      47]: do { do { const void *__vpp_verify = (typeof((&((vm_event_states.event[item]))) + 0))((void *)0); (void)__vpp_verify\
....                ; } while (0); switch(sizeof((vm_event_states.event[item]))) { case 1: do { typedef typeof(((vm_event_states.event\
....                [item]))) pao_T__; const int pao_ID__ = (__builtin_constant_p((delta)) && (((delta)) == 1 || ((delta)) == -1)) ? (int\
....                )((delta)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((delta)); (void)pao_tmp__; } switch (sizeof(((vm_event_states\
....                .event[item])))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item\
....                ])))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm\
....                ("addb %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "qi" ((pao_T__)((delta)))); break\
....                ; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ \
....                == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addw %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break; case 4: if (pao_ID__ == \
....                1) asm("incl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decl "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%"\
....                "gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" \
....                "0" : "+m" (((vm_event_states.event[item])))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item]))) : "re" ((pao_T__)((delta)))); break; default: __bad_percpu_size(); } } while (0);break; case 2: do \
....                { typedef typeof(((vm_event_states.event[item]))) pao_T__; const int pao_ID__ = (__builtin_constant_p((delta\
....                )) && (((delta)) == 1 || ((delta)) == -1)) ? (int)((delta)) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((delta)); (void\
....                )pao_tmp__; } switch (sizeof(((vm_event_states.event[item])))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"\
....                ":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : \
....                "+m" (((vm_event_states.event[item])))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.\
....                event[item]))) : "qi" ((pao_T__)((delta)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item])))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__\
....                )((delta)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item\
....                ])))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm\
....                ("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break\
....                ; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ \
....                == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addq %1, ""%%""gs"\
....                ":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "re" ((pao_T__)((delta)))); break; default: __bad_percpu_size\
....                (); } } while (0);break; case 4: do { typedef typeof(((vm_event_states.event[item]))) pao_T__; const int pao_ID__ = \
....                (__builtin_constant_p((delta)) && (((delta)) == 1 || ((delta)) == -1)) ? (int)((delta)) : 0; if (0) { pao_T__ pao_tmp__\
....                ; pao_tmp__ = ((delta)); (void)pao_tmp__; } switch (sizeof(((vm_event_states.event[item])))) { case 1: if (pao_ID__ \
....                == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decb "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addb %1, ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item]))) : "qi" ((pao_T__)((delta)))); break; case 2: if (pao_ID__ == 1) asm("incw ""%%"\
....                "gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decw ""%%""gs"":" "%P" \
....                "0" : "+m" (((vm_event_states.event[item])))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item]))) : "ri" ((pao_T__)((delta)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item])))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "ri" ((pao_T__\
....                )((delta)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item\
....                ])))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm\
....                ("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "re" ((pao_T__)((delta)))); break\
....                ; default: __bad_percpu_size(); } } while (0);break; case 8: do { typedef typeof(((vm_event_states.event[item]))\
....                ) pao_T__; const int pao_ID__ = (__builtin_constant_p((delta)) && (((delta)) == 1 || ((delta)) == -1)) ? (int)((delta\
....                )) : 0; if (0) { pao_T__ pao_tmp__; pao_tmp__ = ((delta)); (void)pao_tmp__; } switch (sizeof(((vm_event_states.event\
....                [item])))) { case 1: if (pao_ID__ == 1) asm("incb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))))\
....                ; else if (pao_ID__ == -1) asm("decb ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addb %1, "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "qi" ((pao_T__)((delta)))); break; case 2: if (pao_ID__ \
....                == 1) asm("incw ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decw "\
....                "%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else asm("addw %1, ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item]))) : "ri" ((pao_T__)((delta)))); break; case 4: if (pao_ID__ == 1) asm("incl ""%%"\
....                "gs"":" "%P" "0" : "+m" (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decl ""%%""gs"":" "%P" \
....                "0" : "+m" (((vm_event_states.event[item])))); else asm("addl %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item]))) : "ri" ((pao_T__)((delta)))); break; case 8: if (pao_ID__ == 1) asm("incq ""%%""gs"":" "%P" "0" : "+m" \
....                (((vm_event_states.event[item])))); else if (pao_ID__ == -1) asm("decq ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states\
....                .event[item])))); else asm("addq %1, ""%%""gs"":" "%P" "0" : "+m" (((vm_event_states.event[item]))) : "re" ((pao_T__\
....                )((delta)))); break; default: __bad_percpu_size(); } } while (0);break; default: __bad_size_call_parameter();\
....                break; } } while (0);
....[      48]: }
....[      50]: extern void all_vm_events(unsigned long *);
....[      52]: extern void vm_events_fold_cpu(int cpu);
....[      93]: extern atomic_long_t vm_stat[NR_VM_ZONE_STAT_ITEMS];
....[      95]: static inline __attribute__((no_instrument_function)) void zone_page_state_add(long x, struct zone *zone,
....[      96]: enum zone_stat_item item)
....[      97]: {
....[      98]: atomic_long_add(x, &zone->vm_stat[item]);
....[      99]: atomic_long_add(x, &vm_stat[item]);
....[     100]: }
....[     102]: static inline __attribute__((no_instrument_function)) unsigned long global_page_state(enum zone_stat_item item\
....                )
....[     103]: {
....[     104]: long x = atomic_long_read(&vm_stat[item]);
....[     106]: if (x < 0)
....[     107]: x = 0;
....[     109]: return x;
....[     110]: }
....[     112]: static inline __attribute__((no_instrument_function)) unsigned long zone_page_state(struct zone *zone,
....[     113]: enum zone_stat_item item)
....[     114]: {
....[     115]: long x = atomic_long_read(&zone->vm_stat[item]);
....[     117]: if (x < 0)
....[     118]: x = 0;
....[     120]: return x;
....[     121]: }
....[     129]: static inline __attribute__((no_instrument_function)) unsigned long zone_page_state_snapshot(struct zone *zone\
....                ,
....[     130]: enum zone_stat_item item)
....[     131]: {
....[     132]: long x = atomic_long_read(&zone->vm_stat[item]);
....[     135]: int cpu;
....[     136]: for (((cpu)) = -1; ((cpu)) = cpumask_next(((cpu)), (cpu_online_mask)), ((cpu)) < nr_cpu_ids;)
....[     137]: x += ({ do { const void *__vpp_verify = (typeof((((zone->pageset))) + 0))((void *)0); (void)__vpp_verify; } while (0\
....                ); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*((zone->pageset))) *)((zone->pageset)))); (typeof\
....                ((typeof(*((zone->pageset))) *)((zone->pageset)))) (__ptr + (((__per_cpu_offset[(cpu)])))); }); })->vm_stat_diff\
....                [item];
....[     139]: if (x < 0)
....[     140]: x = 0;
....[     142]: return x;
....[     143]: }
....[     145]: extern unsigned long global_reclaimable_pages(void);
....[     153]: static inline __attribute__((no_instrument_function)) unsigned long node_page_state(int node,
....[     154]: enum zone_stat_item item)
....[     155]: {
....[     156]: struct zone *zones = (node_data[node])->node_zones;
....[     158]: return
....[     160]: zone_page_state(&zones[ZONE_DMA], item) +
....[     163]: zone_page_state(&zones[ZONE_DMA32], item) +
....[     168]: zone_page_state(&zones[ZONE_NORMAL], item) +
....[     169]: zone_page_state(&zones[ZONE_MOVABLE], item);
....[     170]: }
....[     172]: extern void zone_statistics(struct zone *, struct zone *, gfp_t gfp);
....[     184]: extern void inc_zone_state(struct zone *, enum zone_stat_item);
....[     187]: void __mod_zone_page_state(struct zone *, enum zone_stat_item item, int);
....[     188]: void __inc_zone_page_state(struct page *, enum zone_stat_item);
....[     189]: void __dec_zone_page_state(struct page *, enum zone_stat_item);
....[     191]: void mod_zone_page_state(struct zone *, enum zone_stat_item, int);
....[     192]: void inc_zone_page_state(struct page *, enum zone_stat_item);
....[     193]: void dec_zone_page_state(struct page *, enum zone_stat_item);
....[     195]: extern void inc_zone_state(struct zone *, enum zone_stat_item);
....[     196]: extern void __inc_zone_state(struct zone *, enum zone_stat_item);
....[     197]: extern void dec_zone_state(struct zone *, enum zone_stat_item);
....[     198]: extern void __dec_zone_state(struct zone *, enum zone_stat_item);
....[     200]: void cpu_vm_stats_fold(int cpu);
....[     201]: void refresh_zone_stat_thresholds(void);
....[     203]: void drain_zonestat(struct zone *zone, struct per_cpu_pageset *);
....[     205]: int calculate_pressure_threshold(struct zone *zone);
....[     206]: int calculate_normal_threshold(struct zone *zone);
....[     207]: void set_pgdat_percpu_threshold(pg_data_t *pgdat,
....[     208]: int (*calculate_pressure)(struct zone *));
....[     263]: static inline __attribute__((no_instrument_function)) void __mod_zone_freepage_state(struct zone *zone, int \
....                nr_pages,
....[     264]: int migratetype)
....[     265]: {
....[     266]: __mod_zone_page_state(zone, NR_FREE_PAGES, nr_pages);
....[     267]: if (false)
....[     268]: __mod_zone_page_state(zone, NR_FREE_CMA_PAGES, nr_pages);
....[     269]: }
....[     271]: extern const char * const vmstat_text[];
....#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/vmstat.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
...[     839]: static inline __attribute__((no_instrument_function)) __attribute__((always_inline)) void *lowmem_page_address\
...                (const struct page *page)
...[     840]: {
...[     841]: return ((void *)((unsigned long)(((phys_addr_t)((unsigned long)((page) - ((struct page *)(0xffffea0000000000UL\
...                )))) << 12))+((unsigned long)(0xffff880000000000UL))));
...[     842]: }
...[     889]: extern struct address_space *page_mapping(struct page *page);
...[     892]: static inline __attribute__((no_instrument_function)) void *page_rmapping(struct page *page)
...[     893]: {
...[     894]: return (void *)((unsigned long)page->mapping & ~(1 | 2));
...[     895]: }
...[     897]: extern struct address_space *__page_file_mapping(struct page *);
...[     899]: static inline __attribute__((no_instrument_function))
...[     900]: struct address_space *page_file_mapping(struct page *page)
...[     901]: {
...[     902]: if (__builtin_expect(!!(PageSwapCache(page)), 0))
...[     903]: return __page_file_mapping(page);
...[     905]: return page->mapping;
...[     906]: }
...[     908]: static inline __attribute__((no_instrument_function)) int PageAnon(struct page *page)
...[     909]: {
...[     910]: return ((unsigned long)page->mapping & 1) != 0;
...[     911]: }
...[     917]: static inline __attribute__((no_instrument_function)) unsigned long page_index(struct page *page)
...[     918]: {
...[     919]: if (__builtin_expect(!!(PageSwapCache(page)), 0))
...[     920]: return ((page)->private);
...[     921]: return page->index;
...[     922]: }
...[     924]: extern unsigned long __page_file_index(struct page *page);
...[     930]: static inline __attribute__((no_instrument_function)) unsigned long page_file_index(struct page *page)
...[     931]: {
...[     932]: if (__builtin_expect(!!(PageSwapCache(page)), 0))
...[     933]: return __page_file_index(page);
...[     935]: return page->index;
...[     936]: }
...[     941]: static inline __attribute__((no_instrument_function)) int page_mapped(struct page *page)
...[     942]: {
...[     943]: return atomic_read(&(page)->_mapcount) >= 0;
...[     944]: }
...[     978]: extern void pagefault_out_of_memory(void);
...[     989]: extern void show_free_areas(unsigned int flags);
...[     990]: extern bool skip_free_areas_node(unsigned int flags, int nid);
...[     992]: int shmem_zero_setup(struct vm_area_struct *);
...[     994]: extern int can_do_mlock(void);
...[     995]: extern int user_shm_lock(size_t, struct user_struct *);
...[     996]: extern void user_shm_unlock(size_t, struct user_struct *);
...[    1001]: struct zap_details {
...[    1002]: struct vm_area_struct *nonlinear_vma;
...[    1003]: struct address_space *check_mapping;
...[    1004]: unsigned long first_index;
...[    1005]: unsigned long last_index;
...[    1006]: };
...[    1008]: struct page *vm_normal_page(struct vm_area_struct *vma, unsigned long addr,
...[    1009]: pte_t pte);
...[    1011]: int zap_vma_ptes(struct vm_area_struct *vma, unsigned long address,
...[    1012]: unsigned long size);
...[    1013]: void zap_page_range(struct vm_area_struct *vma, unsigned long address,
...[    1014]: unsigned long size, struct zap_details *);
...[    1015]: void unmap_vmas(struct mmu_gather *tlb, struct vm_area_struct *start_vma,
...[    1016]: unsigned long start, unsigned long end);
...[    1034]: struct mm_walk {
...[    1035]: int (*pgd_entry)(pgd_t *pgd, unsigned long addr,
...[    1036]: unsigned long next, struct mm_walk *walk);
...[    1037]: int (*pud_entry)(pud_t *pud, unsigned long addr,
...[    1038]: unsigned long next, struct mm_walk *walk);
...[    1039]: int (*pmd_entry)(pmd_t *pmd, unsigned long addr,
...[    1040]: unsigned long next, struct mm_walk *walk);
...[    1041]: int (*pte_entry)(pte_t *pte, unsigned long addr,
...[    1042]: unsigned long next, struct mm_walk *walk);
...[    1043]: int (*pte_hole)(unsigned long addr, unsigned long next,
...[    1044]: struct mm_walk *walk);
...[    1045]: int (*hugetlb_entry)(pte_t *pte, unsigned long hmask,
...[    1046]: unsigned long addr, unsigned long next,
...[    1047]: struct mm_walk *walk);
...[    1048]: struct mm_struct *mm;
...[    1049]: void *private;
...[    1050]: };
...[    1052]: int walk_page_range(unsigned long addr, unsigned long end,
...[    1053]: struct mm_walk *walk);
...[    1054]: void free_pgd_range(struct mmu_gather *tlb, unsigned long addr,
...[    1055]: unsigned long end, unsigned long floor, unsigned long ceiling);
...[    1056]: int copy_page_range(struct mm_struct *dst, struct mm_struct *src,
...[    1057]: struct vm_area_struct *vma);
...[    1058]: void unmap_mapping_range(struct address_space *mapping,
...[    1059]: loff_t const holebegin, loff_t const holelen, int even_cows);
...[    1060]: int follow_pfn(struct vm_area_struct *vma, unsigned long address,
...[    1061]: unsigned long *pfn);
...[    1062]: int follow_phys(struct vm_area_struct *vma, unsigned long address,
...[    1063]: unsigned int flags, unsigned long *prot, resource_size_t *phys);
...[    1064]: int generic_access_phys(struct vm_area_struct *vma, unsigned long addr,
...[    1065]: void *buf, int len, int write);
...[    1067]: static inline __attribute__((no_instrument_function)) void unmap_shared_mapping_range(struct address_space \
...                *mapping,
...[    1068]: loff_t const holebegin, loff_t const holelen)
...[    1069]: {
...[    1070]: unmap_mapping_range(mapping, holebegin, holelen, 0);
...[    1071]: }
...[    1073]: extern void truncate_pagecache(struct inode *inode, loff_t new);
...[    1074]: extern void truncate_setsize(struct inode *inode, loff_t newsize);
...[    1075]: void truncate_pagecache_range(struct inode *inode, loff_t offset, loff_t end);
...[    1076]: int truncate_inode_page(struct address_space *mapping, struct page *page);
...[    1077]: int generic_error_remove_page(struct address_space *mapping, struct page *page);
...[    1078]: int invalidate_inode_page(struct page *page);
...[    1081]: extern int handle_mm_fault(struct mm_struct *mm, struct vm_area_struct *vma,
...[    1082]: unsigned long address, unsigned int flags);
...[    1083]: extern int fixup_user_fault(struct task_struct *tsk, struct mm_struct *mm,
...[    1084]: unsigned long address, unsigned int fault_flags);
...[    1104]: extern int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len, int write);
...[    1105]: extern int access_remote_vm(struct mm_struct *mm, unsigned long addr,
...[    1106]: void *buf, int len, int write);
...[    1108]: long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
...[    1109]: unsigned long start, unsigned long nr_pages,
...[    1110]: unsigned int foll_flags, struct page **pages,
...[    1111]: struct vm_area_struct **vmas, int *nonblocking);
...[    1112]: long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
...[    1113]: unsigned long start, unsigned long nr_pages,
...[    1114]: int write, int force, struct page **pages,
...[    1115]: struct vm_area_struct **vmas);
...[    1116]: int get_user_pages_fast(unsigned long start, int nr_pages, int write,
...[    1117]: struct page **pages);
...[    1118]: struct kvec;
...[    1119]: int get_kernel_pages(const struct kvec *iov, int nr_pages, int write,
...[    1120]: struct page **pages);
...[    1121]: int get_kernel_page(unsigned long start, int write, struct page **pages);
...[    1122]: struct page *get_dump_page(unsigned long addr);
...[    1124]: extern int try_to_release_page(struct page * page, gfp_t gfp_mask);
...[    1125]: extern void do_invalidatepage(struct page *page, unsigned int offset,
...[    1126]: unsigned int length);
...[    1128]: int __set_page_dirty_nobuffers(struct page *page);
...[    1129]: int __set_page_dirty_no_writeback(struct page *page);
...[    1130]: int redirty_page_for_writepage(struct writeback_control *wbc,
...[    1131]: struct page *page);
...[    1132]: void account_page_dirtied(struct page *page, struct address_space *mapping);
...[    1133]: void account_page_writeback(struct page *page);
...[    1134]: int set_page_dirty(struct page *page);
...[    1135]: int set_page_dirty_lock(struct page *page);
...[    1136]: int clear_page_dirty_for_io(struct page *page);
...[    1139]: static inline __attribute__((no_instrument_function)) int vma_growsdown(struct vm_area_struct *vma, unsigned \
...                long addr)
...[    1140]: {
...[    1141]: return vma && (vma->vm_end == addr) && (vma->vm_flags & 0x00000100);
...[    1142]: }
...[    1144]: static inline __attribute__((no_instrument_function)) int stack_guard_page_start(struct vm_area_struct *vma\
...                ,
...[    1145]: unsigned long addr)
...[    1146]: {
...[    1147]: return (vma->vm_flags & 0x00000100) &&
...[    1148]: (vma->vm_start == addr) &&
...[    1149]: !vma_growsdown(vma->vm_prev, addr);
...[    1150]: }
...[    1153]: static inline __attribute__((no_instrument_function)) int vma_growsup(struct vm_area_struct *vma, unsigned long \
...                addr)
...[    1154]: {
...[    1155]: return vma && (vma->vm_start == addr) && (vma->vm_flags & 0x00000000);
...[    1156]: }
...[    1158]: static inline __attribute__((no_instrument_function)) int stack_guard_page_end(struct vm_area_struct *vma,
...[    1159]: unsigned long addr)
...[    1160]: {
...[    1161]: return (vma->vm_flags & 0x00000000) &&
...[    1162]: (vma->vm_end == addr) &&
...[    1163]: !vma_growsup(vma->vm_next, addr);
...[    1164]: }
...[    1166]: extern pid_t
...[    1167]: vm_is_stack(struct task_struct *task, struct vm_area_struct *vma, int in_group);
...[    1169]: extern unsigned long move_page_tables(struct vm_area_struct *vma,
...[    1170]: unsigned long old_addr, struct vm_area_struct *new_vma,
...[    1171]: unsigned long new_addr, unsigned long len,
...[    1172]: bool need_rmap_locks);
...[    1173]: extern unsigned long change_protection(struct vm_area_struct *vma, unsigned long start,
...[    1174]: unsigned long end, pgprot_t newprot,
...[    1175]: int dirty_accountable, int prot_numa);
...[    1176]: extern int mprotect_fixup(struct vm_area_struct *vma,
...[    1177]: struct vm_area_struct **pprev, unsigned long start,
...[    1178]: unsigned long end, unsigned long newflags);
...[    1183]: int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
...[    1184]: struct page **pages);
...[    1188]: static inline __attribute__((no_instrument_function)) unsigned long get_mm_counter(struct mm_struct *mm, int \
...                member)
...[    1189]: {
...[    1190]: long val = atomic_long_read(&mm->rss_stat.count[member]);
...[    1197]: if (val < 0)
...[    1198]: val = 0;
...[    1200]: return (unsigned long)val;
...[    1201]: }
...[    1203]: static inline __attribute__((no_instrument_function)) void add_mm_counter(struct mm_struct *mm, int member, long \
...                value)
...[    1204]: {
...[    1205]: atomic_long_add(value, &mm->rss_stat.count[member]);
...[    1206]: }
...[    1208]: static inline __attribute__((no_instrument_function)) void inc_mm_counter(struct mm_struct *mm, int member)
...[    1209]: {
...[    1210]: atomic_long_inc(&mm->rss_stat.count[member]);
...[    1211]: }
...[    1213]: static inline __attribute__((no_instrument_function)) void dec_mm_counter(struct mm_struct *mm, int member)
...[    1214]: {
...[    1215]: atomic_long_dec(&mm->rss_stat.count[member]);
...[    1216]: }
...[    1218]: static inline __attribute__((no_instrument_function)) unsigned long get_mm_rss(struct mm_struct *mm)
...[    1219]: {
...[    1220]: return get_mm_counter(mm, MM_FILEPAGES) +
...[    1221]: get_mm_counter(mm, MM_ANONPAGES);
...[    1222]: }
...[    1224]: static inline __attribute__((no_instrument_function)) unsigned long get_mm_hiwater_rss(struct mm_struct *mm\
...                )
...[    1225]: {
...[    1226]: return ({ typeof(mm->hiwater_rss) _max1 = (mm->hiwater_rss); typeof(get_mm_rss(mm)) _max2 = (get_mm_rss(mm)); \
...                (void) (&_max1 == &_max2); _max1 > _max2 ? _max1 : _max2; });
...[    1227]: }
...[    1229]: static inline __attribute__((no_instrument_function)) unsigned long get_mm_hiwater_vm(struct mm_struct *mm)
...[    1230]: {
...[    1231]: return ({ typeof(mm->hiwater_vm) _max1 = (mm->hiwater_vm); typeof(mm->total_vm) _max2 = (mm->total_vm); (void) \
...                (&_max1 == &_max2); _max1 > _max2 ? _max1 : _max2; });
...[    1232]: }
...[    1234]: static inline __attribute__((no_instrument_function)) void update_hiwater_rss(struct mm_struct *mm)
...[    1235]: {
...[    1236]: unsigned long _rss = get_mm_rss(mm);
...[    1238]: if ((mm)->hiwater_rss < _rss)
...[    1239]: (mm)->hiwater_rss = _rss;
...[    1240]: }
...[    1242]: static inline __attribute__((no_instrument_function)) void update_hiwater_vm(struct mm_struct *mm)
...[    1243]: {
...[    1244]: if (mm->hiwater_vm < mm->total_vm)
...[    1245]: mm->hiwater_vm = mm->total_vm;
...[    1246]: }
...[    1248]: static inline __attribute__((no_instrument_function)) void setmax_mm_hiwater_rss(unsigned long *maxrss,
...[    1249]: struct mm_struct *mm)
...[    1250]: {
...[    1251]: unsigned long hiwater_rss = get_mm_hiwater_rss(mm);
...[    1253]: if (*maxrss < hiwater_rss)
...[    1254]: *maxrss = hiwater_rss;
...[    1255]: }
...[    1258]: void sync_mm_rss(struct mm_struct *mm);
...[    1265]: int vma_wants_writenotify(struct vm_area_struct *vma);
...[    1267]: extern pte_t *__get_locked_pte(struct mm_struct *mm, unsigned long addr,
...[    1268]: spinlock_t **ptl);
...[    1269]: static inline __attribute__((no_instrument_function)) pte_t *get_locked_pte(struct mm_struct *mm, unsigned long \
...                addr,
...[    1270]: spinlock_t **ptl)
...[    1271]: {
...[    1272]: pte_t *ptep;
...[    1273]: (ptep = __get_locked_pte(mm, addr, ptl));
...[    1274]: return ptep;
...[    1275]: }
...[    1284]: int __pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long address);
...[    1294]: int __pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long address);
...[    1297]: int __pte_alloc(struct mm_struct *mm, struct vm_area_struct *vma,
...[    1298]: pmd_t *pmd, unsigned long address);
...[    1299]: int __pte_alloc_kernel(pmd_t *pmd, unsigned long address);
...[    1306]: static inline __attribute__((no_instrument_function)) pud_t *pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned \
...                long address)
...[    1307]: {
...[    1308]: return (__builtin_expect(!!(pgd_none(*pgd)), 0) && __pud_alloc(mm, pgd, address))?
...[    1309]: ((void *)0): pud_offset(pgd, address);
...[    1310]: }
...[    1312]: static inline __attribute__((no_instrument_function)) pmd_t *pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned \
...                long address)
...[    1313]: {
...[    1314]: return (__builtin_expect(!!(pud_none(*pud)), 0) && __pmd_alloc(mm, pud, address))?
...[    1315]: ((void *)0): pmd_offset(pud, address);
...[    1316]: }
...[    1329]: static inline __attribute__((no_instrument_function)) bool ptlock_alloc(struct page *page)
...[    1330]: {
...[    1331]: return true;
...[    1332]: }
...[    1334]: static inline __attribute__((no_instrument_function)) void ptlock_free(struct page *page)
...[    1335]: {
...[    1336]: }
...[    1338]: static inline __attribute__((no_instrument_function)) spinlock_t *ptlock_ptr(struct page *page)
...[    1339]: {
...[    1340]: return &page->ptl;
...[    1341]: }
...[    1344]: static inline __attribute__((no_instrument_function)) spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd\
...                )
...[    1345]: {
...[    1346]: return ptlock_ptr((((struct page *)(0xffffea0000000000UL)) + ((native_pmd_val(*pmd) & ((pteval_t)(((signed long\
...                )(~(((1UL) << 12)-1))) & ((phys_addr_t)((1ULL << 46) - 1))))) >> 12)));
...[    1347]: }
...[    1349]: static inline __attribute__((no_instrument_function)) bool ptlock_init(struct page *page)
...[    1350]: {
...[    1359]: ((void)(sizeof(( long)(*(unsigned long *)&page->ptl))));
...[    1360]: if (!ptlock_alloc(page))
...[    1361]: return false;
...[    1362]: do { spinlock_check(ptlock_ptr(page)); do { *(&(ptlock_ptr(page))->rlock) = (raw_spinlock_t) { .raw_lock = { { 0 } \
...                }, }; } while (0); } while (0);
...[    1363]: return true;
...[    1364]: }
...[    1367]: static inline __attribute__((no_instrument_function)) void pte_lock_deinit(struct page *page)
...[    1368]: {
...[    1369]: page->mapping = ((void *)0);
...[    1370]: ptlock_free(page);
...[    1371]: }
...[    1385]: static inline __attribute__((no_instrument_function)) bool pgtable_page_ctor(struct page *page)
...[    1386]: {
...[    1387]: inc_zone_page_state(page, NR_PAGETABLE);
...[    1388]: return ptlock_init(page);
...[    1389]: }
...[    1391]: static inline __attribute__((no_instrument_function)) void pgtable_page_dtor(struct page *page)
...[    1392]: {
...[    1393]: pte_lock_deinit(page);
...[    1394]: dec_zone_page_state(page, NR_PAGETABLE);
...[    1395]: }
...[    1427]: static inline __attribute__((no_instrument_function)) spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd\
...                )
...[    1428]: {
...[    1429]: return ptlock_ptr((((struct page *)(0xffffea0000000000UL)) + (__phys_addr_nodebug((unsigned long)(pmd)) >> 12\
...                )));
...[    1430]: }
...[    1432]: static inline __attribute__((no_instrument_function)) bool pgtable_pmd_page_ctor(struct page *page)
...[    1433]: {
...[    1437]: return ptlock_init(page);
...[    1438]: }
...[    1440]: static inline __attribute__((no_instrument_function)) void pgtable_pmd_page_dtor(struct page *page)
...[    1441]: {
...[    1445]: ptlock_free(page);
...[    1446]: }
...[    1464]: static inline __attribute__((no_instrument_function)) spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd)
...[    1465]: {
...[    1466]: spinlock_t *ptl = pmd_lockptr(mm, pmd);
...[    1467]: spin_lock(ptl);
...[    1468]: return ptl;
...[    1469]: }
...[    1471]: extern void free_area_init(unsigned long * zones_size);
...[    1472]: extern void free_area_init_node(int nid, unsigned long * zones_size,
...[    1473]: unsigned long zone_start_pfn, unsigned long *zholes_size);
...[    1474]: extern void free_initmem(void);
...[    1482]: extern unsigned long free_reserved_area(void *start, void *end,
...[    1483]: int poison, char *s);
...[    1493]: extern void adjust_managed_page_count(struct page *page, long count);
...[    1494]: extern void mem_init_print_info(const char *str);
...[    1497]: static inline __attribute__((no_instrument_function)) void __free_reserved_page(struct page *page)
...[    1498]: {
...[    1499]: ClearPageReserved(page);
...[    1500]: init_page_count(page);
...[    1501]: __free_pages((page), 0);
...[    1502]: }
...[    1504]: static inline __attribute__((no_instrument_function)) void free_reserved_page(struct page *page)
...[    1505]: {
...[    1506]: __free_reserved_page(page);
...[    1507]: adjust_managed_page_count(page, 1);
...[    1508]: }
...[    1510]: static inline __attribute__((no_instrument_function)) void mark_page_reserved(struct page *page)
...[    1511]: {
...[    1512]: SetPageReserved(page);
...[    1513]: adjust_managed_page_count(page, -1);
...[    1514]: }
...[    1522]: static inline __attribute__((no_instrument_function)) unsigned long free_initmem_default(int poison)
...[    1523]: {
...[    1524]: extern char __init_begin[], __init_end[];
...[    1526]: return free_reserved_area(&__init_begin, &__init_end,
...[    1527]: poison, "unused kernel");
...[    1528]: }
...[    1530]: static inline __attribute__((no_instrument_function)) unsigned long get_num_physpages(void)
...[    1531]: {
...[    1532]: int nid;
...[    1533]: unsigned long phys_pages = 0;
...[    1535]: for (((nid)) = __first_node(&(node_states[N_ONLINE])); ((nid)) < (1 << 6); ((nid)) = __next_node((((nid))), &((node_states\
...                [N_ONLINE]))))
...[    1536]: phys_pages += ((node_data[nid])->node_present_pages);
...[    1538]: return phys_pages;
...[    1539]: }
...[    1568]: extern void free_area_init_nodes(unsigned long *max_zone_pfn);
...[    1569]: unsigned long node_map_pfn_alignment(void);
...[    1570]: unsigned long __absent_pages_in_range(int nid, unsigned long start_pfn,
...[    1571]: unsigned long end_pfn);
...[    1572]: extern unsigned long absent_pages_in_range(unsigned long start_pfn,
...[    1573]: unsigned long end_pfn);
...[    1574]: extern void get_pfn_range_for_nid(unsigned int nid,
...[    1575]: unsigned long *start_pfn, unsigned long *end_pfn);
...[    1576]: extern unsigned long find_min_pfn_with_active_regions(void);
...[    1577]: extern void free_bootmem_with_active_regions(int nid,
...[    1578]: unsigned long max_low_pfn);
...[    1579]: extern void sparse_memory_present_with_active_regions(int nid);
...[    1591]: extern int __attribute__ ((__section__(".meminit.text"))) __attribute__((no_instrument_function)) early_pfn_to_nid\
...                (unsigned long pfn);
...[    1598]: extern void set_dma_reserve(unsigned long new_dma_reserve);
...[    1599]: extern void memmap_init_zone(unsigned long, int, unsigned long,
...[    1600]: unsigned long, enum memmap_context);
...[    1601]: extern void setup_per_zone_wmarks(void);
...[    1602]: extern int __attribute__ ((__section__(".meminit.text"))) __attribute__((no_instrument_function)) init_per_zone_wmark_min\
...                (void);
...[    1603]: extern void mem_init(void);
...[    1604]: extern void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) mmap_init\
...                (void);
...[    1605]: extern void show_mem(unsigned int flags);
...[    1606]: extern void si_meminfo(struct sysinfo * val);
...[    1607]: extern void si_meminfo_node(struct sysinfo *val, int nid);
...[    1609]: extern __attribute__((format(printf, 3, 4)))
...[    1610]: void warn_alloc_failed(gfp_t gfp_mask, int order, const char *fmt, ...);
...[    1612]: extern void setup_per_cpu_pageset(void);
...[    1614]: extern void zone_pcp_update(struct zone *zone);
...[    1615]: extern void zone_pcp_reset(struct zone *zone);
...[    1618]: extern int min_free_kbytes;
...[    1621]: extern atomic_long_t mmap_pages_allocated;
...[    1622]: extern int nommu_shrink_inode_mappings(struct inode *, size_t, size_t);
...[    1625]: void vma_interval_tree_insert(struct vm_area_struct *node,
...[    1626]: struct rb_root *root);
...[    1627]: void vma_interval_tree_insert_after(struct vm_area_struct *node,
...[    1628]: struct vm_area_struct *prev,
...[    1629]: struct rb_root *root);
...[    1630]: void vma_interval_tree_remove(struct vm_area_struct *node,
...[    1631]: struct rb_root *root);
...[    1632]: struct vm_area_struct *vma_interval_tree_iter_first(struct rb_root *root,
...[    1633]: unsigned long start, unsigned long last);
...[    1634]: struct vm_area_struct *vma_interval_tree_iter_next(struct vm_area_struct *node,
...[    1635]: unsigned long start, unsigned long last);
...[    1641]: static inline __attribute__((no_instrument_function)) void vma_nonlinear_insert(struct vm_area_struct *vma\
...                ,
...[    1642]: struct list_head *list)
...[    1643]: {
...[    1644]: list_add_tail(&vma->shared.nonlinear, list);
...[    1645]: }
...[    1647]: void anon_vma_interval_tree_insert(struct anon_vma_chain *node,
...[    1648]: struct rb_root *root);
...[    1649]: void anon_vma_interval_tree_remove(struct anon_vma_chain *node,
...[    1650]: struct rb_root *root);
...[    1651]: struct anon_vma_chain *anon_vma_interval_tree_iter_first(
...[    1652]: struct rb_root *root, unsigned long start, unsigned long last);
...[    1653]: struct anon_vma_chain *anon_vma_interval_tree_iter_next(
...[    1654]: struct anon_vma_chain *node, unsigned long start, unsigned long last);
...[    1664]: extern int __vm_enough_memory(struct mm_struct *mm, long pages, int cap_sys_admin);
...[    1665]: extern int vma_adjust(struct vm_area_struct *vma, unsigned long start,
...[    1666]: unsigned long end, unsigned long pgoff, struct vm_area_struct *insert);
...[    1667]: extern struct vm_area_struct *vma_merge(struct mm_struct *,
...[    1668]: struct vm_area_struct *prev, unsigned long addr, unsigned long end,
...[    1669]: unsigned long vm_flags, struct anon_vma *, struct file *, unsigned long,
...[    1670]: struct mempolicy *);
...[    1671]: extern struct anon_vma *find_mergeable_anon_vma(struct vm_area_struct *);
...[    1672]: extern int split_vma(struct mm_struct *,
...[    1673]: struct vm_area_struct *, unsigned long addr, int new_below);
...[    1674]: extern int insert_vm_struct(struct mm_struct *, struct vm_area_struct *);
...[    1675]: extern void __vma_link_rb(struct mm_struct *, struct vm_area_struct *,
...[    1676]: struct rb_node **, struct rb_node *);
...[    1677]: extern void unlink_file_vma(struct vm_area_struct *);
...[    1678]: extern struct vm_area_struct *copy_vma(struct vm_area_struct **,
...[    1679]: unsigned long addr, unsigned long len, unsigned long pgoff,
...[    1680]: bool *need_rmap_locks);
...[    1681]: extern void exit_mmap(struct mm_struct *);
...[    1683]: extern int mm_take_all_locks(struct mm_struct *mm);
...[    1684]: extern void mm_drop_all_locks(struct mm_struct *mm);
...[    1686]: extern void set_mm_exe_file(struct mm_struct *mm, struct file *new_exe_file);
...[    1687]: extern struct file *get_mm_exe_file(struct mm_struct *mm);
...[    1689]: extern int may_expand_vm(struct mm_struct *mm, unsigned long npages);
...[    1690]: extern int install_special_mapping(struct mm_struct *mm,
...[    1691]: unsigned long addr, unsigned long len,
...[    1692]: unsigned long flags, struct page **pages);
...[    1694]: extern unsigned long get_unmapped_area(struct file *, unsigned long, unsigned long, unsigned long, unsigned long)\
...                ;
...[    1696]: extern unsigned long mmap_region(struct file *file, unsigned long addr,
...[    1697]: unsigned long len, vm_flags_t vm_flags, unsigned long pgoff);
...[    1698]: extern unsigned long do_mmap_pgoff(struct file *file, unsigned long addr,
...[    1699]: unsigned long len, unsigned long prot, unsigned long flags,
...[    1700]: unsigned long pgoff, unsigned long *populate);
...[    1701]: extern int do_munmap(struct mm_struct *, unsigned long, size_t);
...[    1704]: extern int __mm_populate(unsigned long addr, unsigned long len,
...[    1705]: int ignore_errors);
...[    1706]: static inline __attribute__((no_instrument_function)) void mm_populate(unsigned long addr, unsigned long len)
...[    1707]: {
...[    1709]: (void) __mm_populate(addr, len, 1);
...[    1710]: }
...[    1716]: extern unsigned long vm_brk(unsigned long, unsigned long);
...[    1717]: extern int vm_munmap(unsigned long, size_t);
...[    1718]: extern unsigned long vm_mmap(struct file *, unsigned long,
...[    1719]: unsigned long, unsigned long,
...[    1720]: unsigned long, unsigned long);
...[    1722]: struct vm_unmapped_area_info {
...[    1724]: unsigned long flags;
...[    1725]: unsigned long length;
...[    1726]: unsigned long low_limit;
...[    1727]: unsigned long high_limit;
...[    1728]: unsigned long align_mask;
...[    1729]: unsigned long align_offset;
...[    1730]: };
...[    1732]: extern unsigned long unmapped_area(struct vm_unmapped_area_info *info);
...[    1733]: extern unsigned long unmapped_area_topdown(struct vm_unmapped_area_info *info);
...[    1744]: static inline __attribute__((no_instrument_function)) unsigned long
...[    1745]: vm_unmapped_area(struct vm_unmapped_area_info *info)
...[    1746]: {
...[    1747]: if (!(info->flags & 1))
...[    1748]: return unmapped_area(info);
...[    1749]: else
...[    1750]: return unmapped_area_topdown(info);
...[    1751]: }
...[    1754]: extern void truncate_inode_pages(struct address_space *, loff_t);
...[    1755]: extern void truncate_inode_pages_range(struct address_space *,
...[    1756]: loff_t lstart, loff_t lend);
...[    1759]: extern int filemap_fault(struct vm_area_struct *, struct vm_fault *);
...[    1760]: extern int filemap_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf);
...[    1763]: int write_one_page(struct page *page, int wait);
...[    1764]: void task_dirty_inc(struct task_struct *tsk);
...[    1770]: int force_page_cache_readahead(struct address_space *mapping, struct file *filp,
...[    1771]: unsigned long offset, unsigned long nr_to_read);
...[    1773]: void page_cache_sync_readahead(struct address_space *mapping,
...[    1774]: struct file_ra_state *ra,
...[    1775]: struct file *filp,
...[    1776]: unsigned long offset,
...[    1777]: unsigned long size);
...[    1779]: void page_cache_async_readahead(struct address_space *mapping,
...[    1780]: struct file_ra_state *ra,
...[    1781]: struct file *filp,
...[    1782]: struct page *pg,
...[    1783]: unsigned long offset,
...[    1784]: unsigned long size);
...[    1786]: unsigned long max_sane_readahead(unsigned long nr);
...[    1787]: unsigned long ra_submit(struct file_ra_state *ra,
...[    1788]: struct address_space *mapping,
...[    1789]: struct file *filp);
...[    1792]: extern int expand_stack(struct vm_area_struct *vma, unsigned long address);
...[    1795]: extern int expand_downwards(struct vm_area_struct *vma,
...[    1796]: unsigned long address);
...[    1804]: extern struct vm_area_struct * find_vma(struct mm_struct * mm, unsigned long addr);
...[    1805]: extern struct vm_area_struct * find_vma_prev(struct mm_struct * mm, unsigned long addr,
...[    1806]: struct vm_area_struct **pprev);
...[    1810]: static inline __attribute__((no_instrument_function)) struct vm_area_struct * find_vma_intersection(struct \
...                mm_struct * mm, unsigned long start_addr, unsigned long end_addr)
...[    1811]: {
...[    1812]: struct vm_area_struct * vma = find_vma(mm,start_addr);
...[    1814]: if (vma && end_addr <= vma->vm_start)
...[    1815]: vma = ((void *)0);
...[    1816]: return vma;
...[    1817]: }
...[    1819]: static inline __attribute__((no_instrument_function)) unsigned long vma_pages(struct vm_area_struct *vma)
...[    1820]: {
...[    1821]: return (vma->vm_end - vma->vm_start) >> 12;
...[    1822]: }
...[    1825]: static inline __attribute__((no_instrument_function)) struct vm_area_struct *find_exact_vma(struct mm_struct \
...                *mm,
...[    1826]: unsigned long vm_start, unsigned long vm_end)
...[    1827]: {
...[    1828]: struct vm_area_struct *vma = find_vma(mm, vm_start);
...[    1830]: if (vma && (vma->vm_start != vm_start || vma->vm_end != vm_end))
...[    1831]: vma = ((void *)0);
...[    1833]: return vma;
...[    1834]: }
...[    1837]: pgprot_t vm_get_page_prot(unsigned long vm_flags);
...[    1850]: struct vm_area_struct *find_extend_vma(struct mm_struct *, unsigned long addr);
...[    1851]: int remap_pfn_range(struct vm_area_struct *, unsigned long addr,
...[    1852]: unsigned long pfn, unsigned long size, pgprot_t);
...[    1853]: int vm_insert_page(struct vm_area_struct *, unsigned long addr, struct page *);
...[    1854]: int vm_insert_pfn(struct vm_area_struct *vma, unsigned long addr,
...[    1855]: unsigned long pfn);
...[    1856]: int vm_insert_mixed(struct vm_area_struct *vma, unsigned long addr,
...[    1857]: unsigned long pfn);
...[    1858]: int vm_iomap_memory(struct vm_area_struct *vma, phys_addr_t start, unsigned long len);
...[    1861]: struct page *follow_page_mask(struct vm_area_struct *vma,
...[    1862]: unsigned long address, unsigned int foll_flags,
...[    1863]: unsigned int *page_mask);
...[    1865]: static inline __attribute__((no_instrument_function)) struct page *follow_page(struct vm_area_struct *vma,
...[    1866]: unsigned long address, unsigned int foll_flags)
...[    1867]: {
...[    1868]: unsigned int unused_page_mask;
...[    1869]: return follow_page_mask(vma, address, foll_flags, &unused_page_mask);
...[    1870]: }
...[    1885]: typedef int (*pte_fn_t)(pte_t *pte, pgtable_t token, unsigned long addr,
...[    1886]: void *data);
...[    1887]: extern int apply_to_page_range(struct mm_struct *mm, unsigned long address,
...[    1888]: unsigned long size, pte_fn_t fn, void *data);
...[    1891]: void vm_stat_account(struct mm_struct *, unsigned long, struct file *, long);
...[    1906]: static inline __attribute__((no_instrument_function)) void
...[    1907]: kernel_map_pages(struct page *page, int numpages, int enable) {}
...[    1909]: static inline __attribute__((no_instrument_function)) bool kernel_page_present(struct page *page) { return true\
...                ; }
...[    1913]: extern struct vm_area_struct *get_gate_vma(struct mm_struct *mm);
...[    1915]: int in_gate_area_no_mm(unsigned long addr);
...[    1916]: int in_gate_area(struct mm_struct *mm, unsigned long addr);
...[    1923]: extern int sysctl_drop_caches;
...[    1924]: int drop_caches_sysctl_handler(struct ctl_table *, int,
...[    1925]: void *, size_t *, loff_t *);
...[    1928]: unsigned long shrink_slab(struct shrink_control *shrink,
...[    1929]: unsigned long nr_pages_scanned,
...[    1930]: unsigned long lru_pages);
...[    1935]: extern int randomize_va_space;
...[    1938]: const char * arch_vma_name(struct vm_area_struct *vma);
...[    1939]: void print_vma_addr(char *prefix, unsigned long rip);
...[    1941]: void sparse_mem_maps_populate_node(struct page **map_map,
...[    1942]: unsigned long pnum_begin,
...[    1943]: unsigned long pnum_end,
...[    1944]: unsigned long map_count,
...[    1945]: int nodeid);
...[    1947]: struct page *sparse_mem_map_populate(unsigned long pnum, int nid);
...[    1948]: pgd_t *vmemmap_pgd_populate(unsigned long addr, int node);
...[    1949]: pud_t *vmemmap_pud_populate(pgd_t *pgd, unsigned long addr, int node);
...[    1950]: pmd_t *vmemmap_pmd_populate(pud_t *pud, unsigned long addr, int node);
...[    1951]: pte_t *vmemmap_pte_populate(pmd_t *pmd, unsigned long addr, int node);
...[    1952]: void *vmemmap_alloc_block(unsigned long size, int node);
...[    1953]: void *vmemmap_alloc_block_buf(unsigned long size, int node);
...[    1954]: void vmemmap_verify(pte_t *, int, unsigned long, unsigned long);
...[    1955]: int vmemmap_populate_basepages(unsigned long start, unsigned long end,
...[    1956]: int node);
...[    1957]: int vmemmap_populate(unsigned long start, unsigned long end, int node);
...[    1958]: void vmemmap_populate_print_last(void);
...[    1962]: void register_page_bootmem_memmap(unsigned long section_nr, struct page *map,
...[    1963]: unsigned long size);
...[    1965]: enum mf_flags {
...[    1966]: MF_COUNT_INCREASED = 1 << 0,
...[    1967]: MF_ACTION_REQUIRED = 1 << 1,
...[    1968]: MF_MUST_KILL = 1 << 2,
...[    1969]: MF_SOFT_OFFLINE = 1 << 3,
...[    1970]: };
...[    1971]: extern int memory_failure(unsigned long pfn, int trapno, int flags);
...[    1972]: extern void memory_failure_queue(unsigned long pfn, int trapno, int flags);
...[    1973]: extern int unpoison_memory(unsigned long pfn);
...[    1974]: extern int sysctl_memory_failure_early_kill;
...[    1975]: extern int sysctl_memory_failure_recovery;
...[    1976]: extern void shake_page(struct page *p, int access);
...[    1977]: extern atomic_long_t num_poisoned_pages;
...[    1978]: extern int soft_offline_page(struct page *page, int flags);
...[    1980]: extern void dump_page(struct page *page);
...[    1983]: extern void clear_huge_page(struct page *page,
...[    1984]: unsigned long addr,
...[    1985]: unsigned int pages_per_huge_page);
...[    1986]: extern void copy_user_huge_page(struct page *dst, struct page *src,
...[    1987]: unsigned long addr, struct vm_area_struct *vma,
...[    1988]: unsigned int pages_per_huge_page);
...[    2004]: static inline __attribute__((no_instrument_function)) unsigned int debug_guardpage_minorder(void) { return 0\
...                ; }
...[    2005]: static inline __attribute__((no_instrument_function)) bool page_is_guard(struct page *page) { return false; }
...[    2009]: void __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) setup_nr_node_ids\
...                (void);
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/mm.h
.#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/suspend.h
..# Starting FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/freezer.h
...#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/freezer.h
...[      12]: extern atomic_t system_freezing_cnt;
...[      13]: extern bool pm_freezing;
...[      14]: extern bool pm_nosig_freezing;
...[      19]: extern unsigned int freeze_timeout_msecs;
...[      24]: static inline __attribute__((no_instrument_function)) bool frozen(struct task_struct *p)
...[      25]: {
...[      26]: return p->flags & 0x00010000;
...[      27]: }
...[      29]: extern bool freezing_slow_path(struct task_struct *p);
...[      34]: static inline __attribute__((no_instrument_function)) bool freezing(struct task_struct *p)
...[      35]: {
...[      36]: if (__builtin_expect(!!(!atomic_read(&system_freezing_cnt)), 1))
...[      37]: return false;
...[      38]: return freezing_slow_path(p);
...[      39]: }
...[      42]: extern void __thaw_task(struct task_struct *t);
...[      44]: extern bool __refrigerator(bool check_kthr_stop);
...[      45]: extern int freeze_processes(void);
...[      46]: extern int freeze_kernel_threads(void);
...[      47]: extern void thaw_processes(void);
...[      48]: extern void thaw_kernel_threads(void);
...[      54]: static inline __attribute__((no_instrument_function)) bool try_to_freeze_unsafe(void)
...[      55]: {
...[      56]: do { _cond_resched(); } while (0);
...[      57]: if (__builtin_expect(!!(!freezing(get_current())), 1))
...[      58]: return false;
...[      59]: return __refrigerator(false);
...[      60]: }
...[      62]: static inline __attribute__((no_instrument_function)) bool try_to_freeze(void)
...[      63]: {
...[      64]: if (!(get_current()->flags & 0x00008000))
...[      65]: debug_check_no_locks_held();
...[      66]: return try_to_freeze_unsafe();
...[      67]: }
...[      69]: extern bool freeze_task(struct task_struct *p);
...[      70]: extern bool set_freezable(void);
...[      73]: extern bool cgroup_freezing(struct task_struct *task);
...[     106]: static inline __attribute__((no_instrument_function)) void freezer_do_not_count(void)
...[     107]: {
...[     108]: get_current()->flags |= 0x40000000;
...[     109]: }
...[     118]: static inline __attribute__((no_instrument_function)) void freezer_count(void)
...[     119]: {
...[     120]: get_current()->flags &= ~0x40000000;
...[     126]: asm volatile("mfence":::"memory");
...[     127]: try_to_freeze();
...[     128]: }
...[     131]: static inline __attribute__((no_instrument_function)) void freezer_count_unsafe(void)
...[     132]: {
...[     133]: get_current()->flags &= ~0x40000000;
...[     134]: asm volatile("mfence":::"memory");
...[     135]: try_to_freeze_unsafe();
...[     136]: }
...[     148]: static inline __attribute__((no_instrument_function)) bool freezer_should_skip(struct task_struct *p)
...[     149]: {
...[     157]: asm volatile("mfence":::"memory");
...[     158]: return p->flags & 0x40000000;
...[     159]: }
...[     168]: static inline __attribute__((no_instrument_function)) void freezable_schedule(void)
...[     169]: {
...[     170]: freezer_do_not_count();
...[     171]: schedule();
...[     172]: freezer_count();
...[     173]: }
...[     176]: static inline __attribute__((no_instrument_function)) void freezable_schedule_unsafe(void)
...[     177]: {
...[     178]: freezer_do_not_count();
...[     179]: schedule();
...[     180]: freezer_count_unsafe();
...[     181]: }
...[     187]: static inline __attribute__((no_instrument_function)) long freezable_schedule_timeout(long timeout)
...[     188]: {
...[     189]: long __retval;
...[     190]: freezer_do_not_count();
...[     191]: __retval = schedule_timeout(timeout);
...[     192]: freezer_count();
...[     193]: return __retval;
...[     194]: }
...[     200]: static inline __attribute__((no_instrument_function)) long freezable_schedule_timeout_interruptible(long \
...                timeout)
...[     201]: {
...[     202]: long __retval;
...[     203]: freezer_do_not_count();
...[     204]: __retval = schedule_timeout_interruptible(timeout);
...[     205]: freezer_count();
...[     206]: return __retval;
...[     207]: }
...[     210]: static inline __attribute__((no_instrument_function)) long freezable_schedule_timeout_killable(long timeout\
...                )
...[     211]: {
...[     212]: long __retval;
...[     213]: freezer_do_not_count();
...[     214]: __retval = schedule_timeout_killable(timeout);
...[     215]: freezer_count();
...[     216]: return __retval;
...[     217]: }
...[     220]: static inline __attribute__((no_instrument_function)) long freezable_schedule_timeout_killable_unsafe(long \
...                timeout)
...[     221]: {
...[     222]: long __retval;
...[     223]: freezer_do_not_count();
...[     224]: __retval = schedule_timeout_killable(timeout);
...[     225]: freezer_count_unsafe();
...[     226]: return __retval;
...[     227]: }
...[     233]: static inline __attribute__((no_instrument_function)) int freezable_schedule_hrtimeout_range(ktime_t *expires\
...                ,
...[     234]: unsigned long delta, const enum hrtimer_mode mode)
...[     235]: {
...[     236]: int __retval;
...[     237]: freezer_do_not_count();
...[     238]: __retval = schedule_hrtimeout_range(expires, delta, mode);
...[     239]: freezer_count();
...[     240]: return __retval;
...[     241]: }
...#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/freezer.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/suspend.h
..[      13]: extern void pm_set_vt_switch(int);
..[      21]: extern int pm_prepare_console(void);
..[      22]: extern void pm_restore_console(void);
..[      34]: typedef int suspend_state_t;
..[      43]: enum suspend_stat_step {
..[      44]: SUSPEND_FREEZE = 1,
..[      45]: SUSPEND_PREPARE,
..[      46]: SUSPEND_SUSPEND,
..[      47]: SUSPEND_SUSPEND_LATE,
..[      48]: SUSPEND_SUSPEND_NOIRQ,
..[      49]: SUSPEND_RESUME_NOIRQ,
..[      50]: SUSPEND_RESUME_EARLY,
..[      51]: SUSPEND_RESUME
..[      52]: };
..[      54]: struct suspend_stats {
..[      55]: int success;
..[      56]: int fail;
..[      57]: int failed_freeze;
..[      58]: int failed_prepare;
..[      59]: int failed_suspend;
..[      60]: int failed_suspend_late;
..[      61]: int failed_suspend_noirq;
..[      62]: int failed_resume;
..[      63]: int failed_resume_early;
..[      64]: int failed_resume_noirq;
..[      66]: int last_failed_dev;
..[      67]: char failed_devs[2][40];
..[      68]: int last_failed_errno;
..[      69]: int errno[2];
..[      70]: int last_failed_step;
..[      71]: enum suspend_stat_step failed_steps[2];
..[      72]: };
..[      74]: extern struct suspend_stats suspend_stats;
..[      76]: static inline __attribute__((no_instrument_function)) void dpm_save_failed_dev(const char *name)
..[      77]: {
..[      78]: strlcpy(suspend_stats.failed_devs[suspend_stats.last_failed_dev],
..[      79]: name,
..[      80]: sizeof(suspend_stats.failed_devs[0]));
..[      81]: suspend_stats.last_failed_dev++;
..[      82]: suspend_stats.last_failed_dev %= 2;
..[      83]: }
..[      85]: static inline __attribute__((no_instrument_function)) void dpm_save_failed_errno(int err)
..[      86]: {
..[      87]: suspend_stats.errno[suspend_stats.last_failed_errno] = err;
..[      88]: suspend_stats.last_failed_errno++;
..[      89]: suspend_stats.last_failed_errno %= 2;
..[      90]: }
..[      92]: static inline __attribute__((no_instrument_function)) void dpm_save_failed_step(enum suspend_stat_step step\
..                )
..[      93]: {
..[      94]: suspend_stats.failed_steps[suspend_stats.last_failed_step] = step;
..[      95]: suspend_stats.last_failed_step++;
..[      96]: suspend_stats.last_failed_step %= 2;
..[      97]: }
..[     177]: struct platform_suspend_ops {
..[     178]: int (*valid)(suspend_state_t state);
..[     179]: int (*begin)(suspend_state_t state);
..[     180]: int (*prepare)(void);
..[     181]: int (*prepare_late)(void);
..[     182]: int (*enter)(suspend_state_t state);
..[     183]: void (*wake)(void);
..[     184]: void (*finish)(void);
..[     185]: bool (*suspend_again)(void);
..[     186]: void (*end)(void);
..[     187]: void (*recover)(void);
..[     188]: };
..[     195]: extern void suspend_set_ops(const struct platform_suspend_ops *ops);
..[     196]: extern int suspend_valid_only_mem(suspend_state_t state);
..[     197]: extern void freeze_wake(void);
..[     206]: extern void arch_suspend_disable_irqs(void);
..[     215]: extern void arch_suspend_enable_irqs(void);
..[     217]: extern int pm_suspend(suspend_state_t state);
..[     230]: struct pbe {
..[     231]: void *address;
..[     232]: void *orig_address;
..[     233]: struct pbe *next;
..[     234]: };
..[     237]: extern void mark_free_pages(struct zone *zone);
..[     291]: struct platform_hibernation_ops {
..[     292]: int (*begin)(void);
..[     293]: void (*end)(void);
..[     294]: int (*pre_snapshot)(void);
..[     295]: void (*finish)(void);
..[     296]: int (*prepare)(void);
..[     297]: int (*enter)(void);
..[     298]: void (*leave)(void);
..[     299]: int (*pre_restore)(void);
..[     300]: void (*restore_cleanup)(void);
..[     301]: void (*recover)(void);
..[     302]: };
..[     306]: extern void __register_nosave_region(unsigned long b, unsigned long e, int km);
..[     307]: static inline __attribute__((no_instrument_function)) void __attribute__ ((__section__(".init.text"))) __attribute__\
..                ((no_instrument_function)) register_nosave_region(unsigned long b, unsigned long e)
..[     308]: {
..[     309]: __register_nosave_region(b, e, 0);
..[     310]: }
..[     311]: static inline __attribute__((no_instrument_function)) void __attribute__ ((__section__(".init.text"))) __attribute__\
..                ((no_instrument_function)) register_nosave_region_late(unsigned long b, unsigned long e)
..[     312]: {
..[     313]: __register_nosave_region(b, e, 1);
..[     314]: }
..[     315]: extern int swsusp_page_is_forbidden(struct page *);
..[     316]: extern void swsusp_set_page_free(struct page *);
..[     317]: extern void swsusp_unset_page_free(struct page *);
..[     318]: extern unsigned long get_safe_page(gfp_t gfp_mask);
..[     320]: extern void hibernation_set_ops(const struct platform_hibernation_ops *ops);
..[     321]: extern int hibernate(void);
..[     322]: extern bool system_entering_hibernation(void);
..[     343]: extern struct mutex pm_mutex;
..[     346]: void save_processor_state(void);
..[     347]: void restore_processor_state(void);
..[     350]: extern int register_pm_notifier(struct notifier_block *nb);
..[     351]: extern int unregister_pm_notifier(struct notifier_block *nb);
..[     360]: extern bool events_check_enabled;
..[     362]: extern bool pm_wakeup_pending(void);
..[     363]: extern bool pm_get_wakeup_count(unsigned int *count, bool block);
..[     364]: extern bool pm_save_wakeup_count(unsigned int count);
..[     365]: extern void pm_wakep_autosleep_enabled(bool set);
..[     366]: extern void pm_print_active_wakeup_sources(void);
..[     368]: static inline __attribute__((no_instrument_function)) void lock_system_sleep(void)
..[     369]: {
..[     370]: get_current()->flags |= 0x40000000;
..[     371]: mutex_lock(&pm_mutex);
..[     372]: }
..[     374]: static inline __attribute__((no_instrument_function)) void unlock_system_sleep(void)
..[     375]: {
..[     391]: get_current()->flags &= ~0x40000000;
..[     392]: mutex_unlock(&pm_mutex);
..[     393]: }
..[     417]: extern bool pm_print_times_enabled;
..[     429]: static inline __attribute__((no_instrument_function)) void queue_up_suspend_work(void) {}
..[     450]: static inline __attribute__((no_instrument_function)) unsigned long page_key_additional_pages(unsigned long \
..                pages)
..[     451]: {
..[     452]: return 0;
..[     453]: }
..[     455]: static inline __attribute__((no_instrument_function)) int page_key_alloc(unsigned long pages)
..[     456]: {
..[     457]: return 0;
..[     458]: }
..[     460]: static inline __attribute__((no_instrument_function)) void page_key_free(void) {}
..[     461]: static inline __attribute__((no_instrument_function)) void page_key_read(unsigned long *pfn) {}
..[     462]: static inline __attribute__((no_instrument_function)) void page_key_memorize(unsigned long *pfn) {}
..[     463]: static inline __attribute__((no_instrument_function)) void page_key_write(void *address) {}
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/include/linux/suspend.h
#  Holding FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.# Starting FILE: /Users/paulross/dev/linux/linux-3.13/kernel/smpboot.h
..#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/kernel/smpboot.h
..[       4]: struct task_struct;
..[       7]: struct task_struct *idle_thread_get(unsigned int cpu);
..[       8]: void idle_thread_set_boot_cpu(void);
..[       9]: void idle_threads_init(void);
..[      16]: int smpboot_create_threads(unsigned int cpu);
..[      17]: void smpboot_park_threads(unsigned int cpu);
..[      18]: void smpboot_unpark_threads(unsigned int cpu);
..#   Ending FILE: /Users/paulross/dev/linux/linux-3.13/kernel/smpboot.h
.#  Back in FILE: /Users/paulross/dev/linux/linux-3.13/kernel/cpu.c
.[      27]: static struct mutex cpu_add_remove_lock = { .count = { (1) } , .wait_lock = (spinlock_t ) { { .rlock = { .raw_lock = { { 0 } }, \
.                } } } , .wait_list = { &(cpu_add_remove_lock.wait_list), &(cpu_add_remove_lock.wait_list) } };
.[      33]: void cpu_maps_update_begin(void)
.[      34]: {
.[      35]: mutex_lock(&cpu_add_remove_lock);
.[      36]: }
.[      38]: void cpu_maps_update_done(void)
.[      39]: {
.[      40]: mutex_unlock(&cpu_add_remove_lock);
.[      41]: }
.[      43]: static struct raw_notifier_head cpu_chain = { .head = ((void *)0) };
.[      48]: static int cpu_hotplug_disabled;
.[      52]: static struct {
.[      53]: struct task_struct *active_writer;
.[      54]: struct mutex lock;
.[      59]: int refcount;
.[      60]: } cpu_hotplug = {
.[      61]: .active_writer = ((void *)0),
.[      62]: .lock = { .count = { (1) } , .wait_lock = (spinlock_t ) { { .rlock = { .raw_lock = { { 0 } }, } } } , .wait_list = { &(cpu_hotplug.lock\
.                .wait_list), &(cpu_hotplug.lock.wait_list) } },
.[      63]: .refcount = 0,
.[      64]: };
.[      66]: void get_online_cpus(void)
.[      67]: {
.[      68]: do { _cond_resched(); } while (0);
.[      69]: if (cpu_hotplug.active_writer == get_current())
.[      70]: return;
.[      71]: mutex_lock(&cpu_hotplug.lock);
.[      72]: cpu_hotplug.refcount++;
.[      73]: mutex_unlock(&cpu_hotplug.lock);
.[      75]: }
.[      76]: extern typeof(get_online_cpus) get_online_cpus; extern void *__crc_get_online_cpus __attribute__((weak)); static \
.                const unsigned long __kcrctab_get_online_cpus __attribute__((__used__)) __attribute__((section("___kcrctab" \
.                "_gpl" "+" "get_online_cpus"), unused)) = (unsigned long) &__crc_get_online_cpus; static const char __kstrtab_get_online_cpus\
.                [] __attribute__((section("__ksymtab_strings"), aligned(1))) = "get_online_cpus"; const struct kernel_symbol \
.                __ksymtab_get_online_cpus __attribute__((__used__)) __attribute__((section("___ksymtab" "_gpl" "+" "get_online_cpus"\
.                ), unused)) = { (unsigned long)&get_online_cpus, __kstrtab_get_online_cpus };
.[      78]: void put_online_cpus(void)
.[      79]: {
.[      80]: if (cpu_hotplug.active_writer == get_current())
.[      81]: return;
.[      82]: mutex_lock(&cpu_hotplug.lock);
.[      84]: if (({ int __ret_warn_on = !!(!cpu_hotplug.refcount); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null\
.                (__FILE__, __LINE__); __builtin_expect(!!(__ret_warn_on), 0); }))
.[      85]: cpu_hotplug.refcount++;
.[      87]: if (!--cpu_hotplug.refcount && __builtin_expect(!!(cpu_hotplug.active_writer), 0))
.[      88]: wake_up_process(cpu_hotplug.active_writer);
.[      89]: mutex_unlock(&cpu_hotplug.lock);
.[      91]: }
.[      92]: extern typeof(put_online_cpus) put_online_cpus; extern void *__crc_put_online_cpus __attribute__((weak)); static \
.                const unsigned long __kcrctab_put_online_cpus __attribute__((__used__)) __attribute__((section("___kcrctab" \
.                "_gpl" "+" "put_online_cpus"), unused)) = (unsigned long) &__crc_put_online_cpus; static const char __kstrtab_put_online_cpus\
.                [] __attribute__((section("__ksymtab_strings"), aligned(1))) = "put_online_cpus"; const struct kernel_symbol \
.                __ksymtab_put_online_cpus __attribute__((__used__)) __attribute__((section("___ksymtab" "_gpl" "+" "put_online_cpus"\
.                ), unused)) = { (unsigned long)&put_online_cpus, __kstrtab_put_online_cpus };
.[     116]: void cpu_hotplug_begin(void)
.[     117]: {
.[     118]: cpu_hotplug.active_writer = get_current();
.[     120]: for (;;) {
.[     121]: mutex_lock(&cpu_hotplug.lock);
.[     122]: if (__builtin_expect(!!(!cpu_hotplug.refcount), 1))
.[     123]: break;
.[     124]: do { get_current()->state = (2); } while (0);
.[     125]: mutex_unlock(&cpu_hotplug.lock);
.[     126]: schedule();
.[     127]: }
.[     128]: }
.[     130]: void cpu_hotplug_done(void)
.[     131]: {
.[     132]: cpu_hotplug.active_writer = ((void *)0);
.[     133]: mutex_unlock(&cpu_hotplug.lock);
.[     134]: }
.[     143]: void cpu_hotplug_disable(void)
.[     144]: {
.[     145]: cpu_maps_update_begin();
.[     146]: cpu_hotplug_disabled = 1;
.[     147]: cpu_maps_update_done();
.[     148]: }
.[     150]: void cpu_hotplug_enable(void)
.[     151]: {
.[     152]: cpu_maps_update_begin();
.[     153]: cpu_hotplug_disabled = 0;
.[     154]: cpu_maps_update_done();
.[     155]: }
.[     160]: int __attribute__ ((__section__(".ref.text"))) __attribute__((noinline)) register_cpu_notifier(struct notifier_block \
.                *nb)
.[     161]: {
.[     162]: int ret;
.[     163]: cpu_maps_update_begin();
.[     164]: ret = raw_notifier_chain_register(&cpu_chain, nb);
.[     165]: cpu_maps_update_done();
.[     166]: return ret;
.[     167]: }
.[     169]: static int __cpu_notify(unsigned long val, void *v, int nr_to_call,
.[     170]: int *nr_calls)
.[     171]: {
.[     172]: int ret;
.[     174]: ret = __raw_notifier_call_chain(&cpu_chain, val, v, nr_to_call,
.[     175]: nr_calls);
.[     177]: return notifier_to_errno(ret);
.[     178]: }
.[     180]: static int cpu_notify(unsigned long val, void *v)
.[     181]: {
.[     182]: return __cpu_notify(val, v, -1, ((void *)0));
.[     183]: }
.[     187]: static void cpu_notify_nofail(unsigned long val, void *v)
.[     188]: {
.[     189]: do { if (__builtin_expect(!!(cpu_notify(val, v)), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" \
.                "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__\
.                ), "i" (sizeof(struct bug_entry))); do { } while (1); } while (0); } while(0);
.[     190]: }
.[     191]: extern typeof(register_cpu_notifier) register_cpu_notifier; extern void *__crc_register_cpu_notifier __attribute__\
.                ((weak)); static const unsigned long __kcrctab_register_cpu_notifier __attribute__((__used__)) __attribute__\
.                ((section("___kcrctab" "" "+" "register_cpu_notifier"), unused)) = (unsigned long) &__crc_register_cpu_notifier\
.                ; static const char __kstrtab_register_cpu_notifier[] __attribute__((section("__ksymtab_strings"), aligned\
.                (1))) = "register_cpu_notifier"; const struct kernel_symbol __ksymtab_register_cpu_notifier __attribute__((\
.                __used__)) __attribute__((section("___ksymtab" "" "+" "register_cpu_notifier"), unused)) = { (unsigned long)&\
.                register_cpu_notifier, __kstrtab_register_cpu_notifier };
.[     193]: void __attribute__ ((__section__(".ref.text"))) __attribute__((noinline)) unregister_cpu_notifier(struct \
.                notifier_block *nb)
.[     194]: {
.[     195]: cpu_maps_update_begin();
.[     196]: raw_notifier_chain_unregister(&cpu_chain, nb);
.[     197]: cpu_maps_update_done();
.[     198]: }
.[     199]: extern typeof(unregister_cpu_notifier) unregister_cpu_notifier; extern void *__crc_unregister_cpu_notifier \
.                __attribute__((weak)); static const unsigned long __kcrctab_unregister_cpu_notifier __attribute__((__used__\
.                )) __attribute__((section("___kcrctab" "" "+" "unregister_cpu_notifier"), unused)) = (unsigned long) &__crc_unregister_cpu_notifier\
.                ; static const char __kstrtab_unregister_cpu_notifier[] __attribute__((section("__ksymtab_strings"), aligned\
.                (1))) = "unregister_cpu_notifier"; const struct kernel_symbol __ksymtab_unregister_cpu_notifier __attribute__\
.                ((__used__)) __attribute__((section("___ksymtab" "" "+" "unregister_cpu_notifier"), unused)) = { (unsigned long\
.                )&unregister_cpu_notifier, __kstrtab_unregister_cpu_notifier };
.[     213]: void clear_tasks_mm_cpumask(int cpu)
.[     214]: {
.[     215]: struct task_struct *p;
.[     224]: ({ int __ret_warn_on = !!((__builtin_constant_p((cpumask_check((cpu)))) ? constant_test_bit((cpumask_check\
.                ((cpu))), ((((cpu_online_mask))->bits))) : variable_test_bit((cpumask_check((cpu))), ((((cpu_online_mask\
.                ))->bits))))); if (__builtin_expect(!!(__ret_warn_on), 0)) warn_slowpath_null(__FILE__, __LINE__); __builtin_expect\
.                (!!(__ret_warn_on), 0); });
.[     225]: rcu_read_lock();
.[     226]: for (p = &init_task ; (p = ({typeof (*(p)->tasks.next) *__ptr = (typeof (*(p)->tasks.next) *)(p)->tasks.next; ({ const \
.                typeof( ((struct task_struct *)0)->tasks ) *__mptr = ((typeof((p)->tasks.next))({ typeof(*(__ptr)) *_________p1 \
.                = (typeof(*(__ptr))* )(*(volatile typeof((__ptr)) *)&((__ptr))); do { } while (0); ; do { } while (0); ((typeof(*(__ptr\
.                )) *)(_________p1)); })); (struct task_struct *)( (char *)__mptr - __builtin_offsetof(struct task_struct,tasks\
.                ) );}); })) != &init_task ; ) {
.[     227]: struct task_struct *t;
.[     233]: t = find_lock_task_mm(p);
.[     234]: if (!t)
.[     235]: continue;
.[     236]: cpumask_clear_cpu(cpu, mm_cpumask(t->mm));
.[     237]: task_unlock(t);
.[     238]: }
.[     239]: rcu_read_unlock();
.[     240]: }
.[     242]: static inline __attribute__((no_instrument_function)) void check_for_tasks(int cpu)
.[     243]: {
.[     244]: struct task_struct *p;
.[     245]: cputime_t utime, stime;
.[     247]: _raw_write_lock_irq(&tasklist_lock);
.[     248]: for (p = &init_task ; (p = ({typeof (*(p)->tasks.next) *__ptr = (typeof (*(p)->tasks.next) *)(p)->tasks.next; ({ const \
.                typeof( ((struct task_struct *)0)->tasks ) *__mptr = ((typeof((p)->tasks.next))({ typeof(*(__ptr)) *_________p1 \
.                = (typeof(*(__ptr))* )(*(volatile typeof((__ptr)) *)&((__ptr))); do { } while (0); ; do { } while (0); ((typeof(*(__ptr\
.                )) *)(_________p1)); })); (struct task_struct *)( (char *)__mptr - __builtin_offsetof(struct task_struct,tasks\
.                ) );}); })) != &init_task ; ) {
.[     249]: task_cputime(p, &utime, &stime);
.[     250]: if (task_cpu(p) == cpu && p->state == 0 &&
.[     251]: (utime || stime))
.[     252]: printk("\001" "4" "Task %s (pid = %d) is on cpu %d "
.[     253]: "(state = %ld, flags = %x)\n",
.[     254]: p->comm, task_pid_nr(p), cpu,
.[     255]: p->state, p->flags);
.[     256]: }
.[     257]: __raw_write_unlock_irq(&tasklist_lock);
.[     258]: }
.[     260]: struct take_cpu_down_param {
.[     261]: unsigned long mod;
.[     262]: void *hcpu;
.[     263]: };
.[     266]: static int __attribute__ ((__section__(".ref.text"))) __attribute__((noinline)) take_cpu_down(void *_param\
.                )
.[     267]: {
.[     268]: struct take_cpu_down_param *param = _param;
.[     269]: int err;
.[     272]: err = __cpu_disable();
.[     273]: if (err < 0)
.[     274]: return err;
.[     276]: cpu_notify(0x0008 | param->mod, param->hcpu);
.[     278]: kthread_park(get_current());
.[     279]: return 0;
.[     280]: }
.[     283]: static int __attribute__ ((__section__(".ref.text"))) __attribute__((noinline)) _cpu_down(unsigned int cpu, \
.                int tasks_frozen)
.[     284]: {
.[     285]: int err, nr_calls = 0;
.[     286]: void *hcpu = (void *)(long)cpu;
.[     287]: unsigned long mod = tasks_frozen ? 0x0010 : 0;
.[     288]: struct take_cpu_down_param tcd_param = {
.[     289]: .mod = mod,
.[     290]: .hcpu = hcpu,
.[     291]: };
.[     293]: if (cpumask_weight(cpu_online_mask) == 1)
.[     294]: return -16;
.[     296]: if (!(__builtin_constant_p((cpumask_check((cpu)))) ? constant_test_bit((cpumask_check((cpu))), ((((cpu_online_mask\
.                ))->bits))) : variable_test_bit((cpumask_check((cpu))), ((((cpu_online_mask))->bits)))))
.[     297]: return -22;
.[     299]: cpu_hotplug_begin();
.[     301]: err = __cpu_notify(0x0005 | mod, hcpu, -1, &nr_calls);
.[     302]: if (err) {
.[     303]: nr_calls--;
.[     304]: __cpu_notify(0x0006 | mod, hcpu, nr_calls, ((void *)0));
.[     305]: printk("%s: attempt to take down CPU %u failed\n",
.[     306]: __func__, cpu);
.[     307]: goto out_release;
.[     308]: }
.[     323]: synchronize_rcu();
.[     325]: smpboot_park_threads(cpu);
.[     331]: err = __stop_machine(take_cpu_down, &tcd_param, (get_cpu_mask(cpu)));
.[     332]: if (err) {
.[     334]: smpboot_unpark_threads(cpu);
.[     335]: cpu_notify_nofail(0x0006 | mod, hcpu);
.[     336]: goto out_release;
.[     337]: }
.[     338]: do { if (__builtin_expect(!!((__builtin_constant_p((cpumask_check((cpu)))) ? constant_test_bit((cpumask_check\
.                ((cpu))),(((( cpu_online_mask))->bits))) : variable_test_bit((cpumask_check((cpu))),(((( cpu_online_mask\
.                ))->bits))))), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" \
.                "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry\
.                ))); do { } while (1); } while (0); } while(0);
.[     347]: while (!idle_cpu(cpu))
.[     348]: cpu_relax();
.[     351]: __cpu_die(cpu);
.[     354]: cpu_notify_nofail(0x0007 | mod, hcpu);
.[     356]: check_for_tasks(cpu);
.[     358]: out_release:
.[     359]: cpu_hotplug_done();
.[     360]: if (!err)
.[     361]: cpu_notify_nofail(0x0009 | mod, hcpu);
.[     362]: return err;
.[     363]: }
.[     365]: int __attribute__ ((__section__(".ref.text"))) __attribute__((noinline)) cpu_down(unsigned int cpu)
.[     366]: {
.[     367]: int err;
.[     369]: cpu_maps_update_begin();
.[     371]: if (cpu_hotplug_disabled) {
.[     372]: err = -16;
.[     373]: goto out;
.[     374]: }
.[     376]: err = _cpu_down(cpu, 0);
.[     378]: out:
.[     379]: cpu_maps_update_done();
.[     380]: return err;
.[     381]: }
.[     382]: extern typeof(cpu_down) cpu_down; extern void *__crc_cpu_down __attribute__((weak)); static const unsigned long \
.                __kcrctab_cpu_down __attribute__((__used__)) __attribute__((section("___kcrctab" "" "+" "cpu_down"), unused\
.                )) = (unsigned long) &__crc_cpu_down; static const char __kstrtab_cpu_down[] __attribute__((section("__ksymtab_strings"\
.                ), aligned(1))) = "cpu_down"; const struct kernel_symbol __ksymtab_cpu_down __attribute__((__used__)) __attribute__\
.                ((section("___ksymtab" "" "+" "cpu_down"), unused)) = { (unsigned long)&cpu_down, __kstrtab_cpu_down };
.[     386]: static int _cpu_up(unsigned int cpu, int tasks_frozen)
.[     387]: {
.[     388]: int ret, nr_calls = 0;
.[     389]: void *hcpu = (void *)(long)cpu;
.[     390]: unsigned long mod = tasks_frozen ? 0x0010 : 0;
.[     391]: struct task_struct *idle;
.[     393]: cpu_hotplug_begin();
.[     395]: if ((__builtin_constant_p((cpumask_check((cpu)))) ? constant_test_bit((cpumask_check((cpu))), ((((cpu_online_mask\
.                ))->bits))) : variable_test_bit((cpumask_check((cpu))), ((((cpu_online_mask))->bits)))) || !(__builtin_constant_p\
.                ((cpumask_check((cpu)))) ? constant_test_bit((cpumask_check((cpu))), ((((cpu_present_mask))->bits))) : variable_test_bit\
.                ((cpumask_check((cpu))), ((((cpu_present_mask))->bits))))) {
.[     396]: ret = -22;
.[     397]: goto out;
.[     398]: }
.[     400]: idle = idle_thread_get(cpu);
.[     401]: if (IS_ERR(idle)) {
.[     402]: ret = PTR_ERR(idle);
.[     403]: goto out;
.[     404]: }
.[     406]: ret = smpboot_create_threads(cpu);
.[     407]: if (ret)
.[     408]: goto out;
.[     410]: ret = __cpu_notify(0x0003 | mod, hcpu, -1, &nr_calls);
.[     411]: if (ret) {
.[     412]: nr_calls--;
.[     413]: printk("\001" "4" "%s: attempt to bring up CPU %u failed\n",
.[     414]: __func__, cpu);
.[     415]: goto out_notify;
.[     416]: }
.[     419]: ret = __cpu_up(cpu, idle);
.[     420]: if (ret != 0)
.[     421]: goto out_notify;
.[     422]: do { if (__builtin_expect(!!(!(__builtin_constant_p((cpumask_check((cpu)))) ? constant_test_bit((cpumask_check\
.                ((cpu))),(((( cpu_online_mask))->bits))) : variable_test_bit((cpumask_check((cpu))),(((( cpu_online_mask\
.                ))->bits))))), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" "2:\t.long 1b - 2b, %c0 - 2b\n" \
.                "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__), "i" (sizeof(struct bug_entry\
.                ))); do { } while (1); } while (0); } while(0);
.[     425]: smpboot_unpark_threads(cpu);
.[     428]: cpu_notify(0x0002 | mod, hcpu);
.[     430]: out_notify:
.[     431]: if (ret != 0)
.[     432]: __cpu_notify(0x0004 | mod, hcpu, nr_calls, ((void *)0));
.[     433]: out:
.[     434]: cpu_hotplug_done();
.[     436]: return ret;
.[     437]: }
.[     439]: int cpu_up(unsigned int cpu)
.[     440]: {
.[     441]: int err = 0;
.[     443]: if (!(__builtin_constant_p((cpumask_check((cpu)))) ? constant_test_bit((cpumask_check((cpu))), ((((cpu_possible_mask\
.                ))->bits))) : variable_test_bit((cpumask_check((cpu))), ((((cpu_possible_mask))->bits))))) {
.[     444]: printk("\001" "3" "can't online cpu %d because it is not "
.[     445]: "configured as may-hotadd at boot time\n", cpu);
.[     450]: return -22;
.[     451]: }
.[     453]: err = try_online_node(cpu_to_node(cpu));
.[     454]: if (err)
.[     455]: return err;
.[     457]: cpu_maps_update_begin();
.[     459]: if (cpu_hotplug_disabled) {
.[     460]: err = -16;
.[     461]: goto out;
.[     462]: }
.[     464]: err = _cpu_up(cpu, 0);
.[     466]: out:
.[     467]: cpu_maps_update_done();
.[     468]: return err;
.[     469]: }
.[     470]: extern typeof(cpu_up) cpu_up; extern void *__crc_cpu_up __attribute__((weak)); static const unsigned long __kcrctab_cpu_up \
.                __attribute__((__used__)) __attribute__((section("___kcrctab" "_gpl" "+" "cpu_up"), unused)) = (unsigned long\
.                ) &__crc_cpu_up; static const char __kstrtab_cpu_up[] __attribute__((section("__ksymtab_strings"), aligned(\
.                1))) = "cpu_up"; const struct kernel_symbol __ksymtab_cpu_up __attribute__((__used__)) __attribute__((section\
.                ("___ksymtab" "_gpl" "+" "cpu_up"), unused)) = { (unsigned long)&cpu_up, __kstrtab_cpu_up };
.[     473]: static cpumask_var_t frozen_cpus;
.[     475]: int disable_nonboot_cpus(void)
.[     476]: {
.[     477]: int cpu, first_cpu, error = 0;
.[     479]: cpu_maps_update_begin();
.[     480]: first_cpu = cpumask_first(cpu_online_mask);
.[     485]: cpumask_clear(frozen_cpus);
.[     487]: printk("Disabling non-boot CPUs ...\n");
.[     488]: for (((cpu)) = -1; ((cpu)) = cpumask_next(((cpu)), (cpu_online_mask)), ((cpu)) < nr_cpu_ids;) {
.[     489]: if (cpu == first_cpu)
.[     490]: continue;
.[     491]: error = _cpu_down(cpu, 1);
.[     492]: if (!error)
.[     493]: cpumask_set_cpu(cpu, frozen_cpus);
.[     494]: else {
.[     495]: printk("\001" "3" "Error taking CPU%d down: %d\n",
.[     496]: cpu, error);
.[     497]: break;
.[     498]: }
.[     499]: }
.[     501]: if (!error) {
.[     502]: do { if (__builtin_expect(!!(cpumask_weight(cpu_online_mask) > 1), 0)) do { asm volatile("1:\tud2\n" ".pushsection __bug_table,\"a\"\n" \
.                "2:\t.long 1b - 2b, %c0 - 2b\n" "\t.word %c1, 0\n" "\t.org 2b+%c2\n" ".popsection" : : "i" (__FILE__), "i" (__LINE__\
.                ), "i" (sizeof(struct bug_entry))); do { } while (1); } while (0); } while(0);
.[     504]: cpu_hotplug_disabled = 1;
.[     505]: } else {
.[     506]: printk("\001" "3" "Non-boot CPUs are not disabled\n");
.[     507]: }
.[     508]: cpu_maps_update_done();
.[     509]: return error;
.[     510]: }
.[     512]: void __attribute__((weak)) arch_enable_nonboot_cpus_begin(void)
.[     513]: {
.[     514]: }
.[     516]: void __attribute__((weak)) arch_enable_nonboot_cpus_end(void)
.[     517]: {
.[     518]: }
.[     520]: void __attribute__ ((__section__(".ref.text"))) __attribute__((noinline)) enable_nonboot_cpus(void)
.[     521]: {
.[     522]: int cpu, error;
.[     525]: cpu_maps_update_begin();
.[     526]: cpu_hotplug_disabled = 0;
.[     527]: if (cpumask_empty(frozen_cpus))
.[     528]: goto out;
.[     530]: printk("\001" "6" "Enabling non-boot CPUs ...\n");
.[     532]: arch_enable_nonboot_cpus_begin();
.[     534]: for ((cpu) = -1; (cpu) = cpumask_next((cpu), (frozen_cpus)), (cpu) < nr_cpu_ids;) {
.[     535]: error = _cpu_up(cpu, 1);
.[     536]: if (!error) {
.[     537]: printk("\001" "6" "CPU%d is up\n", cpu);
.[     538]: continue;
.[     539]: }
.[     540]: printk("\001" "4" "Error taking CPU%d up: %d\n", cpu, error);
.[     541]: }
.[     543]: arch_enable_nonboot_cpus_end();
.[     545]: cpumask_clear(frozen_cpus);
.[     546]: out:
.[     547]: cpu_maps_update_done();
.[     548]: }
.[     550]: static int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) alloc_frozen_cpus\
.                (void)
.[     551]: {
.[     552]: if (!alloc_cpumask_var(&frozen_cpus, ((( gfp_t)0x10u) | (( gfp_t)0x40u) | (( gfp_t)0x80u))|(( gfp_t)0x8000u)))
.[     553]: return -12;
.[     554]: return 0;
.[     555]: }
.[     556]: static initcall_t __initcall_alloc_frozen_cpus1 __attribute__((__used__)) __attribute__((__section__(".initcall" \
.                "1" ".init"))) = alloc_frozen_cpus;
.[     569]: static int
.[     570]: cpu_hotplug_pm_callback(struct notifier_block *nb,
.[     571]: unsigned long action, void *ptr)
.[     572]: {
.[     573]: switch (action) {
.[     575]: case 0x0003:
.[     576]: case 0x0001:
.[     577]: cpu_hotplug_disable();
.[     578]: break;
.[     580]: case 0x0004:
.[     581]: case 0x0002:
.[     582]: cpu_hotplug_enable();
.[     583]: break;
.[     585]: default:
.[     586]: return 0x0000;
.[     587]: }
.[     589]: return 0x0001;
.[     590]: }
.[     593]: static int __attribute__ ((__section__(".init.text"))) __attribute__((no_instrument_function)) cpu_hotplug_pm_sync_init\
.                (void)
.[     594]: {
.[     600]: { static struct notifier_block cpu_hotplug_pm_callback_nb = { .notifier_call = cpu_hotplug_pm_callback, .priority \
.                = 0 }; register_pm_notifier(&cpu_hotplug_pm_callback_nb); };
.[     601]: return 0;
.[     602]: }
.[     603]: static initcall_t __initcall_cpu_hotplug_pm_sync_init1 __attribute__((__used__)) __attribute__((__section__\
.                (".initcall" "1" ".init"))) = cpu_hotplug_pm_sync_init;
.[     615]: void notify_cpu_starting(unsigned int cpu)
.[     616]: {
.[     617]: unsigned long val = 0x000A;
.[     620]: if (frozen_cpus != ((void *)0) && (__builtin_constant_p((cpumask_check(cpu))) ? constant_test_bit((cpumask_check\
.                (cpu)), ((((frozen_cpus))->bits))) : variable_test_bit((cpumask_check(cpu)), ((((frozen_cpus))->bits))))\
.                )
.[     621]: val = (0x000A | 0x0010);
.[     623]: cpu_notify(val, (void *)(long)cpu);
.[     624]: }
.[     642]: const unsigned long cpu_bit_bitmap[64+1][(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))] = {
.[     644]: [0+1][0] = (1UL << (0)), [0+1+1][0] = (1UL << (0+1)), [0+2+1][0] = (1UL << (0+2)), [0+2+1+1][0] = (1UL << (0+2+1)), [0+4\
.                +1][0] = (1UL << (0+4)), [0+4+1+1][0] = (1UL << (0+4+1)), [0+4+2+1][0] = (1UL << (0+4+2)), [0+4+2+1+1][0] = (1UL << (0+\
.                4+2+1)), [8+1][0] = (1UL << (8)), [8+1+1][0] = (1UL << (8+1)), [8+2+1][0] = (1UL << (8+2)), [8+2+1+1][0] = (1UL << (8+2+\
.                1)), [8+4+1][0] = (1UL << (8+4)), [8+4+1+1][0] = (1UL << (8+4+1)), [8+4+2+1][0] = (1UL << (8+4+2)), [8+4+2+1+1][0] = (\
.                1UL << (8+4+2+1)),
.[     645]: [16+1][0] = (1UL << (16)), [16+1+1][0] = (1UL << (16+1)), [16+2+1][0] = (1UL << (16+2)), [16+2+1+1][0] = (1UL << (16+2+\
.                1)), [16+4+1][0] = (1UL << (16+4)), [16+4+1+1][0] = (1UL << (16+4+1)), [16+4+2+1][0] = (1UL << (16+4+2)), [16+4+2+1+\
.                1][0] = (1UL << (16+4+2+1)), [24+1][0] = (1UL << (24)), [24+1+1][0] = (1UL << (24+1)), [24+2+1][0] = (1UL << (24+2)), [24\
.                +2+1+1][0] = (1UL << (24+2+1)), [24+4+1][0] = (1UL << (24+4)), [24+4+1+1][0] = (1UL << (24+4+1)), [24+4+2+1][0] = (1UL \
.                << (24+4+2)), [24+4+2+1+1][0] = (1UL << (24+4+2+1)),
.[     647]: [32+1][0] = (1UL << (32)), [32+1+1][0] = (1UL << (32+1)), [32+2+1][0] = (1UL << (32+2)), [32+2+1+1][0] = (1UL << (32+2+\
.                1)), [32+4+1][0] = (1UL << (32+4)), [32+4+1+1][0] = (1UL << (32+4+1)), [32+4+2+1][0] = (1UL << (32+4+2)), [32+4+2+1+\
.                1][0] = (1UL << (32+4+2+1)), [40+1][0] = (1UL << (40)), [40+1+1][0] = (1UL << (40+1)), [40+2+1][0] = (1UL << (40+2)), [40\
.                +2+1+1][0] = (1UL << (40+2+1)), [40+4+1][0] = (1UL << (40+4)), [40+4+1+1][0] = (1UL << (40+4+1)), [40+4+2+1][0] = (1UL \
.                << (40+4+2)), [40+4+2+1+1][0] = (1UL << (40+4+2+1)),
.[     648]: [48+1][0] = (1UL << (48)), [48+1+1][0] = (1UL << (48+1)), [48+2+1][0] = (1UL << (48+2)), [48+2+1+1][0] = (1UL << (48+2+\
.                1)), [48+4+1][0] = (1UL << (48+4)), [48+4+1+1][0] = (1UL << (48+4+1)), [48+4+2+1][0] = (1UL << (48+4+2)), [48+4+2+1+\
.                1][0] = (1UL << (48+4+2+1)), [56+1][0] = (1UL << (56)), [56+1+1][0] = (1UL << (56+1)), [56+2+1][0] = (1UL << (56+2)), [56\
.                +2+1+1][0] = (1UL << (56+2+1)), [56+4+1][0] = (1UL << (56+4)), [56+4+1+1][0] = (1UL << (56+4+1)), [56+4+2+1][0] = (1UL \
.                << (56+4+2)), [56+4+2+1+1][0] = (1UL << (56+4+2+1)),
.[     650]: };
.[     651]: extern typeof(cpu_bit_bitmap) cpu_bit_bitmap; extern void *__crc_cpu_bit_bitmap __attribute__((weak)); static \
.                const unsigned long __kcrctab_cpu_bit_bitmap __attribute__((__used__)) __attribute__((section("___kcrctab" \
.                "_gpl" "+" "cpu_bit_bitmap"), unused)) = (unsigned long) &__crc_cpu_bit_bitmap; static const char __kstrtab_cpu_bit_bitmap\
.                [] __attribute__((section("__ksymtab_strings"), aligned(1))) = "cpu_bit_bitmap"; const struct kernel_symbol \
.                __ksymtab_cpu_bit_bitmap __attribute__((__used__)) __attribute__((section("___ksymtab" "_gpl" "+" "cpu_bit_bitmap"\
.                ), unused)) = { (unsigned long)&cpu_bit_bitmap, __kstrtab_cpu_bit_bitmap };
.[     653]: const unsigned long cpu_all_bits[(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))] = { [(((64) + (8 * sizeof(long)\
.                ) - 1) / (8 * sizeof(long)))-1] = ( ((64) % 64) ? (1UL<<((64) % 64))-1 : ~0UL ) };
.[     654]: extern typeof(cpu_all_bits) cpu_all_bits; extern void *__crc_cpu_all_bits __attribute__((weak)); static const \
.                unsigned long __kcrctab_cpu_all_bits __attribute__((__used__)) __attribute__((section("___kcrctab" "" "+" "cpu_all_bits"\
.                ), unused)) = (unsigned long) &__crc_cpu_all_bits; static const char __kstrtab_cpu_all_bits[] __attribute__((section\
.                ("__ksymtab_strings"), aligned(1))) = "cpu_all_bits"; const struct kernel_symbol __ksymtab_cpu_all_bits __attribute__\
.                ((__used__)) __attribute__((section("___ksymtab" "" "+" "cpu_all_bits"), unused)) = { (unsigned long)&cpu_all_bits\
.                , __kstrtab_cpu_all_bits };
.[     660]: static unsigned long cpu_possible_bits[(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))] __attribute__((__section__\
.                (".data..read_mostly")));
.[     662]: const struct cpumask *const cpu_possible_mask = ((struct cpumask *)(1 ? (cpu_possible_bits) : (void *)sizeof(__check_is_bitmap\
.                (cpu_possible_bits))));
.[     663]: extern typeof(cpu_possible_mask) cpu_possible_mask; extern void *__crc_cpu_possible_mask __attribute__((weak\
.                )); static const unsigned long __kcrctab_cpu_possible_mask __attribute__((__used__)) __attribute__((section\
.                ("___kcrctab" "" "+" "cpu_possible_mask"), unused)) = (unsigned long) &__crc_cpu_possible_mask; static const char \
.                __kstrtab_cpu_possible_mask[] __attribute__((section("__ksymtab_strings"), aligned(1))) = "cpu_possible_mask"\
.                ; const struct kernel_symbol __ksymtab_cpu_possible_mask __attribute__((__used__)) __attribute__((section(\
.                "___ksymtab" "" "+" "cpu_possible_mask"), unused)) = { (unsigned long)&cpu_possible_mask, __kstrtab_cpu_possible_mask \
.                };
.[     665]: static unsigned long cpu_online_bits[(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))] __attribute__((__section__\
.                (".data..read_mostly")));
.[     666]: const struct cpumask *const cpu_online_mask = ((struct cpumask *)(1 ? (cpu_online_bits) : (void *)sizeof(__check_is_bitmap\
.                (cpu_online_bits))));
.[     667]: extern typeof(cpu_online_mask) cpu_online_mask; extern void *__crc_cpu_online_mask __attribute__((weak)); static \
.                const unsigned long __kcrctab_cpu_online_mask __attribute__((__used__)) __attribute__((section("___kcrctab" \
.                "" "+" "cpu_online_mask"), unused)) = (unsigned long) &__crc_cpu_online_mask; static const char __kstrtab_cpu_online_mask\
.                [] __attribute__((section("__ksymtab_strings"), aligned(1))) = "cpu_online_mask"; const struct kernel_symbol \
.                __ksymtab_cpu_online_mask __attribute__((__used__)) __attribute__((section("___ksymtab" "" "+" "cpu_online_mask"\
.                ), unused)) = { (unsigned long)&cpu_online_mask, __kstrtab_cpu_online_mask };
.[     669]: static unsigned long cpu_present_bits[(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))] __attribute__((__section__\
.                (".data..read_mostly")));
.[     670]: const struct cpumask *const cpu_present_mask = ((struct cpumask *)(1 ? (cpu_present_bits) : (void *)sizeof(__check_is_bitmap\
.                (cpu_present_bits))));
.[     671]: extern typeof(cpu_present_mask) cpu_present_mask; extern void *__crc_cpu_present_mask __attribute__((weak)\
.                ); static const unsigned long __kcrctab_cpu_present_mask __attribute__((__used__)) __attribute__((section("___kcrctab" \
.                "" "+" "cpu_present_mask"), unused)) = (unsigned long) &__crc_cpu_present_mask; static const char __kstrtab_cpu_present_mask\
.                [] __attribute__((section("__ksymtab_strings"), aligned(1))) = "cpu_present_mask"; const struct kernel_symbol \
.                __ksymtab_cpu_present_mask __attribute__((__used__)) __attribute__((section("___ksymtab" "" "+" "cpu_present_mask"\
.                ), unused)) = { (unsigned long)&cpu_present_mask, __kstrtab_cpu_present_mask };
.[     673]: static unsigned long cpu_active_bits[(((64) + (8 * sizeof(long)) - 1) / (8 * sizeof(long)))] __attribute__((__section__\
.                (".data..read_mostly")));
.[     674]: const struct cpumask *const cpu_active_mask = ((struct cpumask *)(1 ? (cpu_active_bits) : (void *)sizeof(__check_is_bitmap\
.                (cpu_active_bits))));
.[     675]: extern typeof(cpu_active_mask) cpu_active_mask; extern void *__crc_cpu_active_mask __attribute__((weak)); static \
.                const unsigned long __kcrctab_cpu_active_mask __attribute__((__used__)) __attribute__((section("___kcrctab" \
.                "" "+" "cpu_active_mask"), unused)) = (unsigned long) &__crc_cpu_active_mask; static const char __kstrtab_cpu_active_mask\
.                [] __attribute__((section("__ksymtab_strings"), aligned(1))) = "cpu_active_mask"; const struct kernel_symbol \
.                __ksymtab_cpu_active_mask __attribute__((__used__)) __attribute__((section("___ksymtab" "" "+" "cpu_active_mask"\
.                ), unused)) = { (unsigned long)&cpu_active_mask, __kstrtab_cpu_active_mask };
.[     677]: void set_cpu_possible(unsigned int cpu, bool possible)
.[     678]: {
.[     679]: if (possible)
.[     680]: cpumask_set_cpu(cpu, ((struct cpumask *)(1 ? (cpu_possible_bits) : (void *)sizeof(__check_is_bitmap(cpu_possible_bits\
.                )))));
.[     681]: else
.[     682]: cpumask_clear_cpu(cpu, ((struct cpumask *)(1 ? (cpu_possible_bits) : (void *)sizeof(__check_is_bitmap(cpu_possible_bits\
.                )))));
.[     683]: }
.[     685]: void set_cpu_present(unsigned int cpu, bool present)
.[     686]: {
.[     687]: if (present)
.[     688]: cpumask_set_cpu(cpu, ((struct cpumask *)(1 ? (cpu_present_bits) : (void *)sizeof(__check_is_bitmap(cpu_present_bits\
.                )))));
.[     689]: else
.[     690]: cpumask_clear_cpu(cpu, ((struct cpumask *)(1 ? (cpu_present_bits) : (void *)sizeof(__check_is_bitmap(cpu_present_bits\
.                )))));
.[     691]: }
.[     693]: void set_cpu_online(unsigned int cpu, bool online)
.[     694]: {
.[     695]: if (online)
.[     696]: cpumask_set_cpu(cpu, ((struct cpumask *)(1 ? (cpu_online_bits) : (void *)sizeof(__check_is_bitmap(cpu_online_bits\
.                )))));
.[     697]: else
.[     698]: cpumask_clear_cpu(cpu, ((struct cpumask *)(1 ? (cpu_online_bits) : (void *)sizeof(__check_is_bitmap(cpu_online_bits\
.                )))));
.[     699]: }
.[     701]: void set_cpu_active(unsigned int cpu, bool active)
.[     702]: {
.[     703]: if (active)
.[     704]: cpumask_set_cpu(cpu, ((struct cpumask *)(1 ? (cpu_active_bits) : (void *)sizeof(__check_is_bitmap(cpu_active_bits\
.                )))));
.[     705]: else
.[     706]: cpumask_clear_cpu(cpu, ((struct cpumask *)(1 ? (cpu_active_bits) : (void *)sizeof(__check_is_bitmap(cpu_active_bits\
.                )))));
.[     707]: }
.[     709]: void init_cpu_present(const struct cpumask *src)
.[     710]: {
.[     711]: cpumask_copy(((struct cpumask *)(1 ? (cpu_present_bits) : (void *)sizeof(__check_is_bitmap(cpu_present_bits\
.                )))), src);
.[     712]: }
.[     714]: void init_cpu_possible(const struct cpumask *src)
.[     715]: {
.[     716]: cpumask_copy(((struct cpumask *)(1 ? (cpu_possible_bits) : (void *)sizeof(__check_is_bitmap(cpu_possible_bits\
.                )))), src);
.[     717]: }
.[     719]: void init_cpu_online(const struct cpumask *src)
.[     720]: {
.[     721]: cpumask_copy(((struct cpumask *)(1 ? (cpu_online_bits) : (void *)sizeof(__check_is_bitmap(cpu_online_bits))\
.                )), src);
.[     722]: }
.[     723]: 

Return to Index