Commit 9eeb0037 authored by Cyrill Gorcunov's avatar Cyrill Gorcunov

util: Add K/M/G bytes helpers

Signed-off-by: 's avatarCyrill Gorcunov <gorcunov@gmail.com>
parent 47b7404d
...@@ -1400,7 +1400,8 @@ static void sigreturn_restore(pid_t pstree_pid, pid_t pid) ...@@ -1400,7 +1400,8 @@ static void sigreturn_restore(pid_t pstree_pid, pid_t pid)
restore_thread_vma_len+= restore_thread_code_len; restore_thread_vma_len+= restore_thread_code_len;
pr_info("%d: %d threads require %dK of memory\n", pr_info("%d: %d threads require %dK of memory\n",
pid, pstree_entry.nr_threads, restore_thread_vma_len >> 10); pid, pstree_entry.nr_threads,
KBYTES(restore_thread_vma_len));
break; break;
} }
...@@ -1414,7 +1415,7 @@ static void sigreturn_restore(pid_t pstree_pid, pid_t pid) ...@@ -1414,7 +1415,7 @@ static void sigreturn_restore(pid_t pstree_pid, pid_t pid)
} else { } else {
pr_info("Found bootstrap VMA hint at: %lx (needs ~%dK)\n", pr_info("Found bootstrap VMA hint at: %lx (needs ~%dK)\n",
exec_mem_hint, exec_mem_hint,
(restore_task_vma_len + restore_thread_vma_len) >> 10); KBYTES(restore_task_vma_len + restore_thread_vma_len));
} }
/* VMA we need to run task_restore code */ /* VMA we need to run task_restore code */
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
#include "compiler.h" #include "compiler.h"
#include "types.h" #include "types.h"
#include "image.h" #include "image.h"
#include "util.h"
#ifndef CONFIG_X86_64 #ifndef CONFIG_X86_64
# error Only x86-64 is supported # error Only x86-64 is supported
...@@ -31,9 +32,9 @@ typedef long (*thread_restore_fcall_t) (long cmd, struct thread_restore_args *ar ...@@ -31,9 +32,9 @@ typedef long (*thread_restore_fcall_t) (long cmd, struct thread_restore_args *ar
*/ */
#define RESTORE_ARGS_SIZE (512) #define RESTORE_ARGS_SIZE (512)
#define RESTORE_STACK_REDZONE (128) #define RESTORE_STACK_REDZONE (128)
#define RESTORE_STACK_SIGFRAME (16 << 10) #define RESTORE_STACK_SIGFRAME (KILO(16))
#define RESTORE_STACK_SIZE (32 << 10) #define RESTORE_STACK_SIZE (KILO(32))
#define RESTORE_HEAP_SIZE (16 << 10) #define RESTORE_HEAP_SIZE (KILO(16))
#define RESTORE_ALIGN_STACK(start, size) \ #define RESTORE_ALIGN_STACK(start, size) \
(ALIGN((start) + (size) - sizeof(long), sizeof(long))) (ALIGN((start) + (size) - sizeof(long), sizeof(long)))
......
...@@ -17,6 +17,19 @@ ...@@ -17,6 +17,19 @@
extern void printk(const char *format, ...); extern void printk(const char *format, ...);
#define PREF_SHIFT_OP(pref, op, size) ((size) op (pref ##BYTES_SHIFT))
#define KBYTES_SHIFT 10
#define MBYTES_SHIFT 20
#define GBYTES_SHIFT 30
#define KBYTES(size) PREF_SHIFT_OP(K, >>, size)
#define MBYTES(size) PREF_SHIFT_OP(M, >>, size)
#define GBYTES(size) PREF_SHIFT_OP(G, >>, size)
#define KILO(size) PREF_SHIFT_OP(K, <<, size)
#define MEGA(size) PREF_SHIFT_OP(K, <<, size)
#define GIGA(size) PREF_SHIFT_OP(K, <<, size)
#define pr_info(fmt, ...) printk(fmt, ##__VA_ARGS__) #define pr_info(fmt, ...) printk(fmt, ##__VA_ARGS__)
#define pr_err(fmt, ...) printk("Error (%s:%d): " fmt, __FILE__, __LINE__, ##__VA_ARGS__) #define pr_err(fmt, ...) printk("Error (%s:%d): " fmt, __FILE__, __LINE__, ##__VA_ARGS__)
#define pr_panic(fmt, ...) printk("PANIC (%s:%d): " fmt, __FILE__, __LINE__, ##__VA_ARGS__) #define pr_panic(fmt, ...) printk("PANIC (%s:%d): " fmt, __FILE__, __LINE__, ##__VA_ARGS__)
......
...@@ -178,7 +178,7 @@ void printk_vma(struct vma_area *vma_area) ...@@ -178,7 +178,7 @@ void printk_vma(struct vma_area *vma_area)
printk("s: %16lx e: %16lx l: %4liK p: %8x f: %8x pg: %8lx " printk("s: %16lx e: %16lx l: %4liK p: %8x f: %8x pg: %8lx "
"vf: %s st: %s spc: %s\n", "vf: %s st: %s spc: %s\n",
vma_area->vma.start, vma_area->vma.end, vma_area->vma.start, vma_area->vma.end,
vma_area_len(vma_area) >> 10, KBYTES(vma_area_len(vma_area)),
vma_area->vma.prot, vma_area->vma.prot,
vma_area->vma.flags, vma_area->vma.flags,
vma_area->vma.pgoff, vma_area->vma.pgoff,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment