diff options
author | Pierre Ossman <drzeus@drzeus.cx> | 2008-12-31 13:56:05 -0500 |
---|---|---|
committer | Pierre Ossman <drzeus@drzeus.cx> | 2008-12-31 13:56:05 -0500 |
commit | 418f19ea17a99421b22a64e101e14b6a16bed66d (patch) | |
tree | 7c21fcc368c63f1f9907deac6d16b30bd371792d /arch/um | |
parent | 98444d3dd975653a4a970ecc0dfc30918da92f60 (diff) | |
parent | f6e10b865c3ea56bdaa8c6ecfee313b997900dbb (diff) |
Merge branch 'master' of ../mmc
Diffstat (limited to 'arch/um')
-rw-r--r-- | arch/um/drivers/daemon_kern.c | 2 | ||||
-rw-r--r-- | arch/um/drivers/mcast_kern.c | 2 | ||||
-rw-r--r-- | arch/um/drivers/mconsole_kern.c | 7 | ||||
-rw-r--r-- | arch/um/drivers/net_kern.c | 29 | ||||
-rw-r--r-- | arch/um/drivers/pcap_kern.c | 2 | ||||
-rw-r--r-- | arch/um/drivers/slip_kern.c | 2 | ||||
-rw-r--r-- | arch/um/drivers/slirp_kern.c | 2 | ||||
-rw-r--r-- | arch/um/drivers/vde_kern.c | 2 | ||||
-rw-r--r-- | arch/um/include/asm/system.h | 14 | ||||
-rw-r--r-- | arch/um/os-Linux/drivers/ethertap_kern.c | 2 | ||||
-rw-r--r-- | arch/um/os-Linux/drivers/tuntap_kern.c | 2 |
11 files changed, 32 insertions, 34 deletions
diff --git a/arch/um/drivers/daemon_kern.c b/arch/um/drivers/daemon_kern.c index d53ff52bb404..b4a1522f2157 100644 --- a/arch/um/drivers/daemon_kern.c +++ b/arch/um/drivers/daemon_kern.c | |||
@@ -22,7 +22,7 @@ static void daemon_init(struct net_device *dev, void *data) | |||
22 | struct daemon_data *dpri; | 22 | struct daemon_data *dpri; |
23 | struct daemon_init *init = data; | 23 | struct daemon_init *init = data; |
24 | 24 | ||
25 | pri = dev->priv; | 25 | pri = netdev_priv(dev); |
26 | dpri = (struct daemon_data *) pri->user; | 26 | dpri = (struct daemon_data *) pri->user; |
27 | dpri->sock_type = init->sock_type; | 27 | dpri->sock_type = init->sock_type; |
28 | dpri->ctl_sock = init->ctl_sock; | 28 | dpri->ctl_sock = init->ctl_sock; |
diff --git a/arch/um/drivers/mcast_kern.c b/arch/um/drivers/mcast_kern.c index 8c4378a76d63..ffc6416d5ed7 100644 --- a/arch/um/drivers/mcast_kern.c +++ b/arch/um/drivers/mcast_kern.c | |||
@@ -28,7 +28,7 @@ static void mcast_init(struct net_device *dev, void *data) | |||
28 | struct mcast_data *dpri; | 28 | struct mcast_data *dpri; |
29 | struct mcast_init *init = data; | 29 | struct mcast_init *init = data; |
30 | 30 | ||
31 | pri = dev->priv; | 31 | pri = netdev_priv(dev); |
32 | dpri = (struct mcast_data *) pri->user; | 32 | dpri = (struct mcast_data *) pri->user; |
33 | dpri->addr = init->addr; | 33 | dpri->addr = init->addr; |
34 | dpri->port = init->port; | 34 | dpri->port = init->port; |
diff --git a/arch/um/drivers/mconsole_kern.c b/arch/um/drivers/mconsole_kern.c index 19d579d74d27..e14629c87de4 100644 --- a/arch/um/drivers/mconsole_kern.c +++ b/arch/um/drivers/mconsole_kern.c | |||
@@ -16,6 +16,8 @@ | |||
16 | #include <linux/slab.h> | 16 | #include <linux/slab.h> |
17 | #include <linux/syscalls.h> | 17 | #include <linux/syscalls.h> |
18 | #include <linux/utsname.h> | 18 | #include <linux/utsname.h> |
19 | #include <linux/socket.h> | ||
20 | #include <linux/un.h> | ||
19 | #include <linux/workqueue.h> | 21 | #include <linux/workqueue.h> |
20 | #include <linux/mutex.h> | 22 | #include <linux/mutex.h> |
21 | #include <asm/uaccess.h> | 23 | #include <asm/uaccess.h> |
@@ -159,7 +161,8 @@ void mconsole_proc(struct mc_request *req) | |||
159 | goto out_kill; | 161 | goto out_kill; |
160 | } | 162 | } |
161 | 163 | ||
162 | file = dentry_open(nd.path.dentry, nd.path.mnt, O_RDONLY); | 164 | file = dentry_open(nd.path.dentry, nd.path.mnt, O_RDONLY, |
165 | current_cred()); | ||
163 | if (IS_ERR(file)) { | 166 | if (IS_ERR(file)) { |
164 | mconsole_reply(req, "Failed to open file", 1, 0); | 167 | mconsole_reply(req, "Failed to open file", 1, 0); |
165 | goto out_kill; | 168 | goto out_kill; |
@@ -785,7 +788,7 @@ static int __init mconsole_init(void) | |||
785 | /* long to avoid size mismatch warnings from gcc */ | 788 | /* long to avoid size mismatch warnings from gcc */ |
786 | long sock; | 789 | long sock; |
787 | int err; | 790 | int err; |
788 | char file[256]; | 791 | char file[UNIX_PATH_MAX]; |
789 | 792 | ||
790 | if (umid_file_name("mconsole", file, sizeof(file))) | 793 | if (umid_file_name("mconsole", file, sizeof(file))) |
791 | return -1; | 794 | return -1; |
diff --git a/arch/um/drivers/net_kern.c b/arch/um/drivers/net_kern.c index 5b4ca8d93682..fde510b664d3 100644 --- a/arch/um/drivers/net_kern.c +++ b/arch/um/drivers/net_kern.c | |||
@@ -76,7 +76,7 @@ out: | |||
76 | 76 | ||
77 | static int uml_net_rx(struct net_device *dev) | 77 | static int uml_net_rx(struct net_device *dev) |
78 | { | 78 | { |
79 | struct uml_net_private *lp = dev->priv; | 79 | struct uml_net_private *lp = netdev_priv(dev); |
80 | int pkt_len; | 80 | int pkt_len; |
81 | struct sk_buff *skb; | 81 | struct sk_buff *skb; |
82 | 82 | ||
@@ -119,7 +119,7 @@ static void uml_dev_close(struct work_struct *work) | |||
119 | static irqreturn_t uml_net_interrupt(int irq, void *dev_id) | 119 | static irqreturn_t uml_net_interrupt(int irq, void *dev_id) |
120 | { | 120 | { |
121 | struct net_device *dev = dev_id; | 121 | struct net_device *dev = dev_id; |
122 | struct uml_net_private *lp = dev->priv; | 122 | struct uml_net_private *lp = netdev_priv(dev); |
123 | int err; | 123 | int err; |
124 | 124 | ||
125 | if (!netif_running(dev)) | 125 | if (!netif_running(dev)) |
@@ -150,7 +150,7 @@ out: | |||
150 | 150 | ||
151 | static int uml_net_open(struct net_device *dev) | 151 | static int uml_net_open(struct net_device *dev) |
152 | { | 152 | { |
153 | struct uml_net_private *lp = dev->priv; | 153 | struct uml_net_private *lp = netdev_priv(dev); |
154 | int err; | 154 | int err; |
155 | 155 | ||
156 | if (lp->fd >= 0) { | 156 | if (lp->fd >= 0) { |
@@ -195,7 +195,7 @@ out: | |||
195 | 195 | ||
196 | static int uml_net_close(struct net_device *dev) | 196 | static int uml_net_close(struct net_device *dev) |
197 | { | 197 | { |
198 | struct uml_net_private *lp = dev->priv; | 198 | struct uml_net_private *lp = netdev_priv(dev); |
199 | 199 | ||
200 | netif_stop_queue(dev); | 200 | netif_stop_queue(dev); |
201 | 201 | ||
@@ -213,7 +213,7 @@ static int uml_net_close(struct net_device *dev) | |||
213 | 213 | ||
214 | static int uml_net_start_xmit(struct sk_buff *skb, struct net_device *dev) | 214 | static int uml_net_start_xmit(struct sk_buff *skb, struct net_device *dev) |
215 | { | 215 | { |
216 | struct uml_net_private *lp = dev->priv; | 216 | struct uml_net_private *lp = netdev_priv(dev); |
217 | unsigned long flags; | 217 | unsigned long flags; |
218 | int len; | 218 | int len; |
219 | 219 | ||
@@ -250,7 +250,7 @@ static int uml_net_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
250 | 250 | ||
251 | static struct net_device_stats *uml_net_get_stats(struct net_device *dev) | 251 | static struct net_device_stats *uml_net_get_stats(struct net_device *dev) |
252 | { | 252 | { |
253 | struct uml_net_private *lp = dev->priv; | 253 | struct uml_net_private *lp = netdev_priv(dev); |
254 | return &lp->stats; | 254 | return &lp->stats; |
255 | } | 255 | } |
256 | 256 | ||
@@ -267,7 +267,7 @@ static void uml_net_tx_timeout(struct net_device *dev) | |||
267 | 267 | ||
268 | static int uml_net_set_mac(struct net_device *dev, void *addr) | 268 | static int uml_net_set_mac(struct net_device *dev, void *addr) |
269 | { | 269 | { |
270 | struct uml_net_private *lp = dev->priv; | 270 | struct uml_net_private *lp = netdev_priv(dev); |
271 | struct sockaddr *hwaddr = addr; | 271 | struct sockaddr *hwaddr = addr; |
272 | 272 | ||
273 | spin_lock_irq(&lp->lock); | 273 | spin_lock_irq(&lp->lock); |
@@ -368,7 +368,7 @@ static void net_device_release(struct device *dev) | |||
368 | { | 368 | { |
369 | struct uml_net *device = dev->driver_data; | 369 | struct uml_net *device = dev->driver_data; |
370 | struct net_device *netdev = device->dev; | 370 | struct net_device *netdev = device->dev; |
371 | struct uml_net_private *lp = netdev->priv; | 371 | struct uml_net_private *lp = netdev_priv(netdev); |
372 | 372 | ||
373 | if (lp->remove != NULL) | 373 | if (lp->remove != NULL) |
374 | (*lp->remove)(&lp->user); | 374 | (*lp->remove)(&lp->user); |
@@ -418,14 +418,9 @@ static void eth_configure(int n, void *init, char *mac, | |||
418 | 418 | ||
419 | setup_etheraddr(mac, device->mac, dev->name); | 419 | setup_etheraddr(mac, device->mac, dev->name); |
420 | 420 | ||
421 | printk(KERN_INFO "Netdevice %d ", n); | 421 | printk(KERN_INFO "Netdevice %d (%pM) : ", n, device->mac); |
422 | printk("(%02x:%02x:%02x:%02x:%02x:%02x) ", | ||
423 | device->mac[0], device->mac[1], | ||
424 | device->mac[2], device->mac[3], | ||
425 | device->mac[4], device->mac[5]); | ||
426 | printk(": "); | ||
427 | 422 | ||
428 | lp = dev->priv; | 423 | lp = netdev_priv(dev); |
429 | /* This points to the transport private data. It's still clear, but we | 424 | /* This points to the transport private data. It's still clear, but we |
430 | * must memset it to 0 *now*. Let's help the drivers. */ | 425 | * must memset it to 0 *now*. Let's help the drivers. */ |
431 | memset(lp, 0, size); | 426 | memset(lp, 0, size); |
@@ -735,7 +730,7 @@ static int net_remove(int n, char **error_out) | |||
735 | return -ENODEV; | 730 | return -ENODEV; |
736 | 731 | ||
737 | dev = device->dev; | 732 | dev = device->dev; |
738 | lp = dev->priv; | 733 | lp = netdev_priv(dev); |
739 | if (lp->fd > 0) | 734 | if (lp->fd > 0) |
740 | return -EBUSY; | 735 | return -EBUSY; |
741 | unregister_netdev(dev); | 736 | unregister_netdev(dev); |
@@ -766,7 +761,7 @@ static int uml_inetaddr_event(struct notifier_block *this, unsigned long event, | |||
766 | if (dev->open != uml_net_open) | 761 | if (dev->open != uml_net_open) |
767 | return NOTIFY_DONE; | 762 | return NOTIFY_DONE; |
768 | 763 | ||
769 | lp = dev->priv; | 764 | lp = netdev_priv(dev); |
770 | 765 | ||
771 | proc = NULL; | 766 | proc = NULL; |
772 | switch (event) { | 767 | switch (event) { |
diff --git a/arch/um/drivers/pcap_kern.c b/arch/um/drivers/pcap_kern.c index 3a750dd39be1..2860525f8ff6 100644 --- a/arch/um/drivers/pcap_kern.c +++ b/arch/um/drivers/pcap_kern.c | |||
@@ -21,7 +21,7 @@ void pcap_init(struct net_device *dev, void *data) | |||
21 | struct pcap_data *ppri; | 21 | struct pcap_data *ppri; |
22 | struct pcap_init *init = data; | 22 | struct pcap_init *init = data; |
23 | 23 | ||
24 | pri = dev->priv; | 24 | pri = netdev_priv(dev); |
25 | ppri = (struct pcap_data *) pri->user; | 25 | ppri = (struct pcap_data *) pri->user; |
26 | ppri->host_if = init->host_if; | 26 | ppri->host_if = init->host_if; |
27 | ppri->promisc = init->promisc; | 27 | ppri->promisc = init->promisc; |
diff --git a/arch/um/drivers/slip_kern.c b/arch/um/drivers/slip_kern.c index d19faec7046e..5ec17563142e 100644 --- a/arch/um/drivers/slip_kern.c +++ b/arch/um/drivers/slip_kern.c | |||
@@ -19,7 +19,7 @@ static void slip_init(struct net_device *dev, void *data) | |||
19 | struct slip_data *spri; | 19 | struct slip_data *spri; |
20 | struct slip_init *init = data; | 20 | struct slip_init *init = data; |
21 | 21 | ||
22 | private = dev->priv; | 22 | private = netdev_priv(dev); |
23 | spri = (struct slip_data *) private->user; | 23 | spri = (struct slip_data *) private->user; |
24 | 24 | ||
25 | memset(spri->name, 0, sizeof(spri->name)); | 25 | memset(spri->name, 0, sizeof(spri->name)); |
diff --git a/arch/um/drivers/slirp_kern.c b/arch/um/drivers/slirp_kern.c index d987af277db9..f15a6e7654f3 100644 --- a/arch/um/drivers/slirp_kern.c +++ b/arch/um/drivers/slirp_kern.c | |||
@@ -22,7 +22,7 @@ void slirp_init(struct net_device *dev, void *data) | |||
22 | struct slirp_init *init = data; | 22 | struct slirp_init *init = data; |
23 | int i; | 23 | int i; |
24 | 24 | ||
25 | private = dev->priv; | 25 | private = netdev_priv(dev); |
26 | spri = (struct slirp_data *) private->user; | 26 | spri = (struct slirp_data *) private->user; |
27 | 27 | ||
28 | spri->argw = init->argw; | 28 | spri->argw = init->argw; |
diff --git a/arch/um/drivers/vde_kern.c b/arch/um/drivers/vde_kern.c index add7e722defb..1b852bffdebc 100644 --- a/arch/um/drivers/vde_kern.c +++ b/arch/um/drivers/vde_kern.c | |||
@@ -19,7 +19,7 @@ static void vde_init(struct net_device *dev, void *data) | |||
19 | struct uml_net_private *pri; | 19 | struct uml_net_private *pri; |
20 | struct vde_data *vpri; | 20 | struct vde_data *vpri; |
21 | 21 | ||
22 | pri = dev->priv; | 22 | pri = netdev_priv(dev); |
23 | vpri = (struct vde_data *) pri->user; | 23 | vpri = (struct vde_data *) pri->user; |
24 | 24 | ||
25 | vpri->vde_switch = init->vde_switch; | 25 | vpri->vde_switch = init->vde_switch; |
diff --git a/arch/um/include/asm/system.h b/arch/um/include/asm/system.h index 753346e2cdfd..ae5f94d6317d 100644 --- a/arch/um/include/asm/system.h +++ b/arch/um/include/asm/system.h | |||
@@ -11,21 +11,21 @@ extern int get_signals(void); | |||
11 | extern void block_signals(void); | 11 | extern void block_signals(void); |
12 | extern void unblock_signals(void); | 12 | extern void unblock_signals(void); |
13 | 13 | ||
14 | #define local_save_flags(flags) do { typecheck(unsigned long, flags); \ | 14 | #define raw_local_save_flags(flags) do { typecheck(unsigned long, flags); \ |
15 | (flags) = get_signals(); } while(0) | 15 | (flags) = get_signals(); } while(0) |
16 | #define local_irq_restore(flags) do { typecheck(unsigned long, flags); \ | 16 | #define raw_local_irq_restore(flags) do { typecheck(unsigned long, flags); \ |
17 | set_signals(flags); } while(0) | 17 | set_signals(flags); } while(0) |
18 | 18 | ||
19 | #define local_irq_save(flags) do { local_save_flags(flags); \ | 19 | #define raw_local_irq_save(flags) do { raw_local_save_flags(flags); \ |
20 | local_irq_disable(); } while(0) | 20 | raw_local_irq_disable(); } while(0) |
21 | 21 | ||
22 | #define local_irq_enable() unblock_signals() | 22 | #define raw_local_irq_enable() unblock_signals() |
23 | #define local_irq_disable() block_signals() | 23 | #define raw_local_irq_disable() block_signals() |
24 | 24 | ||
25 | #define irqs_disabled() \ | 25 | #define irqs_disabled() \ |
26 | ({ \ | 26 | ({ \ |
27 | unsigned long flags; \ | 27 | unsigned long flags; \ |
28 | local_save_flags(flags); \ | 28 | raw_local_save_flags(flags); \ |
29 | (flags == 0); \ | 29 | (flags == 0); \ |
30 | }) | 30 | }) |
31 | 31 | ||
diff --git a/arch/um/os-Linux/drivers/ethertap_kern.c b/arch/um/os-Linux/drivers/ethertap_kern.c index 046a131f6104..7f6f9a71aae4 100644 --- a/arch/um/os-Linux/drivers/ethertap_kern.c +++ b/arch/um/os-Linux/drivers/ethertap_kern.c | |||
@@ -22,7 +22,7 @@ static void etap_init(struct net_device *dev, void *data) | |||
22 | struct ethertap_data *epri; | 22 | struct ethertap_data *epri; |
23 | struct ethertap_init *init = data; | 23 | struct ethertap_init *init = data; |
24 | 24 | ||
25 | pri = dev->priv; | 25 | pri = netdev_priv(dev); |
26 | epri = (struct ethertap_data *) pri->user; | 26 | epri = (struct ethertap_data *) pri->user; |
27 | epri->dev_name = init->dev_name; | 27 | epri->dev_name = init->dev_name; |
28 | epri->gate_addr = init->gate_addr; | 28 | epri->gate_addr = init->gate_addr; |
diff --git a/arch/um/os-Linux/drivers/tuntap_kern.c b/arch/um/os-Linux/drivers/tuntap_kern.c index 6b9e33d5de20..4048800e4696 100644 --- a/arch/um/os-Linux/drivers/tuntap_kern.c +++ b/arch/um/os-Linux/drivers/tuntap_kern.c | |||
@@ -21,7 +21,7 @@ static void tuntap_init(struct net_device *dev, void *data) | |||
21 | struct tuntap_data *tpri; | 21 | struct tuntap_data *tpri; |
22 | struct tuntap_init *init = data; | 22 | struct tuntap_init *init = data; |
23 | 23 | ||
24 | pri = dev->priv; | 24 | pri = netdev_priv(dev); |
25 | tpri = (struct tuntap_data *) pri->user; | 25 | tpri = (struct tuntap_data *) pri->user; |
26 | tpri->dev_name = init->dev_name; | 26 | tpri->dev_name = init->dev_name; |
27 | tpri->fixed_config = (init->dev_name != NULL); | 27 | tpri->fixed_config = (init->dev_name != NULL); |