Lines Matching refs:sch
585 struct Qdisc *sch; in qdisc_alloc() local
586 unsigned int size = QDISC_ALIGN(sizeof(*sch)) + ops->priv_size; in qdisc_alloc()
595 sch = (struct Qdisc *) QDISC_ALIGN((unsigned long) p); in qdisc_alloc()
597 if (sch != p) { in qdisc_alloc()
603 sch = (struct Qdisc *) QDISC_ALIGN((unsigned long) p); in qdisc_alloc()
604 sch->padded = (char *) sch - (char *) p; in qdisc_alloc()
606 INIT_LIST_HEAD(&sch->list); in qdisc_alloc()
607 skb_queue_head_init(&sch->q); in qdisc_alloc()
609 spin_lock_init(&sch->busylock); in qdisc_alloc()
610 lockdep_set_class(&sch->busylock, in qdisc_alloc()
613 sch->ops = ops; in qdisc_alloc()
614 sch->enqueue = ops->enqueue; in qdisc_alloc()
615 sch->dequeue = ops->dequeue; in qdisc_alloc()
616 sch->dev_queue = dev_queue; in qdisc_alloc()
618 atomic_set(&sch->refcnt, 1); in qdisc_alloc()
620 return sch; in qdisc_alloc()
629 struct Qdisc *sch; in qdisc_create_dflt() local
634 sch = qdisc_alloc(dev_queue, ops); in qdisc_create_dflt()
635 if (IS_ERR(sch)) in qdisc_create_dflt()
637 sch->parent = parentid; in qdisc_create_dflt()
639 if (!ops->init || ops->init(sch, NULL) == 0) in qdisc_create_dflt()
640 return sch; in qdisc_create_dflt()
642 qdisc_destroy(sch); in qdisc_create_dflt()