Hi,

--- On Fri, 1/23/09, Subrata Modak <[email protected]> wrote:

> From: Subrata Modak <[email protected]>
> Subject: [LTP] [PATCH 02/14] Fix Hugepages Add definitions for new functions
> To: "Mark130" <[email protected]>
> Cc: "ltp-list" <[email protected]>, "maknayak" <[email protected]>
> Date: Friday, January 23, 2009, 3:28 PM
> Signed-Off-By: Subrata
> Modak<[email protected]>,
> --
> diff -uprN
> ltp-intermediate-20090121.orig/lib/system_specific_hugepages_info.c
> ltp-intermediate-20090121/lib/system_specific_hugepages_info.c
> ---
> ltp-intermediate-20090121.orig/lib/system_specific_hugepages_info.c
> 1970-01-01 05:30:00.000000000 +0530
> +++
> ltp-intermediate-20090121/lib/system_specific_hugepages_info.c
> 2009-01-22 19:09:12.000000000 +0530
> @@ -0,0 +1,78 @@
> +/*
> + *
> + *   Copyright (c) International Business Machines  Corp.,
> 2009
> + *
> + *   This program is free software;  you can redistribute
> it and/or
> modify
> + *   it under the terms of the GNU General Public License
> as published
> by
> + *   the Free Software Foundation; either version 2 of the
> License, or
> + *   (at your option) any later version.
> + *
> + *   This program is distributed in the hope that it will
> be useful,
> + *   but WITHOUT ANY WARRANTY;  without even the implied
> warranty of
> + *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
> See
> + *   the GNU General Public License for more details.
> + *
> + *   You should have received a copy of the GNU General
> Public License
> + *   along with this program;  if not, write to the Free
> Software
> + *   Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> MA
> 02111-1307 USA
> + */
> +
> +/*
> + *   DESCRIPTION
> + *               get_no_of_hugepages() --> Return No.
> of hugepages for
> this systems
> + *                                         from
> /proc/meminfo
> + *               hugepages_size()      --> Return
> Hugepages Size for
> this system
> + *                                         from
> /proc/meminfo
> + */
> +
> +#include <fcntl.h>
> +#include <sys/types.h>
> +#include <test.h>
> +
> +#define BUFSIZE 512
> +

BUFSIZE is unused. The rest are using BUFSIZ.

> +int get_no_of_hugepages() {
> + #ifdef __linux__
> +       FILE *f;
> +       char buf[BUFSIZ];
> +
> +       f = popen("grep 'HugePages_Total'
> /proc/meminfo | cut -d ':' -f2
> | tr -d ' \n'", "r");
> +       if (!f) {
> +               tst_resm(TBROK, "Could not get info
> about
> Total_Hugepages from /proc/meminfo");

This will give false negatives for architectures don't support
hugepages yet, like s390x and perhaps PPC64. Perhaps better to have
a check at the beginning.

CAI Qian

> +               tst_exit();
> +       }
> +       if (!fgets(buf, 10, f)) {
> +               fclose(f);
> +               tst_resm(TBROK, "Could not read
> Total_Hugepages
> from /proc/meminfo");
> +               tst_exit(); 
> +       }
> +       pclose(f);
> +       return(atoi(buf));
> + #else
> +        return -1;
> + #endif
> +}
> +
> +
> +int hugepages_size() {
> + #ifdef __linux__
> +       FILE *f;
> +       char buf[BUFSIZ];
> +
> +       f = popen("grep 'Hugepagesize'
> /proc/meminfo | cut -d ':' -f2 |
> tr -d 'kB \n'", "r");
> +       if (!f) {
> +               tst_resm(TBROK, "Could not get info
> about HugePages_Size
> from /proc/meminfo");
> +               tst_exit();
> +       }
> +       if (!fgets(buf, 10, f)) {
> +               fclose(f);
> +               tst_resm(TBROK, "Could not read
> HugePages_Size
> from /proc/meminfo");
> +               tst_exit();
> +       }
> +       pclose(f);
> +       return(atoi(buf));
> + #else
> +        return -1;
> + #endif
> +}
> +
> 
> 
> Regards--
> Subrata
> 
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by:
> SourcForge Community
> SourceForge wants to tell your story.
> http://p.sf.net/sfu/sf-spreadtheword_______________________________________________
> Ltp-list mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/ltp-list

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to