When running lxc-autostart we do not currently indicate failure to start
containers, either partial failure i.e. some of the containers failed to
start or total failure i.e. all of the containers failed to start.
Indicate container startup failure. For total failure exit(1), for
partial failure exit(2).
Signed-off-by: Tobin C. Harding <me@tobin.cc>
The issue was introduced in PR (https://github.com/lxc/lxc/pull/1705):
Previous code:
```
if (lseek(fd, size, SEEK_SET) < 0) {
SYSERROR("Error seeking to set new loop file size");
close(fd);
return -1;
}
```
New code:
```
int fd, ret;
[...]
ret = lseek(fd, size, SEEK_SET);
if (ret < 0) {
SYSERROR("Failed to seek to set new loop file size for loop "
"file \"%s\"", path);
close(fd);
return -1;
}
```
Based on http://man7.org/linux/man-pages/man2/lseek.2.html:
> Upon successful completion, lseek() returns the resulting offset
> location as measured in bytes from the beginning of the file.
So in this case value of `size` and `size` is `uint64_t`.
This fix change declaration of `ret`, but it can be fixed in other ways.
Let me know what works for you.
This PR fix issues (https://github.com/lxc/lxc/issues/1872).
Signed-off-by: Lukasz Jagiello <lukasz@wikia-inc.com>
Since we switched to execveat() whenever possible in
commit 4b5b3a2a29 ("execute: use execveat() syscall if supported")
it is unlikely that remove_self() has any job to do at all. So dumb down the
error levels.
Closes#2536.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
checkpatch emits two warnings of type:
CHECK: Comparison to NULL could be written "!foo"
Prefer `(!foo)` instead of `(foo == NULL)`.
Do not use comparison to NULL, use !foo
Signed-off-by: Tobin C. Harding <me@tobin.cc>
checkpatch emits warning:
WARNING: Block comments use a trailing */ on a separate line
Put trailing */ on a separate line.
Signed-off-by: Tobin C. Harding <me@tobin.cc>
checkpatch emits warning:
WARNING: unnecessary whitespace before a quoted newline
Remove unnecessary whitespace before a quoted newline
Signed-off-by: Tobin C. Harding <me@tobin.cc>
checkpatch emits warning:
WARNING: static char array declaration should probably be static const char
Use 'const' for static string constant (array of chars).
Signed-off-by: Tobin C. Harding <me@tobin.cc>
checkpatch warns about a bunch of whitespace issues. Fix the
non-controversial ones.
Fix whitespace issues found by checkpatch.
Signed-off-by: Tobin C. Harding <me@tobin.cc>
checkpatch emites warning:
WARNING: braces {} are not necessary for single statement blocks
Do not use braces for single statement block.
Signed-off-by: Tobin C. Harding <me@tobin.cc>
checkpatch warns because of function definitions using empty parameter
list. We should define these functions with 'void' as the parameter.
Use 'void' instead of empty parameter list for function definitions.
Signed-off-by: Tobin C. Harding <me@tobin.cc>
checkpatch emits error:
ERROR: Macros with complex values should be enclosed in parentheses
Safeguard macro by use of parenthesis.
Signed-off-by: Tobin C. Harding <me@tobin.cc>
Currently for section headings we use fourth level markdown heading
level (####). We do not have levels two or three.
We can use standard incremental levels for heading adornments i.e
1) =========
2) ##
3) ###
ect.
Since this document is likely referenced by maintainers when guiding new
contributors it can save maintainer time to be able to quickly reference
a section in the coding stlye guide. If we add numbers to each heading
(like the kernel stlye guide) then maintainers can say:
Nice patch, please see section 3 of the coding style guide and ...
So, this patch makes two changes
- Use incremental level heading adornments
- Add a number to each section heading
Signed-off-by: Tobin C. Harding <me@tobin.cc>
Heading uses only 3 level header (###) but the rest of the file uses
four (####). We should be uniform.
Use uniform heading level in line with the rest of the file.
Signed-off-by: Tobin C. Harding <me@tobin.cc>