aboutsummaryrefslogtreecommitdiff
path: root/sys/net
diff options
context:
space:
mode:
authorAndre Oppermann <andre@FreeBSD.org>2013-05-06 16:42:18 +0000
committerAndre Oppermann <andre@FreeBSD.org>2013-05-06 16:42:18 +0000
commitf89d4c3acfe13b50f4fff057f37151a300b00381 (patch)
treebc5a2ce870d8be82a3e6edc11f23760b66ef0c33 /sys/net
parente639aa9e4e4f8cf352b9f05ae5b7539bdd6e2125 (diff)
downloadsrc-f89d4c3acfe13b50f4fff057f37151a300b00381.tar.gz
src-f89d4c3acfe13b50f4fff057f37151a300b00381.zip
Back out r249318, r249320 and r249327 due to a heisenbug most
likely related to a race condition in the ipi_hash_lock with the exact cause currently unknown but under investigation.
Notes
Notes: svn path=/head/; revision=250300
Diffstat (limited to 'sys/net')
-rw-r--r--sys/net/if.c2
-rw-r--r--sys/net/if_llatbl.c2
-rw-r--r--sys/net/if_llatbl.h2
-rw-r--r--sys/net/if_var.h6
4 files changed, 6 insertions, 6 deletions
diff --git a/sys/net/if.c b/sys/net/if.c
index 39dc941a485a..dc5681ee6ce2 100644
--- a/sys/net/if.c
+++ b/sys/net/if.c
@@ -206,7 +206,7 @@ VNET_DEFINE(struct ifindex_entry *, ifindex_table);
* also to stablize it over long-running ioctls, without introducing priority
* inversions and deadlocks.
*/
-struct rwlock_padalign ifnet_rwlock;
+struct rwlock ifnet_rwlock;
struct sx ifnet_sxlock;
/*
diff --git a/sys/net/if_llatbl.c b/sys/net/if_llatbl.c
index f19f6cf3ae17..84ea6c688afd 100644
--- a/sys/net/if_llatbl.c
+++ b/sys/net/if_llatbl.c
@@ -67,7 +67,7 @@ static VNET_DEFINE(SLIST_HEAD(, lltable), lltables);
static void vnet_lltable_init(void);
-struct rwlock_padalign lltable_rwlock;
+struct rwlock lltable_rwlock;
RW_SYSINIT(lltable_rwlock, &lltable_rwlock, "lltable_rwlock");
/*
diff --git a/sys/net/if_llatbl.h b/sys/net/if_llatbl.h
index e09145cce8fc..693ccd521fad 100644
--- a/sys/net/if_llatbl.h
+++ b/sys/net/if_llatbl.h
@@ -43,7 +43,7 @@ struct rt_addrinfo;
struct llentry;
LIST_HEAD(llentries, llentry);
-extern struct rwlock_padalign lltable_rwlock;
+extern struct rwlock lltable_rwlock;
#define LLTABLE_RLOCK() rw_rlock(&lltable_rwlock)
#define LLTABLE_RUNLOCK() rw_runlock(&lltable_rwlock)
#define LLTABLE_WLOCK() rw_wlock(&lltable_rwlock)
diff --git a/sys/net/if_var.h b/sys/net/if_var.h
index 41ac056c3d57..ce8f06a685dd 100644
--- a/sys/net/if_var.h
+++ b/sys/net/if_var.h
@@ -191,9 +191,9 @@ struct ifnet {
void *if_unused[2];
void *if_afdata[AF_MAX];
int if_afdata_initialized;
+ struct rwlock if_afdata_lock;
struct task if_linktask; /* task for link change events */
- struct rwlock_padalign if_afdata_lock;
- struct rwlock_padalign if_addr_lock; /* lock to protect address lists */
+ struct rwlock if_addr_lock; /* lock to protect address lists */
LIST_ENTRY(ifnet) if_clones; /* interfaces of a cloner */
TAILQ_HEAD(, ifg_list) if_groups; /* linked list of groups per if */
@@ -832,7 +832,7 @@ struct ifmultiaddr {
#ifdef _KERNEL
-extern struct rwlock_padalign ifnet_rwlock;
+extern struct rwlock ifnet_rwlock;
extern struct sx ifnet_sxlock;
#define IFNET_LOCK_INIT() do { \