[dpdk-test-report] |FAILURE| pw61906[v2, 2/6] examples/exception_path: remove example from DPDK

sys_stv at intel.com sys_stv at intel.com
Fri Oct 25 19:43:02 CEST 2019


Test-Label: Intel-compilation
Test-Status: FAILURE
http://dpdk.org/patch/61906

_apply issues_

Submitter: Ciara Power <ciara.power at intel.com>
Date: 2019-10-24 13:31:41
Reply_mail: 20191024133145.12246-3-ciara.power at intel.com
DPDK git baseline:
	Repo:dpdk, CommitID: 5d92c4e592c43166e23501fddee5ee0dc910cd6f

*Repo: dpdk
#endif
#endif

/* Macros for printing using RTE_LOG */
#define RTE_LOGTYPE_APP RTE_LOGTYPE_USER1
#define FATAL_ERROR(fmt, args...)       rte_exit(EXIT_FAILURE, fmt "\n", ##args)
#define PRINT_INFO(fmt, args...)        RTE_LOG(INFO, APP, fmt "\n", ##args)

/* Max ports than can be used (each port is associated with two lcores) */
#define MAX_PORTS               (APP_MAX_LCORE / 2)

--
	if ((1ULL << lcore_id) & input_cores_mask) {
		/* Create new tap interface */
		snprintf(tap_name, IFNAMSIZ, "tap_dpdk_%.2u", lcore_id);
		tap_fd = tap_create(tap_name);
		if (tap_fd < 0)
			FATAL_ERROR("Could not create tap interface \"%s\" (%d)",
					tap_name, tap_fd);

		PRINT_INFO("Lcore %u is reading from port %u and writing to %s",
		           lcore_id, (unsigned)port_ids[lcore_id], tap_name);
		fflush(stdout);
--
	else if ((1ULL << lcore_id) & output_cores_mask) {
		/* Create new tap interface */
		snprintf(tap_name, IFNAMSIZ, "tap_dpdk_%.2u", lcore_id);
		tap_fd = tap_create(tap_name);
		if (tap_fd < 0)
			FATAL_ERROR("Could not create tap interface \"%s\" (%d)",
					tap_name, tap_fd);

		PRINT_INFO("Lcore %u is reading from %s and writing to port %u",
		           lcore_id, tap_name, (unsigned)port_ids[lcore_id]);
		fflush(stdout);
--

			ret = read(tap_fd, rte_pktmbuf_mtod(m, void *),
				MAX_PACKET_SZ);
			lcore_stats[lcore_id].rx++;
			if (unlikely(ret < 0)) {
				FATAL_ERROR("Reading from %s interface failed",
				            tap_name);
			}
			m->nb_segs = 1;
			m->next = NULL;
			m->pkt_len = (uint16_t)ret;
--
	if (ports_mask & (~((1 << rx_port) - 1)))
		goto fail; /* unused ports */

	return;
fail:
	FATAL_ERROR("Invalid core/port masks specified on command line");
}

/* Parse the arguments given in the command line of the application */
static void
parse_args(int argc, char **argv)
--
		case 'p':
			ports_mask = parse_unsigned(optarg);
			break;
		default:
			print_usage(prgname);
			FATAL_ERROR("Invalid option specified");
		}
	}

	/* Check that options were parsed ok */
	if (input_cores_mask == 0) {
		print_usage(prgname);
		FATAL_ERROR("IN_CORES not specified correctly");
	}
	if (output_cores_mask == 0) {
		print_usage(prgname);
		FATAL_ERROR("OUT_CORES not specified correctly");
	}
	if (ports_mask == 0) {
		print_usage(prgname);
		FATAL_ERROR("PORTMASK not specified correctly");
	}

	setup_port_lcore_affinities();
}

--
	if (dev_info.tx_offload_capa & DEV_TX_OFFLOAD_MBUF_FAST_FREE)
		local_port_conf.txmode.offloads |=
			DEV_TX_OFFLOAD_MBUF_FAST_FREE;
	ret = rte_eth_dev_configure(port, 1, 1, &local_port_conf);
	if (ret < 0)
		FATAL_ERROR("Could not configure port%u (%d)", port, ret);

	ret = rte_eth_dev_adjust_nb_rx_tx_desc(port, &nb_rxd, &nb_txd);
	if (ret < 0)
		FATAL_ERROR("Could not adjust number of descriptors for port%u (%d)",
			    port, ret);

	rxq_conf = dev_info.default_rxconf;
	rxq_conf.offloads = local_port_conf.rxmode.offloads;
	ret = rte_eth_rx_queue_setup(port, 0, nb_rxd,
				rte_eth_dev_socket_id(port),
				&rxq_conf,
				pktmbuf_pool);
	if (ret < 0)
		FATAL_ERROR("Could not setup up RX queue for port%u (%d)",
				port, ret);

	txq_conf = dev_info.default_txconf;
	txq_conf.offloads = local_port_conf.txmode.offloads;
	ret = rte_eth_tx_queue_setup(port, 0, nb_txd,
				rte_eth_dev_socket_id(port),
				&txq_conf);
	if (ret < 0)
		FATAL_ERROR("Could not setup up TX queue for port%u (%d)",
				port, ret);

	ret = rte_eth_dev_start(port);
	if (ret < 0)
		FATAL_ERROR("Could not start port%u (%d)", port, ret);

	rte_eth_promiscuous_enable(port);
}

/* Check the link status of all ports in up to 9s, and print them finally */
--
	signal(SIGUSR2, signal_handler);

	/* Initialise EAL */
	ret = rte_eal_init(argc, argv);
	if (ret < 0)
		FATAL_ERROR("Could not initialise EAL (%d)", ret);
	argc -= ret;
	argv += ret;

	/* Parse application arguments (after the EAL ones) */
	parse_args(argc, argv);

	/* Create the mbuf pool */
	pktmbuf_pool = rte_pktmbuf_pool_create("mbuf_pool", NB_MBUF,
			MEMPOOL_CACHE_SZ, 0, MBUF_DATA_SZ, rte_socket_id());
	if (pktmbuf_pool == NULL) {
		FATAL_ERROR("Could not initialise mbuf pool");
		return -1;
	}

	/* Get number of ports found in scan */
	nb_sys_ports = rte_eth_dev_count_avail();
	if (nb_sys_ports == 0)
		FATAL_ERROR("No supported Ethernet device found");
	/* Find highest port set in portmask */
	for (high_port = (sizeof(ports_mask) * 8) - 1;
			(high_port != 0) && !(ports_mask & (1 << high_port));
			high_port--)
		; /* empty body */
	if (high_port > nb_sys_ports)
		FATAL_ERROR("Port mask requires more ports than available");

	/* Initialise each port */
	RTE_ETH_FOREACH_DEV(port) {
		/* Skip ports that are not enabled */
		if ((ports_mask & (1 << port)) == 0) {
--
	}

	return 0;
}

error: patch failed: examples/exception_path/main.c:1
error: examples/exception_path/main.c: patch does not apply
Checking patch examples/exception_path/meson.build...
Checking patch examples/meson.build...

DPDK STV team


More information about the test-report mailing list