[dpdk-dev] [PATCH] cfgfile: Fix for Reading Files on nfs filesystem.

Mrzyglod, DanielX T danielx.t.mrzyglod at intel.com
Fri Jun 26 10:25:56 CEST 2015



> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Daniel Mrzyglod
> Sent: Wednesday, June 24, 2015 6:16 PM
> To: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH] cfgfile: Fix for Reading Files on nfs filesystem.
> 
> The problem occure when we have config files on NFS filesystem.
> Solution with minimal change to library is to add buffer for I/O operations.
> Without buffering there is  3-10% of faulty Reading from NFS.
> 
> The problem seems to be only NFS filesystem.
> 
> Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod at intel.com>
> ---
>  lib/librte_cfgfile/rte_cfgfile.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/lib/librte_cfgfile/rte_cfgfile.c b/lib/librte_cfgfile/rte_cfgfile.c
> index b81c273..6105e0c 100644
> --- a/lib/librte_cfgfile/rte_cfgfile.c
> +++ b/lib/librte_cfgfile/rte_cfgfile.c
> @@ -93,10 +93,13 @@ rte_cfgfile_load(const char *filename, int flags)
>  	int curr_section = -1;
>  	int curr_entry = -1;
>  	char buffer[256];
> +	char f_streambuff[BUFSIZ];
>  	int lineno = 0;
>  	struct rte_cfgfile *cfg = NULL;
> +	memset(f_streambuff,'\0',BUFSIZ);
> 
>  	FILE *f = fopen(filename, "r");
> +	setbuf( f, f_streambuff);
>  	if (f == NULL)
>  		return NULL;
> 
> --
> 2.1.0

Self NACK



More information about the dev mailing list