From 54ec712ebeb6076ec1c958076da41c804fded378 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Sat, 27 Nov 2010 15:48:01 +0000 Subject: [PATCH] [fcoe] Use only the first instance of a FIP descriptor Almost all FIP packets contain at most one instance of each descriptor. A VLAN notification may contain multiple VLAN descriptors. The FCoE specification does not provide any guidance regarding prioritisation of VLANs, so we may choose to arbitrarily choose the first listed VLAN. Signed-off-by: Michael Brown --- src/net/fcoe.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/net/fcoe.c b/src/net/fcoe.c index c43fef61..db2fc980 100644 --- a/src/net/fcoe.c +++ b/src/net/fcoe.c @@ -533,7 +533,9 @@ static int fcoe_fip_parse ( struct fcoe_port *fcoe, struct fip_header *fiphdr, /* Handle descriptors that we understand */ if ( ( desc_type > FIP_RESERVED ) && ( desc_type < FIP_NUM_DESCRIPTOR_TYPES ) ) { - descs->desc[desc_type] = desc; + /* Use only the first instance of a descriptor */ + if ( descs->desc[desc_type] == NULL ) + descs->desc[desc_type] = desc; continue; }