Lines Matching defs:mpc
8 #include "mpc.h"
133 static int cache_hit(in_cache_entry *entry, struct mpoa_client *mpc)
143 if (entry->count > mpc->parameters.mpc_p1) {
146 memcpy(msg.MPS_ctrl, mpc->mps_ctrl_addr, ATM_ESA_LEN);
150 msg_to_mpoad(&msg, mpc);
162 if (entry->count > mpc->parameters.mpc_p1 &&
165 mpc->dev->name, &entry->ctrl_info.in_dst_ip);
168 memcpy(msg.MPS_ctrl, mpc->mps_ctrl_addr, ATM_ESA_LEN);
173 msg_to_mpoad(&msg, mpc);
324 static void in_destroy_cache(struct mpoa_client *mpc)
326 write_lock_irq(&mpc->ingress_lock);
327 while (mpc->in_cache != NULL)
328 mpc->in_ops->remove_entry(mpc->in_cache, mpc);
329 write_unlock_irq(&mpc->ingress_lock);
333 struct mpoa_client *mpc)
337 read_lock_irq(&mpc->egress_lock);
338 entry = mpc->eg_cache;
342 read_unlock_irq(&mpc->egress_lock);
347 read_unlock_irq(&mpc->egress_lock);
353 static eg_cache_entry *eg_cache_get_by_tag(__be32 tag, struct mpoa_client *mpc)
358 read_lock_irqsave(&mpc->egress_lock, flags);
359 entry = mpc->eg_cache;
363 read_unlock_irqrestore(&mpc->egress_lock, flags);
368 read_unlock_irqrestore(&mpc->egress_lock, flags);
375 struct mpoa_client *mpc)
380 read_lock_irqsave(&mpc->egress_lock, flags);
381 entry = mpc->eg_cache;
385 read_unlock_irqrestore(&mpc->egress_lock, flags);
390 read_unlock_irqrestore(&mpc->egress_lock, flags);
396 struct mpoa_client *mpc)
400 read_lock_irq(&mpc->egress_lock);
401 entry = mpc->eg_cache;
405 read_unlock_irq(&mpc->egress_lock);
410 read_unlock_irq(&mpc->egress_lock);
525 static void eg_destroy_cache(struct mpoa_client *mpc)
527 write_lock_irq(&mpc->egress_lock);
528 while (mpc->eg_cache != NULL)
529 mpc->eg_ops->remove_entry(mpc->eg_cache, mpc);
530 write_unlock_irq(&mpc->egress_lock);
561 void atm_mpoa_init_cache(struct mpoa_client *mpc)
563 mpc->in_ops = &ingress_ops;
564 mpc->eg_ops = &egress_ops;