Yi Zou wrote:
> We are always sending the max frame size from lport->mfs when sending the FIP
> keep alive even there are no vport desciptors. There is no need to send the
> full sized frame for keep-alive.
> 
> Signed-off-by: Yi Zou <[email protected]>
> ---
> 
>  drivers/scsi/fcoe/libfcoe.c |    5 +++--
>  1 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/fcoe/libfcoe.c b/drivers/scsi/fcoe/libfcoe.c
> index 2988b71..b9c56ff 100644
> --- a/drivers/scsi/fcoe/libfcoe.c
> +++ b/drivers/scsi/fcoe/libfcoe.c
> @@ -351,8 +351,9 @@ static void fcoe_ctlr_send_keep_alive(struct fcoe_ctlr 
> *fip,
>       if (!fcf || !fc_host_port_id(lp->host))
>               return;
>  
> -     len = fcoe_ctlr_fcoe_size(fip) + sizeof(struct ethhdr);
> -     BUG_ON(len < sizeof(*kal) + sizeof(*vn));
> +     len = sizeof(*kal) + ports * sizeof(*vn);
> +     if (len < ETH_ZLEN)
> +             len = ETH_ZLEN;
>       skb = dev_alloc_skb(len);
>       if (!skb)
>               return;
> 

I guess a preliminary version of FIP must've specified that Keep Alives were
padded in order to verify the fabric can still carry jumbo frames.
I may have just heard this in a conversation somewhere.
It doens't have anything to do with whether there is a port parameter or
vports.  The BUG_ON is just paranoia to say the padding is always going
to give us a big enough skb.

However, I can't find anything about padding keep-alives in the
current spec.  It only talks about padding the solicited advertisements.

I still think it's a good idea to pad the keep-alives.
Maybe we should get the spec. to state that.

        Joe
_______________________________________________
devel mailing list
[email protected]
http://www.open-fcoe.org/mailman/listinfo/devel

Reply via email to