[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20061005133807.97827533.akpm@osdl.org>
Date: Thu, 5 Oct 2006 13:38:07 -0700
From: Andrew Morton <akpm@...l.org>
To: Andi Kleen <ak@...e.de>
Cc: Joe Korty <joe.korty@...r.com>,
Inaky Perez-Gonzalez <inaky@...ux.intel.com>,
Paul Jackson <pj@....com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] bitmap: separate bitmap parsing for user buffer and
kernel buffer
On 05 Oct 2006 21:57:04 +0200
Andi Kleen <ak@...e.de> wrote:
> Andrew Morton <akpm@...l.org> writes:
>
> > On Wed, 4 Oct 2006 17:56:30 -0700
> > Reinette Chatre <reinette.chatre@...ux.intel.com> wrote:
> >
> > > + if (is_user) {
> > > + if (__get_user(c, buf++))
> > > + return -EFAULT;
> > > + }
> > > + else
> > > + c = *buf++;
> >
> > Is this actually needed? __get_user(kernel_address) works OK and (believe
> > it or not, given all the stuff it involves) boils down to a single instruction.
>
> It is needed on lots of architectures that use separate address spaces
> like sparc64, m68k, s390 (and on x86 with 4:4 patches)
>
It needs set_fs(KERNEL_DS) if we're going to use __get_user() on both
callpaths.
I think we'll stick with the `is_user' version - less tricky, clearer.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists