perf: Optimize the !vmalloc backed buffer
[deliverable/linux.git] / include / linux / perf_event.h
index ce7667616fcbe8bf40cd85c6ffedb3cbd2e3fe02..09cd9c1abfda940b1cf477267e8d7db61eae9703 100644 (file)
@@ -588,8 +588,8 @@ struct perf_mmap_data {
        struct rcu_head                 rcu_head;
 #ifdef CONFIG_PERF_USE_VMALLOC
        struct work_struct              work;
+       int                             page_order;     /* allocation order  */
 #endif
-       int                             data_order;     /* allocation order  */
        int                             nr_pages;       /* nr of data pages  */
        int                             writable;       /* are we writable   */
        int                             nr_locked;      /* nr pages mlocked  */
@@ -599,7 +599,7 @@ struct perf_mmap_data {
        local_t                         head;           /* write position    */
        local_t                         nest;           /* nested writers    */
        local_t                         events;         /* event limit       */
-       local_t                         wakeup;         /* needs a wakeup    */
+       local_t                         wakeup;         /* wakeup stamp      */
        local_t                         lost;           /* nr records lost   */
 
        long                            watermark;      /* wakeup watermark  */
@@ -727,6 +727,7 @@ struct perf_event {
        perf_overflow_handler_t         overflow_handler;
 
 #ifdef CONFIG_EVENT_TRACING
+       struct ftrace_event_call        *tp_event;
        struct event_filter             *filter;
 #endif
 
@@ -804,6 +805,10 @@ struct perf_output_handle {
        struct perf_mmap_data           *data;
        unsigned long                   head;
        unsigned long                   offset;
+       unsigned long                   wakeup;
+       unsigned long                   size;
+       void                            *addr;
+       int                             page;
        int                             nmi;
        int                             sample;
 };
@@ -991,8 +996,9 @@ static inline bool perf_paranoid_kernel(void)
 }
 
 extern void perf_event_init(void);
-extern void perf_tp_event(int event_id, u64 addr, u64 count, void *record,
-                         int entry_size, struct pt_regs *regs, void *event);
+extern void perf_tp_event(u64 addr, u64 count, void *record,
+                         int entry_size, struct pt_regs *regs,
+                         struct hlist_head *head);
 extern void perf_bp_event(struct perf_event *event, void *data);
 
 #ifndef perf_misc_flags
This page took 0.031231 seconds and 5 git commands to generate.