Skip to content

Instantly share code, notes, and snippets.

@peo3
peo3 / ulp-comp.c
Last active December 19, 2017 15:51
A sample program using ULP (it deflates/inflates payload of TCP transparent to userland)
#include <linux/module.h>
#include <linux/zlib.h>
#include <net/tcp.h>
#include <net/inet_common.h>
MODULE_AUTHOR("peo3");
MODULE_DESCRIPTION("compression ULP");
MODULE_LICENSE("GPL");
@peo3
peo3 / kcm-sample.c
Last active December 20, 2023 18:18
A sample program of KCM
/*
* A sample program of KCM.
*
* $ gcc -lbcc kcm-sample.c
* $ ./a.out 10000
*/
#include <err.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
@peo3
peo3 / linux-4.6.0.vbox.config
Created May 21, 2016 16:33
Linux 4.6.0 kernel config for VirtualBox
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 4.6.0 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_PERF_EVENTS_INTEL_UNCORE=y
CONFIG_OUTPUT_FORMAT="elf64-x86-64"
@peo3
peo3 / hello.patch
Created November 2, 2013 07:18
Add hello.so app to OSv. How to compile and run: make; /scripts/run.py -e 'hello.so'
diff --git a/bootfs.manifest b/bootfs.manifest
index c04c161..b3e6479 100644
--- a/bootfs.manifest
+++ b/bootfs.manifest
@@ -76,4 +76,5 @@
/libzfs.so: libzfs.so
/zfs.so: zfs.so
/tools/mkfs.so: tools/mkfs/mkfs.so
+/hello.so: hello.so
@peo3
peo3 / systemd-changelogs.txt
Last active December 24, 2015 17:49
Recent systemd changes for cgroups and namespaces.
systemd 208 released [LWN.net] http://lwn.net/Articles/569235/
* This release removes high-level support for the
MemorySoftLimit= cgroup setting. The underlying kernel
cgroup attribute memory.soft_limit= is currently badly
designed and likely to be removed from the kernel API in its
current form, hence we shouldn't expose it for now.
* The memory.use_hierarchy cgroup attribute is now enabled for
all cgroups systemd creates in the memory cgroup
@peo3
peo3 / config-3.10.0-0.rc5.git0.1.nohzfull.vbox.fc20.x86_64
Last active December 18, 2015 05:08
A sample configuration of a minimal x86_64 kernel with NOHZ_FULL enabled for VirtualBox.
# x86_64
# Automatically generated file; DO NOT EDIT.
# Linux/x86 3.10.0-0.rc5.git0.1.nohzfull.fc20.x86_64 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf64-x86-64"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
@peo3
peo3 / vmware.repo
Last active December 16, 2015 07:58
vmware-tools repository for CentOS 6.x
[vmware-tools]
name=VMware Tools for Red Hat Enterprise Linux $releasever – $basearch
baseurl=http://packages.vmware.com/tools/esx/latest/rhel6/$basearch
enabled=1
gpgcheck=1
gpgkey=http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
@peo3
peo3 / vboxsf_utils.patch
Created March 18, 2013 16:45
A patch to compile vboxsf.ko for 3.8.x kernel with user namespace enabled.
--- vboxsf/utils.c.orig 2013-03-19 01:32:18.189109241 +0900
+++ vboxsf/utils.c 2013-03-19 01:38:19.403778661 +0900
@@ -144,8 +144,13 @@
#endif
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) && defined(CONFIG_UIDGID_CONVERTED)
+ inode->i_uid = make_kuid(&init_user_ns, sf_g->uid);
+ inode->i_gid = make_kgid(&init_user_ns, sf_g->gid);
+#else
@peo3
peo3 / gist:5181258
Last active December 15, 2015 01:39
How to build a custom kernel of Fedora 18 with enabling user namespace

How to enable user namespace in 3.8 kernels

The user namespace, which is a important piece of Linux containers, has been merged into the mainline of the kernel since 3.8. However, it implementation is still incomplete for some components of the kernel. Hence, to enable the feature we need to disable some features: network filesystems and XFS.

@peo3
peo3 / config-3.8.3-201.vbox.fc18.x86_64
Last active December 15, 2015 01:29
A sample configuration of a minimal x86_64 kernel with user namespace for VirtualBox.
# x86_64
# Automatically generated file; DO NOT EDIT.
# Linux/x86_64 3.8.3-201.vbox.fc18.x86_64 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf64-x86-64"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"