Licensing Information
Open Source Used In Cisco Nexus 9000 Series 7.0(3)I5(1)
3230
ixp_q_process(q);
}
}
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20)
static void
ixp_process_pending_wq(struct work_struct *work)
{
struct ixp_data *ixp = container_of(work, struct ixp_data, ixp_pending_work);
ixp_process_pending(ixp);
}
#endif
/*
* callback for when context registration is complete
*/
static void
ixp_register_cb(UINT32 ctx_id, IX_MBUF *bufp, IxCryptoAccStatus status)
{
int i;
struct ixp_data *ixp;
struct ixp_q *q;
dprintk("%s(%d, %p, %d)\n", __FUNCTION__, ctx_id, bufp, status);
/*
* free any buffer passed in to this routine
*/
if (bufp) {
IX_MBUF_MLEN(bufp) = IX_MBUF_PKT_LEN(bufp) = 0;
kfree(IX_MBUF_MDATA(bufp));
IX_MBUF_MDATA(bufp) = NULL;
}
for (i = 0; i < ixp_sesnum; i++) {
ixp = ixp_sessions[i];
if (ixp && ixp->ixp_ctx_id == ctx_id)
break;
}
if (i >= ixp_sesnum) {
printk("ixp: invalid context id %d\n", ctx_id);
return;
}
if (IX_CRYPTO_ACC_STATUS_WAIT == status) {
/* this is normal to free the first of two buffers */
dprintk("ixp: register not finished yet.\n");










