Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 24 Aug 2022 19:34:37 -0400
From: Rich Felker <dalias@...c.org>
To: Markus Wichmann <nullplan@....net>
Cc: musl@...ts.openwall.com
Subject: Re: [PATCH] epoll: return EINVAL from epoll_create() if size
 is non-positive

On Wed, Aug 24, 2022 at 08:47:04PM +0200, Markus Wichmann wrote:
> On Wed, Aug 24, 2022 at 03:26:52PM +0100, Kristina Martsenko wrote:
> > The man page for epoll_create() states that the 'size' argument must be
> > positive, otherwise EINVAL is returned. musl currently ignores the
> > argument and does not return EINVAL. Change it to match the man page.
> >
> > Worth noting that this is needed for an LTP (Linux Test Project) test to
> > pass (epoll_create02).
> 
> I am wondering if this change is sensible. On musl, the size argument is
> never handed to the kernel. Failing for nonpositive arguments may be in
> the spec, but it might make users assume the argument is actually used.
> But it isn't. epoll_create() always calls epoll_create1(), and that
> function falls back to the epoll_create syscall with a constant argument
> of 1 if epoll_create1 is not available.

Being that it's documented to fail with EINVAL for nonpositive
arguments, I think we should do that, even if the argument is
otherwise ignored.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.