<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">
From: Matt Mackall &lt;mpm@selenic.com&gt;

This fixes a bug where netpoll can dereference a null ifa_list pointer when
not supplied an IP address at module load and the interface is up but no IP
is configured.  

Bonus: unrelated netif_running cleanup

Signed-off by: Jeff Moyer &lt;jmoyer@redhat.com&gt;
Signed-off by: Matt Mackall &lt;mpm@selenic.com&gt;

Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
---

 25-akpm/net/core/netpoll.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN net/core/netpoll.c~netpoll-fix-null-ifa_list-pointer-dereference net/core/netpoll.c
--- 25/net/core/netpoll.c~netpoll-fix-null-ifa_list-pointer-dereference	Wed Nov 10 16:00:35 2004
+++ 25-akpm/net/core/netpoll.c	Wed Nov 10 16:00:35 2004
@@ -565,7 +565,7 @@ int netpoll_setup(struct netpoll *np)
 		goto release;
 	}
 
-	if (!(ndev-&gt;flags &amp; IFF_UP)) {
+	if (!netif_running(ndev)) {
 		unsigned short oflags;
 		unsigned long atmost, atleast;
 
@@ -611,7 +611,7 @@ int netpoll_setup(struct netpoll *np)
 		rcu_read_lock();
 		in_dev = __in_dev_get(ndev);
 
-		if (!in_dev) {
+		if (!in_dev || !in_dev-&gt;ifa_list) {
 			rcu_read_unlock();
 			printk(KERN_ERR "%s: no IP address for %s, aborting\n",
 			       np-&gt;name, np-&gt;dev_name);
_
</pre></body></html>