All of lore.kernel.org
 help / color / mirror / Atom feed
From: gregkh@suse.de
To: linux-kernel@vger.kernel.org, stable@kernel.org
Cc: Justin Forbes <jmforbes@linuxtx.org>,
	Zwane Mwaikambo <zwane@arm.linux.org.uk>,
	"Theodore Ts'o" <tytso@mit.edu>,
	Randy Dunlap <rdunlap@xenotime.net>,
	Dave Jones <davej@redhat.com>,
	Chuck Wolber <chuckw@quantumlinux.com>,
	torvalds@osdl.org, akpm@osdl.org, alan@lxorguk.ukuu.org.uk,
	Kirill Korotaev <dev@openvz.org>, Pavel Emelianov <xemul@sw.ru>,
	Dmitry Mishin <dim@openvz.org>,
	Greg Kroah-Hartman <gregkh@suse.de>
Subject: [patch 15/26] wrong error path in dup_fd() leading to oopses in RCU
Date: Tue, 4 Apr 2006 17:00:45 -0700	[thread overview]
Message-ID: <20060405000045.GP27049@kroah.com> (raw)
In-Reply-To: <20060404235927.GA27049@kroah.com>

[-- Attachment #1: fw-wrong-error-path-in-dup_fd-leading-to-oopses.patch --]
[-- Type: text/plain, Size: 1437 bytes --]



From: Kirill Korotaev <dev@openvz.org>

[PATCH] wrong error path in dup_fd() leading to oopses in RCU

Wrong error path in dup_fd() - it should return NULL on error,
not an address of already freed memory :/

Triggered by OpenVZ stress test suite.

What is interesting is that it was causing different oopses in RCU like
below:
Call Trace:
   [<c013492c>] rcu_do_batch+0x2c/0x80
   [<c0134bdd>] rcu_process_callbacks+0x3d/0x70
   [<c0126cf3>] tasklet_action+0x73/0xe0
   [<c01269aa>] __do_softirq+0x10a/0x130
   [<c01058ff>] do_softirq+0x4f/0x60
   =======================
   [<c0113817>] smp_apic_timer_interrupt+0x77/0x110
   [<c0103b54>] apic_timer_interrupt+0x1c/0x24
  Code:  Bad EIP value.
   <0>Kernel panic - not syncing: Fatal exception in interrupt

Signed-Off-By: Pavel Emelianov <xemul@sw.ru>
Signed-Off-By: Dmitry Mishin <dim@openvz.org>
Signed-Off-By: Kirill Korotaev <dev@openvz.org>
Signed-Off-By: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

---
 kernel/fork.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2.6.16.1.orig/kernel/fork.c
+++ linux-2.6.16.1/kernel/fork.c
@@ -720,7 +720,7 @@ out_release:
 	free_fdset (new_fdt->open_fds, new_fdt->max_fdset);
 	free_fd_array(new_fdt->fd, new_fdt->max_fds);
 	kmem_cache_free(files_cachep, newf);
-	goto out;
+	return NULL;
 }
 
 static int copy_files(unsigned long clone_flags, struct task_struct * tsk)

--

  parent reply	other threads:[~2006-04-05  0:06 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20060404235634.696852000@quad.kroah.org>
2006-04-04 23:59 ` [patch 00/26] 2.6.16.2 -stable review gregkh
2006-04-04 23:59   ` [patch 01/26] tlclk: fix handling of device major gregkh
2006-04-04 23:59   ` [patch 02/26] USB: Fix irda-usb use after use gregkh
2006-04-05  0:16     ` David S. Miller
2006-04-06  0:55       ` [stable] " Greg KH
2006-04-05  0:22     ` Randy.Dunlap
2006-04-04 23:59   ` [patch 03/26] sysfs: zero terminate sysfs write buffers (CVE-2006-1055) gregkh
2006-04-05 15:09     ` Sergey Vlasov
2006-04-05 15:21       ` Al Viro
2006-04-05 15:38         ` Jon Smirl
2006-04-05 15:39           ` Al Viro
2006-04-05 15:43             ` Jon Smirl
2006-04-05 15:46               ` Al Viro
2006-04-05 16:18                 ` Jon Smirl
2006-04-05 17:04                   ` Al Viro
2006-04-05 19:58             ` Valdis.Kletnieks
2006-04-05 20:07               ` Greg KH
2006-04-06  1:05               ` Al Viro
2006-04-05 16:34         ` Jon Smirl
2006-04-05 17:02           ` Al Viro
2006-04-05 17:06             ` Jon Smirl
2006-04-05 17:27               ` Al Viro
2006-04-05 15:30       ` Jon Smirl
2006-04-05 18:52         ` [stable] " Greg KH
2006-04-04 23:59   ` [patch 04/26] USB: EHCI full speed ISO bugfixes gregkh
2006-04-04 23:59   ` [patch 05/26] USB: usbcore: usb_set_configuration oops (NULL ptr dereference) gregkh
2006-04-05  0:00   ` [patch 06/26] sbp2: fix spinlock recursion gregkh
2006-04-05  0:00   ` [patch 07/26] powerpc: make ISA floppies work again gregkh
2006-04-05  0:00   ` [patch 08/26] PCMCIA_SPECTRUM must select FW_LOADER gregkh
2006-04-05  0:00   ` [patch 09/26] pcmcia: permit single-character-identifiers gregkh
2006-04-05  0:00   ` [patch 10/26] opti9x - Fix compile without CONFIG_PNP gregkh
2006-04-05  0:00   ` [patch 11/26] IPOB: Move destructor from neigh->ops to neigh_param gregkh
2006-04-05  0:07     ` David S. Miller
2006-04-05  0:12       ` [stable] " Greg KH
2006-04-05  0:14       ` Roland Dreier
2006-04-05  0:17         ` David S. Miller
2006-04-05  0:42           ` Roland Dreier
2006-04-05  0:47             ` David S. Miller
2006-04-05  1:08               ` Roland Dreier
2006-04-05  7:58               ` Michael S. Tsirkin
2006-04-05  0:00   ` [patch 12/26] Mark longhaul driver as broken gregkh
2006-04-05  0:00   ` [patch 13/26] isicom must select FW_LOADER gregkh
2006-04-05  0:00   ` [patch 14/26] {ip, nf}_conntrack_netlink: fix expectation notifier unregistration gregkh
2006-04-05  0:00   ` gregkh [this message]
2006-04-05  0:00   ` [patch 16/26] Fix the p4-clockmod N60 errata workaround gregkh
2006-04-05  0:00   ` [patch 17/26] Fix module refcount leak in __set_personality() gregkh
2006-04-05  0:00   ` [patch 18/26] fib_trie.c node freeing fix gregkh
2006-04-05  0:01   ` [patch 19/26] fbcon: Fix big-endian bogosity in slow_imageblit() gregkh
2006-04-05  0:01   ` [patch 20/26] drivers/net/wireless/ipw2200.c: fix an array overun gregkh
2006-04-05  0:01   ` [patch 21/26] Fix NULL pointer dereference in node_read_numastat() gregkh
2006-04-05  0:01   ` [patch 22/26] AIRO{,_CS} <-> CRYPTO fixes gregkh
2006-04-05  0:01   ` [patch 23/26] Add default entry for CTL Travel Master U553W gregkh
2006-04-05  0:01   ` [patch 24/26] hostap: Fix EAPOL frame encryption gregkh
2006-04-05  0:01   ` [patch 25/26] knfsd: Correct reserved reply space for read requests gregkh
2006-04-05  0:01   ` [patch 26/26] kdump proc vmcore size oveflow fix gregkh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060405000045.GP27049@kroah.com \
    --to=gregkh@suse.de \
    --cc=akpm@osdl.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=chuckw@quantumlinux.com \
    --cc=davej@redhat.com \
    --cc=dev@openvz.org \
    --cc=dim@openvz.org \
    --cc=jmforbes@linuxtx.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rdunlap@xenotime.net \
    --cc=stable@kernel.org \
    --cc=torvalds@osdl.org \
    --cc=tytso@mit.edu \
    --cc=xemul@sw.ru \
    --cc=zwane@arm.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.