OpenVZ-legacy
  1. OpenVZ-legacy

linux-2.6.18-openvz

Public
AuthorCommitMessageCommit dateIssues
OpenVZ teamPavelOpenVZ team
4907dd591e4linux-2.6.18-028stab033 released
Kirill KorotaevPavel EmelianovKirill Korotaev
340a640d60a[BC] ioprio: compilation fixVasiliy sent a bit wrong patch :/
Kirill KorotaevPavel EmelianovKirill Korotaev
f28a9e738a9[CPT] compilation fix: oldfs can be undeclaredSmall compilation fix for CPT
Kirill KorotaevPavel EmelianovKirill Korotaev
a2eac3fd8ba[PATCH] Fix powerpc compilation which was broken in 2.6.18.8 Christian Kaiser reported broken powerpc compilation due to 2.6.18.8 fix: http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.18.y.git;a=commitdiff;h=f102c840f7f72492a83c93fa65396fe0edcf1df6In file included from drivers/media/video/pwc/pwc-uncompress.c:29: include/asm/current.h: In function get_current: include/asm/current.h:23: warning: implicit declaration of function offsetof include/asm/current.h:23: error: expected expression before struct make[4]: *** [drivers/media/video/pwc/pwc-uncompress.o] Error 1 make[3]: *** [drivers/media/video/pwc] Error 2 make[2]: *** [drivers/media...
Kirill KorotaevPavel EmelianovKirill Korotaev
4519a0a4e89[PATCH] sparc64: fix SBUS compilationFix SBUS compilation on SPARC64: asm/unistd.h should be included for _syscallX() define usage.
Evgeny KravtsunovPavel EmelianovEvgeny Kravtsunov
18621d516b7[VE] rename local macro ADDR() to avoid conflict with XenFix redefinition of ADDR in veth.c. macro with name ADDR is also used by Xen in include/asm/mach-xen/asm/synch_bitops.h.
Alexey KuznetsovPavel EmelianovAlexey Kuznetsov
712f0e9b128[CPT] Fix possible deadlock in checkpointing of mmLearned it wrong once and did not relearn. anon_vma lock cannot be taken under page table lock. And it is taken and should be taken in reversed order, cpt_mm even has a special hack due to wrong understanding: look at chunk converting ugly spin_trylock to spin_lock. Difference of previous version: in one case (does not happen normally, but yet), page table lock could remain locked. Bug #82785
Vasily TarasovPavel EmelianovVasily Tarasov
0ff8f05b448[BC] ioprio: account for requests in driver Previously we didn't take into account beancounter's requests that are already in driver. Now we consider beancounter as empty (no requests in it) only if there are no requests in CFQ _and_ in driver.This patch improves fairness dramatically and fixes bug #81508
Vasily TarasovPavel EmelianovVasily Tarasov
feaf106d5a0[BC] ioprio: BC slice scaling fixNow slice is CFQ BC timeslice is scaled from X to 2*X ms.
Vasily TarasovPavel EmelianovVasily Tarasov
05bd5f8b625[BC] ioprio: range of ioprios were checked incorrectlyFix ioprio range check: ioprio range is 0..7
Jens AxboePavel EmelianovJens Axboe
d481f1dbe69[PATCH] cfq: remove redundant cfq_find_next_crq() function callbackport prepared by Vasily Tarasov <vtaras@openvz.org> mainstrem fix. cfq_find_next_crq() will be called later. This fix is incorporated in http://git.kernel.dk/?p=linux-2.6-block.git;a=commitdiff;h=21183b07ee4be405362af8454f3647781c77df1b
Andrey MirkinPavel EmelianovAndrey Mirkin
3a7aae555fa[CPT] handle killed system processes during checkpointing While checkpointing due to memory shortage CPT processes can be killed and tmpfs will not be saved.During restore we will see such errors: CPT ERR: e0000002ef9c5000,111 :-2 mounting /dev/pts devpts 40000000 CPT ERR: e0000002ef9c5000,111 :rst_namespace: -2 Bug #79854 This happens as /dev is tmpfs now and its content was not saved during checkpointing. We need to check exit status of tar and iptables-save to be sure that they exited normally. Changes from v1: - return -EINVAL in case of e...
Alexey KuznetsovPavel EmelianovAlexey Kuznetsov
2a5e40b3d55[VZDQ] forced accounting for vzquota vzquota in GFS is implemented differently of one for ext3. Instead of atomic check-and-account, it makes checking first and, if at least one block can be added, it starts transaction, which makes strict accounting.We need two new methods: 1. Forced accounting is implemented by passing a special value to alloc_space. 2. Quota checking also can be done in this way, but for now it is implemnted as check-and-account for 1 block and immediately free it. No modifications to vzquota core required
Den LunevPavel EmelianovDen Lunev
d11103dc489[PATCH] Fix NFS client hard reset: split cl_dead flag Unfortunately, counter on RPC client counts only clones, but not real ussage. cl_dead flag leads to client destruction in rpc_release_client while it is really in use. So, we have to introduce a new flag with the meaning similar to cl_dead in all places except rpc_release_client. True recounting is too expensive.Based on idea from Dmitry Monakhov. Bugs #82764, #82875
Den LunevPavel EmelianovDen Lunev
620e53ef8f7[PATCH] Add NFS timeout handle for TCP transport
Alexey DobriyanPavel EmelianovAlexey Dobriyan
f5d9c24b5ce[VZDQ] Fix GFP_KERNEL allocation under spin lock in vzdq_aquot_buildmntlistSwitch allocation from GFP_KERNEL to GFP_ATOMIC under vfsmount_lock in vzdq_aquot_buildmntlist()
Alexey DobriyanPavel EmelianovAlexey Dobriyan
dcd5577a4a0[VZDQ] Trivial fix for vzaquota.group lookup"vzaquota.group" was memcmp'd for only 11 symbols, allowing names like "vzaquota.grouX" to be looked up successfully.
Alexandr AndreevPavel EmelianovAlexandr Andreev
d5e0364abf5[BC] dentry_cache: drain alien caches only when CONFIG_NUMA is setFix oops introduced by previous patch diff-ubc-dentry-free_alien-20070510: Bug #82721 We should deal with NUMA only when CONFIG_NUMA is set.
OpenVZ teamPavelOpenVZ team
c0da05fe5delinux-2.6.18-028stab032 released
Kirill KorotaevPavel EmelianovKirill Korotaev
c5dd80636d7[NFS] Compilation fix for diff-ve-nfs-stop-b-20070502 when built as module diff-ve-nfs-stop-20070502 requires some symbols to be exported.Signed-Off-By: Kirill Korotaev <dev@sw.ru>
Kirill KorotaevPavel EmelianovKirill Korotaev
5a20f6f507a[BC] compilation fix, i_private should be u.generic_ip in 2.6.18-mainstreamCompilation fix: unlike 2.6.20 and RHEL5 in 2.6.18-mainstream i_private should be u.generic_ip
Vasily TarasovPavel EmelianovVasily Tarasov
e7bdc020fa3[PATCH] sysctl: add VE capability boundary set sysctl The user wishes to have virtualized kernel.cap-bound sysctl in order to use lcap tool to observe capabilities allowed in VE. We have cap_default field on ve_struct, that can be modified to be used as virtualized cap_bset. This patch: - renames cap_default -> ve_cap_bset - virtualizes cap_bset - introduces new proc and strategy routines to ha...http://bugzilla.openvz.org/show_bug.cgi?id=524
Den LunevPavel EmelianovDen Lunev
a0769a8e2b5[VZDQ] sb->put_super can be NULL in valid cases put_super() superblock operation was not checked for NULL in vzquota leading to NULL dereference.http://bugzilla.openvz.org/show_bug.cgi?id=541 Bug #81936
Alexandr AndreevPavel EmelianovAlexandr Andreev
cc37548bdf8[SCHED] compilation fix in case CONFIG_SCHED_VCPU=nThis patch fixes compilation of OVZ kernel with CONFIG_SCHED_VCPU=n
Alexandr AndreevPavel EmelianovAlexandr Andreev
1963923e93c[SCHED] optimization: dynamic vcpu_timeslicevcpu_timeslice == -1 now has special meaning (and -1 is default value now). In this case, actual vcpu_timeslice value will depend on number of VCPU's ready to run: assume N = ready_vcpus / nr_pcpus for N <= 1, vcpu_timeslice will be 8 1 < N <= 2, vcpu_timeslice = 4 2 < N <= 3, vcpu_timeslice = 2 3 < N <= 4, vcpu_timeslice = 1 N > 4, vcpu_timeslice = 0
Alexey DobriyanPavel EmelianovAlexey Dobriyan
97bffdd0b8e[PATCH] dcache: move might_sleep() from under preempt_disable() dput() had might_sleep() check in the very beginning. After renaming to dput_recursive() and adding preempt_disable() call this check ended up in region with disabled preemption, so with CONFIG_DEBUG_SPINLOCK_SLEEP=y and preemption on dmesg gets heavily spammed.So, do might_sleep() check earlier.
Alexey DobriyanPavel EmelianovAlexey Dobriyan
c474df421a7[PATCH] dcache shrink optimizations (from mainstream) Backport of commit d52b908646b88cb1952ab8c9b2d4423908a23f11 Author: Miklos Szeredi <mszeredi@suse.cz> Date: Tue May 8 00:23:46 2007 -0700 fix quadratic behavior of shrink_dcache_parent() The time shrink_dcache_parent() takes, grows quadratically with the depth of the tree under 'parent'. This starts to get noticable at about 10,000. These kinds of depths don't occur normally, and filesystems which invoke shrink_dcache_parent() via d_invalidate() seem to have other depth dependent timings, so it's not ev...
Vasily TarasovPavel EmelianovVasily Tarasov
8d2a54f695f[PATCH] vzdquota: compilation fix for ppc32 While compiling on ppc32 the following error appears: Building modules, stage 2. MODPOST WARNING: "__cmpdi2" [fs/vzdquota.ko] undefined! make[2]: *** [__modpost] Error 1 The problem is that switch((long_long_var)) is not a primitive for ppc32 gcc: libgcc.a is needed, which is out of the kernel. The problem was noticed by mbaranzak user at forum and he found the reason of it.
Den LunevPavel EmelianovDen Lunev
0acf1e81a40[BC] cleanup: remove unused functionsCleanup: remove a bit of unused code
Pavel EmelianovPavel Emelianov
d4fd77ed831[PATCH] proc: don't hash task dentries in VE0 When task dies the proc dentries, that may be hashed are shrunk with shrink_dcache_parent(). The problem is that this routine doesn't guarantee that all the entries will be flushed and thus pid may still have reference from the appropriate inode.When we have such dentries in VE0 holding pids from ve this leads to pid leakage and inability to release the beancounter after ve stop. So don't hash such dentries - remove them immediately. Bug #80025 Signed-off-by: Pavel Emelianov <xemul@sw.ru>
Neil BrownPavel EmelianovNeil Brown
796d794804a[NFS] Remove warning: VFS is out of sync with lock managerBut keep it as a dprintk The message can be generated in a quite normal situation: If a 'lock' request is interrupted, then the lock client needs to record that the server has the lock, incase it does. When we come the unlock, the server might say it doesn't, even though we think it does (or might) and this generates the message. Signed-off-by: Neil Brown <neilb@suse.de> Acked-by: Trond...
Pavel EmelianovPavel Emelianov
f83ff06dd69[BC] cleanup: introcude top_beancounter helperMany resources are accounted to top beancounter only. Introduce a helper to make code look nicer. Signed-off-by: Pavel Emelianov <xemul@sw.ru> Signed-off-by: Kirill Korotaev <dev@sw.ru>
Alexey DobriyanPavel EmelianovAlexey Dobriyan
e52346d860e[VE] unalias IPv6 iptables bit mask from IPv4 VE_IP_MANGLE flag is used as mask for both IPv4 and IPv6 modules which is no-no, because ip6table_mangle can be loaded after VE start.Split VE_IP_IPTABLES into VE_IP_IPTABLES and VE_IP_IPTABLES6. Same for VE_IP_FILTER and VE_IP_MANGLE. Choose numbers to not contradict with vzctl header. Temporarily mirror VE_IP_IPTABLES into IPv6 mask. When vzctl will start doing right thing, this mirroring can be dropped. http://bugzilla.openvz.org/show_bug.cgi?id=561
Alexandr AndreevPavel EmelianovAlexandr Andreev
a3431dfff80[BC] dcache: drain alien caches on nodes on dcache acct on drain alien caches on nodes on dcache walking through dentry slabs lists when turning dcache accounting on/offBug #81116
Alexandr AndreevPavel EmelianovAlexandr Andreev
216d688d9f1[BC] dcache: pass correct node number to kmem_cache_free_block() Fix warning in slab_put_obj() in debug kernels due to incorrect node number passed to kmem_cache_free_block().Bug #81116
Alexandr AndreevPavel EmelianovAlexandr Andreev
7f48a922e8e[BC] dcache: new style of array_cache entries accesscosmetics: new style of array_cache entries access
Andrey MirkinPavel EmelianovAndrey Mirkin
f6ec573bc57[CPT] kill all external processes on checkpoint We have a problem with external processes. If someone enters to VE forks and does some job w/o exec, then the process is not considered as external (pids are virtual), but some of the files (e.g. libs) can be from HN, i.e. external.Temporary and quick fix for this bug: On suspend kill processes which have mm->vps_dumpable == 0. Bug #81722
Pavel EmelianovPavel Emelianov
ce2aa64e272[BC] rework /proc/bc code Proc files creation suffered from two disadvantages: 1. It was racy in respect to bc remove/create 2. It couldn't correctly show hierarchical beancountersRework showing BC info by overriding readdir and lookup methods for inodes under /proc/bc. The entry layout itself is kept unchanged. Plus create new entry names /proc/bc/<id>/debug to show BC's id, parent credentials and some in-kernel memory pointers purely for debugging. Signed-off-by: Pavel Emelianov <xemul@sw.ru>
Den LunevPavel EmelianovDen Lunev
3d345170a29[VE] VE init signal delivery reworked to be similar to host Prevent VE init from receiving unexpected signals sent from VE including *fatal* ones. Signals sent from VE0 are still allowed, e.g. for fast VE stop. Fix for sys_reboot called from VE to force VE death (SIGKILL is sent in the context of VE).http://bugzilla.openvz.org/show_bug.cgi?id=533
Alexandr AndreevPavel EmelianovAlexandr Andreev
2a61dc6363f[SYSRQ] show correct sysrq help message. Fix sysrq-h help message which was broken by SysRq-debugger patch.Bug #81612
Den LunevPavel EmelianovDen Lunev
cb4984075bb[NFS] fix NFS auto-umount timeout sysctlThis patch: - changes the timeout units from jiffies to seconds - fixes assignment from userspace (was impossible, since UINT_MAX was treated as negative)
Den LunevPavel EmelianovDen Lunev
6f91ec2f5d7[NFS] shutdown NFS properly if hangedThis patch properly shutdown NFS if it is stalled.
Andrey MirkinPavel EmelianovAndrey Mirkin
d64e95354ae[CPT] Make kernel_thread_helper symbol global Make kernel_thread_helper symbol to be global so that it is possible to compile CPT built-in in kernel.http://bugzilla.openvz.org/show_bug.cgi?id=534
Den LunevPavel EmelianovDen Lunev
b2a083f39f5[NFS] virtualize NLM hosts cache This patch virtualizes NLM hosts cacheBug #74374
Alexey KuznetsovPavel EmelianovAlexey Kuznetsov
2dcfb28e81f[CPT] too aggressive sys_futex() restartCheckpointing used to enforce restart of sys_futex even when it returns -EINTR to workaround for sick return value of FUTEX_WAIT. Of course, this is wrong (f.e. it means restart of timed FUTEX_WAIT with original timeout :-(), but do not have much of choice if we do not want to break everything. At least one case can be relaxed. If we have signal pending, when we restore we must not restart. Th...
Alexey KuznetsovPavel EmelianovAlexey Kuznetsov
fe075302f29[PATCH] PI futex oops (mainstream)Serialization in PI futexes is severely broken, lots of bugs, lots. But only one is known which crashes kernel. It is possible that new pi state isadded to pi_state_list after the task did exit cleanup already. So that, when task struct is released pi_state list remains in corrupted state. Locally exploitable.
Ingo MolnarPavel EmelianovIngo Molnar
e520be1ef61[PATCH] futex: PI state locking fixcommit 21778867b1c8e0feb567addb6dc0a7e2ca6ecdec Author: Ingo Molnar <mingo@elte.hu> Date: Fri Mar 16 13:38:31 2007 -0800 [PATCH] futex: PI state locking fix Testing of -rt by IBM uncovered a locking bug in wake_futex_pi(): the PI state needs to be locked before we access it. Signed-off-by: Ingo Molnar <mingo@elte.hu> Acked-by: Thomas Gleixner <tglx@linutronix.de> Cc: Chuck Ebbert <cebbert@...
Alexey KuznetsovPavel EmelianovAlexey Kuznetsov
6ecc6e3d844[CPT] prevent changes of VM after VE was checkpointedIt is possible that processes' VM is changed after VE is checkpointed and killed. At the moment it will happen when a process set clear_parent_tid or robust list pointers. It was not considered a problem, because VM is about to be destroyed in any case. But one case was missed: corresponging VM areas could be mapped to a file. If it is not deleted, the change will reach file system and migrate...
Alexey KuznetsovPavel EmelianovAlexey Kuznetsov
45312ff8a98[CPT] VE suspend cleanupsThe patch fixes one bug. Sometimes one process sleeps in an uninterruptible state waiting for some event depending on another process, which could be suspended. I know three such cases: 1. Process did vfork() and waits when child will exec() 2. Thread did exec() and waits when its siblings will die. 3. Thread makes coredump and waits when siblings stop. We detected case #1 directly by looki...
Vasily TarasovPavel EmelianovVasily Tarasov
c7fa58b331d[PATCH] merging of async requests was abit incorrectly backported patch diff-ms-cfq-allow-merge-b-20070424 was ported a bit incorrectly. It resulted in wrong async requests merging.Bug #80857