[PATCH net-next,v2] Add support for netvsc build without CONFIG_SYSFS flag

Ben Hutchings ben at decadent.org.uk
Sun May 11 13:07:05 UTC 2014


On Thu, 2014-05-08 at 20:50 +0000, Haiyang Zhang wrote:
> 
> > -----Original Message-----
> > From: David Miller [mailto:davem at davemloft.net]
> > Sent: Thursday, May 8, 2014 4:45 PM
> > To: Haiyang Zhang
> > Cc: netdev at vger.kernel.org; KY Srinivasan; olaf at aepfle.de;
> > jasowang at redhat.com; linux-kernel at vger.kernel.org; driverdev-
> > devel at linuxdriverproject.org
> > Subject: Re: [PATCH net-next,v2] Add support for netvsc build without
> > CONFIG_SYSFS flag
> > 
> > From: Haiyang Zhang <haiyangz at microsoft.com>
> > Date: Thu,  8 May 2014 13:41:33 -0700
> > 
> > > +static inline void netvsc_record_rx_queue(struct sk_buff *skb,
> > > +					  struct hv_netvsc_packet *packet,
> > > +					  struct net_device *ndev)
> > > +{
> > > +#ifdef CONFIG_SYSFS
> > > +	skb_record_rx_queue(skb, packet->channel->
> > > +			    offermsg.offer.sub_channel_index %
> > > +			    ndev->real_num_rx_queues);
> > > +#endif
> > > +}
> > 
> > This is still fantastically gross, what is so unique about your driver that it needs
> > hacks like this?  No other driver to my knowledge does.
> > 
> > Figure out what it is that makes your driver so unique, and try to make it
> > conform to how other drivers handle these features without SYSFS ifdef'ery
> > instead.
> > 
> 
> I looked around the other drivers, and the netif_set_real_num_rx_queues() function. 
> It's already switched to no-op without CONFIG_SYSFS flag. So I will rely on this, and 
> don't have to handle the flag in my code. 

I think most other drivers have a 1-1 mapping between hardware RX queues
and the RX queue indices reported to Linux.  It appears that in this
case sub_channel_index is the 'hardware' queue number, but you think
there is not a 1-1 mapping.  Why is that?

Ben.

-- 
Ben Hutchings
Sturgeon's Law: Ninety percent of everything is crap.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 828 bytes
Desc: This is a digitally signed message part
URL: <http://driverdev.linuxdriverproject.org/pipermail/driverdev-devel/attachments/20140511/6f9f535f/attachment.asc>


More information about the devel mailing list