Re: [PATCH 3/5] FS: Export poll_select_copy_remaining and renamepoll_select_copy_remaining in compat.c so it does not pick the wrong copy.

From: Catalin Marinas
Date: Fri Sep 13 2013 - 05:54:41 EST


On Wed, Sep 11, 2013 at 10:00:14PM +0100, Andrew Pinski wrote:
> On Wed, Sep 11, 2013 at 4:09 AM, Catalin Marinas
> <catalin.marinas@xxxxxxx> wrote:
> > On Mon, Sep 09, 2013 at 10:32:57PM +0100, Andrew Pinski wrote:
> >> The ILP32 ABI in ARM64 uses a slightly different pselect from either
> >> the compat or even the native LP64 ABI. We would want to reuse some
> >> of the code path that are used as the size of the timespec is the
> >> same, so this patch exports poll_select_copy_remaining from
> >> fs/select.c and renames the copy in fs/compat.c to make sure that it
> >> is not being used.
> >>
> >> Signed-off-by: Andrew Pinski <apinski@xxxxxxxxxx>
> >
> > I think this patch has to wait until we review the ILP32 ABI for arm64.
> > When I looked at this some time ago I thought we can just use the native
> > arm64 pselect6 and ppoll. Once we agree that's not possible we can push
> > this patch. On its own it doesn't have much value.
>
> Since fd_set is defined by XPG4.2 to be a struct of an array of
> "long"'s, we cannot change the definition in user space.
>
> I tried using the native ppoll/pselect for the ABI first. It worked
> for little-endian just fine but failed hard when big-endian.
> If we only care about little-endian arm64 at this point, I can remove
> this part of the patch and keep it for when we (Cavium) submits the
> big-endian patches.

I see the issue now. I think for the initial set of patches we can
assume little endian. We need a lot more testing, at least for AArch32
mode (we can kick off some tests here once these patches get closer to
merging).

--
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/