Re: [OOPS] less /proc/net/igmp

5 messages, 3 authors, 2003-08-28 · open the first message on its own page

Re: [OOPS] less /proc/net/igmp

From: YOSHIFUJI Hideaki / 吉藤英明 <hidden>
Date: 2003-08-26 08:32:19

Please CC: netdev.

In article [off-list ref] (at 26 Aug 2003 01:23:06 -0500), Owen Ford [off-list ref] says:
quoted
I could not reproduce this issue.  anyone?
I can confirm. I have it with 2.6.0-test4.

Let me know what useful info I can provide.  The oops is the same.
Okay, everyone. I'll try to fix this.

-- 
Hideaki YOSHIFUJI @ USAGI Project [off-list ref]
GPG FP: 9022 65EB 1ECF 3AD1 0BDF  80D8 4807 F894 E062 0EEA

Re: [OOPS] less /proc/net/igmp

From: YOSHIFUJI Hideaki / 吉藤英明 <hidden>
Date: 2003-08-26 16:54:55

Hello.

In article [off-list ref] (at Tue, 26 Aug 2003 17:32:26 +0900 (JST)), YOSHIFUJI Hideaki / 吉藤英明 [off-list ref] says:
quoted
I can confirm. I have it with 2.6.0-test4.

Let me know what useful info I can provide.  The oops is the same.
Okay, everyone. I'll try to fix this.
Please try this patch.

Index: linux-2.6/net/ipv4/igmp.c
===================================================================
RCS file: /home/cvs/linux-2.5/net/ipv4/igmp.c,v
retrieving revision 1.33
diff -u -r1.33 igmp.c
--- linux-2.6/net/ipv4/igmp.c	21 Aug 2003 17:47:23 -0000	1.33
+++ linux-2.6/net/ipv4/igmp.c	26 Aug 2003 15:18:03 -0000
@@ -2122,6 +2122,7 @@
 			break;
 		}
 		read_unlock(&in_dev->lock);
+		in_dev_put(in_dev);
 	}
 	return im;
 }
@@ -2181,7 +2182,9 @@
 	if (likely(state->in_dev != NULL)) {
 		read_unlock(&state->in_dev->lock);
 		in_dev_put(state->in_dev);
+		state->in_dev = NULL;
 	}
+	state->dev = NULL;
 	read_unlock(&dev_base_lock);
 }
 
@@ -2284,6 +2287,7 @@
 			spin_unlock_bh(&im->lock);
 		}
 		read_unlock_bh(&idev->lock);
+		in_dev_put(idev);
 	}
 	return psf;
 }
@@ -2350,12 +2354,16 @@
 static void igmp_mcf_seq_stop(struct seq_file *seq, void *v)
 {
 	struct igmp_mcf_iter_state *state = igmp_mcf_seq_private(seq);
-	if (likely(state->im != NULL))
+	if (likely(state->im != NULL)) {
 		spin_unlock_bh(&state->im->lock);
+		state->im = NULL;
+	}
 	if (likely(state->idev != NULL)) {
 		read_unlock_bh(&state->idev->lock);
 		in_dev_put(state->idev);
+		state->idev = NULL;
 	}
+	state->dev = NULL;
 	read_unlock(&dev_base_lock);
 }
 
Index: linux-2.6/net/ipv6/mcast.c
===================================================================
RCS file: /home/cvs/linux-2.5/net/ipv6/mcast.c,v
retrieving revision 1.30
diff -u -r1.30 mcast.c
--- linux-2.6/net/ipv6/mcast.c	21 Aug 2003 23:44:54 -0000	1.30
+++ linux-2.6/net/ipv6/mcast.c	26 Aug 2003 15:18:03 -0000
@@ -2078,6 +2078,7 @@
 			break;
 		}
 		read_unlock_bh(&idev->lock);
+		in6_dev_put(idev);
 	}
 	return im;
 }
@@ -2135,7 +2136,9 @@
 	if (likely(state->idev != NULL)) {
 		read_unlock_bh(&state->idev->lock);
 		in6_dev_put(state->idev);
+		state->idev = NULL;
 	}
+	state->dev = NULL;
 	read_unlock(&dev_base_lock);
 }
 
@@ -2225,6 +2228,7 @@
 			spin_unlock_bh(&im->mca_lock);
 		}
 		read_unlock_bh(&idev->lock);
+		in6_dev_put(idev);
 	}
 	return psf;
 }
@@ -2291,12 +2295,16 @@
 static void igmp6_mcf_seq_stop(struct seq_file *seq, void *v)
 {
 	struct igmp6_mcf_iter_state *state = igmp6_mcf_seq_private(seq);
-	if (likely(state->im != NULL))
+	if (likely(state->im != NULL)) {
 		spin_unlock_bh(&state->im->mca_lock);
+		state->im = NULL;
+	}
 	if (likely(state->idev != NULL)) {
 		read_unlock_bh(&state->idev->lock);
 		in6_dev_put(state->idev);
+		state->idev = NULL;
 	}
+	state->dev = NULL;
 	read_unlock(&dev_base_lock);
 }
 

-- 
Hideaki YOSHIFUJI @ USAGI Project <yoshfuji@linux-ipv6.org>
GPG FP: 9022 65EB 1ECF 3AD1 0BDF  80D8 4807 F894 E062 0EEA

Re: [OOPS] less /proc/net/igmp

From: Owen Ford <hidden>
Date: 2003-08-26 20:18:55

On Tue, 2003-08-26 at 11:54, YOSHIFUJI Hideaki / 吉藤英明 wrote:
Hello.

In article [off-list ref] (at Tue, 26 Aug 2003 17:32:26 +0900 (JST)), YOSHIFUJI Hideaki / 吉藤英明 [off-list ref] says:
quoted
quoted
I can confirm. I have it with 2.6.0-test4.

Let me know what useful info I can provide.  The oops is the same.
Okay, everyone. I'll try to fix this.
Please try this patch.
That seems to have done the job nicely.  Thanks.
 
-- 
Owen Ford [off-list ref]

Re: [OOPS] less /proc/net/igmp

From: YOSHIFUJI Hideaki / 吉藤英明 <hidden>
Date: 2003-08-26 23:39:26

In article [off-list ref] (at 26 Aug 2003 15:18:28 -0500), Owen Ford [off-list ref] says:
quoted
quoted
Okay, everyone. I'll try to fix this.
Please try this patch.
That seems to have done the job nicely.  Thanks.
Thanks.  David, please apply.

D: Fixing several refcnt mistakes in seq_file handlers for 
D: /proc/net/{igmp,igmp6,msfilter,msfilter6}.

Thanks in advance.

--yoshfuji

Re: [OOPS] less /proc/net/igmp

From: David S. Miller <hidden>
Date: 2003-08-28 06:40:10

On Wed, 27 Aug 2003 08:39:26 +0900 (JST)
YOSHIFUJI Hideaki / _$B5HF#1QL@ [off-list ref] wrote:
In article [off-list ref] (at 26 Aug 2003 15:18:28 -0500), Owen Ford [off-list ref] says:

Thanks.  David, please apply.

D: Fixing several refcnt mistakes in seq_file handlers for 
D: /proc/net/{igmp,igmp6,msfilter,msfilter6}.
Applied, thank you.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help