Lines Matching defs:msgbuf
644 static int vnet_rx(struct vnet_port *port, void *msgbuf, int *npkts,
647 struct vio_dring_data *pkt = msgbuf;
686 static int vnet_ack(struct vnet_port *port, void *msgbuf)
689 struct vio_dring_data *pkt = msgbuf;
735 static int vnet_nack(struct vnet_port *port, void *msgbuf)
741 static int handle_mcast(struct vnet_port *port, void *msgbuf)
743 struct vio_net_mcast_info *pkt = msgbuf;
840 } msgbuf;
844 (struct vio_dring_data *)&msgbuf;
856 err = ldc_read(vio->lp, &msgbuf, sizeof(msgbuf));
865 msgbuf.tag.type,
866 msgbuf.tag.stype,
867 msgbuf.tag.stype_env,
868 msgbuf.tag.sid);
869 err = vio_validate_sid(vio, &msgbuf.tag);
874 if (likely(msgbuf.tag.type == VIO_TYPE_DATA)) {
875 if (msgbuf.tag.stype == VIO_SUBTYPE_INFO) {
884 err = vnet_rx(port, &msgbuf, &npkts, budget);
889 } else if (msgbuf.tag.stype == VIO_SUBTYPE_ACK) {
890 err = vnet_ack(port, &msgbuf);
893 } else if (msgbuf.tag.stype == VIO_SUBTYPE_NACK) {
894 err = vnet_nack(port, &msgbuf);
896 } else if (msgbuf.tag.type == VIO_TYPE_CTRL) {
897 if (msgbuf.tag.stype_env == VNET_MCAST_INFO)
898 err = handle_mcast(port, &msgbuf);
900 err = vio_control_pkt_engine(vio, &msgbuf);
904 err = vnet_handle_unknown(port, &msgbuf);