[LTP] [PATCH] syscalls/mq_open: fix limits for queues_max
Jan Stancek
jstancek@redhat.com
Wed Feb 15 17:50:47 CET 2017
----- Original Message -----
> From: "Cyril Hrubis" <chrubis@suse.cz>
> To: "Xiao Yang" <yangx.jy@cn.fujitsu.com>
> Cc: ltp@lists.linux.it, "Jan Stancek" <jstancek@redhat.com>
> Sent: Wednesday, 15 February, 2017 4:24:06 PM
> Subject: Re: [LTP] [PATCH] syscalls/mq_open: fix limits for queues_max
>
> Hi!
> > This case fails on RHEL6.8GA and RHEL6.9Beta, because setting
> > queues_max to 0 is invalid. the minimum value of queues_max
> > has been limitted to 1 on some distributions, Please see the
> > following kernel commit:
> >
> > commit 5b5c4d1a1440e94994c73dddbad7be0676cd8b9a
since RHEL6.2
> > Author: Doug Ledford <dledford@redhat.com>
> > Date: Thu May 31 16:26:30 2012 -0700
> >
> > ipc/mqueue: update maximums for the mqueue subsystem
> >
> > We set queues_max to 1 instead of 0, so this case can work on RHEL6.
>
> First I think that you have wrong commit, the one that actually added
> the limits was:
>
> commit 93e6f119c0ce8a1bba6e81dc8dd97d67be360844
since RHEL6.2
> Author: Doug Ledford <dledford@redhat.com>
> Date: Thu May 31 16:26:28 2012 -0700
>
> ipc/mqueue: cleanup definition names and locations
>
> Since this commit changes the proc handler in sysctl table and adds the
> minimum
> and maximum values there.
>
> Secondly these limits were removed in:
>
> commit a5c5928b759d8c7382cccc7be36769a68046cc58
doesn't seem to present in any RHEL6 kernel
> Author: Joe Perches <joe@perches.com>
> Date: Fri Jun 6 14:38:07 2014 -0700
>
> ipc: convert use of typedef ctl_table to struct ctl_table
>
>
> I'm not sure if this is worth the effort.
>
> Jan what do you think, should we apply this to fix the test on RHEL6?
I would like this to work with RHEL6, but it be good to understand
why failures started for Xiao only now.
I'm looking at results of kernel-2.6.32-694.el6 (6.9), and it's passing:
<<<test_start>>>
tag=mq_open01 stime=1487065446
cmdline="mq_open01"
contacts=""
analysis=exit
<<<test_output>>>
EXPECT: return value(ret)=(N >= 0) errno=0 (Success)
RESULT: return value(ret)= 7 errno=0 (Success)
mq_open01 0 TINFO : (case00) START
mq_open01 0 TINFO : mq_maxmsg E:20, R:20
mq_open01 0 TINFO : mq_msgsize E:16384, R:16384
mq_open01 0 TINFO : (case00) END => OK
mq_open01 1 TPASS : mq_open call succeeded
<<<execution_status>>>
initiation_status="ok"
duration=0 termination_type=exited termination_id=0 corefile=no
cutime=0 cstime=0
<<<test_end>>>
I'll try 6.8 too.
Regards,
Jan
More information about the ltp
mailing list