OpenVZ-legacy
  1. OpenVZ-legacy

linux-2.6.18-openvz

Public
AuthorCommitMessageCommit dateIssues
OpenVZ teamOpenVZ team
b0dfaf1c671linux-2.6.18-028stab035 released
Kirill KorotaevKirill Korotaev
25f460a439a[PATCH] VE: fix another mispint. in NAT iptables bits split Fix another misprint in patch: [PATCH] Unalias VE_IP_NAT for ip_nat and iptable_nat modules (diff-ve-ip-nat-aliasing-20070605) God summer makes people inattentive :/i
OpenVZ teamOpenVZ team
a3d51c7f58clinux-2.6.18-028stab034.2 released
Alexandr AndreevAlexandr Andreev
ddd44fba2eb[PATCH] VE: ve0 processes intialization VE0 processes were initialized twice: - in copy_process() - in prepare_ve0_process() from init_ve_system()This is redundant and unneeded. Leading to wrong ve0.pcounter
OpenVZ teamOpenVZ team
2f0ccdc8bbflinux-2.6.18-028stab034 released
Kirill KorotaevKirill Korotaev
e62eca07ac9[PATCH] NFS: fix misprint in Den patch for lockdepFix misprint in Den patch for lockdep: [PATCH] nfs: AB-BA deadlock on rpc_sched_lock/queue->lock locks (diff-ms-nfs-schedlock-20070530)
Kirill KorotaevKirill Korotaev
666831e5539[PATCH] CPT: revert Alexey's patch for last vpid in 2.6.18-msMy fault. This patch is needed for RHEL5 kernel only, which has per-VE vpid map and requires this fix.
Kirill KorotaevKirill Korotaev
a6f1ee3abd4[PATCH] Fix random.c compilation after Matt patch merges
Alexey KuznetsovAlexey Kuznetsov
a003c00995a[CPT] restore packet socketBinding of packet socket was skipped. One tricky bit: getsockname returns "real" sockaddr length and bind() does not accept real name, it wants sizeof(struct sockaddr_ll). Missing bits: - multicast list, incuding promisc status - statistics is not restored Enough for beginning, the rest requires surgery in core.
Alexandr AndreevAlexandr Andreev
53f892a1f0b[PATCH] sched: fix up fairsched tick duration according to VCPU timeslice With latest 'vcpu dynamic timeslice' patch we broke fairsched scheduler logic a bit, which assumed, that fairsched_schedule() must be called on each timer tick.New bigger fairsched timeslice was introduced: this value must be always >= vcpu timeslice Bug #82969
Denis V. LunevDenis V. Lunev
d603f573662[PATCH] disable OOM_DISABLE inside VEPrevent disabling of OOM from inside VE. Basically, it is safe to allow priority changes inside VE, as in normal case we select UB and a process inside UB then.
Alexey DobriyanAlexey Dobriyan
e5baa8a2264[PATCH] Unalias VE_IP_NAT for ip_nat and iptable_nat modulesIf ip_nat and ip_tables modules are loaded before VE start, and iptable_nat after VE start, on VE stop kernel will crash in ipt_unregister_table() attempting to unregister NULL table. Split VE_IN_NAT flag responsible for two modules. http://bugzilla.openvz.org/show_bug.cgi?id=607
Vasily AverinVasily Averin
9ea430234ff[PATCH] disable "Disabled Privacy Extensions" messages Hide annoing useless messages about disabled IPv6 privacy extensions, which is always triggered by loopback: "lo: Disabled Privacy Extensions"Bug #83651
Andrey MirkinAndrey Mirkin
f00a0fe4aed[PATCH] veth: rework VE traffic filteringMac filtering in veth_xmit() was a bit incorrect: broadcasts and multicasts were allowed from VE. Rearrange code, make it more clear and assymetric :/
Patrick McHardyPatrick McHardy
e943e36bf23[NETFILTER]: {ip,nf}_conntrack_sctp: fix remotely triggerable NULL ptr dereferenceWhen creating a new connection by sending an unknown chunk type, we don't transition to a valid state, causing a NULL pointer dereference in sctp_packet when accessing sctp_timeouts[SCTP_CONNTRACK_NONE]. Fix by don't creating new conntrack entry if initial state is invalid. Noticed by Vilmos Nebehaj <vilmos.nebehaj@ramsys.hu> CC: Kiran Kumar Immidi <immidi_kiran@yahoo.com> Signed-off-by: Pat...
Auke KokAuke Kok
50274579d15[PATCH] e1000: irq registration after adapter initialization Some time ago patch http://git.openvz.org/?p=linux-2.6.18-openvz;a=commit;h=2d46cb1712da0b94652c94f8bb9bac662c10d847 was introduced due to bug #72205However the patch wasn't adopted by mainstream for some reasons, and we received the following bug report: http://bugzilla.openvz.org/show_bug.cgi?id=543 approving that the fix is not completely correct. While 2.6.22 kernel the problem was fixed by http://git.kernel.org/?p=linux/kernel/git/jgarzik/netdev-2.6.git;a=commit;h=e0aac5a289b1dacbc94bd9ae8c449bcdf9ab508c Attached patch is the port of ...
Akinobu MitaAkinobu Mita
7d16556c6d1use simple_read_from_buffer in kernel/Cleanup using simple_read_from_buffer() for /dev/cpuset/tasks and /proc/config.gz. Cc: Paul Jackson <pj@sgi.com> Cc: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> X-Git-Tag: v2.6.22-rc1 X-Git-Url: http://git.kernel.org/?p=linux%2Fker...
Matt MackallMatt Mackall
5d25d37bc83random: fix seeding with zero entropyAdd data from zero-entropy random_writes directly to output pools to avoid accounting difficulties on machines without entropy sources. Tested on lguest with all entropy sources disabled. Signed-off-by: Matt Mackall <mpm@selenic.com> Acked-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit...
Matt MackallMatt Mackall
9ec3eddc319Add data from zero-entropy random_writes directly to output pools to avoid accounting difficulties on machines without entropy sources.Tested on lguest with all entropy sources disabled. Signed-off-by: Matt Mackall <mpm@elenic.com> Acked-by: "Theodore Ts'o" <tytso@mit.edu>
Kirill KorotaevKirill Korotaev
c13a415389a[PATCH] init vps_dumpable early on execSince CPT uses vps_dumpable flag now for determining external processes on checkpointing, we need to initialize it earlier on mm creation on exec. Otherwise it can race.
Andrey MirkinAndrey Mirkin
fbe09dbe369[PATCH] CPT: checkpoint inodes with deleted reference Consider the following scenario: 1. Create file (file1) and hard link to it (file2) 2. Open file2 3. Unlink file2After that during checkpointing we will have the following err: Can not dump VE: Device or resource busy deleted reference to existing inode, checkpointing is impossible The inode in question is not deleted, but it is not foundable from inside checkpointed process group and not easy foundable on the disk :/ So we are trying to find another dentry with the same inode in 2 common places: 1. I...
Andrey MirkinAndrey Mirkin
3a1d794fef4[PATCH] CPT: restore deleted files (hardlink case) The bug was here all the time, but it was never triggered as we never entered the following path on checkpointing:if (!IS_ROOT(d) && d_unhashed(d)) { struct file *parent; parent = iobj->o_parent; if (!parent || (!IS_ROOT(parent->f_dentry) && d_unhashed(parent->f_dentry))) { /* Inode is not deleted, but it does not * have references from inside checkpointed * process group. We have options: * A...
Andrey MirkinAndrey Mirkin
3a24db50132[PATCH] CPT: check if ip_talbes are enabled before dumping themDon't try to dump iptables if they are not enabled in VE.
Alexey KuznetsovAlexey Kuznetsov
9b0ab25ebcd[CPT][IA64] some prctl flags are forgottenSome apps do lots of unaligned accesses, know about this and use prctl(). We did not save/restore those flags and got flood of warnings after checkpointing.
Kirill KorotaevKirill Korotaev
e053d22b94c[PATCH] ubc: export ubc helpers for case CONFIG_UNIX=m Export ub_sock_getwres_other, since unix sockets can call it from the module (unix.ko) when CONFIG_UNIX=m.Thanks to Rafael Isturiz for having non-standart config :) and reporting this.
Kirill KorotaevKirill Korotaev
993241dcdfc[PATCH] veth: multicasts should be forwarded as well Right now veth_xmit passes broadcasts only. It is a bug. Multicasts should be allowed as well.Thanks to Daniel Pittman for noticing this.
Alexey KuznetsovAlexey Kuznetsov
bb3062f89bd[CPT] fix compilation warning due to cast u64 -> pointer
Alexey KuznetsovAlexey Kuznetsov
39e5055a066[CPT] cosmetic fix to match 2.6.9 textIn 2.6.9 it was a critical bug, image would be corrupted because of broken alignment if we did not make this. In 2.6.18 it is just nice.
Alexey KuznetsovAlexey Kuznetsov
b21f10ac29e[PATCH] VE: reparent threaded init correctlyIf init is multithreaded (yes, imagine, this happens :-)), its threads are reparented to VE init, so that we get parents in the same thread group. Nothing especially bad happens, only checkpointing cannot restore such sick configuration.
Alexey KuznetsovAlexey Kuznetsov
f8077b489f2[IA64] ptrace returns garbage for NaT bitsAn old bug. Nobody needed those NaT bits, so that it was not noticed.
Alexey KuznetsovAlexey Kuznetsov
d617393e866[CPT][IA64] save/restore NaT valuesThis patch closes two remaining holes in IA64 cpt implementation, both are of no immediate practical value, but neraly impossible to fix after we freeze layout of cpt image structs. 1. Migration between hosts with different layout of struct thread_info, which is possible, if some new bits are added to thread_info in newer kernels. 2. NaT bits are acurately saved and restored. This is req...
Alexey KuznetsovAlexey Kuznetsov
b272c592b48[CPT] namespace semaphore possible deadlockOld bug. To my shame I knew about this, but ignored. The fix is to drop namespace semaphore. We make mntget() on current mnt, so that it will not disappear from under us. It still can be unmounted with MNT_DETACH, in this case we cannot proceed with scanning mnt list and we must not: unmounting something inside VE while checkpointing is an obvious good reason to fail.
Alexey KuznetsovAlexey Kuznetsov
80aab66bb0a[CPT] restore last pidSigh. I hoped it is not necessary. It is. bash goes insane when its children get not monotonic pids. The place where we store saved last pid is unusual. Violating tradition I extend one of cpt image structs. This should be ok: migration to older kernels will be prohibited, migration from old to new ones is OK.
Alexey DobriyanAlexey Dobriyan
147836f04e7[PATCH] seqfile: bash can hang in a loop reading from proc fileOriginal problem: in some circumstances seq_file interface can present infinite proc file to the following script when normally said proc file is finite: while read line; do [do something with $line] done </proc/$FILE bash, to implement such loop does essentially read(0, buf, 128); [find \n] lseek(0, -difference, SEEK_CUR); Consider, proc file prints list of objects each of them cons...
Trond MyklebustTrond Myklebust
869bc940bb0[PATCH] NFS: Fix race in nfs_release_page() NFS: Fix race in nfs_release_page() invalidate_inode_pages2() may find the dirty bit has been set on a page owing to the fact that the page may still be mapped after it was locked. Only after the call to unmap_mapping_range() are we sure that the page can no longer be dirtied. In order to fix this, NFS has hooked the releasepage() method and tries to write the page ...
Alexey DobriyanAlexey Dobriyan
4569feb1480[PATCH] proc: brown paper bag bug in proc's ->setattr ->setattr is called for something innocent like mtime updates, so outright banning of ->setattr on global proc entries was sadistic.Check if ->setattr is called with mask indicating MODE, UID, GID change and check for globalness only in this case. Closes http://bugzilla.openvz.org/show_bug.cgi?id=604 http://bugzilla.openvz.org/show_bug.cgi?id=509
Kirill KorotaevKirill Korotaev
e32c5f4735c[PATCH] ubc: fix compilation with CONFIG_UBC_DEBUG_IO=yDuring rework of UBC /proc compilation with UBC_DEBUG_IO was broken a bit.
Denis V. LunevDenis V. Lunev
0ee47851609[PATCH] nfs: AB-BA deadlock on rpc_sched_lock/queue->lock locksThis patch fixes possible AB-BA deadlock for rpc_sched_lock/queue->lock in rpc_run_child(). Normal sequence is presented in rpc_set_active: - rpc_sched_lock goest first - queue->lock is nested. Bug #82518
Trond MyklebustTrond Myklebust
fe6a0550cb9[PATCH] nfs: fix req refcnt leak preventing umountOriginal Denis Lunev analyses: - nfs_direct_req_alloc creates dreq with dreq->kref->refcount == 2 - on success path the kref_put is called in nfs_direct_read_schedule -> nfs_direct_complete and in nfs_direct_wait - on error path only first put occured The same problem occures on direct_write path Mainstream patch version from Trond Myklebust <Trond.Myklebust@netapp.com>: The current ...
Denis V. LunevDenis V. Lunev
6735578cdf6[PATCH] nfs: oops during LTP over NFS (direct io) Problem reported by Denis Lunev and QA, fix from mainstreamincorrect comparison of "int" and "unsigned int" variables is fixed in nfs_direct_read_schedule and nfs_direct_write_schedule. Bug #81589
Vasily AverinVasily Averin
15ac32b2cb5[PATCH] ext3: orphan list corruption on bad inodes (v2)Changes to previous patch: instead of fixing ext3_unlink() better fix all the paths were bad inode can be found and used, i.e. lookup() and get_parent() After ext3 orphan list check has been added into ext3_destroy_inode() (please see my previous patch) the following situation has been detected: EXT3-fs warning (device sda6): ext3_unlink: Deleting nonexistent file (37901290), 0 Inode 000...
Vitaliy GusevVitaliy Gusev
8590be851bb[PATCH] syslog: fix LTP failure in case of wrong args Fix LTP test failure in syslog test. LTP failure is minor and simple: it calls syslog(2) with wrong arguments and awaiting for an error. But syslog() returns 0 since VE doesn't have real console and console loglevel.Thanks Christian Kaiser2 <CKAISER2@de.ibm.com> for noticing this.
Vasily TarasovVasily Tarasov
7feb87fca21[PATCH] Fix iowait stats in VE02.6.18 OVZ kernels don't account iowait time, this value is always displayed as zero: $ cat /proc/stat | grep cpu cpu 1700 5 1818 11790110 0 60 204 0 cpu0 893 4 1020 5894818 0 56 174 0 cpu1 807 1 797 5895291 0 4 29 0 This happens since calculations usually happen in idle context. Actually there is no good definition of iowait for global VE0 context. And the whole iowait concept is arguable,...
Andrey MirkinAndrey Mirkin
70fc8bc3780[PATCH] CPT: print file name when fail to open it Print file name if we failed to open it. This information will be usefull for resolving problems.Bug #83180
Andrey MirkinAndrey Mirkin
0ef389a3eb3[PATCH] CPT: adjust UBC limits before restoring processesMove UBC limit adjustments in more appropriate place, where it is actually needed.
Andrey MirkinAndrey Mirkin
650723f83a8[PATCH] CPT: fix kernel_thread error code checks Some versions of tar return non-zero error code if it was not possible to write warning message to stderr. So, we need to open /dev/null for it. But during restore we will face another problem - /dev is stored on tmpfs, so we are not able to open /dev/null and we need to create it.Also there is another bug which come to CPT code from mainstream kernel_thread helper. If our function returns an error (e.g. exec failed) it doesn't place correct exit code to edi register before calling do_exit. Bug #83183
Vasily TarasovVasily Tarasov
129e8dc6369[PATCH] Fix debug messages when CONFIG_DEBUG_PREEMPT is used If CONFIG_PREEMPT and CONFIG_DEBUG_PREEMPT are turned on, OpenVZ kernels produce a lot of similar messages:BUG: using smp_processor_id() in preemptible [00000001] code: <process>/<pid> caller is io_schedule+0x22/0x53 Call Trace: ... Two reasons of these messages: 1) we call smp_processor_id() from io_schedule/io_schedule_timeout without preemption disabled. minor, raw_smp_processor_id() should be used. 2) task_struct->cpus_allowed has mask of vcpus instead of pcpus. Therefore debug_smp_proces...
Kirill KorotaevKirill Korotaev
e3e4b209507[PATCH] ext3: lost brelse in ext3_read_inode() One of error path in ext3_read_inode() leaks bh, since brelse is forgoten.Signed-Off-By: Kirill Korotaev <dev@openvz.org>
Vasily AverinVasily Averin
d03e304a834[PATCH] ext3: orphan list corruption on bad inodes This patch fixes ext3 orphan list corruption due to bad inodes created in ext3_read_inode().Trying to catch orhpan list corruption in OpenVZ we found the following debug messages in the logs: May 30 10:39:38 df-rs-l24 kernel: EXT3-fs warning (device sda6): ext3_unlink: Deleting nonexistent file (37901290), 0 Inode 00000101a15b7840: orphan list check failed! 00000773 6f665f00 74616d72 00000573 65725f00 06737270 66000000 616d726f ... Call Trace: [<ffffffff80211ea9>] ext3_destroy_in...
Kirill KorotaevKirill Korotaev
f8c768f25f6[PATCH] sched: boot CPU can have non-zero ID (sparc)I was blindly assuming that boot processor ID is always 0, which was not true on SUN4U machine where boot CPU has ID 1 and 2nd CPU has ID 0. Strange, but it is. So replace 0 with real processor id in the code.