From nobody Mon Feb 9 19:37:21 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org ARC-Seal: i=1; a=rsa-sha256; t=1600078669; cv=none; d=zohomail.com; s=zohoarc; b=TyIze7kP5QFNi7g/Hy+QvjA1QCHVwkaYw2TlM8GorJgj8b0a/6bQ1glzjYGho2rmf5AvSr518adhrg9ZhxeVjiNgHqJiy2tCbU6blGlu6oAt+vaHtW6aaRPfy7tELaYoznph1OUwemxekKCQQC+9E5dpMe+hdDNCdQhDjRfk3t8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1600078669; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=W5HgWVdAoJVaxDv/90VgwV1x0rCShPf1Ls8FxMdGKSQ=; b=Of6Z0geluLpWmekUmMlL0y9pATJSrrqC/ff40a+CZaZB2jK7JRGcKI0mZoq31viafwC82klIoBLbyaoOJ2aOk4dC6t+S2qM4hpMit1Xp5DL/PvVw7oYVM+1P2BKYY3Xu6RTpT8ySByzg9oVBUdDBSoxIRuYVKgXvgAiYsosXfPc= ARC-Authentication-Results: i=1; mx.zohomail.com; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 160007866925592.66716367568506; Mon, 14 Sep 2020 03:17:49 -0700 (PDT) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kHlYD-0004c0-Nr; Mon, 14 Sep 2020 10:17:33 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kHlYC-0004bY-Gy for xen-devel@lists.xenproject.org; Mon, 14 Sep 2020 10:17:32 +0000 Received: from mx2.suse.de (unknown [195.135.220.15]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id a58e72c6-9f15-463d-8589-e88cccf70568; Mon, 14 Sep 2020 10:17:21 +0000 (UTC) Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 22E30B265; Mon, 14 Sep 2020 10:17:36 +0000 (UTC) X-Inumbo-ID: a58e72c6-9f15-463d-8589-e88cccf70568 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Subject: [PATCH 5/9] lib: move parse_size_and_unit() From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , George Dunlap , Ian Jackson , Julien Grall , Wei Liu , Stefano Stabellini References: Message-ID: <823c1802-9a61-4059-c6a8-61f5c2fad12c@suse.com> Date: Mon, 14 Sep 2020 12:17:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US Content-Transfer-Encoding: quoted-printable X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Content-Type: text/plain; charset="utf-8" ... into its own CU, to build it into an archive. Signed-off-by: Jan Beulich --- xen/common/lib.c | 39 ---------------------------------- xen/lib/Makefile | 1 + xen/lib/parse-size.c | 50 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+), 39 deletions(-) create mode 100644 xen/lib/parse-size.c diff --git a/xen/common/lib.c b/xen/common/lib.c index a224efa8f6e8..6cfa332142a5 100644 --- a/xen/common/lib.c +++ b/xen/common/lib.c @@ -423,45 +423,6 @@ uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c) #endif } =20 -unsigned long long parse_size_and_unit(const char *s, const char **ps) -{ - unsigned long long ret; - const char *s1; - - ret =3D simple_strtoull(s, &s1, 0); - - switch ( *s1 ) - { - case 'T': case 't': - ret <<=3D 10; - /* fallthrough */ - case 'G': case 'g': - ret <<=3D 10; - /* fallthrough */ - case 'M': case 'm': - ret <<=3D 10; - /* fallthrough */ - case 'K': case 'k': - ret <<=3D 10; - /* fallthrough */ - case 'B': case 'b': - s1++; - break; - case '%': - if ( ps ) - break; - /* fallthrough */ - default: - ret <<=3D 10; /* default to kB */ - break; - } - - if ( ps !=3D NULL ) - *ps =3D s1; - - return ret; -} - typedef void (*ctor_func_t)(void); extern const ctor_func_t __ctors_start[], __ctors_end[]; =20 diff --git a/xen/lib/Makefile b/xen/lib/Makefile index 764f3624b5f9..99f857540c99 100644 --- a/xen/lib/Makefile +++ b/xen/lib/Makefile @@ -2,3 +2,4 @@ obj-$(CONFIG_X86) +=3D x86/ =20 lib-y +=3D ctype.o lib-y +=3D list-sort.o +lib-y +=3D parse-size.o diff --git a/xen/lib/parse-size.c b/xen/lib/parse-size.c new file mode 100644 index 000000000000..ec980cadfff3 --- /dev/null +++ b/xen/lib/parse-size.c @@ -0,0 +1,50 @@ +#include + +unsigned long long parse_size_and_unit(const char *s, const char **ps) +{ + unsigned long long ret; + const char *s1; + + ret =3D simple_strtoull(s, &s1, 0); + + switch ( *s1 ) + { + case 'T': case 't': + ret <<=3D 10; + /* fallthrough */ + case 'G': case 'g': + ret <<=3D 10; + /* fallthrough */ + case 'M': case 'm': + ret <<=3D 10; + /* fallthrough */ + case 'K': case 'k': + ret <<=3D 10; + /* fallthrough */ + case 'B': case 'b': + s1++; + break; + case '%': + if ( ps ) + break; + /* fallthrough */ + default: + ret <<=3D 10; /* default to kB */ + break; + } + + if ( ps !=3D NULL ) + *ps =3D s1; + + return ret; +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * tab-width: 4 + * indent-tabs-mode: nil + * End: + */ --=20 2.22.0