mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: rohit verma <rohit.170309@gmail.com>
To: Hiroyuki.Mach@gmail.com
Cc: linux-kernel@vger.kernel.org
Subject: Re: epoll_create(0) becomes not to fail (Re: issue with epoll system  call)
Date: Tue, 12 May 2009 12:24:55 +0530	[thread overview]
Message-ID: <d51f89b0905112354k566d6de9lad4351d1ebc71759@mail.gmail.com> (raw)
In-Reply-To: <feaf5ed90905080049j78a4ab54x53ce65f22a3ea6a4@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3284 bytes --]

hi,

I have created a patch for epoll_create syscall as shown below. Plz
have a check and
get back to me.

diff a/fs/eventpoll.c   b/fs/eventpoll.c



--- eventpoll_orig.c    2009-05-12 12:07:27.000000000 +0530
+++ eventpoll.c 2009-05-12 12:10:14.000000000 +0530
@@ -1136,7 +1136,7 @@
 SYSCALL_DEFINE1(epoll_create, int, size)
 {
-       if (size < 0)
+       if (size <= 0)
                return -EINVAL;
        return sys_epoll_create1(0);



Since there might be some formatting problems, i'm also attaching the
patch in this
mail.

Regards,
Rohit



On Fri, May 8, 2009 at 1:19 PM, Hiroyuki Machida
<Hiroyuki.Mach@gmail.com> wrote:
>
> Hi  Verma,
>
> I think your point is right. but descriptions looks not straight forward.
> And title of the message is very confusable.
> I think descriptions like following would be easy to understand, and
> you should attach a your signed-off patch to fix the bug.
>
>
> Thanks,
> Hiro
>
> ----
>
> The following patch changed behavior of epoll_create(0);
>
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=9fe5ad9c8cef9ad5873d8ee55d1cf00d9b607df0;hp=e38b36f325153eaadd1c2a7abc5762079233e540
>
>
> Before applying the patch,
> sys_epoll_create2(int size, int flags)
> returned -EINVAL,  with size=0;
>
> But,  if-condtion which is introduced in sys_epoll_create() by this patch,
> looks to fail to consider case of size==0 as follows;
>
>  asmlinkage long sys_epoll_create(int size)
>  {
> -       return sys_epoll_create2(size, 0);
> +       if (size < 0)
> +               return -EINVAL;
> +
> +       return sys_epoll_create1(0);
>  }
>
>
> ---
> Hiroyuki Machida
>
>
>
> On Thu, May 7, 2009 at 4:10 PM, rohit verma <rohit.170309@gmail.com> wrote:
> > hi all,
> >
> > The man pages of epoll_create says - "Since Linux 2.6.8, the size
> > argument is unused.  (The kernel dynamically sizes the required data
> > structures without needing this initial hint.)" .
> >
> > Also, it says that the syscall returns EINVAL , when size is not
> > positive. (i.e For, any value greater than 0, the kernel dynamically
> > sizes the required data stuctures). When size is zero or less than
> > zero, it has to return with error as EINVAL.
> >
> > the link:  http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=9fe5ad9c8cef9ad5873d8ee55d1cf00d9b607df0;hp=e38b36f325153eaadd1c2a7abc5762079233e540
> >
> > shows the latest patch of the epoll syscall. here , the syscall says:
> >
> > asmlinkage long sys_epoll_create(int size)
> > {
> > - return sys_epoll_create2(size,0);
> > + if (size < 0)
> > +  return -EINVAL;
> > +
> > +return sys_epoll_create1(0);
> > }
> >
> > So if size = 0, it returns success which might not be the expected
> > result. So i feel that the condition check should be
> > " if (size <= 0) ". could u please check on this and reply me..
> >
> > Thank you,
> >
> > Regards,
> > rohit
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at  http://www.tux.org/lkml/
> >

[-- Attachment #2: epoll.patch --]
[-- Type: application/octet-stream, Size: 263 bytes --]

--- eventpoll_orig.c	2009-05-12 12:07:27.000000000 +0530
+++ eventpoll.c	2009-05-12 12:10:14.000000000 +0530
@@ -1136,7 +1136,7 @@
 
 SYSCALL_DEFINE1(epoll_create, int, size)
 {
-	if (size < 0)
+	if (size <= 0)
 		return -EINVAL;
 
 	return sys_epoll_create1(0);

  parent reply	other threads:[~2009-05-12  6:55 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-08  7:49 Hiroyuki Machida
2009-05-08 15:19 ` Davide Libenzi
2009-05-12  6:54 ` rohit verma [this message]
2009-05-12 19:03   ` Davide Libenzi
2009-05-13  0:58   ` Hiroyuki Machida

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=d51f89b0905112354k566d6de9lad4351d1ebc71759@mail.gmail.com \
    --to=rohit.170309@gmail.com \
    --cc=Hiroyuki.Mach@gmail.com \
    --cc=linux-kernel@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

all inboxes | Powered by JetHome®