linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rusty Russell <rusty@rustcorp.com.au>
To: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Milton Miller <miltonm@bga.com>, Arnd Bergmann <arnd@arndb.de>,
	Greg KH <greg@kroah.com>,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	anton@samba.org
Subject: Re: cpumask: fix compat getaffinity
Date: Tue, 18 May 2010 10:27:45 +0930	[thread overview]
Message-ID: <201005181027.46273.rusty@rustcorp.com.au> (raw)
In-Reply-To: <20100517134320.A190.A69D9226@jp.fujitsu.com>

On Mon, 17 May 2010 03:34:44 pm KOSAKI Motohiro wrote:
> > On Wed, 12 May 2010 06:00:45 pm Milton Miller wrote:
> > > 
> > > At least for parsing, we need to allocate and parse NR_CPUS until
> > > all places like arch/powerpc/platforms/pseries/xics.c that compare a
> > > user-supplied mask to CPUMASK_ALL are eliminated.
> > 
> > Good point.  Anton will want to fix those anyway for CONFIG_CPUMASK_OFFSTACK,
> > too, but that's the reason the parsing uses nr_cpumask_bits.
> > 
> > > > Would it make sense to use my initial patch for -stable, which reverts
> > > > the ABI back to before the change that caused the problem, but apply
> > > > the correct fix (changing the ABI throughout) for future releases?
> > > 
> > > This would definitly be the conservative fix.
> > 
> > Instead of changing back to NR_CPUS which will break libnuma for
> > CPUMASK_OFFSTACK, how about changing it to nr_cpumask_bits and having an
> > explicit comment above it:
> 
> Yes and No.
> 
> 1) sched_getaffinity syscall is used from glibc and libnuma.
> 2) glibc doesn't use the return value almostly. glibc emulate it as NR_CPUS=1024.
> 3) Now, both sched_getaffinity() and compat_sys_sched_getaffinity() have nr_cpu_ids thing.
> 4) But only compat_sys_sched_getaffinity() hit libnuma problem.
> 
> I think It mean compat_sys_sched_getaffinity() should behave as sched_getaffinity().
> IOW, libnuma assume compat_sys_sched_getaffinity() return len args or NR_CPUS.
> then, following patch do it. I confirmed the patch works with or without CPUMASK_OFFSTACK.  
> 
> So, My proposal is
> 	1) merge both mine and yours to linus tree
> 	2) but backport only mine

I think we should just take yours; it seems sufficient.

Acked-by: Rusty Russell <rusty@rustcorp.com.au>

We're going to break at > 4096 cpus whatever we do; I argued with Ingo about
it when the affinity syscalls were added but noone thought we'd hit it
so soon.

Thanks,
Rusty.

  parent reply	other threads:[~2010-05-18  0:57 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-07 12:45 cpumask: fix compat getaffinity Arnd Bergmann
2010-05-08  8:30 ` Rusty Russell
2010-05-08  9:11   ` Arnd Bergmann
2010-05-10 23:43     ` Rusty Russell
2010-05-11  1:47       ` KOSAKI Motohiro
2010-05-11  3:13         ` [stable] " Greg KH
2010-05-11  5:51           ` Rusty Russell
2010-05-11  6:25             ` KOSAKI Motohiro
2010-05-11  6:20           ` KOSAKI Motohiro
2010-05-11 15:20             ` Greg KH
2010-05-11 18:13               ` Arnd Bergmann
2010-05-11 21:36                 ` Greg KH
2010-05-12  8:30                 ` Milton Miller
2010-05-14 12:39                   ` Rusty Russell
2010-05-17  6:04                     ` KOSAKI Motohiro
2010-05-17 18:58                       ` Arnd Bergmann
2010-05-18  0:57                       ` Rusty Russell [this message]
2010-12-14 16:59                       ` Josh Hunt
2010-12-15 14:40                         ` Arnd Bergmann
2010-06-22 23:30                   ` Rusty Russell
2010-05-11  9:05       ` Arnd Bergmann
2010-05-12  0:52         ` KOSAKI Motohiro

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201005181027.46273.rusty@rustcorp.com.au \
    --to=rusty@rustcorp.com.au \
    --cc=anton@samba.org \
    --cc=arnd@arndb.de \
    --cc=greg@kroah.com \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miltonm@bga.com \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).