lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 7 Mar 2011 18:51:17 -0800
From:	"Zou, Yi" <yi.zou@...el.com>
To:	Ben Hutchings <bhutchings@...arflare.com>,
	"Kirsher, Jeffrey T" <jeffrey.t.kirsher@...el.com>
CC:	"davem@...emloft.net" <davem@...emloft.net>,
	"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
	"gospo@...hat.com" <gospo@...hat.com>,
	"bphilips@...ell.com" <bphilips@...ell.com>,
	"Patil, Kiran" <kiran.patil@...el.com>
Subject: RE: [net-next-2.6 05/14] vlan: add support to ndo_fcoe_ddp_target()

> On Mon, 2011-03-07 at 18:24 -0800, Jeff Kirsher wrote:
> > From: Yi Zou <yi.zou@...el.com>
> >
> > Add the new target ddp offload support ndo_fcoe_ddp_target().
> >
> > Signed-off-by: Yi Zou <yi.zou@...el.com>
> > Signed-off-by: Kiran Patil <kiran.patil@...el.com>
> > Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@...el.com>
> > ---
> >  net/8021q/vlan_dev.c |   14 ++++++++++++++
> >  1 files changed, 14 insertions(+), 0 deletions(-)
> >
> > diff --git a/net/8021q/vlan_dev.c b/net/8021q/vlan_dev.c
> > index be73753..ae610f0 100644
> > --- a/net/8021q/vlan_dev.c
> > +++ b/net/8021q/vlan_dev.c
> > @@ -625,6 +625,19 @@ static int vlan_dev_fcoe_get_wwn(struct net_device
> *dev, u64 *wwn, int type)
> >  		rc = ops->ndo_fcoe_get_wwn(real_dev, wwn, type);
> >  	return rc;
> >  }
> > +
> > +static int vlan_dev_fcoe_ddp_target(struct net_device *dev, u16 xid,
> > +				    struct scatterlist *sgl, unsigned int sgc)
> > +{
> > +	struct net_device *real_dev = vlan_dev_info(dev)->real_dev;
> > +	const struct net_device_ops *ops = real_dev->netdev_ops;
> > +	int rc = 0;
> > +
> > +	if (ops->ndo_fcoe_ddp_target)
> > +		rc = ops->ndo_fcoe_ddp_target(real_dev, xid, sgl, sgc);
> > +
> > +	return rc;
> > +}
> 
> I can't see a caller or any documentation for this operation, so I don't
> know what the semantics are supposed to be.  But shouldn't the return
> value be -EOPNOTSUPP if real_dev does not implement the operation?
> 
> Ben.
This is similar to existing ndo_fcoe_ddp_setup(), but is for target mode,
the two are the same on semantics, but the LLD implementation will/may
be different depending on the driver as e.g. ,target works on RX_ID where
initiator works on OX_ID. The returning of rc being 0 indicates no DDP
was setup for this fc exchange, not necessarily EOPNOTSUPP.

Thanks,
yi

> 
> >  #endif
> >
> >  static void vlan_dev_change_rx_flags(struct net_device *dev, int
> change)
> > @@ -858,6 +871,7 @@ static const struct net_device_ops vlan_netdev_ops
> = {
> >  	.ndo_fcoe_enable	= vlan_dev_fcoe_enable,
> >  	.ndo_fcoe_disable	= vlan_dev_fcoe_disable,
> >  	.ndo_fcoe_get_wwn	= vlan_dev_fcoe_get_wwn,
> > +	.ndo_fcoe_ddp_target	= vlan_dev_fcoe_ddp_target,
> >  #endif
> >  };
> >
> 
> --
> Ben Hutchings, Senior Software Engineer, Solarflare Communications
> Not speaking for my employer; that's the marketing department's job.
> They asked us to note that Solarflare product names are trademarked.

Powered by blists - more mailing lists