Merge branch 'core/topology' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Jul 2008 17:32:39 +0000 (10:32 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Jul 2008 17:32:39 +0000 (10:32 -0700)
* 'core/topology' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  cputopology: always define CPU topology information, clean up
  cpu topology: always define CPU topology information

1  2 
drivers/base/topology.c

diff --combined drivers/base/topology.c
index 1efe162e16d75a8a684557412d71ff32fbcb1595,f0cb270119302bd75d66ba388154adff26d75d1c..3f6d9b0a6abed354ca07527e0294c8042dcc8ae0
@@@ -40,7 -40,6 +40,7 @@@ static ssize_t show_##name(struct sys_d
        return sprintf(buf, "%d\n", topology_##name(cpu));      \
  }
  
 +#if defined(topology_thread_siblings) || defined(topology_core_siblings)
  static ssize_t show_cpumap(int type, cpumask_t *mask, char *buf)
  {
        ptrdiff_t len = PTR_ALIGN(buf + PAGE_SIZE - 1, PAGE_SIZE) - buf;
        }
        return n;
  }
 +#endif
  
 +#ifdef arch_provides_topology_pointers
  #define define_siblings_show_map(name)                                        \
 -static inline ssize_t show_##name(struct sys_device *dev, char *buf)  \
 +static ssize_t show_##name(struct sys_device *dev, char *buf) \
  {                                                                     \
        unsigned int cpu = dev->id;                                     \
        return show_cpumap(0, &(topology_##name(cpu)), buf);            \
  }
  
  #define define_siblings_show_list(name)                                       \
 -static inline ssize_t show_##name##_list(struct sys_device *dev, char *buf) \
 +static ssize_t show_##name##_list(struct sys_device *dev, char *buf) \
  {                                                                     \
        unsigned int cpu = dev->id;                                     \
        return show_cpumap(1, &(topology_##name(cpu)), buf);            \
  }
  
 +#else
 +#define define_siblings_show_map(name)                                        \
 +static ssize_t show_##name(struct sys_device *dev, char *buf) \
 +{                                                                     \
 +      unsigned int cpu = dev->id;                                     \
 +      cpumask_t mask = topology_##name(cpu);                          \
 +      return show_cpumap(0, &mask, buf);                              \
 +}
 +
 +#define define_siblings_show_list(name)                                       \
 +static ssize_t show_##name##_list(struct sys_device *dev, char *buf) \
 +{                                                                     \
 +      unsigned int cpu = dev->id;                                     \
 +      cpumask_t mask = topology_##name(cpu);                          \
 +      return show_cpumap(1, &mask, buf);                              \
 +}
 +#endif
 +
  #define define_siblings_show_func(name)               \
        define_siblings_show_map(name); define_siblings_show_list(name)
  
- #ifdef        topology_physical_package_id
  define_id_show_func(physical_package_id);
  define_one_ro(physical_package_id);
- #define ref_physical_package_id_attr  &attr_physical_package_id.attr,
- #else
- #define ref_physical_package_id_attr
- #endif
  
- #ifdef topology_core_id
  define_id_show_func(core_id);
  define_one_ro(core_id);
- #define ref_core_id_attr              &attr_core_id.attr,
- #else
- #define ref_core_id_attr
- #endif
  
- #ifdef topology_thread_siblings
  define_siblings_show_func(thread_siblings);
  define_one_ro(thread_siblings);
  define_one_ro(thread_siblings_list);
- #define ref_thread_siblings_attr      \
-               &attr_thread_siblings.attr, &attr_thread_siblings_list.attr,
- #else
- #define ref_thread_siblings_attr
- #endif
  
- #ifdef topology_core_siblings
  define_siblings_show_func(core_siblings);
  define_one_ro(core_siblings);
  define_one_ro(core_siblings_list);
- #define ref_core_siblings_attr                \
-               &attr_core_siblings.attr, &attr_core_siblings_list.attr,
- #else
- #define ref_core_siblings_attr
- #endif
  
  static struct attribute *default_attrs[] = {
-       ref_physical_package_id_attr
-       ref_core_id_attr
-       ref_thread_siblings_attr
-       ref_core_siblings_attr
+       &attr_physical_package_id.attr,
+       &attr_core_id.attr,
+       &attr_thread_siblings.attr,
+       &attr_thread_siblings_list.attr,
+       &attr_core_siblings.attr,
+       &attr_core_siblings_list.attr,
        NULL
  };