]> Git Repo - linux.git/commitdiff
Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <[email protected]>
Tue, 2 Jul 2013 23:17:25 +0000 (16:17 -0700)
committerLinus Torvalds <[email protected]>
Tue, 2 Jul 2013 23:17:25 +0000 (16:17 -0700)
Pull scheduler updates from Ingo Molnar:
 "The main changes:

   - load-calculation cleanups and improvements, by Alex Shi
   - various nohz related tidying up of statisics, by Frederic
     Weisbecker
   - factor out /proc functions to kernel/sched/proc.c, by Paul
     Gortmaker
   - simplify the RT policy scheduler, by Kirill Tkhai
   - various fixes and cleanups"

* 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (42 commits)
  sched/debug: Remove CONFIG_FAIR_GROUP_SCHED mask
  sched/debug: Fix formatting of /proc/<PID>/sched
  sched: Fix typo in struct sched_avg member description
  sched/fair: Fix typo describing flags in enqueue_entity
  sched/debug: Add load-tracking statistics to task
  sched: Change get_rq_runnable_load() to static and inline
  sched/tg: Remove tg.load_weight
  sched/cfs_rq: Change atomic64_t removed_load to atomic_long_t
  sched/tg: Use 'unsigned long' for load variable in task group
  sched: Change cfs_rq load avg to unsigned long
  sched: Consider runnable load average in move_tasks()
  sched: Compute runnable load avg in cpu_load and cpu_avg_load_per_task
  sched: Update cpu load after task_tick
  sched: Fix sleep time double accounting in enqueue entity
  sched: Set an initial value of runnable avg for new forked task
  sched: Move a few runnable tg variables into CONFIG_SMP
  Revert "sched: Introduce temporary FAIR_GROUP_SCHED dependency for load-tracking"
  sched: Don't mix use of typedef ctl_table and struct ctl_table
  sched: Remove WARN_ON(!sd) from init_sched_groups_power()
  sched: Fix memory leakage in build_sched_groups()
  ...

1  2 
include/linux/perf_event.h

index 50b3efd14d29286cb580ce40e73697508b1943f5,8650c732f77a2232adf7886e003fcb143f483574..8873f82c7baa2bd1ae165966471fd8cad5f0d57b
@@@ -73,18 -73,13 +73,18 @@@ struct perf_raw_record 
   *
   * support for mispred, predicted is optional. In case it
   * is not supported mispred = predicted = 0.
 + *
 + *     in_tx: running in a hardware transaction
 + *     abort: aborting a hardware transaction
   */
  struct perf_branch_entry {
        __u64   from;
        __u64   to;
        __u64   mispred:1,  /* target mispredicted */
                predicted:1,/* target predicted */
 -              reserved:62;
 +              in_tx:1,    /* in transaction */
 +              abort:1,    /* transaction abort */
 +              reserved:60;
  };
  
  /*
@@@ -118,8 -113,6 +118,8 @@@ struct hw_perf_event_extra 
        int             idx;    /* index in shared_regs->regs[] */
  };
  
 +struct event_constraint;
 +
  /**
   * struct hw_perf_event - performance event hardware details:
   */
@@@ -138,8 -131,6 +138,8 @@@ struct hw_perf_event 
  
                        struct hw_perf_event_extra extra_reg;
                        struct hw_perf_event_extra branch_reg;
 +
 +                      struct event_constraint *constraint;
                };
                struct { /* software */
                        struct hrtimer  hrtimer;
@@@ -197,13 -188,12 +197,13 @@@ struct pmu 
  
        struct device                   *dev;
        const struct attribute_group    **attr_groups;
 -      char                            *name;
 +      const char                      *name;
        int                             type;
  
        int * __percpu                  pmu_disable_count;
        struct perf_cpu_context * __percpu pmu_cpu_context;
        int                             task_ctx_nr;
 +      int                             hrtimer_interval_ms;
  
        /*
         * Fully disable/enable this PMU, can be used to protect from the PMI
@@@ -510,9 -500,8 +510,9 @@@ struct perf_cpu_context 
        struct perf_event_context       *task_ctx;
        int                             active_oncpu;
        int                             exclusive;
 +      struct hrtimer                  hrtimer;
 +      ktime_t                         hrtimer_interval;
        struct list_head                rotation_list;
 -      int                             jiffies_interval;
        struct pmu                      *unique_pmu;
        struct perf_cgroup              *cgrp;
  };
@@@ -528,7 -517,7 +528,7 @@@ struct perf_output_handle 
  
  #ifdef CONFIG_PERF_EVENTS
  
 -extern int perf_pmu_register(struct pmu *pmu, char *name, int type);
 +extern int perf_pmu_register(struct pmu *pmu, const char *name, int type);
  extern void perf_pmu_unregister(struct pmu *pmu);
  
  extern int perf_num_counters(void);
@@@ -706,17 -695,10 +706,17 @@@ static inline void perf_callchain_store
  extern int sysctl_perf_event_paranoid;
  extern int sysctl_perf_event_mlock;
  extern int sysctl_perf_event_sample_rate;
 +extern int sysctl_perf_cpu_time_max_percent;
 +
 +extern void perf_sample_event_took(u64 sample_len_ns);
  
  extern int perf_proc_update_handler(struct ctl_table *table, int write,
                void __user *buffer, size_t *lenp,
                loff_t *ppos);
 +extern int perf_cpu_time_max_percent_handler(struct ctl_table *table, int write,
 +              void __user *buffer, size_t *lenp,
 +              loff_t *ppos);
 +
  
  static inline bool perf_paranoid_tracepoint_raw(void)
  {
@@@ -760,7 -742,6 +760,7 @@@ extern unsigned int perf_output_skip(st
                                     unsigned int len);
  extern int perf_swevent_get_recursion_context(void);
  extern void perf_swevent_put_recursion_context(int rctx);
 +extern u64 perf_swevent_set_period(struct perf_event *event);
  extern void perf_event_enable(struct perf_event *event);
  extern void perf_event_disable(struct perf_event *event);
  extern int __perf_event_disable(void *info);
@@@ -800,7 -781,6 +800,7 @@@ static inline void perf_event_fork(stru
  static inline void perf_event_init(void)                              { }
  static inline int  perf_swevent_get_recursion_context(void)           { return -1; }
  static inline void perf_swevent_put_recursion_context(int rctx)               { }
 +static inline u64 perf_swevent_set_period(struct perf_event *event)   { return 0; }
  static inline void perf_event_enable(struct perf_event *event)                { }
  static inline void perf_event_disable(struct perf_event *event)               { }
  static inline int __perf_event_disable(void *info)                    { return -1; }
@@@ -822,7 -802,7 +822,7 @@@ static inline void perf_restore_debug_s
  #define perf_output_put(handle, x) perf_output_copy((handle), &(x), sizeof(x))
  
  /*
-  * This has to have a higher priority than migration_notifier in sched.c.
+  * This has to have a higher priority than migration_notifier in sched/core.c.
   */
  #define perf_cpu_notifier(fn)                                         \
  do {                                                                  \
This page took 0.08038 seconds and 4 git commands to generate.