[lxc-devel] [lxc/master] support case ignored suffix for sizes
duguhaotian on Github
lxc-bot at linuxcontainers.org
Fri May 11 01:31:51 UTC 2018
A non-text attachment was scrubbed...
Name: not available
Type: text/x-mailbox
Size: 405 bytes
Desc: not available
URL: <http://lists.linuxcontainers.org/pipermail/lxc-devel/attachments/20180511/0dfa8e64/attachment.bin>
-------------- next part --------------
From 39ebeb725b941323eac13d672eb4f94219b8399d Mon Sep 17 00:00:00 2001
From: l00355512 <liuhao27 at huawei.com>
Date: Fri, 11 May 2018 09:47:49 +0800
Subject: [PATCH] support case ignored suffix for sizes
suffix of console max size and console buffer max size
Signed-off-by: l00355512 <liuhao27 at huawei.com>
---
doc/lxc.container.conf.sgml.in | 18 ++++++++++--------
src/lxc/utils.c | 6 +++---
2 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/doc/lxc.container.conf.sgml.in b/doc/lxc.container.conf.sgml.in
index e9a013b8c..50fa76789 100644
--- a/doc/lxc.container.conf.sgml.in
+++ b/doc/lxc.container.conf.sgml.in
@@ -819,15 +819,16 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
ringbuffer. Note that ringbuffer must be at least as big as a
standard page size. When passed a value smaller than a single page
size liblxc will allocate a ringbuffer of a single page size. A page
- size is usually 4kB.
+ size is usually 4KB.
The keyword 'auto' will cause liblxc to allocate a ringbuffer of
- 128kB.
+ 128KB.
When manually specifying a size for the ringbuffer the value should
be a power of 2 when converted to bytes. Valid size prefixes are
- 'kB', 'MB', 'GB'. (Note that all conversions are based on multiples
- of 1024. That means 'kb' == 'KiB', 'MB' == 'MiB', 'GB' == 'GiB'.)
+ 'KB', 'MB', 'GB'. (Note that all conversions are based on multiples
+ of 1024. That means 'KB' == 'KiB', 'MB' == 'MiB', 'GB' == 'GiB'.
+ And ignored case, for example 'kB', 'KB' and 'Kb' is same.)
</para>
</listitem>
</varlistentry>
@@ -843,15 +844,16 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
<option>lxc.console.logfile</option>. Note that size of the log file
must be at least as big as a standard page size. When passed a value
smaller than a single page size liblxc will set the size of log file
- to a single page size. A page size is usually 4kB.
+ to a single page size. A page size is usually 4KB.
- The keyword 'auto' will cause liblxc to place a limit of 128kB on
+ The keyword 'auto' will cause liblxc to place a limit of 128KB on
the log file.
When manually specifying a size for the log file the value should
be a power of 2 when converted to bytes. Valid size prefixes are
- 'kB', 'MB', 'GB'. (Note that all conversions are based on multiples
- of 1024. That means 'kb' == 'KiB', 'MB' == 'MiB', 'GB' == 'GiB'.)
+ 'KB', 'MB', 'GB'. (Note that all conversions are based on multiples
+ of 1024. That means 'KB' == 'KiB', 'MB' == 'MiB', 'GB' == 'GiB'.
+ And ignored case, for example 'kB', 'KB' and 'Kb' is same.)
If users want to mirror the console ringbuffer on disk they should set
<option>lxc.console.size</option> equal to
diff --git a/src/lxc/utils.c b/src/lxc/utils.c
index 91bc802b4..b7651d055 100644
--- a/src/lxc/utils.c
+++ b/src/lxc/utils.c
@@ -2450,11 +2450,11 @@ int parse_byte_size_string(const char *s, int64_t *converted)
return 0;
}
- if (!strcmp(suffix, "kB"))
+ if (!strcasecmp(suffix, "KB"))
mltpl = 1024;
- else if (!strcmp(suffix, "MB"))
+ else if (!strcasecmp(suffix, "MB"))
mltpl = 1024 * 1024;
- else if (!strcmp(suffix, "GB"))
+ else if (!strcasecmp(suffix, "GB"))
mltpl = 1024 * 1024 * 1024;
else
return -EINVAL;
More information about the lxc-devel
mailing list