lkml.org 
[lkml]   [2010]   [Mar]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCH v1 2/3] Provides multiple submits and asynchronous notifications.
    On Mon, Mar 15, 2010 at 04:46:50PM +0800, Xin, Xiaohui wrote:
    > >> +/* The structure to notify the virtqueue for async socket */
    > >> +struct vhost_notifier {
    > >> + struct list_head list;
    > > >+ struct vhost_virtqueue *vq;
    > > >+ int head;
    > > >+ int size;
    > > >+ int log;
    > > >+ void *ctrl;
    > > >+ void (*dtor)(struct vhost_notifier *);
    > > >+};
    > > >+
    >
    > >So IMO, this is not the best interface between vhost
    > >and your driver, exposing them to each other unnecessarily.
    > >
    > >If you think about it, your driver should not care about this structure.
    > >It could get e.g. a kiocb (sendmsg already gets one), and call ki_dtor
    > >on completion. vhost could save it's state in ki_user_data. If your
    > >driver needs to add more data to do more tracking, I think it can put
    > >skb pointer in the private pointer.
    >
    > Then if I remove the struct vhost_notifier, and just use struct kiocb, but don't use the one got from sendmsg or recvmsg, but allocated within the page_info structure, and don't implement any aio logic related to it, is that ok?

    Hmm, not sure I understand. It seems both cleaner and easier to use the
    iocb passed to sendmsg/recvmsg. No? I am not saying you necessarily must
    implement full aio directly.

    > Sorry, I made a patch, but don't know how to reply mail with a good formatted patch here....
    >
    > Thanks
    > Xiaohui

    Maybe Documentation/email-clients.txt will help?
    Generally you do it like this (at start of mail):

    Subject: one line patch summary (overrides mail subject)

    multilie patch description

    Signed-off-by: <...>

    ---

    Free text comes after --- delimeter, before patch.

    diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c
    index a140dad..e830b30 100644
    --- a/drivers/vhost/net.c
    +++ b/drivers/vhost/net.c
    @@ -106,22 +106,41 @@ static void handle_tx(struct vhost_net *net)




    --
    MST


    \
     
     \ /
      Last update: 2010-03-15 10:29    [W:0.026 / U:58.348 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site