/*-
* BSD LICENSE
*
- * Copyright(c) 2010-2013 Intel Corporation. All rights reserved.
+ * Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
extern "C" {
#endif
-#define RTE_VERSION 1 /**< The version of the RTE configuration structure. */
#define RTE_MAGIC 19820526 /**< Magic number written by the main partition when ready. */
/**
* The global RTE configuration structure.
*/
struct rte_config {
- uint32_t version; /**< Configuration [structure] version. */
- uint32_t magic; /**< Magic number - Sanity check. */
-
-
uint32_t master_lcore; /**< Id of the master lcore */
uint32_t lcore_count; /**< Number of available logical cores. */
enum rte_lcore_role_t lcore_role[RTE_MAX_LCORE]; /**< State of cores. */
/** Primary or secondary configuration */
enum rte_proc_type_t process_type;
+ /** A set of general status flags */
+ unsigned flags;
+
/**
* Pointer to memory configuration, which may be shared across multiple
* Intel DPDK instances
struct rte_mem_config *mem_config;
} __attribute__((__packed__));
+/* Flag definitions for rte_config flags */
+#define EAL_FLG_HIGH_IOPL 1 /**< indicates high IO privilege in a linux env */
+
/**
* Get the global configuration structure.
*
} \
} while(0)
-
+/**
+ * Whether EAL is using huge pages (disabled by --no-huge option).
+ * The no-huge mode cannot be used with UIO poll-mode drivers like igb/ixgbe.
+ * It is useful for NIC drivers (e.g. librte_pmd_mlx4, librte_pmd_vmxnet3) or
+ * crypto drivers (e.g. librte_crypto_nitrox) provided by third-parties such
+ * as 6WIND.
+ *
+ * @return
+ * Nonzero if hugepages are enabled.
+ */
+int rte_eal_has_hugepages(void);
+
#ifdef __cplusplus
}
#endif