public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Linux 2.6.11.5
@ 2005-03-19  7:15 Greg KH
  2005-03-19  7:15 ` Greg KH
  0 siblings, 1 reply; 4+ messages in thread
From: Greg KH @ 2005-03-19  7:15 UTC (permalink / raw)
  To: linux-kernel; +Cc: chrisw, torvalds, akpm

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=unknown-8bit, Size: 1600 bytes --]

As the -stable patch review cycle is now over, I've released the
2.6.11.5 kernel in the normal kernel.org places.  One patch was deemed
incorrect, so it was dropped.  Another one was added, within the review
email thread.  So it seems like the process is working so far, which is
refreshing :)

The diffstat and short summary of the fixes are below.  

I'll also be replying to this message with a copy of the patch between
2.6.11.4 and 2.6.11.5, as it is small enough to do so.

thanks,
 
greg k-h

------
 Makefile                    |    2 +-
 drivers/net/amd8111e.c      |    2 ++
 drivers/net/tun.c           |    2 +-
 drivers/net/via-rhine.c     |    4 +++-
 drivers/net/wan/hd6457x.c   |    2 +-
 kernel/signal.c             |    1 +
 net/ipv4/fib_hash.c         |   12 +++++++++++-
 net/netrom/nr_in.c          |    9 ---------
 net/xfrm/xfrm_state.c       |    2 +-
 sound/pci/ac97/ac97_codec.c |   13 ++++++++-----
 10 files changed, 29 insertions(+), 20 deletions(-)


Summary of changes from v2.6.11.4 to v2.6.11.5
==============================================

<dilinger:debian.org>:
  o Possible AMD8111e free irq issue
  o Possible VIA-Rhine free irq issue

Daniel Drake:
  o Fix stereo mutes on Surround volume control

David S. Miller:
  o [IPSEC]: Fix __xfrm_find_acq_byseq()

Greg Kroah-Hartman:
  o Linux 2.6.11.5

Hugh Dickins:
  o tasklist left locked

Krzysztof Halasa:
  o Fix kernel panic on receive with WAN Hitachi SCA HD6457x

Patrick McHardy:
  o Fix crash while reading /proc/net/route

Ralf Bächle:
  o NetROM locking

Stephen Hemminger:
  o Fix check for underflow


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux 2.6.11.5
  2005-03-19  7:15 Greg KH
@ 2005-03-19  7:15 ` Greg KH
  0 siblings, 0 replies; 4+ messages in thread
From: Greg KH @ 2005-03-19  7:15 UTC (permalink / raw)
  Cc: linux-kernel, chrisw, torvalds, akpm

diff -Nru a/Makefile b/Makefile
--- a/Makefile	2005-03-18 22:35:14 -08:00
+++ b/Makefile	2005-03-18 22:35:14 -08:00
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 6
 SUBLEVEL = 11
-EXTRAVERSION = .4
+EXTRAVERSION = .5
 NAME=Woozy Numbat
 
 # *DOCUMENTATION*
diff -Nru a/drivers/net/amd8111e.c b/drivers/net/amd8111e.c
--- a/drivers/net/amd8111e.c	2005-03-18 22:35:14 -08:00
+++ b/drivers/net/amd8111e.c	2005-03-18 22:35:14 -08:00
@@ -1381,6 +1381,8 @@
 
 	if(amd8111e_restart(dev)){
 		spin_unlock_irq(&lp->lock);
+		if (dev->irq)
+			free_irq(dev->irq, dev);
 		return -ENOMEM;
 	}
 	/* Start ipg timer */
diff -Nru a/drivers/net/tun.c b/drivers/net/tun.c
--- a/drivers/net/tun.c	2005-03-18 22:35:14 -08:00
+++ b/drivers/net/tun.c	2005-03-18 22:35:14 -08:00
@@ -229,7 +229,7 @@
 	size_t len = count;
 
 	if (!(tun->flags & TUN_NO_PI)) {
-		if ((len -= sizeof(pi)) > len)
+		if ((len -= sizeof(pi)) > count)
 			return -EINVAL;
 
 		if(memcpy_fromiovec((void *)&pi, iv, sizeof(pi)))
diff -Nru a/drivers/net/via-rhine.c b/drivers/net/via-rhine.c
--- a/drivers/net/via-rhine.c	2005-03-18 22:35:14 -08:00
+++ b/drivers/net/via-rhine.c	2005-03-18 22:35:14 -08:00
@@ -1197,8 +1197,10 @@
 		       dev->name, rp->pdev->irq);
 
 	rc = alloc_ring(dev);
-	if (rc)
+	if (rc) {
+		free_irq(rp->pdev->irq, dev);
 		return rc;
+	}
 	alloc_rbufs(dev);
 	alloc_tbufs(dev);
 	rhine_chip_reset(dev);
diff -Nru a/drivers/net/wan/hd6457x.c b/drivers/net/wan/hd6457x.c
--- a/drivers/net/wan/hd6457x.c	2005-03-18 22:35:14 -08:00
+++ b/drivers/net/wan/hd6457x.c	2005-03-18 22:35:14 -08:00
@@ -315,7 +315,7 @@
 #endif
 	stats->rx_packets++;
 	stats->rx_bytes += skb->len;
-	skb->dev->last_rx = jiffies;
+	dev->last_rx = jiffies;
 	skb->protocol = hdlc_type_trans(skb, dev);
 	netif_rx(skb);
 }
diff -Nru a/kernel/signal.c b/kernel/signal.c
--- a/kernel/signal.c	2005-03-18 22:35:14 -08:00
+++ b/kernel/signal.c	2005-03-18 22:35:14 -08:00
@@ -1728,6 +1728,7 @@
 			 * with another processor delivering a stop signal,
 			 * then the SIGCONT that wakes us up should clear it.
 			 */
+			read_unlock(&tasklist_lock);
 			return 0;
 		}
 
diff -Nru a/net/ipv4/fib_hash.c b/net/ipv4/fib_hash.c
--- a/net/ipv4/fib_hash.c	2005-03-18 22:35:14 -08:00
+++ b/net/ipv4/fib_hash.c	2005-03-18 22:35:14 -08:00
@@ -919,13 +919,23 @@
 	return fa;
 }
 
+static struct fib_alias *fib_get_idx(struct seq_file *seq, loff_t pos)
+{
+	struct fib_alias *fa = fib_get_first(seq);
+
+	if (fa)
+		while (pos && (fa = fib_get_next(seq)))
+			--pos;
+	return pos ? NULL : fa;
+}
+
 static void *fib_seq_start(struct seq_file *seq, loff_t *pos)
 {
 	void *v = NULL;
 
 	read_lock(&fib_hash_lock);
 	if (ip_fib_main_table)
-		v = *pos ? fib_get_next(seq) : SEQ_START_TOKEN;
+		v = *pos ? fib_get_idx(seq, *pos - 1) : SEQ_START_TOKEN;
 	return v;
 }
 
diff -Nru a/net/netrom/nr_in.c b/net/netrom/nr_in.c
--- a/net/netrom/nr_in.c	2005-03-18 22:35:14 -08:00
+++ b/net/netrom/nr_in.c	2005-03-18 22:35:14 -08:00
@@ -74,7 +74,6 @@
 static int nr_state1_machine(struct sock *sk, struct sk_buff *skb,
 	int frametype)
 {
-	bh_lock_sock(sk);
 	switch (frametype) {
 	case NR_CONNACK: {
 		nr_cb *nr = nr_sk(sk);
@@ -103,8 +102,6 @@
 	default:
 		break;
 	}
-	bh_unlock_sock(sk);
-
 	return 0;
 }
 
@@ -116,7 +113,6 @@
 static int nr_state2_machine(struct sock *sk, struct sk_buff *skb,
 	int frametype)
 {
-	bh_lock_sock(sk);
 	switch (frametype) {
 	case NR_CONNACK | NR_CHOKE_FLAG:
 		nr_disconnect(sk, ECONNRESET);
@@ -132,8 +128,6 @@
 	default:
 		break;
 	}
-	bh_unlock_sock(sk);
-
 	return 0;
 }
 
@@ -154,7 +148,6 @@
 	nr = skb->data[18];
 	ns = skb->data[17];
 
-	bh_lock_sock(sk);
 	switch (frametype) {
 	case NR_CONNREQ:
 		nr_write_internal(sk, NR_CONNACK);
@@ -265,8 +258,6 @@
 	default:
 		break;
 	}
-	bh_unlock_sock(sk);
-
 	return queued;
 }
 
diff -Nru a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c
--- a/net/xfrm/xfrm_state.c	2005-03-18 22:35:14 -08:00
+++ b/net/xfrm/xfrm_state.c	2005-03-18 22:35:14 -08:00
@@ -609,7 +609,7 @@
 
 	for (i = 0; i < XFRM_DST_HSIZE; i++) {
 		list_for_each_entry(x, xfrm_state_bydst+i, bydst) {
-			if (x->km.seq == seq) {
+			if (x->km.seq == seq && x->km.state == XFRM_STATE_ACQ) {
 				xfrm_state_hold(x);
 				return x;
 			}
diff -Nru a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
--- a/sound/pci/ac97/ac97_codec.c	2005-03-18 22:35:14 -08:00
+++ b/sound/pci/ac97/ac97_codec.c	2005-03-18 22:35:14 -08:00
@@ -1185,7 +1185,7 @@
 /*
  * create mute switch(es) for normal stereo controls
  */
-static int snd_ac97_cmute_new(snd_card_t *card, char *name, int reg, ac97_t *ac97)
+static int snd_ac97_cmute_new_stereo(snd_card_t *card, char *name, int reg, int check_stereo, ac97_t *ac97)
 {
 	snd_kcontrol_t *kctl;
 	int err;
@@ -1196,7 +1196,7 @@
 
 	mute_mask = 0x8000;
 	val = snd_ac97_read(ac97, reg);
-	if (ac97->flags & AC97_STEREO_MUTES) {
+	if (check_stereo || (ac97->flags & AC97_STEREO_MUTES)) {
 		/* check whether both mute bits work */
 		val1 = val | 0x8080;
 		snd_ac97_write(ac97, reg, val1);
@@ -1254,7 +1254,7 @@
 /*
  * create a mute-switch and a volume for normal stereo/mono controls
  */
-static int snd_ac97_cmix_new(snd_card_t *card, const char *pfx, int reg, ac97_t *ac97)
+static int snd_ac97_cmix_new_stereo(snd_card_t *card, const char *pfx, int reg, int check_stereo, ac97_t *ac97)
 {
 	int err;
 	char name[44];
@@ -1265,7 +1265,7 @@
 
 	if (snd_ac97_try_bit(ac97, reg, 15)) {
 		sprintf(name, "%s Switch", pfx);
-		if ((err = snd_ac97_cmute_new(card, name, reg, ac97)) < 0)
+		if ((err = snd_ac97_cmute_new_stereo(card, name, reg, check_stereo, ac97)) < 0)
 			return err;
 	}
 	check_volume_resolution(ac97, reg, &lo_max, &hi_max);
@@ -1277,6 +1277,8 @@
 	return 0;
 }
 
+#define snd_ac97_cmix_new(card, pfx, reg, ac97)	snd_ac97_cmix_new_stereo(card, pfx, reg, 0, ac97)
+#define snd_ac97_cmute_new(card, name, reg, ac97)	snd_ac97_cmute_new_stereo(card, name, reg, 0, ac97)
 
 static unsigned int snd_ac97_determine_spdif_rates(ac97_t *ac97);
 
@@ -1327,7 +1329,8 @@
 
 	/* build surround controls */
 	if (snd_ac97_try_volume_mix(ac97, AC97_SURROUND_MASTER)) {
-		if ((err = snd_ac97_cmix_new(card, "Surround Playback", AC97_SURROUND_MASTER, ac97)) < 0)
+		/* Surround Master (0x38) is with stereo mutes */
+		if ((err = snd_ac97_cmix_new_stereo(card, "Surround Playback", AC97_SURROUND_MASTER, 1, ac97)) < 0)
 			return err;
 	}
 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux 2.6.11.5
@ 2005-03-19 22:32 Panagiotis Issaris
  2005-03-20 10:01 ` Greg KH
  0 siblings, 1 reply; 4+ messages in thread
From: Panagiotis Issaris @ 2005-03-19 22:32 UTC (permalink / raw)
  To: linux-kernel; +Cc: gregkh

Hi Greg,

The changelog states that the patches for the AMD8111e and VIA-Rhine
originated from dilinger<at>debian.org although I was the one who they
originated from.

http://article.gmane.org/gmane.linux.kernel/282245
http://article.gmane.org/gmane.linux.kernel/282263

<dilinger:debian.org>:
  o Possible AMD8111e free irq issue
  o Possible VIA-Rhine free irq issue

With friendly regards,
Takis

-- 
OpenPGP key: http://lumumba.luc.ac.be/takis/takis_public_key.txt
fingerprint: 6571 13A3 33D9 3726 F728  AA98 F643 B12E ECF3 E029

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux 2.6.11.5
  2005-03-19 22:32 Linux 2.6.11.5 Panagiotis Issaris
@ 2005-03-20 10:01 ` Greg KH
  0 siblings, 0 replies; 4+ messages in thread
From: Greg KH @ 2005-03-20 10:01 UTC (permalink / raw)
  To: Panagiotis Issaris; +Cc: linux-kernel

On Sat, Mar 19, 2005 at 11:32:09PM +0100, Panagiotis Issaris wrote:
> Hi Greg,
> 
> The changelog states that the patches for the AMD8111e and VIA-Rhine
> originated from dilinger<at>debian.org although I was the one who they
> originated from.
> 
> http://article.gmane.org/gmane.linux.kernel/282245
> http://article.gmane.org/gmane.linux.kernel/282263
> 
> <dilinger:debian.org>:
>   o Possible AMD8111e free irq issue
>   o Possible VIA-Rhine free irq issue

Sorry about that.  Trying to properly reference original authors when
patches are forwarded from different sources is a tough task.

thanks for being understanding about it.

greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-03-20 10:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-19 22:32 Linux 2.6.11.5 Panagiotis Issaris
2005-03-20 10:01 ` Greg KH
  -- strict thread matches above, loose matches on Subject: below --
2005-03-19  7:15 Greg KH
2005-03-19  7:15 ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox