Re: Does the driver directly ma p TOS/DSCPtags toUser Priority into QoS Control field?
Alex Chpenst <[email protected]> Thu, 19 Feb 2009 14:15:15 +0300
| Newsgroups | gmane.linux.drivers.ipw2100.devel |
|---|---|
| Message-ID | <[email protected]> |
According to ieee80211_classify(), the priority value is read from the TOS field of IP packet, which is stored in skb->priority. If I understand it correct, skb->priority is what is passed further to ipw2200. So, I guess it is enough to set a TOS/DSCP value within the IP packet (e.g. with iptables) so that a packet is put by ipw2200 into the corresponding queue. That is, no need to set a VLAN User Priority tag in Ethernet frame! Will it work only by setting TOS/DSCP? (can't check it now) Is User Priority field within the QoS Control field at the MAC layer is set then by the firmware or by the ipw2200 driver? Thanks!! Alex. -----Original Message----- From: Zhu Yi <[email protected]> To: Alex Chpenst <[email protected]> Date: Thu, 19 Feb 2009 15:44:48 +0800 Subject: Re: Re[2]: [Ipw2100-devel] Does the driver directly map TOS/DSCPtags toUser Priority into QoS Control field? > > On Thu, 2009-02-19 at 15:39 +0800, Alex Chpenst wrote: > > Thanks!! I've looked at ipw2200, there is a function: > > > > ipw_get_tx_queue_number(struct ipw_priv *priv, u16 priority) > > > > which maps the packet priority to the right TX Queue. But I can't find > > out what "priority" is. Does it come from ieee80211? Is it User > > Priority from VLAN tag? Is it User Priority from TOS field of IP > > packet? > > > > This function is called from another one: > > > > ipw_tx_skb(struct ipw_priv *priv, struct ieee80211_txb *txb, int pri) > > { > > ... > > int tx_id = ipw_get_tx_queue_number(priv, pri); > > ... > > } > > where "priority" is "pri". Now, this one is called from: > > > > ipw_net_hard_start_xmit(struct ieee80211_txb *txb, struct net_device > > *dev, int pri) { > > ... > > ret = ipw_tx_skb(priv, txb, pri); > > ... > > } > > > > I stop here, as I can't find where "ipw_net_hard_start_xmit" is called > > from and where this "pri" variable comes from... > > Take a look at drivers/net/wireless/ipw2x00/libipw_tx.c. > > Thanks, > -yi > ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H