Date: Tue, 2 Feb 2016 16:17:17 +0300 From: Slawa Olhovchenkov <slw@zxy.spb.ru> To: Konstantin Belousov <kib@freebsd.org> Cc: Mateusz Guzik <mjguzik@gmail.com>, freebsd-hackers@freebsd.org, Mateusz Guzik <mjg@freebsd.org> Subject: Re: [PATCH 1/2] fork: pass arguments to fork1 in a dedicated structure Message-ID: <20160202131717.GO88527@zxy.spb.ru> In-Reply-To: <20160202131145.GT91220@kib.kiev.ua> References: <20160201103632.GL91220@kib.kiev.ua> <1454386069-29657-1-git-send-email-mjguzik@gmail.com> <1454386069-29657-2-git-send-email-mjguzik@gmail.com> <20160202131145.GT91220@kib.kiev.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Feb 02, 2016 at 03:11:45PM +0200, Konstantin Belousov wrote:
> On Tue, Feb 02, 2016 at 05:07:48AM +0100, Mateusz Guzik wrote:
> > From: Mateusz Guzik <mjg@freebsd.org>
> >
> > ---
> > sys/compat/cloudabi/cloudabi_proc.c | 7 +++++-
> > sys/compat/linux/linux_fork.c | 17 ++++++++++----
> > sys/kern/init_main.c | 6 +++--
> > sys/kern/kern_fork.c | 46 +++++++++++++++++++++++++------------
> > sys/kern/kern_kthread.c | 7 ++++--
> > sys/sys/proc.h | 12 ++++++++--
> > 6 files changed, 68 insertions(+), 27 deletions(-)
> >
> > diff --git a/sys/compat/cloudabi/cloudabi_proc.c b/sys/compat/cloudabi/cloudabi_proc.c
> > index d917337..010efca 100644
> > --- a/sys/compat/cloudabi/cloudabi_proc.c
> > +++ b/sys/compat/cloudabi/cloudabi_proc.c
> > @@ -75,12 +75,17 @@ int
> > cloudabi_sys_proc_fork(struct thread *td,
> > struct cloudabi_sys_proc_fork_args *uap)
> > {
> > + struct fork_req fr = {};
> > struct filecaps fcaps = {};
> > struct proc *p2;
> > int error, fd;
> >
> > cap_rights_init(&fcaps.fc_rights, CAP_FSTAT, CAP_EVENT);
> > - error = fork1(td, RFFDG | RFPROC | RFPROCDESC, 0, &p2, &fd, 0, &fcaps);
> > + fr.fr_flags = RFFDG | RFPROC | RFPROCDESC;
> > + fr.fr_procp = &p2;
> > + fr.fr_pd_fd = &fd;
> > + fr.fr_pd_fcaps = &fcaps;
> > + error = fork1(td, &fr);
> > if (error != 0)
> > return (error);
> The patch is fine.
>
> Would be great to not use initializer in declaration, i.e. use bzero()
> instead of c99 designated initializers.
What purpose?
Compiler may use more effecien zeroing with c99 designated initializers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160202131717.GO88527>
