... into its own CU, to build it into an archive.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
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
}
-unsigned long long parse_size_and_unit(const char *s, const char **ps)
-{
- unsigned long long ret;
- const char *s1;
-
- ret = simple_strtoull(s, &s1, 0);
-
- switch ( *s1 )
- {
- case 'T': case 't':
- ret <<= 10;
- /* fallthrough */
- case 'G': case 'g':
- ret <<= 10;
- /* fallthrough */
- case 'M': case 'm':
- ret <<= 10;
- /* fallthrough */
- case 'K': case 'k':
- ret <<= 10;
- /* fallthrough */
- case 'B': case 'b':
- s1++;
- break;
- case '%':
- if ( ps )
- break;
- /* fallthrough */
- default:
- ret <<= 10; /* default to kB */
- break;
- }
-
- if ( ps != NULL )
- *ps = s1;
-
- return ret;
-}
-
typedef void (*ctor_func_t)(void);
extern const ctor_func_t __ctors_start[], __ctors_end[];
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) += x86/
lib-y += ctype.o
lib-y += list-sort.o
+lib-y += 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 <xen/lib.h>
+
+unsigned long long parse_size_and_unit(const char *s, const char **ps)
+{
+ unsigned long long ret;
+ const char *s1;
+
+ ret = simple_strtoull(s, &s1, 0);
+
+ switch ( *s1 )
+ {
+ case 'T': case 't':
+ ret <<= 10;
+ /* fallthrough */
+ case 'G': case 'g':
+ ret <<= 10;
+ /* fallthrough */
+ case 'M': case 'm':
+ ret <<= 10;
+ /* fallthrough */
+ case 'K': case 'k':
+ ret <<= 10;
+ /* fallthrough */
+ case 'B': case 'b':
+ s1++;
+ break;
+ case '%':
+ if ( ps )
+ break;
+ /* fallthrough */
+ default:
+ ret <<= 10; /* default to kB */
+ break;
+ }
+
+ if ( ps != NULL )
+ *ps = s1;
+
+ return ret;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
> On 23 Nov 2020, at 15:22, Jan Beulich <jbeulich@suse.com> wrote:
>
> ... into its own CU, to build it into an archive.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Acked-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Cheers
Bertrand
> ---
> 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
> }
>
> -unsigned long long parse_size_and_unit(const char *s, const char **ps)
> -{
> - unsigned long long ret;
> - const char *s1;
> -
> - ret = simple_strtoull(s, &s1, 0);
> -
> - switch ( *s1 )
> - {
> - case 'T': case 't':
> - ret <<= 10;
> - /* fallthrough */
> - case 'G': case 'g':
> - ret <<= 10;
> - /* fallthrough */
> - case 'M': case 'm':
> - ret <<= 10;
> - /* fallthrough */
> - case 'K': case 'k':
> - ret <<= 10;
> - /* fallthrough */
> - case 'B': case 'b':
> - s1++;
> - break;
> - case '%':
> - if ( ps )
> - break;
> - /* fallthrough */
> - default:
> - ret <<= 10; /* default to kB */
> - break;
> - }
> -
> - if ( ps != NULL )
> - *ps = s1;
> -
> - return ret;
> -}
> -
> typedef void (*ctor_func_t)(void);
> extern const ctor_func_t __ctors_start[], __ctors_end[];
>
> 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) += x86/
>
> lib-y += ctype.o
> lib-y += list-sort.o
> +lib-y += 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 <xen/lib.h>
> +
> +unsigned long long parse_size_and_unit(const char *s, const char **ps)
> +{
> + unsigned long long ret;
> + const char *s1;
> +
> + ret = simple_strtoull(s, &s1, 0);
> +
> + switch ( *s1 )
> + {
> + case 'T': case 't':
> + ret <<= 10;
> + /* fallthrough */
> + case 'G': case 'g':
> + ret <<= 10;
> + /* fallthrough */
> + case 'M': case 'm':
> + ret <<= 10;
> + /* fallthrough */
> + case 'K': case 'k':
> + ret <<= 10;
> + /* fallthrough */
> + case 'B': case 'b':
> + s1++;
> + break;
> + case '%':
> + if ( ps )
> + break;
> + /* fallthrough */
> + default:
> + ret <<= 10; /* default to kB */
> + break;
> + }
> +
> + if ( ps != NULL )
> + *ps = s1;
> +
> + return ret;
> +}
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * tab-width: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
>
>
© 2016 - 2026 Red Hat, Inc.