>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
I was looking at the T11/09-117v1 as the FC-BB-5 for updated FIP updated, where in the end of 7.7.6.2, it says "FIP_Pad field shall be of zero length for all other FIP operations.", where as you mentioned only the solicited advertisements must have the FIP pad. I will double-check on the spec tomorrow to make sure. yi _______________________________________________ devel mailing list [email protected] http://www.open-fcoe.org/mailman/listinfo/devel
