Author | Commit | Message | Commit date | Issues | |
---|---|---|---|---|---|
OpenVZ team | e5cb7ac28a1 | linux-2.6.18-028stab031 released | |||
Sergey Vlasov | a7e3418ccb7 | [NETLINK] Fix for Alexey's netlink lookup recursion fixWhen CONFIG_IP_MULTIPLE_TABLES is enabled, the code in nl_fib_lookup() needs to initialize the res.r field before fib_res_put(&res) - unlike fib_lookup(), a direct call to ->tb_lookup does not set this field. Signed-off-by: Sergey Vlasov <vsu@altlinux.ru> --- net/ipv4/fib_frontend.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) On Wed, 25 Apr 2007 22:29:12 -0700 Greg KH wrote... | |||
Alexey Dobriyan | def2311a5a0 | [PATCH] Make speedstep centrino cpufreq driver use wr/rdmsr_on_cpu() speedstep-centrino cpufreq driver was using set_cpus_allowed() and checks for smp_processor_id() to confine itself to given CPU.Switch to rdmsr_on_cpu/wrmsr_on_cpu() infrastructure. Closes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=420708 | |||
Konstantin Khorenko | 3ca472108bf | [VZDQ] prohibit chown of a file if owner doesn't have ugid struct Prohibit chown a file if its owner does not have ugid record. This might happen if we somehow exceeded the UID/GID (e.g. set ugidlimit less than number of users).Bug #79553 | |||
Pavel Emelianov | 739ede5c408 | [NETLINK] VE netlink message should go into VE logWhen parsing netlink arguments kernel may printk that some bytes left unparsed. Make this info appear in VE log, instead of global one. | |||
Alexey Dobriyan | ae1830cd538 | [PATCH] TASK_IO_ACCOUNTING breaks menu config 1. Move TASK_IO_ACCOUNTING out of EMBEDDED menu cf placement in mainline. 2. As side effect, EMBEDDED menu will be shown on same level as designed, not returning to top level after SYSCTL option.http://bugzilla.openvz.org/show_bug.cgi?id=550 | |||
Alexey Kuznetsov | 0d92a367a85 | [PATCH] stack overflow in netlink (mainstream)Reply to NETLINK_FIB_LOOKUP messages were misrouted back to kernel, which resulted in infinite recursion and stack overflow. The bug is present in all kernel versions since the feature appeared. (linux 2.6.13, Jun 20th, 2005, commit 246955fe4c38bd706ae30e37c64892c94213775d, [NETLINK]: fib_lookup() via netlink) The patch also makes some minimal cleanup: 1. Return something consistent (-E... | |||
Vasily Averin | db1d365a4db | [TUN] prohibit tun persistent mode inside VE prohibit tun persistent mode inside VE, until resolved via ve hooks.Bug #79612 | |||
Alexandr Andreev | 52abef6fa79 | [SCHED] Select some vcpu instead of idle even if all vcpus are hot We have to use oldest vcpu if all vcpu's are hot. In current kernel an idle_vcpu is used and CPU can idle instead of doing some job.Bug #79676 | |||
Vasily Tarasov | 6f9ba1d3a7a | [IOPRIO] forced dispatching when CONFIG_UBC_IO_PRIO off If CONFIG_UBC_IO_PRIO is off, then no beancounters are in active list, consequently we have a bug in forced dispatching case.http://bugzilla.openvz.org/show_bug.cgi?id=528 | |||
Alexandr Andreev | 99449c31d9a | [BC] compilation fix with CONFIG_USER_RESOURCE=nCompilation fix with CONFIG_USER_RESOURCE=n | |||
Vasily Tarasov | 9ab1e52fb46 | [PATCH] modification of allow merge policy in cfq (mainstream) Jens Axboe rewrited allow merge policy one more time after we reported the problem and fixed the problem we face curently when some tasks experience I/O starvations.This is an incremental patch to the previous patch diff-ms-cfq-allow-merge-20070117 ported to OpenVZ. This patch is cumulative of http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=719d34027e1a186e46a3952e8a24bf91ecc33837 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ec8acb6904fabb8e741f741ec99bb1c18f2b3dee Bug #79594 | |||
Pavel Emelianov | 50ae3a28c4a | [BC] Leak of privvmpages on zero page mapsThis was obviously forgotten. Each mmap of /dev/zero causes this leak. Bug #80246 | |||
Konstantin Khorenko | 19af741c32e | [MEMINFO] sysctl for selecting UsedMem sourceAdds sysctl to choose base ubc parameter for memory usage inside a VE. Sets PRIVVMPAGES beancounter to be used by default instead of OOMGUARPAGES. Bug #78088 | |||
Pavel Emelianov | 98e017db1ec | [SCHED] cleanup: removed unused variablestruct rq *rq was used before fairsched patch to compare tasks with rq->idle. With fairsched idle task is bound to pcpu, not vcpu and thus struct rq *rq is simply not needed. | |||
Alexey Dobriyan | 5ef5503c0fb | [PATCH] loopback: oops on loopback mount/umount (mainstream)After LOOP_SET_FD/LOOP_CLR_FD combo loop device's queue gets request handler which is persistent. After, say mount -t iso9660 /dev/loop0 /mnt # sic this request handler is called directly with a) ->lo_state being Lo_unbound b) ->lo_pending being zero Error path in loop_make_request() completes ->lo_bh_done completion which is persistent as well. Now, let's start worker thread as usual. It... | |||
Alexey Kuznetsov | 1ad0c403d0c | [CPT] thread groups with exited leader did not migrateThe bug is simple and stupid, it is very strange nobody saw this. When thread group leader exits, its mm/files/fs/namespace are released but zombie process remain frozen until all the threads exit. Restore was not able to restore such configuration. Solution is simple: when chackpointing save not real (NULL) mm/files/fs/namespace, but mm/files/fs/namespace of this thread group. | |||
Alexey Kuznetsov | 0f3e993ea61 | [CPT] restore rcv queue on netlink sockets and unbound netlink socketsCode restoring queues was forgotten. This fixes bug #79723. Unbound sockets were restored incorrectly, they were outbound to some post, which prevented subsequent bind by application. This fixes bug #79724. The patch overrides previous patch with subj: "[CPT] restore rcv queue on netlink sockets", which fixed only bug #79723. | |||
Vasily Tarasov | 9d2c1044ebc | [IOPRIO] Oops on IO-prioritization disablingIf io-prioritization is suddenly turned off via /sys/block/<dev>/queue/iosched/virt_mode cfqq owner BC does not equal current io context. It is right to get beancounter obtained from queue, but not from current IO context. | |||
Andrey Mirkin | c77c198990d | [CPT] retry checkpointing if VE has active netlink callbackReturn -EAGAIN instead of -EBUSY if netlink socket has active callback. In this case we will try to freeze VE 3 times. | |||
Alexey Kuznetsov | 2957aa2e096 | [PATCH] Invalid return value of execve() resulting in oopses (mainstream) Invalid return value of execve() resulting in oopses (mainstream)When elf loader fails to map executable (due to memory shortage or because binary is malformed), it can return 0. Normally, this is invisible because process is killed with SIGKILL and it never returns to user space. But if exec() is called from kernel thread (hotplug, whatever) consequences are more interesting and vary depending on architecture. i386. Nothing especially interesting, execve(... | |||
Thorsten Schifferdecker | d19c1d4520b | [CPT] tux is missing on vanilla kernelsCompilation bug was introduced by http://git.openvz.org/?p=linux-2.6.18-openvz;a=commitdiff;h=f90c2c318467829ecde43919ad38f326527f533b fixes http://bugzilla.openvz.org/show_bug.cgi?id=545 | |||
OpenVZ team | b3a36a89813 | linux-2.6.18-028stab030 released | |||
Pavel Emelianov | 404b636aff6 | [IOACCT] Debug on page releaseWhen releasing an IO beancounter from the page that is not supposed to IO pb print a warning. | |||
Alexey Dobriyan | fbd75939b78 | [BC] UB put on error path in fork()If fork() fails after ub_task_charge(), nobody is putting three beancounters getted there. | |||
Den Lunev | 7b98d730bfe | [PATCH] Revert fatal signal processing logic Revert diff-ms-fatal-signal-20070413. It's wrong. Forbids SIGKILL in some cases. Instead we should check whether the receiver is init and whether signal is from VE or VE0.Original patch comment: This patch changes fatal signal processing logic. The SIGKILL should be raised only for all threads in the groups *EXCEPT* recipient one. http://bugzilla.openvz.org/show_bug.cgi?id=533 | |||
OpenVZ team | 7d33a85782e | linux-2.6.18-028stab029 released | |||
Pavel Emelianov | 9e09aecb82f | [IOACCT] Fix ioacct race When page becomes dirty there's no time to store a context on it - page may become clean immediately.Thus we had a race in accounting when a page became clean before we set a context on it and this context got lost and not freed. Handle the context the other way - in case we're going to set a new context on a page that already has one - free it and account written bytes in case the page became clean. When removing a context from a page - handle the case when a page does not have one due to th... | |||
Den Lunev | 0d535344720 | [PATCH] Fatal signal processing logicThis patch changes fatal signal processing logic. The SIGKILL should be raised only for all threads in the groups *EXCEPT* recipient one. http://bugzilla.openvz.org/show_bug.cgi?id=533 | |||
Alexandr Andreev | a37adcb90d0 | [SCHED] Reduce starvation of some VCPUs in case of cpu limits Change logic of choosing best_vcpu to schedule to. There are two potential problems:a) if a vcpu is hot, and last used physical CPU of this vcpu is equal to smp_processor_id() it will be always chosen. This is not a good decision, because there is no guarantee, that _all_ physical CPU's must take vcpu's from a vsched. For example, if cpulimit for a vsched is small, this vsched can be run only on one physical CPU forever. b) Also now newer 'cold' vcpu's are chosen first, becau... | |||
Alexey Kuznetsov | 55d18695fea | [CPT] checkpointing robust listsOtherwise we are going to have problems with migration of newer glibcs using robust lists when this is possible. | |||
Kirill Korotaev | b5219adba36 | [CPT] reserve inotify objects IDs which are used in RHEL5 kernelAdd inotify object types, which were reserved in RHEL5 kernel. | |||
Alexey Kuznetsov | f90c2c31846 | [CPT] alternative way to migrate zombie processesIn older 2.6.8 kernels do_exit() was very simple, essentially it disposed m etc, which is done automatically while checkpointing, and did some work on notifying parent. So that it was natural to move restored process to zombie state by hands. In 2.6.18 do_exit makes _lots_ of work. Seems, it is easier to invert logic. We introduce new flag PF_RESTART_EXIT, which suppresses the work which was ... | |||
Pavel Emelianov | 947332ab3f9 | [CPT] Fix lockdep warning on socket dump CPT locks all the sockets it finds for dumping. This is OK, but lockdep thinks as if it were a circular locking.It happens each time we migrate a VE with more than one socked aboard. | |||
Alexey Kuznetsov | 0e7aa780173 | [PATCH] pthead_mutex_lock deadlock inside VEThis patch replaces diff-ve-futex-EDEADLK-bypass-20061225 and previous small patch reparing user-level deadlock in pthread_mutex_lock() happening because value 0 was not "virtual". It undoes unnatural tests for virtuality of pid supplied by user. Naively, this can result in kernel warning if user mangles pid doing something like: syscall(__NR_futex, &l, FUTEX_LOCK_PI, 0, 0); l... | |||
Konstantin Khorenko | d5ac29c5dd9 | [STOPMACHINE] Fix possible live-lock problem found by Vasily (vvs@) & Kirill (dev@): a possible situation in stop_machine: - stopmachine_state == STOPMACHINE_WAIT; - STOPPER (stop_machine()) is in state SM_STOPPER_WAITING, calling yield() in a loop; - SLAVES (stopmachine()) also call yield() in a loop.This leads to the fairsched_lock suffering on all CPUs and in case of unfair getting lock rules (for example on NUMA node), some CPUs can wait for the lock forever/for a long time, causing a hang of the node. This patch replaces yield() by msleep(10). Mainstream kernel is affected as well, though it is harder to trigger: One CPU does yield() taking/releasing rq->lock, while another CPU should ... | |||
Pavel Emelianov | 8c964490c59 | [BC] Percpu counters discrepancy on 64bit archesOperation long += -(unsigned int); leads to wrong result on 64bit due to no sign extension. | |||
Evgeny Kravtsunov | 1ee41ad6fbb | [BRIDGE] Unaligned access on IA64 when compare ether addrPatch fixes unaligned access that takes place on ia64 in compare_ether_addr() compare_ether_addr() requires address to be aligned on 2-byte boundary, while addresses declared in bridges are aligned on 1-byte. | |||
Vasily Tarasov | 99c8e58c7f5 | [IOPRIO] cleaning active beancounterAfter beancounter disappears, it still can be active. Clean it up. | |||
Vasily Tarasov | 86ef0b5c3c4 | [PATCH] kconfig: security depends on !veMany people have CONFIG_SECURITY enabled in their configs. When they try to do `make oldconfig` for OpenVZ kernels with such configs, no questions appear concerning CONFIG_VE and friends, and people have OpenVZ kernels with virtualization features disabled. Fix it. Reverse the dependency of VE/SECURITY. | |||
Pavel Emelianov | 7bc3c70ef41 | [VZDQ] Fix sleep under inode_lock The calltrace: vzdq_aquotq_lookup iget5_locked() get_new_inode() `- spin_lock(&inode_lock); find_inode() ->set() /* == vzdq_aquotq_lookset */ vdq_aquot_lookset() user_get_super() `- down_read(...)So it may sleep with inode_lock taken. Move all the sleeping operations out of the lock. | |||
Den Lunev | ff5b6c3d67f | [VENET] stop IP management before freeing venetThe device is freed before the VE<->IP mapping is cleaned. | |||
OpenVZ team | 83531862b7a | linux-2.6.18-028stab028 released | |||
Pavel Emelianov | 3cb353ceeba | [BC] Check correct user_beancounter passed first in ub_page_uncharge()If page accidentally has a not-removed page_beancounter kernel will oops dereferencing ub->ub_percpu(). Move the BUG_ON upper to be sure we work with user_beancounter. | |||
Vasily Tarasov | 681d0b65ded | [BC] vmguar_enough_memory() oopses if called form kernel threadIf vmguar_enough_memory() function is called by kernel thread, it oopses due to task_struct->mm equals NULL. Such situation was encountered when aufs was over ramfs. | |||
Pavel Emelianov | 958955c928e | [LOCKDEP] Fix wrong deadlock report in neigh tableLockdep detects a fake deadlock in the calltrace: neigh_proxy_process() `- lock(neigh_table->proxy_queue.lock); arp_process (tbl->proxy_redo) neigh_event_ns neigh_update skb_purge_queue `- lock(neighbour->arp_queue.lock); Actually there is no deadlock as the first lock and the second one are different skb_buff_head's locks, but they are initialized both in skb_queue_head_init() and thus ha... | |||
Alexey Dobriyan | 6c1588c7484 | [BC] refcount leak in dup_mm() on error pathFix simple beancounter refcount leak on error path in dup_mm(). | |||
OpenVZ team | 38663ac994c | linux-2.6.18-028stab027 released | |||
Alexandr Andreev | e1c1be83b4a | [SCHED] VCPU should be initialized completely before deletion There is a race in vsched_del_vcpu() - we can kill migration_thread() even if it has not started yet, i.e. migration_thread() function is not called at all. So, migrate_live_tasks() and migrate_dead_tasks() will not be called on this vcpu while migration thread is killed. But there can be some tasks, that have already migrated on thi...This bug can be easily reproduced. On a busy host with many running tasks user can run: In this case, after the second vzctl, migration thread on VCPU 2 will be created and just waked up, but it can be not really started (scheduled) yet if there are a lot of other more priority tasks running on the host. If it will not be scheduled before the third vzctl call, there will be kernel bug in vsche... | |||
Vasily Tarasov | 7a3b51adaa6 | [IOPRIO] compilation fix in case UBC_IO_ACCT is offCompilation fix in case UBC_IO_ACCT is off http://bugzilla.openvz.org/show_bug.cgi?id=527 |
Commits
Author | Commit | Commit date | Issues | |
---|---|---|---|---|
OpenVZ team | e5cb7ac28a1 | |||
Sergey Vlasov | a7e3418ccb7 | |||
Alexey Dobriyan | def2311a5a0 | |||
Konstantin Khorenko | 3ca472108bf | |||
Pavel Emelianov | 739ede5c408 | |||
Alexey Dobriyan | ae1830cd538 | |||
Alexey Kuznetsov | 0d92a367a85 | |||
Vasily Averin | db1d365a4db | |||
Alexandr Andreev | 52abef6fa79 | |||
Vasily Tarasov | 6f9ba1d3a7a | |||
Alexandr Andreev | 99449c31d9a | |||
Vasily Tarasov | 9ab1e52fb46 | |||
Pavel Emelianov | 50ae3a28c4a | |||
Konstantin Khorenko | 19af741c32e | |||
Pavel Emelianov | 98e017db1ec | |||
Alexey Dobriyan | 5ef5503c0fb | |||
Alexey Kuznetsov | 1ad0c403d0c | |||
Alexey Kuznetsov | 0f3e993ea61 | |||
Vasily Tarasov | 9d2c1044ebc | |||
Andrey Mirkin | c77c198990d | |||
Alexey Kuznetsov | 2957aa2e096 | |||
Thorsten Schifferdecker | d19c1d4520b | |||
OpenVZ team | b3a36a89813 | |||
Pavel Emelianov | 404b636aff6 | |||
Alexey Dobriyan | fbd75939b78 | |||
Den Lunev | 7b98d730bfe | |||
OpenVZ team | 7d33a85782e | |||
Pavel Emelianov | 9e09aecb82f | |||
Den Lunev | 0d535344720 | |||
Alexandr Andreev | a37adcb90d0 | |||
Alexey Kuznetsov | 55d18695fea | |||
Kirill Korotaev | b5219adba36 | |||
Alexey Kuznetsov | f90c2c31846 | |||
Pavel Emelianov | 947332ab3f9 | |||
Alexey Kuznetsov | 0e7aa780173 | |||
Konstantin Khorenko | d5ac29c5dd9 | |||
Pavel Emelianov | 8c964490c59 | |||
Evgeny Kravtsunov | 1ee41ad6fbb | |||
Vasily Tarasov | 99c8e58c7f5 | |||
Vasily Tarasov | 86ef0b5c3c4 | |||
Pavel Emelianov | 7bc3c70ef41 | |||
Den Lunev | ff5b6c3d67f | |||
OpenVZ team | 83531862b7a | |||
Pavel Emelianov | 3cb353ceeba | |||
Vasily Tarasov | 681d0b65ded | |||
Pavel Emelianov | 958955c928e | |||
Alexey Dobriyan | 6c1588c7484 | |||
OpenVZ team | 38663ac994c | |||
Alexandr Andreev | e1c1be83b4a | |||
Vasily Tarasov | 7a3b51adaa6 |