On Wed, Sep 03, 2014 at 06:00:07PM +0100, Sudeep Holla wrote: > diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h > index 2997af6d2ccd..26d8348292dd 100644 > --- a/include/linux/cpumask.h > +++ b/include/linux/cpumask.h > @@ -11,6 +11,8 @@ > #include <linux/bitmap.h> > #include <linux/bug.h> > > +#include <asm/page.h> > + > typedef struct cpumask { DECLARE_BITMAP(bits, NR_CPUS); } cpumask_t; > > /** > @@ -792,6 +794,31 @@ static inline const struct cpumask *get_cpu_mask(unsigned int cpu) > } > #endif /* NR_CPUS > BITS_PER_LONG */ > > +/** > + * cpumap_copy_to_buf - copies the cpumask into the buffer either > + * as comma-separated list of cpus or hex values of cpumask > + * @list: indicates whether the cpumap must be list > + * @mask: the cpumask to copy > + * @buf: the buffer to copy into > + * > + * Returns the length of the (null-terminated) @buf string, zero if > + * nothing is copied. > + */ > +static inline ssize_t > +cpumap_copy_to_buf(bool list, const struct cpumask *mask, char *buf) > +{ > + ptrdiff_t len = PTR_ALIGN(buf + PAGE_SIZE - 1, PAGE_SIZE) - buf - 2; > + int n = 0; > + > + if (len > 1) { > + n = list ? cpulist_scnprintf(buf, len, mask) : > + cpumask_scnprintf(buf, len, mask); > + buf[n++] = '\n'; > + buf[n] = '\0'; > + } > + return n; > +} > + Does that really make sense as an inline? -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html