diff options
author | David S. Miller <davem@davemloft.net> | 2008-05-12 06:29:11 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-05-12 06:29:11 -0400 |
commit | 4951704b4e23d71b99ac933d8e6993bc6225ac13 (patch) | |
tree | afcc69d6ec071f5d0bb19517635e9b3cf8f668ba /drivers/net/wan/sealevel.c | |
parent | c4492586a618d18e8a5343a04bad0ec606064846 (diff) |
syncppp: Fix crashes.
The syncppp layer wants a mid-level netdev private pointer.
It was using netdev->priv but that only worked by accident,
and thus this scheme was broken when the device private
allocation strategy changed.
Add a proper mid-layer private pointer for uses like this,
update syncppp and all users, and remove the HDLC_PPP broken
tag from drivers/net/wan/Kconfig
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/wan/sealevel.c')
-rw-r--r-- | drivers/net/wan/sealevel.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wan/sealevel.c b/drivers/net/wan/sealevel.c index 11276bf3149f..44a89df1b8bf 100644 --- a/drivers/net/wan/sealevel.c +++ b/drivers/net/wan/sealevel.c | |||
@@ -241,6 +241,7 @@ static inline struct slvl_device *slvl_alloc(int iobase, int irq) | |||
241 | return NULL; | 241 | return NULL; |
242 | 242 | ||
243 | sv = d->priv; | 243 | sv = d->priv; |
244 | d->ml_priv = sv; | ||
244 | sv->if_ptr = &sv->pppdev; | 245 | sv->if_ptr = &sv->pppdev; |
245 | sv->pppdev.dev = d; | 246 | sv->pppdev.dev = d; |
246 | d->base_addr = iobase; | 247 | d->base_addr = iobase; |