[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1432158478.717952.274218561.54417CB3@webmail.messagingengine.com>
Date: Wed, 20 May 2015 23:47:58 +0200
From: Hannes Frederic Sowa <hannes@...essinduktion.org>
To: Cong Wang <cwang@...pensource.com>
Cc: netdev <netdev@...r.kernel.org>
Subject: Re: [PATCH net-next 4/4] net: af_unix: implement splice for stream
af_unix sockets
Hi Cong,
On Wed, May 20, 2015, at 22:59, Cong Wang wrote:
> On Wed, May 20, 2015 at 8:35 AM, Hannes Frederic Sowa
> <hannes@...essinduktion.org> wrote:
> >
> > -static int unix_stream_recvmsg(struct socket *sock, struct msghdr *msg,
> > - size_t size, int flags)
> > +struct unix_stream_read_state {
> > + int (*recv_actor)(struct sk_buff *, int, int,
> > + struct unix_stream_read_state *);
> > + struct socket *socket;
> > + struct msghdr *msg;
> > + struct pipe_inode_info *pipe;
> > + size_t size;
> > + int flags;
> > + unsigned int splice_flags;
> > +};
> > +
> > +static __always_inline
> > +int unix_stream_read_generic(struct unix_stream_read_state *state)
>
>
> Why __always_inline here?
During benchmarking I discovered that the simple ordinary recvmsg case
lost a bit in performance because of the indirection. With
__always_inline -ing unix_stream_read_generic I got it to almost the
same numbers again as without the change. Thus I decided to leave it
there.
Also, thank you for your other feedback. I will address it soon after
letting the patches receiving a bit more feedback.
Thanks,
Hannes
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists