Commit 734423cf authored by Patrick McHardy's avatar Patrick McHardy Committed by David S. Miller

[VLAN]: Use 32 bit value for skb->priority mapping

skb->priority has only 32 bits and even VLAN uses 32 bit values in its API.
Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 2ae0bf69
...@@ -99,7 +99,7 @@ static inline void vlan_group_set_device(struct vlan_group *vg, int vlan_id, ...@@ -99,7 +99,7 @@ static inline void vlan_group_set_device(struct vlan_group *vg, int vlan_id,
} }
struct vlan_priority_tci_mapping { struct vlan_priority_tci_mapping {
unsigned long priority; u32 priority;
unsigned short vlan_qos; /* This should be shifted when first set, so we only do it unsigned short vlan_qos; /* This should be shifted when first set, so we only do it
* at provisioning time. * at provisioning time.
* ((skb->priority << 13) & 0xE000) * ((skb->priority << 13) & 0xE000)
...@@ -112,7 +112,7 @@ struct vlan_dev_info { ...@@ -112,7 +112,7 @@ struct vlan_dev_info {
/** This will be the mapping that correlates skb->priority to /** This will be the mapping that correlates skb->priority to
* 3 bits of VLAN QOS tags... * 3 bits of VLAN QOS tags...
*/ */
unsigned long ingress_priority_map[8]; u32 ingress_priority_map[8];
struct vlan_priority_tci_mapping *egress_priority_map[16]; /* hash table */ struct vlan_priority_tci_mapping *egress_priority_map[16]; /* hash table */
unsigned short vlan_id; /* The VLAN Identifier for this interface. */ unsigned short vlan_id; /* The VLAN Identifier for this interface. */
......
...@@ -342,7 +342,7 @@ static int vlandev_seq_show(struct seq_file *seq, void *offset) ...@@ -342,7 +342,7 @@ static int vlandev_seq_show(struct seq_file *seq, void *offset)
seq_printf(seq, "Device: %s", dev_info->real_dev->name); seq_printf(seq, "Device: %s", dev_info->real_dev->name);
/* now show all PRIORITY mappings relating to this VLAN */ /* now show all PRIORITY mappings relating to this VLAN */
seq_printf(seq, seq_printf(seq,
"\nINGRESS priority mappings: 0:%lu 1:%lu 2:%lu 3:%lu 4:%lu 5:%lu 6:%lu 7:%lu\n", "\nINGRESS priority mappings: 0:%u 1:%u 2:%u 3:%u 4:%u 5:%u 6:%u 7:%u\n",
dev_info->ingress_priority_map[0], dev_info->ingress_priority_map[0],
dev_info->ingress_priority_map[1], dev_info->ingress_priority_map[1],
dev_info->ingress_priority_map[2], dev_info->ingress_priority_map[2],
...@@ -357,7 +357,7 @@ static int vlandev_seq_show(struct seq_file *seq, void *offset) ...@@ -357,7 +357,7 @@ static int vlandev_seq_show(struct seq_file *seq, void *offset)
const struct vlan_priority_tci_mapping *mp const struct vlan_priority_tci_mapping *mp
= dev_info->egress_priority_map[i]; = dev_info->egress_priority_map[i];
while (mp) { while (mp) {
seq_printf(seq, "%lu:%hu ", seq_printf(seq, "%u:%hu ",
mp->priority, ((mp->vlan_qos >> 13) & 0x7)); mp->priority, ((mp->vlan_qos >> 13) & 0x7));
mp = mp->next; mp = mp->next;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment