Re: [dpdk-dev] Defining multiple actions based on a field value for the same table lookup in ip_pipeline application

2017-05-18 Thread Shyam Shrivastav
That can be done in the same miss function as I understand, if (condition1) {} else {} On Fri, May 19, 2017 at 10:53 AM, Nidhia Varghese < nidhiavarghes...@gmail.com> wrote: > Thanks for your reply Shyam. > Yes, I went through it. But my doubt is whether it is possible to define > two different m

Re: [dpdk-dev] Defining multiple actions based on a field value for the same table lookup in ip_pipeline application

2017-05-18 Thread Nidhia Varghese
Thanks for your reply Shyam. Yes, I went through it. But my doubt is whether it is possible to define two different miss actions based on some decision criteria(input port in my case). Miss ->Case 1: Add entry to table if portid = 1 ->Case 2: Drop if portid = 2 On Thu, May 18, 2017 at 7:34

Re: [dpdk-dev] [PATCH 3/6] eal/arm64: rte pause implementation for arm64

2017-05-18 Thread Jianbo Liu
On 18 May 2017 at 18:16, Jerin Jacob wrote: > -Original Message- >> Date: Thu, 18 May 2017 17:40:58 +0800 >> From: Jianbo Liu >> To: Jerin Jacob >> Cc: dev@dpdk.org, tho...@monjalon.net, Jan Viktorin >> >> Subject: Re: [dpdk-dev] [PATCH 3/6] eal/arm64: rte pause implementation for >>

[dpdk-dev] [PATCH] examples/exception_path: add FreeBSD support

2017-05-18 Thread Tiwei Bie
Signed-off-by: Tiwei Bie --- examples/exception_path/Makefile | 9 - examples/exception_path/main.c | 28 +++- 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/examples/exception_path/Makefile b/examples/exception_path/Makefile index 4b6e07175..7

Re: [dpdk-dev] [RFC 17.08] flow_classify: add librte_flow_classify library

2017-05-18 Thread Thomas Monjalon
18/05/2017 13:33, Ferruh Yigit: > On 5/17/2017 5:38 PM, Gaëtan Rivet wrote: > > The other is the expression of flows through a shared syntax. Using > > flags to propose presets can be simpler, but will probably not be flexible > > enough. rte_flow_items are a first-class citizen in DPDK and are > >

[dpdk-dev] [RFC v2] Flow classification library

2017-05-18 Thread Ferruh Yigit
DPDK works with packets, but some network administration tools works based on flow information. This library is suggested to provide helper API to convert packet based information to the flow records. Basically the library consist of a single API that gets packets, flow definition and action as p

[dpdk-dev] [RFC v2] flow_classify: add librte_flow_classify library

2017-05-18 Thread Ferruh Yigit
Signed-off-by: Ferruh Yigit --- Cc: Bernard Iremonger Cc: Adrien Mazarguil RFC v2: * prefer user called functions to callbacks * use rte_flow to define flows and actions --- config/common_base | 5 + doc/api/doxy-api-index.md | 1 +

Re: [dpdk-dev] [PATCH v2] kni: add new mbuf in alloc_q only based on its empty slots

2017-05-18 Thread gowrishankar muthukrishnan
On Tuesday 16 May 2017 10:45 PM, Ferruh Yigit wrote: On 5/11/2017 12:51 PM, Gowrishankar wrote: From: Gowrishankar Muthukrishnan In kni_allocate_mbufs(), we attempt to add max_burst (32) count of mbuf always into alloc_q, which is excessively leading too many rte_pktmbuf_ free() when alloc_q i

Re: [dpdk-dev] [RFC PATCH 00/11] net/virtio: packed ring layout

2017-05-18 Thread Yuanhan Liu
On Wed, May 17, 2017 at 01:30:21PM +0200, Jens Freimann wrote: > Hi Yuanhan, > > On Mon, May 08, 2017 at 01:02:57PM +0800, Yuanhan Liu wrote: > > On Fri, May 05, 2017 at 09:57:11AM -0400, Jens Freimann wrote: > > > I'm implementing the receive path now to eventually get some benchmark > > > result

Re: [dpdk-dev] [PATCH] eventdev: define the default value for dequeue timeout

2017-05-18 Thread Hemant Agrawal
On 5/18/2017 2:18 PM, Jerin Jacob wrote: Defining the value 0 as default value for dequeue timeout will help the application reduce the configuration setup if the application is interested only in default timeout value. Signed-off-by: Jerin Jacob --- This patch will fix following error found in

Re: [dpdk-dev] Defining multiple actions based on a field value for the same table lookup in ip_pipeline application

2017-05-18 Thread Shyam Shrivastav
For each table a lookup hit and miss function can be registered, have a look at rte_pipeline_run(struct rte_pipeline *p) for the semantics On Thu, May 18, 2017 at 5:53 PM, Nidhia Varghese wrote: > Hi all, > > I am trying to design a pipeline where the table lookup has to do the > actions as foll

[dpdk-dev] [PATCH v2 1/3] net/sfc: carefully cleanup on init failure and shutdown

2017-05-18 Thread Andrew Rybchenko
Signed-off-by: Andrew Rybchenko Reviewed-by: Andy Moreton --- v2: - no changes drivers/net/sfc/sfc_ethdev.c | 31 +-- 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/drivers/net/sfc/sfc_ethdev.c b/drivers/net/sfc/sfc_ethdev.c index d5583ec..e4f051a 10

[dpdk-dev] [PATCH v2 2/3] net/sfc: use locally stored data for logging

2017-05-18 Thread Andrew Rybchenko
Required to be able to use logging in the secondary process where Ethernet device pointer stored in sfc_adapter is invalid. Signed-off-by: Andrew Rybchenko Reviewed-by: Andy Moreton --- v2: - fix clang/icc build error bacause of local variable initialization by the external variable with the

[dpdk-dev] [PATCH v2 3/3] net/sfc: support multi-process

2017-05-18 Thread Andrew Rybchenko
Signed-off-by: Andrew Rybchenko Reviewed-by: Andy Moreton --- v2: - no changes doc/guides/nics/features/sfc_efx.ini | 1 + drivers/net/sfc/sfc.h| 11 +++ drivers/net/sfc/sfc_dp_rx.h | 1 + drivers/net/sfc/sfc_dp_tx.h | 1 + drivers/net/sfc/sfc_ef10_rx.c

Re: [dpdk-dev] [PATCH 2/3] net/sfc: use locally stored data for logging

2017-05-18 Thread Andrew Rybchenko
On 05/18/2017 01:59 PM, Ferruh Yigit wrote: On 5/17/2017 1:25 PM, Andrew Rybchenko wrote: Required to be able to use logging in the secondary process where Ethernet device pointer stored in sfc_adapter is invalid. Signed-off-by: Andrew Rybchenko Reviewed-by: Andy Moreton <...> diff --git a

[dpdk-dev] Defining multiple actions based on a field value for the same table lookup in ip_pipeline application

2017-05-18 Thread Nidhia Varghese
Hi all, I am trying to design a pipeline where the table lookup has to do the actions as follows: Lookup hit -> FWD to port Lookup miss -> add a table entry if incoming port was 1 drop if incoming port was 2 Is it possible to do such an implementation using ip_pipeline a

[dpdk-dev] [PATCH v2] net/igb: fix add/delete of flex filters

2017-05-18 Thread Markus Theil
Before this patch, flex_filter->index was always zero when it was read and used after rte_zmalloc. The corresponding code was therefore moved into the add and delete parts of the if/else statement. i210 and i211 also support flex filters. Signed-off-by: Markus Theil --- drivers/net/e1000/igb_eth

[dpdk-dev] [PATCH] ethdev: keep port_id unchanged if obtaining by name failed

2017-05-18 Thread Ilya Maximets
Currently, 'rte_eth_dev_get_port_by_name' changes transmitted 'port_id' unconditionally. This is undocumented and misleading behaviour as user may expect unchanged value in case of error. Otherwise, there is no sense having both return value and a pointer in the function. Fixes: 9c5b8d8b9feb ("et

Re: [dpdk-dev] [RFC 17.08] flow_classify: add librte_flow_classify library

2017-05-18 Thread Ferruh Yigit
On 5/17/2017 5:10 PM, Ananyev, Konstantin wrote: >>> Hi Ferruh, >>> Please see my comments/questions below. >>> Thanks >>> Konstantin >>> + +/** + * @file + * + * RTE Flow Classify Library + * + * This library provides flow record information with some measured >

Re: [dpdk-dev] [RFC 17.08] flow_classify: add librte_flow_classify library

2017-05-18 Thread Ferruh Yigit
On 5/17/2017 5:38 PM, Gaëtan Rivet wrote: > Hi Ferruh, Hi Gaetan, > > On Wed, May 17, 2017 at 05:02:50PM +0100, Ferruh Yigit wrote: >> On 5/17/2017 3:54 PM, Ananyev, Konstantin wrote: >>> Hi Ferruh, >>> Please see my comments/questions below. >> >> Thanks for review. >> >>> Thanks >>> Konstantin

[dpdk-dev] [PATCH] net/igb: fix add/delete of flex filters

2017-05-18 Thread Markus Theil
Before this patch, flex_filter->index was always zero when it was read and used after rte_zmalloc. The corresponding code was therefore moved into the add and delete parts of the if/else statement. i210 and i211 also support flex filters. Signed-off-by: Markus Theil --- drivers/net/e1000/igb_et

Re: [dpdk-dev] [RFC][PATCH] vfio: allow to map other memory regions

2017-05-18 Thread Burakov, Anatoly
> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Pawel Wodkowski > Sent: Wednesday, May 17, 2017 3:45 PM > To: dev@dpdk.org > Cc: Wodkowski, PawelX > Subject: [dpdk-dev] [RFC][PATCH] vfio: allow to map other memory regions > > Currently it is not possible to use memory that is not owned by

Re: [dpdk-dev] [PATCH] eventdev: clarify the worker thread workflow

2017-05-18 Thread Bruce Richardson
On Thu, May 18, 2017 at 04:40:41PM +0530, Jerin Jacob wrote: > If the RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED capability flag > is not set indicates the device is centralized and thus needs > a dedicated scheduling thread that repeatedly calls > rte_event_schedule(). > > Update the worker thread code

[dpdk-dev] [PATCH] eventdev: clarify the worker thread workflow

2017-05-18 Thread Jerin Jacob
If the RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED capability flag is not set indicates the device is centralized and thus needs a dedicated scheduling thread that repeatedly calls rte_event_schedule(). Update the worker thread code snippet to match the description. Signed-off-by: Jerin Jacob --- lib/l

Re: [dpdk-dev] [PATCH 2/3] net/sfc: use locally stored data for logging

2017-05-18 Thread Ferruh Yigit
On 5/17/2017 1:25 PM, Andrew Rybchenko wrote: > Required to be able to use logging in the secondary process > where Ethernet device pointer stored in sfc_adapter is invalid. > > Signed-off-by: Andrew Rybchenko > Reviewed-by: Andy Moreton <...> > diff --git a/drivers/net/sfc/sfc_log.h b/drivers

[dpdk-dev] [PATCH] net/mlx5: fix wrong completion buffer size

2017-05-18 Thread Shahaf Shuler
Completion buffer size was computed wrongly, causing completion polling to wraparound too early and miss entries. Fixing it by using Direct Verbs to query the CQ info. Fixes: 6218063b39a6 ("net/mlx5: refactor Rx data path") Fixes: 1d88ba171942 ("net/mlx5: refactor Tx data path") Cc: sta...@dpdk.o

Re: [dpdk-dev] [PATCH] net/i40e/base: fix TX error stats on VF

2017-05-18 Thread Ferruh Yigit
On 5/18/2017 4:29 AM, Wenzhuo Lu wrote: > Unfortunately the datasheet has a mistake. The > address of the TX error counter is wrong. > > Fixes: 8db9e2a1b232 ("i40e: base driver") > CC: sta...@dpdk.org > > Signed-off-by: Wenzhuo Lu Applied to dpdk-next-net/master, thanks.

Re: [dpdk-dev] [PATCH] net/e1000: support MAC filters for i210 and i211 chips

2017-05-18 Thread Ferruh Yigit
On 5/18/2017 2:23 AM, Lu, Wenzhuo wrote: > Hi, > > >> -Original Message- >> From: Markus Theil [mailto:markus.th...@tu-ilmenau.de] >> Sent: Thursday, May 18, 2017 2:06 AM >> To: Lu, Wenzhuo >> Cc: dev@dpdk.org; Markus Theil >> Subject: [PATCH] net/e1000: support MAC filters for i210 and i

[dpdk-dev] [PATCH v3 2/2] examples/performance-thread: add arm64 support

2017-05-18 Thread Ashwin Sekhar T K
Updated Makefile to allow compilation for arm64 architecture. Added necessary arm64 support for lthread. Fixed minor compilation errors for arm64 compilation. Tested the apps l3fwd-thread and lthread_pthread_shim on thunderx and x86_64. Signed-off-by: Ashwin Sekhar T K --- examples/performanc

[dpdk-dev] [PATCH v3 1/2] examples/performance-thread: reorganise arch dependent code

2017-05-18 Thread Ashwin Sekhar T K
Moved the architecture dependent stack set code to architecture specific directory. Signed-off-by: Ashwin Sekhar T K --- .../performance-thread/common/arch/x86/stack.h | 66 ++ examples/performance-thread/common/common.mk | 8 ++- examples/performance-thread/common

[dpdk-dev] [PATCH v3 0/2] examples/performance-thread: add arm64 support

2017-05-18 Thread Ashwin Sekhar T K
This series of patches adds the arm64 support for performance-thread app. Patch 1 moves some x86 specific code to architecture dependent directory Patch 2 adds the necessary arm64 support for lthread. v3: * Added save/restore of callee saved ASIMD registers in ctx_switch v2: * Split the patch i

Re: [dpdk-dev] [PATCH 3/6] eal/arm64: rte pause implementation for arm64

2017-05-18 Thread Jerin Jacob
-Original Message- > Date: Thu, 18 May 2017 17:40:58 +0800 > From: Jianbo Liu > To: Jerin Jacob > Cc: dev@dpdk.org, tho...@monjalon.net, Jan Viktorin > > Subject: Re: [dpdk-dev] [PATCH 3/6] eal/arm64: rte pause implementation for > arm64 > > On 11 May 2017 at 18:10, Jerin Jacob wrote

[dpdk-dev] [PATCH 2/2] ethdev: tidy up endianness handling in flow API

2017-05-18 Thread Adrien Mazarguil
Signed-off-by: Adrien Mazarguil --- lib/librte_ether/rte_flow.h | 8 +--- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/lib/librte_ether/rte_flow.h b/lib/librte_ether/rte_flow.h index c47edbc..02dcfe7 100644 --- a/lib/librte_ether/rte_flow.h +++ b/lib/librte_ether/rte_flow.h @@

[dpdk-dev] [PATCH 1/2] eal: add static endianness conversion macros

2017-05-18 Thread Adrien Mazarguil
These macros resolve to constant expressions that allow developers to perform endianness conversion on static/const objects, even outside of function scope as they do not translate to function calls. This is most useful for static initializers and constant values (whenever it has to be performed a

Re: [dpdk-dev] [PATCH 1/3] examples/eventdev_pipeline: added sample app

2017-05-18 Thread Bruce Richardson
On Wed, May 17, 2017 at 11:33:16PM +0530, Jerin Jacob wrote: > -Original Message- > > Date: Fri, 21 Apr 2017 10:51:37 +0100 > > From: Harry van Haaren > > To: dev@dpdk.org > > CC: jerin.ja...@caviumnetworks.com, Harry van Haaren > > , Gage Eads , Bruce > > Richardson > > Subject: [PATCH

Re: [dpdk-dev] [PATCH 3/6] eal/arm64: rte pause implementation for arm64

2017-05-18 Thread Jianbo Liu
On 11 May 2017 at 18:10, Jerin Jacob wrote: > CC: Jianbo Liu > Signed-off-by: Jerin Jacob > --- > lib/librte_eal/common/include/arch/arm/rte_pause.h | 4 ++ > .../common/include/arch/arm/rte_pause_64.h | 55 > ++ > 2 files changed, 59 insertions(+) > create mode 1

[dpdk-dev] [PATCH] net/i40e: add NVGRE parsing function

2017-05-18 Thread Beilei Xing
This patch adds NVGRE parsing function to support NVGRE classification. Signed-off-by: Beilei Xing --- drivers/net/i40e/i40e_flow.c | 338 ++- 1 file changed, 336 insertions(+), 2 deletions(-) diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i

Re: [dpdk-dev] [PATCH] app/testpmd: add TCP flags in flow API

2017-05-18 Thread Adrien Mazarguil
On Thu, May 18, 2017 at 05:06:12PM +0800, Beilei Xing wrote: > This commit adds TCP flags support in flow API as > some drivers have SYN filter. > > Signed-off-by: Beilei Xing Acked-by: Adrien Mazarguil -- Adrien Mazarguil 6WIND

Re: [dpdk-dev] [PATCH] app/testpmd: add TCP flags in flow API

2017-05-18 Thread Zhao1, Wei
Test that patch use flow API of igb NIC syn filter, it is ok. Acked-by: Wei Zhao > -Original Message- > From: Xing, Beilei > Sent: Thursday, May 18, 2017 5:06 PM > To: adrien.mazarg...@6wind.com > Cc: dev@dpdk.org; Zhao1, Wei > Subject: [PATCH] app/testpmd: add TCP flags in flow API >

Re: [dpdk-dev] [PATCH 2/6] eal/arm32: rte pause implementation for arm32

2017-05-18 Thread Jianbo Liu
On 18 May 2017 at 16:11, Jan Viktorin wrote: > On Thu, 11 May 2017 15:40:42 +0530 > Jerin Jacob wrote: > >> The patch does not provide any functional change for ARM32 >> with respect to existing rte_pause() definition. >> >> CC: Jan Viktorin >> CC: Jianbo Liu >> Signed-off-by: Jerin Jacob > >

[dpdk-dev] [PATCH] app/testpmd: add TCP flags in flow API

2017-05-18 Thread Beilei Xing
This commit adds TCP flags support in flow API as some drivers have SYN filter. Signed-off-by: Beilei Xing --- app/test-pmd/cmdline_flow.c | 9 + 1 file changed, 9 insertions(+) diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c index 0fd69f9..3e5803a 100644 --- a/ap

[dpdk-dev] [PATCH] examples/ip_pipeline: use crc32 in hash functions for arm64

2017-05-18 Thread Jianbo Liu
Implement the same hash functions with crc32 on arm platform. Signed-off-by: Jianbo Liu --- examples/ip_pipeline/pipeline/hash_func.h | 2 + examples/ip_pipeline/pipeline/hash_func_arm64.h | 245 2 files changed, 247 insertions(+) create mode 100644 examples/ip_

Re: [dpdk-dev] [RFC][PATCH] vfio: allow to map other memory regions

2017-05-18 Thread Wodkowski, PawelX
> -Original Message- > From: Stephen Hemminger [mailto:step...@networkplumber.org] > Sent: Wednesday, May 17, 2017 7:20 PM > To: Wodkowski, PawelX > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [RFC][PATCH] vfio: allow to map other memory regions > > On Wed, 17 May 2017 16:44:46 +0200 > Paw

Re: [dpdk-dev] [PATCH v2 2/2] examples/performance-thread: add arm64 support

2017-05-18 Thread Sekhar, Ashwin
On Thu, 2017-05-18 at 14:25 +0530, Jerin Jacob wrote: > -Original Message- > > > > Date: Thu, 18 May 2017 00:34:26 -0700 > > From: Ashwin Sekhar T K > > To: jerin.ja...@caviumnetworks.com, john.mcnam...@intel.com, > >  jianbo@linaro.org > > Cc: dev@dpdk.org, Ashwin Sekhar T K > om> >

Re: [dpdk-dev] [PATCH v2 2/2] examples/performance-thread: add arm64 support

2017-05-18 Thread Jerin Jacob
-Original Message- > Date: Thu, 18 May 2017 00:34:26 -0700 > From: Ashwin Sekhar T K > To: jerin.ja...@caviumnetworks.com, john.mcnam...@intel.com, > jianbo@linaro.org > Cc: dev@dpdk.org, Ashwin Sekhar T K > Subject: [dpdk-dev] [PATCH v2 2/2] examples/performance-thread: add arm64 >

Re: [dpdk-dev] [PATCH v8] net/i40e: improved FDIR programming times

2017-05-18 Thread Ferruh Yigit
On 5/18/2017 2:38 AM, Xing, Beilei wrote: > Hi, > >> -Original Message- >> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Michael Lilja >> Sent: Wednesday, May 17, 2017 10:58 PM >> To: Zhang, Helin ; Wu, Jingjing >> >> Cc: dev@dpdk.org; Michael Lilja >> Subject: [dpdk-dev] [PATCH v

[dpdk-dev] [PATCH] eventdev: define the default value for dequeue timeout

2017-05-18 Thread Jerin Jacob
Defining the value 0 as default value for dequeue timeout will help the application reduce the configuration setup if the application is interested only in default timeout value. Signed-off-by: Jerin Jacob --- This patch will fix following error found in the event_pipeline RFC application http://

Re: [dpdk-dev] [PATCH] vhost: check malloc return value when allocating guest pages

2017-05-18 Thread Maxime Coquelin
On 05/11/2017 05:25 PM, Jens Freimann wrote: When we try to allocate guest pages we need to check the return value of malloc(). Print an error message and return when it fails. Signed-off-by: Jens Freimann --- lib/librte_vhost/vhost_user.c | 7 +++ 1 file changed, 7 insertions(+) diff

Re: [dpdk-dev] [PATCH 2/6] eal/arm32: rte pause implementation for arm32

2017-05-18 Thread Jan Viktorin
On Thu, 11 May 2017 15:40:42 +0530 Jerin Jacob wrote: > The patch does not provide any functional change for ARM32 > with respect to existing rte_pause() definition. > > CC: Jan Viktorin > CC: Jianbo Liu > Signed-off-by: Jerin Jacob Acked-by: Jan Viktorin

Re: [dpdk-dev] [PATCH] examples/performance-thread: add arm64 support

2017-05-18 Thread Sekhar, Ashwin
On Thu, 2017-05-18 at 14:35 +0800, Jianbo Liu wrote: > On 18 May 2017 at 02:44, Jerin Jacob > wrote: > > > > -Original Message- > > > > > > Date: Wed, 17 May 2017 11:19:49 -0700 > > > From: Ashwin Sekhar T K > > > To: jerin.ja...@caviumnetworks.com, john.mcnam...@intel.com, > > >  jianb

[dpdk-dev] [PATCH v2 1/2] examples/performance-thread: reorganise arch dependent code

2017-05-18 Thread Ashwin Sekhar T K
Moved the architecture dependent stack set code to architecture specific directory. Signed-off-by: Ashwin Sekhar T K --- .../performance-thread/common/arch/x86/stack.h | 66 ++ examples/performance-thread/common/common.mk | 8 ++- examples/performance-thread/common

[dpdk-dev] [PATCH v2 2/2] examples/performance-thread: add arm64 support

2017-05-18 Thread Ashwin Sekhar T K
Updated Makefile to allow compilation for arm64 architecture. Added necessary arm64 support for lthread. Fixed minor compilation errors for arm64 compilation. Tested the apps l3fwd-thread and lthread_pthread_shim on thunderx and x86_64. Signed-off-by: Ashwin Sekhar T K --- examples/performanc

[dpdk-dev] [PATCH v2 0/2] examples/performance-thread: add arm64 support

2017-05-18 Thread Ashwin Sekhar T K
This series of patches adds the arm64 support for performance-thread app. Patch 1 moves some x86 specific code to architecture dependent directory Patch 2 adds the necessary arm64 support for lthread. v2: * Split the patch into separate patches, one for code reorg and another for adding arm64

Re: [dpdk-dev] Issue->Dpdk for arm cortex-a15 compilation

2017-05-18 Thread Jimmy Carter
I assume after git clone https://github.com/RehiveTech/buildroot I need to git checkout dpdk-support-v5 I get legacy error on running make root@xav101000739:~/Downloads/dpdk/newbuildroot/buildroot# *make * *Makefile.legacy:12: *** "You have legacy configuration in your .config! Please check your c