Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 245591
b: refs/heads/master
c: 6ddafda
h: refs/heads/master
i:
  245589: 08f4970
  245587: 441f201
  245583: cdad680
v: v3
  • Loading branch information
Ingo Molnar committed Apr 18, 2011
1 parent 8ae8e60 commit 34f4cde
Show file tree
Hide file tree
Showing 6 changed files with 332 additions and 699 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: bd8e7dded88a3e1c085c333f19ff31387616f71a
refs/heads/master: 6ddafdaab3f809b110ada253d2f2d4910ebd3ac5
6 changes: 5 additions & 1 deletion trunk/arch/sparc/include/asm/topology_64.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,10 @@ static inline int pcibus_to_node(struct pci_bus *pbus)
#define smt_capable() (sparc64_multi_core)
#endif /* CONFIG_SMP */

#define cpu_coregroup_mask(cpu) (&cpu_core_map[cpu])
extern cpumask_t cpu_core_map[NR_CPUS];
static inline const struct cpumask *cpu_coregroup_mask(int cpu)
{
return &cpu_core_map[cpu];
}

#endif /* _ASM_SPARC64_TOPOLOGY_H */
26 changes: 8 additions & 18 deletions trunk/include/linux/sched.h
Original file line number Diff line number Diff line change
Expand Up @@ -868,6 +868,7 @@ static inline int sd_power_saving_flags(void)

struct sched_group {
struct sched_group *next; /* Must be a circular list */
atomic_t ref;

/*
* CPU power of this group, SCHED_LOAD_SCALE being max power for a
Expand All @@ -882,9 +883,6 @@ struct sched_group {
* NOTE: this field is variable length. (Allocated dynamically
* by attaching extra space to the end of the structure,
* depending on how many CPUs the kernel has booted up with)
*
* It is also be embedded into static data structures at build
* time. (See 'struct static_sched_group' in kernel/sched.c)
*/
unsigned long cpumask[0];
};
Expand All @@ -894,17 +892,6 @@ static inline struct cpumask *sched_group_cpus(struct sched_group *sg)
return to_cpumask(sg->cpumask);
}

enum sched_domain_level {
SD_LV_NONE = 0,
SD_LV_SIBLING,
SD_LV_MC,
SD_LV_BOOK,
SD_LV_CPU,
SD_LV_NODE,
SD_LV_ALLNODES,
SD_LV_MAX
};

struct sched_domain_attr {
int relax_domain_level;
};
Expand All @@ -913,6 +900,8 @@ struct sched_domain_attr {
.relax_domain_level = -1, \
}

extern int sched_domain_level_max;

struct sched_domain {
/* These fields must be setup */
struct sched_domain *parent; /* top domain must be null terminated */
Expand All @@ -930,7 +919,7 @@ struct sched_domain {
unsigned int forkexec_idx;
unsigned int smt_gain;
int flags; /* See SD_* */
enum sched_domain_level level;
int level;

/* Runtime fields. */
unsigned long last_balance; /* init to jiffies. units in jiffies */
Expand Down Expand Up @@ -973,6 +962,10 @@ struct sched_domain {
#ifdef CONFIG_SCHED_DEBUG
char *name;
#endif
union {
void *private; /* used during construction */
struct rcu_head rcu; /* used during destruction */
};

unsigned int span_weight;
/*
Expand All @@ -981,9 +974,6 @@ struct sched_domain {
* NOTE: this field is variable length. (Allocated dynamically
* by attaching extra space to the end of the structure,
* depending on how many CPUs the kernel has booted up with)
*
* It is also be embedded into static data structures at build
* time. (See 'struct static_sched_domain' in kernel/sched.c)
*/
unsigned long span[0];
};
Expand Down
2 changes: 1 addition & 1 deletion trunk/kernel/cpuset.c
Original file line number Diff line number Diff line change
Expand Up @@ -1159,7 +1159,7 @@ int current_cpuset_is_being_rebound(void)
static int update_relax_domain_level(struct cpuset *cs, s64 val)
{
#ifdef CONFIG_SMP
if (val < -1 || val >= SD_LV_MAX)
if (val < -1 || val >= sched_domain_level_max)
return -EINVAL;
#endif

Expand Down
Loading

0 comments on commit 34f4cde

Please sign in to comment.