lkml.org 
[lkml]   [2010]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[RFC][PATCH v5 02/19] Add a new struct for device to manipulate external buffer.
    Date
    From: Xin Xiaohui <xiaohui.xin@intel.com>

    Signed-off-by: Xin Xiaohui <xiaohui.xin@intel.com>
    Signed-off-by: Zhao Yu <yzhao81new@gmail.com>
    Reviewed-by: Jeff Dike <jdike@linux.intel.com>
    ---
    include/linux/netdevice.h | 19 ++++++++++++++++++-
    1 files changed, 18 insertions(+), 1 deletions(-)

    diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
    index fa8b476..bae725c 100644
    --- a/include/linux/netdevice.h
    +++ b/include/linux/netdevice.h
    @@ -530,6 +530,22 @@ struct netdev_queue {
    unsigned long tx_dropped;
    } ____cacheline_aligned_in_smp;

    +/* Add a structure in structure net_device, the new field is
    + * named as mp_port. It's for mediate passthru (zero-copy).
    + * It contains the capability for the net device driver,
    + * a socket, and an external buffer creator, external means
    + * skb buffer belongs to the device may not be allocated from
    + * kernel space.
    + */
    +struct mpassthru_port {
    + int hdr_len;
    + int data_len;
    + int npages;
    + unsigned flags;
    + struct socket *sock;
    + struct skb_external_page *(*ctor)(struct mpassthru_port *,
    + struct sk_buff *, int);
    +};

    /*
    * This structure defines the management hooks for network devices.
    @@ -952,7 +968,8 @@ struct net_device {
    struct macvlan_port *macvlan_port;
    /* GARP */
    struct garp_port *garp_port;
    -
    + /* mpassthru */
    + struct mpassthru_port *mp_port;
    /* class/net/name entry */
    struct device dev;
    /* space for optional device, statistics, and wireless sysfs groups */
    --
    1.5.4.4


    \
     
     \ /
      Last update: 2010-05-07 11:33    [W:0.026 / U:62.712 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site