Subject: Re: [PATCH net 1/2] macvlan: forbid L2 fowarding offload for macvtap

From: "Michael S. Tsirkin" <[email-masked]>
Date: Fri, 10 Jan 2014 00:03:23 +0200

On Thu, Jan 09, 2014 at 01:39:08PM -0800, Stephen Hemminger wrote:
> On Thu, 09 Jan 2014 16:55:07 +0800
> Jason Wang <[email-masked]> wrote:
> 
> > What if use do want a qdisc and want to change the its queue length for
> > tun/macvlan? And the the name tx_queue_length is misleading. For tun it
> > may make sense since it was used in transmission path. For macvtap it
> > was not. So maybe what we need is just a new ioctl for both tun/macvtap
> > and a new feature flag. If user create the device with new feature flag,
> > the socket receive queue length could be changed by ioctl instead of
> > dev->tx_queue_length. If not, the old behaviour could be kept.
> 
> The overloading of tx_queue_len in macvtap was the original design mistake.
> Can't this just be undone and expose rx_queue_len as sysfs attribute?

Yes but we need to avoid breaking user-visible ABI.
So I think we'll need to catch any access attempts and redirect them to
the new rx_queue_len.  I posted a patch like this using new
ndo_set_tx_queue_len/ndo_get_tx_queue_len.  Have you seen it? What do
you think?