Skip to content

Commit

Permalink
144th
Browse files Browse the repository at this point in the history
  • Loading branch information
iamroot12a committed Nov 11, 2017
1 parent 1acc0a5 commit 5eb6758
Show file tree
Hide file tree
Showing 7 changed files with 295 additions and 2 deletions.
8 changes: 6 additions & 2 deletions arch/arm/kernel/topology.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,10 @@ static DEFINE_PER_CPU(unsigned long, cpu_scale);

unsigned long arch_scale_cpu_capacity(struct sched_domain *sd, int cpu)
{
/* IAMROOT-12:
* -------------
* 32비트 arm에서 산출된 cpu_scale 값을 cpu capacity로 사용한다.
*/
return per_cpu(cpu_scale, cpu);
}

Expand Down Expand Up @@ -418,8 +422,8 @@ static inline int cpu_corepower_flags(void)
* 32비트 arm 커널의 경우 default topology를 사용하지 않고,
* 별도로 제공되는 arm_topology[]를 사용한다.
*
* 기본 DIE 단계만 사용하고, 빅/리틀 클러스터 제어가 필요한 경우를 위해
* 두 개의 단계가 추가된다.
* 기본 DIE 단계만 사용하고, 빅/리틀 클러스터가 동시에 동작해야 하는 경우와
* 전원 클러스터 제어를 위해 두 개의 단계가 추가된다.
*
* GMC -> MC -> DIE
*
Expand Down
19 changes: 19 additions & 0 deletions include/linux/sched.h
Original file line number Diff line number Diff line change
Expand Up @@ -928,6 +928,21 @@ enum cpu_idle_type {
/*
* sched-domains (multiprocessor balancing) declarations:
*/

/* IAMROOT-12:
* -------------
* SD_LOAD_BALANCE:
* 로드밸런스 허용된 경우 사용
* SD_SHARE_CPUCAPACITY:
* h/w 스레드를 사용하는 경우
* SD_SHARE_POWERDOMAIN:
* 전원 공급을 같이 받는 cpu들에 대한 전력관리를 사용하는 경우
* SD_SHARE_PKG_RESOURCES:
* 같은 패키지에 구성된 cpu들에 (L2 등의 캐시 공유 효과) 대한 효과
* SD_ASYM_PACKING:
* powerpc에서 core간 성능 차이가 있을 때 구분하기 위해 사용
*/

#ifdef CONFIG_SMP
#define SD_LOAD_BALANCE 0x0001 /* Do load balancing on this domain. */
#define SD_BALANCE_NEWIDLE 0x0002 /* Balance when about to become idle */
Expand Down Expand Up @@ -1051,6 +1066,10 @@ struct sched_domain {
struct rcu_head rcu; /* used during destruction */
};

/* IAMROOT-12:
* -------------
* 도메인에 구성된 cpu 수
*/
unsigned int span_weight;
/*
* Span of all CPUs in this domain.
Expand Down
4 changes: 4 additions & 0 deletions include/linux/topology.h
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,10 @@ static inline const struct cpumask *cpu_smt_mask(int cpu)

static inline const struct cpumask *cpu_cpu_mask(int cpu)
{
/* IAMROOT-12:
* -------------
* 해당 cpu가 있는 노드의 cpu를 반환한다.
*/
return cpumask_of_node(cpu_to_node(cpu));
}

Expand Down
Loading

0 comments on commit 5eb6758

Please sign in to comment.