diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-05-12 17:52:13 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-05-12 17:52:13 -0400 |
commit | 983dfa4b6ee556563f7963348e4e2f97fc8a15b8 (patch) | |
tree | 394ca60456f251e0308cf55816407261b1bd39d2 /arch/um/drivers | |
parent | 47782361aca21a32ad4198f1b72f1655a7c9f7e5 (diff) | |
parent | 1987b1b8f9f17a06255877e7917d0bb5b5377774 (diff) |
Merge tag 'for-linus-5.2-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/rw/uml
Pull UML updates from Richard Weinberger:
- Kconfig cleanups
- Fix cpu_all_mask() usage
- Various bug fixes
* tag 'for-linus-5.2-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/rw/uml:
um: irq: don't set the chip for all irqs
um: define set_pte_at() as a static inline function, not a macro
um: remove uses of variable length arrays
um: remove unused variable
uml: fix a boot splat wrt use of cpu_all_mask
um: Do not unlock mutex that is not hold.
hostfs: fix mismatch between link_file definition and declaration
arch: um: drivers: Kconfig: pedantic formatting
arch: um: Kconfig: pedantic indention cleanups
um: Revert to using stack for pt_regs in signal handling
Diffstat (limited to 'arch/um/drivers')
-rw-r--r-- | arch/um/drivers/Kconfig | 352 | ||||
-rw-r--r-- | arch/um/drivers/ubd_kern.c | 4 |
2 files changed, 178 insertions, 178 deletions
diff --git a/arch/um/drivers/Kconfig b/arch/um/drivers/Kconfig index 2b1aaf7755aa..2638e46f50cc 100644 --- a/arch/um/drivers/Kconfig +++ b/arch/um/drivers/Kconfig | |||
@@ -11,58 +11,58 @@ config STDERR_CONSOLE | |||
11 | config SSL | 11 | config SSL |
12 | bool "Virtual serial line" | 12 | bool "Virtual serial line" |
13 | help | 13 | help |
14 | The User-Mode Linux environment allows you to create virtual serial | 14 | The User-Mode Linux environment allows you to create virtual serial |
15 | lines on the UML that are usually made to show up on the host as | 15 | lines on the UML that are usually made to show up on the host as |
16 | ttys or ptys. | 16 | ttys or ptys. |
17 | 17 | ||
18 | See <http://user-mode-linux.sourceforge.net/old/input.html> for more | 18 | See <http://user-mode-linux.sourceforge.net/old/input.html> for more |
19 | information and command line examples of how to use this facility. | 19 | information and command line examples of how to use this facility. |
20 | 20 | ||
21 | Unless you have a specific reason for disabling this, say Y. | 21 | Unless you have a specific reason for disabling this, say Y. |
22 | 22 | ||
23 | config NULL_CHAN | 23 | config NULL_CHAN |
24 | bool "null channel support" | 24 | bool "null channel support" |
25 | help | 25 | help |
26 | This option enables support for attaching UML consoles and serial | 26 | This option enables support for attaching UML consoles and serial |
27 | lines to a device similar to /dev/null. Data written to it disappears | 27 | lines to a device similar to /dev/null. Data written to it disappears |
28 | and there is never any data to be read. | 28 | and there is never any data to be read. |
29 | 29 | ||
30 | config PORT_CHAN | 30 | config PORT_CHAN |
31 | bool "port channel support" | 31 | bool "port channel support" |
32 | help | 32 | help |
33 | This option enables support for attaching UML consoles and serial | 33 | This option enables support for attaching UML consoles and serial |
34 | lines to host portals. They may be accessed with 'telnet <host> | 34 | lines to host portals. They may be accessed with 'telnet <host> |
35 | <port number>'. Any number of consoles and serial lines may be | 35 | <port number>'. Any number of consoles and serial lines may be |
36 | attached to a single portal, although what UML device you get when | 36 | attached to a single portal, although what UML device you get when |
37 | you telnet to that portal will be unpredictable. | 37 | you telnet to that portal will be unpredictable. |
38 | It is safe to say 'Y' here. | 38 | It is safe to say 'Y' here. |
39 | 39 | ||
40 | config PTY_CHAN | 40 | config PTY_CHAN |
41 | bool "pty channel support" | 41 | bool "pty channel support" |
42 | help | 42 | help |
43 | This option enables support for attaching UML consoles and serial | 43 | This option enables support for attaching UML consoles and serial |
44 | lines to host pseudo-terminals. Access to both traditional | 44 | lines to host pseudo-terminals. Access to both traditional |
45 | pseudo-terminals (/dev/pty*) and pts pseudo-terminals are controlled | 45 | pseudo-terminals (/dev/pty*) and pts pseudo-terminals are controlled |
46 | with this option. The assignment of UML devices to host devices | 46 | with this option. The assignment of UML devices to host devices |
47 | will be announced in the kernel message log. | 47 | will be announced in the kernel message log. |
48 | It is safe to say 'Y' here. | 48 | It is safe to say 'Y' here. |
49 | 49 | ||
50 | config TTY_CHAN | 50 | config TTY_CHAN |
51 | bool "tty channel support" | 51 | bool "tty channel support" |
52 | help | 52 | help |
53 | This option enables support for attaching UML consoles and serial | 53 | This option enables support for attaching UML consoles and serial |
54 | lines to host terminals. Access to both virtual consoles | 54 | lines to host terminals. Access to both virtual consoles |
55 | (/dev/tty*) and the slave side of pseudo-terminals (/dev/ttyp* and | 55 | (/dev/tty*) and the slave side of pseudo-terminals (/dev/ttyp* and |
56 | /dev/pts/*) are controlled by this option. | 56 | /dev/pts/*) are controlled by this option. |
57 | It is safe to say 'Y' here. | 57 | It is safe to say 'Y' here. |
58 | 58 | ||
59 | config XTERM_CHAN | 59 | config XTERM_CHAN |
60 | bool "xterm channel support" | 60 | bool "xterm channel support" |
61 | help | 61 | help |
62 | This option enables support for attaching UML consoles and serial | 62 | This option enables support for attaching UML consoles and serial |
63 | lines to xterms. Each UML device so assigned will be brought up in | 63 | lines to xterms. Each UML device so assigned will be brought up in |
64 | its own xterm. | 64 | its own xterm. |
65 | It is safe to say 'Y' here. | 65 | It is safe to say 'Y' here. |
66 | 66 | ||
67 | config NOCONFIG_CHAN | 67 | config NOCONFIG_CHAN |
68 | bool | 68 | bool |
@@ -72,43 +72,43 @@ config CON_ZERO_CHAN | |||
72 | string "Default main console channel initialization" | 72 | string "Default main console channel initialization" |
73 | default "fd:0,fd:1" | 73 | default "fd:0,fd:1" |
74 | help | 74 | help |
75 | This is the string describing the channel to which the main console | 75 | This is the string describing the channel to which the main console |
76 | will be attached by default. This value can be overridden from the | 76 | will be attached by default. This value can be overridden from the |
77 | command line. The default value is "fd:0,fd:1", which attaches the | 77 | command line. The default value is "fd:0,fd:1", which attaches the |
78 | main console to stdin and stdout. | 78 | main console to stdin and stdout. |
79 | It is safe to leave this unchanged. | 79 | It is safe to leave this unchanged. |
80 | 80 | ||
81 | config CON_CHAN | 81 | config CON_CHAN |
82 | string "Default console channel initialization" | 82 | string "Default console channel initialization" |
83 | default "xterm" | 83 | default "xterm" |
84 | help | 84 | help |
85 | This is the string describing the channel to which all consoles | 85 | This is the string describing the channel to which all consoles |
86 | except the main console will be attached by default. This value can | 86 | except the main console will be attached by default. This value can |
87 | be overridden from the command line. The default value is "xterm", | 87 | be overridden from the command line. The default value is "xterm", |
88 | which brings them up in xterms. | 88 | which brings them up in xterms. |
89 | It is safe to leave this unchanged, although you may wish to change | 89 | It is safe to leave this unchanged, although you may wish to change |
90 | this if you expect the UML that you build to be run in environments | 90 | this if you expect the UML that you build to be run in environments |
91 | which don't have X or xterm available. | 91 | which don't have X or xterm available. |
92 | 92 | ||
93 | config SSL_CHAN | 93 | config SSL_CHAN |
94 | string "Default serial line channel initialization" | 94 | string "Default serial line channel initialization" |
95 | default "pty" | 95 | default "pty" |
96 | help | 96 | help |
97 | This is the string describing the channel to which the serial lines | 97 | This is the string describing the channel to which the serial lines |
98 | will be attached by default. This value can be overridden from the | 98 | will be attached by default. This value can be overridden from the |
99 | command line. The default value is "pty", which attaches them to | 99 | command line. The default value is "pty", which attaches them to |
100 | traditional pseudo-terminals. | 100 | traditional pseudo-terminals. |
101 | It is safe to leave this unchanged, although you may wish to change | 101 | It is safe to leave this unchanged, although you may wish to change |
102 | this if you expect the UML that you build to be run in environments | 102 | this if you expect the UML that you build to be run in environments |
103 | which don't have a set of /dev/pty* devices. | 103 | which don't have a set of /dev/pty* devices. |
104 | 104 | ||
105 | config UML_SOUND | 105 | config UML_SOUND |
106 | tristate "Sound support" | 106 | tristate "Sound support" |
107 | help | 107 | help |
108 | This option enables UML sound support. If enabled, it will pull in | 108 | This option enables UML sound support. If enabled, it will pull in |
109 | soundcore and the UML hostaudio relay, which acts as a intermediary | 109 | soundcore and the UML hostaudio relay, which acts as a intermediary |
110 | between the host's dsp and mixer devices and the UML sound system. | 110 | between the host's dsp and mixer devices and the UML sound system. |
111 | It is safe to say 'Y' here. | 111 | It is safe to say 'Y' here. |
112 | 112 | ||
113 | config SOUND | 113 | config SOUND |
114 | tristate | 114 | tristate |
@@ -131,107 +131,107 @@ menu "UML Network Devices" | |||
131 | config UML_NET | 131 | config UML_NET |
132 | bool "Virtual network device" | 132 | bool "Virtual network device" |
133 | help | 133 | help |
134 | While the User-Mode port cannot directly talk to any physical | 134 | While the User-Mode port cannot directly talk to any physical |
135 | hardware devices, this choice and the following transport options | 135 | hardware devices, this choice and the following transport options |
136 | provide one or more virtual network devices through which the UML | 136 | provide one or more virtual network devices through which the UML |
137 | kernels can talk to each other, the host, and with the host's help, | 137 | kernels can talk to each other, the host, and with the host's help, |
138 | machines on the outside world. | 138 | machines on the outside world. |
139 | 139 | ||
140 | For more information, including explanations of the networking and | 140 | For more information, including explanations of the networking and |
141 | sample configurations, see | 141 | sample configurations, see |
142 | <http://user-mode-linux.sourceforge.net/old/networking.html>. | 142 | <http://user-mode-linux.sourceforge.net/old/networking.html>. |
143 | 143 | ||
144 | If you'd like to be able to enable networking in the User-Mode | 144 | If you'd like to be able to enable networking in the User-Mode |
145 | linux environment, say Y; otherwise say N. Note that you must | 145 | linux environment, say Y; otherwise say N. Note that you must |
146 | enable at least one of the following transport options to actually | 146 | enable at least one of the following transport options to actually |
147 | make use of UML networking. | 147 | make use of UML networking. |
148 | 148 | ||
149 | config UML_NET_ETHERTAP | 149 | config UML_NET_ETHERTAP |
150 | bool "Ethertap transport" | 150 | bool "Ethertap transport" |
151 | depends on UML_NET | 151 | depends on UML_NET |
152 | help | 152 | help |
153 | The Ethertap User-Mode Linux network transport allows a single | 153 | The Ethertap User-Mode Linux network transport allows a single |
154 | running UML to exchange packets with its host over one of the | 154 | running UML to exchange packets with its host over one of the |
155 | host's Ethertap devices, such as /dev/tap0. Additional running | 155 | host's Ethertap devices, such as /dev/tap0. Additional running |
156 | UMLs can use additional Ethertap devices, one per running UML. | 156 | UMLs can use additional Ethertap devices, one per running UML. |
157 | While the UML believes it's on a (multi-device, broadcast) virtual | 157 | While the UML believes it's on a (multi-device, broadcast) virtual |
158 | Ethernet network, it's in fact communicating over a point-to-point | 158 | Ethernet network, it's in fact communicating over a point-to-point |
159 | link with the host. | 159 | link with the host. |
160 | 160 | ||
161 | To use this, your host kernel must have support for Ethertap | 161 | To use this, your host kernel must have support for Ethertap |
162 | devices. Also, if your host kernel is 2.4.x, it must have | 162 | devices. Also, if your host kernel is 2.4.x, it must have |
163 | CONFIG_NETLINK_DEV configured as Y or M. | 163 | CONFIG_NETLINK_DEV configured as Y or M. |
164 | 164 | ||
165 | For more information, see | 165 | For more information, see |
166 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site | 166 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site |
167 | has examples of the UML command line to use to enable Ethertap | 167 | has examples of the UML command line to use to enable Ethertap |
168 | networking. | 168 | networking. |
169 | 169 | ||
170 | If you'd like to set up an IP network with the host and/or the | 170 | If you'd like to set up an IP network with the host and/or the |
171 | outside world, say Y to this, the Daemon Transport and/or the | 171 | outside world, say Y to this, the Daemon Transport and/or the |
172 | Slip Transport. You'll need at least one of them, but may choose | 172 | Slip Transport. You'll need at least one of them, but may choose |
173 | more than one without conflict. If you don't need UML networking, | 173 | more than one without conflict. If you don't need UML networking, |
174 | say N. | 174 | say N. |
175 | 175 | ||
176 | config UML_NET_TUNTAP | 176 | config UML_NET_TUNTAP |
177 | bool "TUN/TAP transport" | 177 | bool "TUN/TAP transport" |
178 | depends on UML_NET | 178 | depends on UML_NET |
179 | help | 179 | help |
180 | The UML TUN/TAP network transport allows a UML instance to exchange | 180 | The UML TUN/TAP network transport allows a UML instance to exchange |
181 | packets with the host over a TUN/TAP device. This option will only | 181 | packets with the host over a TUN/TAP device. This option will only |
182 | work with a 2.4 host, unless you've applied the TUN/TAP patch to | 182 | work with a 2.4 host, unless you've applied the TUN/TAP patch to |
183 | your 2.2 host kernel. | 183 | your 2.2 host kernel. |
184 | 184 | ||
185 | To use this transport, your host kernel must have support for TUN/TAP | 185 | To use this transport, your host kernel must have support for TUN/TAP |
186 | devices, either built-in or as a module. | 186 | devices, either built-in or as a module. |
187 | 187 | ||
188 | config UML_NET_SLIP | 188 | config UML_NET_SLIP |
189 | bool "SLIP transport" | 189 | bool "SLIP transport" |
190 | depends on UML_NET | 190 | depends on UML_NET |
191 | help | 191 | help |
192 | The slip User-Mode Linux network transport allows a running UML to | 192 | The slip User-Mode Linux network transport allows a running UML to |
193 | network with its host over a point-to-point link. Unlike Ethertap, | 193 | network with its host over a point-to-point link. Unlike Ethertap, |
194 | which can carry any Ethernet frame (and hence even non-IP packets), | 194 | which can carry any Ethernet frame (and hence even non-IP packets), |
195 | the slip transport can only carry IP packets. | 195 | the slip transport can only carry IP packets. |
196 | 196 | ||
197 | To use this, your host must support slip devices. | 197 | To use this, your host must support slip devices. |
198 | 198 | ||
199 | For more information, see | 199 | For more information, see |
200 | <http://user-mode-linux.sourceforge.net/old/networking.html>. | 200 | <http://user-mode-linux.sourceforge.net/old/networking.html>. |
201 | has examples of the UML command line to use to enable slip | 201 | has examples of the UML command line to use to enable slip |
202 | networking, and details of a few quirks with it. | 202 | networking, and details of a few quirks with it. |
203 | 203 | ||
204 | The Ethertap Transport is preferred over slip because of its | 204 | The Ethertap Transport is preferred over slip because of its |
205 | limitations. If you prefer slip, however, say Y here. Otherwise | 205 | limitations. If you prefer slip, however, say Y here. Otherwise |
206 | choose the Multicast transport (to network multiple UMLs on | 206 | choose the Multicast transport (to network multiple UMLs on |
207 | multiple hosts), Ethertap (to network with the host and the | 207 | multiple hosts), Ethertap (to network with the host and the |
208 | outside world), and/or the Daemon transport (to network multiple | 208 | outside world), and/or the Daemon transport (to network multiple |
209 | UMLs on a single host). You may choose more than one without | 209 | UMLs on a single host). You may choose more than one without |
210 | conflict. If you don't need UML networking, say N. | 210 | conflict. If you don't need UML networking, say N. |
211 | 211 | ||
212 | config UML_NET_DAEMON | 212 | config UML_NET_DAEMON |
213 | bool "Daemon transport" | 213 | bool "Daemon transport" |
214 | depends on UML_NET | 214 | depends on UML_NET |
215 | help | 215 | help |
216 | This User-Mode Linux network transport allows one or more running | 216 | This User-Mode Linux network transport allows one or more running |
217 | UMLs on a single host to communicate with each other, but not to | 217 | UMLs on a single host to communicate with each other, but not to |
218 | the host. | 218 | the host. |
219 | 219 | ||
220 | To use this form of networking, you'll need to run the UML | 220 | To use this form of networking, you'll need to run the UML |
221 | networking daemon on the host. | 221 | networking daemon on the host. |
222 | 222 | ||
223 | For more information, see | 223 | For more information, see |
224 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site | 224 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site |
225 | has examples of the UML command line to use to enable Daemon | 225 | has examples of the UML command line to use to enable Daemon |
226 | networking. | 226 | networking. |
227 | 227 | ||
228 | If you'd like to set up a network with other UMLs on a single host, | 228 | If you'd like to set up a network with other UMLs on a single host, |
229 | say Y. If you need a network between UMLs on multiple physical | 229 | say Y. If you need a network between UMLs on multiple physical |
230 | hosts, choose the Multicast Transport. To set up a network with | 230 | hosts, choose the Multicast Transport. To set up a network with |
231 | the host and/or other IP machines, say Y to the Ethertap or Slip | 231 | the host and/or other IP machines, say Y to the Ethertap or Slip |
232 | transports. You'll need at least one of them, but may choose | 232 | transports. You'll need at least one of them, but may choose |
233 | more than one without conflict. If you don't need UML networking, | 233 | more than one without conflict. If you don't need UML networking, |
234 | say N. | 234 | say N. |
235 | 235 | ||
236 | config UML_NET_VECTOR | 236 | config UML_NET_VECTOR |
237 | bool "Vector I/O high performance network devices" | 237 | bool "Vector I/O high performance network devices" |
@@ -270,26 +270,26 @@ config UML_NET_MCAST | |||
270 | bool "Multicast transport" | 270 | bool "Multicast transport" |
271 | depends on UML_NET | 271 | depends on UML_NET |
272 | help | 272 | help |
273 | This Multicast User-Mode Linux network transport allows multiple | 273 | This Multicast User-Mode Linux network transport allows multiple |
274 | UMLs (even ones running on different host machines!) to talk to | 274 | UMLs (even ones running on different host machines!) to talk to |
275 | each other over a virtual ethernet network. However, it requires | 275 | each other over a virtual ethernet network. However, it requires |
276 | at least one UML with one of the other transports to act as a | 276 | at least one UML with one of the other transports to act as a |
277 | bridge if any of them need to be able to talk to their hosts or any | 277 | bridge if any of them need to be able to talk to their hosts or any |
278 | other IP machines. | 278 | other IP machines. |
279 | 279 | ||
280 | To use this, your host kernel(s) must support IP Multicasting. | 280 | To use this, your host kernel(s) must support IP Multicasting. |
281 | 281 | ||
282 | For more information, see | 282 | For more information, see |
283 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site | 283 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site |
284 | has examples of the UML command line to use to enable Multicast | 284 | has examples of the UML command line to use to enable Multicast |
285 | networking, and notes about the security of this approach. | 285 | networking, and notes about the security of this approach. |
286 | 286 | ||
287 | If you need UMLs on multiple physical hosts to communicate as if | 287 | If you need UMLs on multiple physical hosts to communicate as if |
288 | they shared an Ethernet network, say Y. If you need to communicate | 288 | they shared an Ethernet network, say Y. If you need to communicate |
289 | with other IP machines, make sure you select one of the other | 289 | with other IP machines, make sure you select one of the other |
290 | transports (possibly in addition to Multicast; they're not | 290 | transports (possibly in addition to Multicast; they're not |
291 | exclusive). If you don't need to network UMLs say N to each of | 291 | exclusive). If you don't need to network UMLs say N to each of |
292 | the transports. | 292 | the transports. |
293 | 293 | ||
294 | config UML_NET_PCAP | 294 | config UML_NET_PCAP |
295 | bool "pcap transport" | 295 | bool "pcap transport" |
@@ -300,9 +300,9 @@ config UML_NET_PCAP | |||
300 | UML act as a network monitor for the host. You must have libcap | 300 | UML act as a network monitor for the host. You must have libcap |
301 | installed in order to build the pcap transport into UML. | 301 | installed in order to build the pcap transport into UML. |
302 | 302 | ||
303 | For more information, see | 303 | For more information, see |
304 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site | 304 | <http://user-mode-linux.sourceforge.net/old/networking.html> That site |
305 | has examples of the UML command line to use to enable this option. | 305 | has examples of the UML command line to use to enable this option. |
306 | 306 | ||
307 | If you intend to use UML as a network monitor for the host, say | 307 | If you intend to use UML as a network monitor for the host, say |
308 | Y here. Otherwise, say N. | 308 | Y here. Otherwise, say N. |
@@ -311,27 +311,27 @@ config UML_NET_SLIRP | |||
311 | bool "SLiRP transport" | 311 | bool "SLiRP transport" |
312 | depends on UML_NET | 312 | depends on UML_NET |
313 | help | 313 | help |
314 | The SLiRP User-Mode Linux network transport allows a running UML | 314 | The SLiRP User-Mode Linux network transport allows a running UML |
315 | to network by invoking a program that can handle SLIP encapsulated | 315 | to network by invoking a program that can handle SLIP encapsulated |
316 | packets. This is commonly (but not limited to) the application | 316 | packets. This is commonly (but not limited to) the application |
317 | known as SLiRP, a program that can re-socket IP packets back onto | 317 | known as SLiRP, a program that can re-socket IP packets back onto |
318 | the host on which it is run. Only IP packets are supported, | 318 | he host on which it is run. Only IP packets are supported, |
319 | unlike other network transports that can handle all Ethernet | 319 | unlike other network transports that can handle all Ethernet |
320 | frames. In general, slirp allows the UML the same IP connectivity | 320 | frames. In general, slirp allows the UML the same IP connectivity |
321 | to the outside world that the host user is permitted, and unlike | 321 | to the outside world that the host user is permitted, and unlike |
322 | other transports, SLiRP works without the need of root level | 322 | other transports, SLiRP works without the need of root level |
323 | privleges, setuid binaries, or SLIP devices on the host. This | 323 | privleges, setuid binaries, or SLIP devices on the host. This |
324 | also means not every type of connection is possible, but most | 324 | also means not every type of connection is possible, but most |
325 | situations can be accommodated with carefully crafted slirp | 325 | situations can be accommodated with carefully crafted slirp |
326 | commands that can be passed along as part of the network device's | 326 | commands that can be passed along as part of the network device's |
327 | setup string. The effect of this transport on the UML is similar | 327 | setup string. The effect of this transport on the UML is similar |
328 | that of a host behind a firewall that masquerades all network | 328 | that of a host behind a firewall that masquerades all network |
329 | connections passing through it (but is less secure). | 329 | connections passing through it (but is less secure). |
330 | 330 | ||
331 | To use this you should first have slirp compiled somewhere | 331 | To use this you should first have slirp compiled somewhere |
332 | accessible on the host, and have read its documentation. If you | 332 | accessible on the host, and have read its documentation. If you |
333 | don't need UML networking, say N. | 333 | don't need UML networking, say N. |
334 | 334 | ||
335 | Startup example: "eth0=slirp,FE:FD:01:02:03:04,/usr/local/bin/slirp" | 335 | Startup example: "eth0=slirp,FE:FD:01:02:03:04,/usr/local/bin/slirp" |
336 | 336 | ||
337 | endmenu | 337 | endmenu |
diff --git a/arch/um/drivers/ubd_kern.c b/arch/um/drivers/ubd_kern.c index aca09be2373e..33c1cd6a12ac 100644 --- a/arch/um/drivers/ubd_kern.c +++ b/arch/um/drivers/ubd_kern.c | |||
@@ -276,14 +276,14 @@ static int ubd_setup_common(char *str, int *index_out, char **error_out) | |||
276 | str++; | 276 | str++; |
277 | if(!strcmp(str, "sync")){ | 277 | if(!strcmp(str, "sync")){ |
278 | global_openflags = of_sync(global_openflags); | 278 | global_openflags = of_sync(global_openflags); |
279 | goto out1; | 279 | return err; |
280 | } | 280 | } |
281 | 281 | ||
282 | err = -EINVAL; | 282 | err = -EINVAL; |
283 | major = simple_strtoul(str, &end, 0); | 283 | major = simple_strtoul(str, &end, 0); |
284 | if((*end != '\0') || (end == str)){ | 284 | if((*end != '\0') || (end == str)){ |
285 | *error_out = "Didn't parse major number"; | 285 | *error_out = "Didn't parse major number"; |
286 | goto out1; | 286 | return err; |
287 | } | 287 | } |
288 | 288 | ||
289 | mutex_lock(&ubd_lock); | 289 | mutex_lock(&ubd_lock); |