diff options
author | 2005-05-12 20:35:57 +0200 | |
---|---|---|
committer | 2005-05-15 18:06:16 -0400 | |
commit | b5f9d55b64a5c7193f8965c90ba62244ea3180b2 (patch) | |
tree | 8a2cb8b36047af6d4a228a24aa1c045a6ed1545c /fs/ntfs/lcnalloc.c | |
parent | [PATCH] s390: multicast address registration in lcs (diff) | |
download | wireguard-linux-b5f9d55b64a5c7193f8965c90ba62244ea3180b2.tar.xz wireguard-linux-b5f9d55b64a5c7193f8965c90ba62244ea3180b2.zip |
[PATCH] s390: set online race in the lcs driver
[patch 3/10] s390: set online race in the lcs driver.
From: Michael Holzheu <holzheu@de.ibm.com>
There is a race between lcs_stopcard() and lcs_open_device() which
can lead to the error 'lcs: Error in starting channel, rc=-16'.
lcs_open_device() is invoked when 'ifconfig up' is called due to a
hotplug event, which is caused by register_netdev(). In parallel
lcs_stopcard() is executed. Both functions are sending lcs commands.
The second invocation fails with -EBUSY (-16) as return value.
Move invocation of register_netdev() after invocation of lcs_stopcard
to avoid the race.
Signed-off-by: Frank Pavlic <pavlic@de.ibm.com>
Diffstat (limited to 'fs/ntfs/lcnalloc.c')
0 files changed, 0 insertions, 0 deletions