12757: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
No edit summary
 
(12 intermediate revisions by 3 users not shown)
Line 3: Line 3:
== Problem ==
== Problem ==


Access points are not shown in network neighbourhood, or take a long time to be shown, or disappear, which prevents use of the network.
Wireless networks are not shown in network neighbourhood, or take a long time to be shown, or disappear, which prevents use of the network.


On XO-4 (8787), the problem does not occur.
On XO-4 (8787), the problem does not occur.


On XO-4 (8686), XO-1.75. and XO-1.5, the problem is more likely as the number of hidden networks increases, becoming especially obvious once there are many more hidden networks than normal networks. A cell phone hosted hidden network carried into a classroom by an adult may induce the symptom.
On XO-4 (8686), XO-1.75, XO-1.5, and XO-1 (8388) the problem is more likely as the number of hidden networks increases, becoming especially obvious once there are many more hidden networks than normal networks. A cell phone hosted hidden network carried into a classroom by an adult may induce the symptom.


On XO-1, the problem is more likely as the number of XO-1 laptops in a room increases, becoming especially obvious at around 10 laptops.
On XO-1 (8388), the problem is very likely as the number of XO-1 laptops in a room increases, becoming obvious at around 10 laptops.

On OLPC OS 11.3.1 and earlier the problem should not occur.


== Solution ==
== Solution ==


Upgrade to [[13.2.1]].
Install one of the fixed kernels below. This solution will be included in any future release of OLPC OS. For earlier releases of OLPC OS, please upgrade.


Or, on unsecure laptops, upgrade just the kernel, Start the Terminal activity and type this:
=== XO-1.5 ===
sudo yum install -y kernel


And then shutdown and reboot.
For OLPC OS 13.2.0 on XO-1.5, start the Terminal activity and type this:

wget http://dev.laptop.org/~quozl/12757/kernel-3.3.8_xo1.5-20140212.1212.olpc.e98f01a.i686.rpm
sudo rpm -U kernel-3.3.8_xo1.5-20140212.1212.olpc.e98f01a.i686.rpm
rm kernel-3.3.8_xo1.5-20140212.1212.olpc.e98f01a.i686.rpm
sudo reboot

=== XO-1 ===

For OLPC OS 13.2.0 or 12.1.0 on XO-1, start the Terminal activity and type this:

wget http://dev.laptop.org/~quozl/12757/kernel-3.3.8_xo1-20140212.0718.olpc.e98f01a.i686.rpm
sudo rpm -U kernel-3.3.8_xo1-20140212.0718.olpc.e98f01a.i686.rpm
rm kernel-3.3.8_xo1-20140212.0718.olpc.e98f01a.i686.rpm
sudo reboot


== Workaround ==
== Workaround ==
Line 43: Line 32:
== Diagnosis ==
== Diagnosis ==


XO-1.5, XO-1.75, and XO-4: hidden network probe responses arrive at the XO during a scan, may cause the loss of scan results for networks that responded later.
XO-1, XO-1.5, XO-1.75, and XO-4: hidden network probe responses arrive at the XO during a scan, may cause the loss of scan results for networks that responded later.


XO-1: mesh probe responses that are sent by other XO-1s, and arrive at an XO-1 during a scan, cause the loss of scan results for access points that responded later. As the number of XO-1 laptops increases relative to the number of access points, the probability of failure increases. With one access point and nine XO-1 laptops the probability of failure can be as high as 90%.
XO-1: mesh probe responses that are sent by other XO-1s, and arrive at an XO-1 during a scan, cause the loss of scan results for access points that responded later. As the number of XO-1 laptops increases relative to the number of access points, the probability of failure increases. With one access point and nine XO-1 laptops the probability of failure can be as high as 90%.


The probability of failure also depends on the collision detection backoff, which may depend on the MAC address of the access point.
The probability of failure also depends on the collision detection backoff, which may depend on the MAC address of the access point.

The Marvell 8388 and 8686 wireless adapters depend on the libertas driver. The Marvell 8787 wireless adapter depends on the mwifiex driver. The problem only occurs in the libertas driver.


== Verification ==
== Verification ==
Line 61: Line 52:
== Credits ==
== Credits ==


* a microdeployment in Haiti,
* microdeployments in [[HaitiOS|Haiti]],
* a deployment in Nepal,
* a deployment in Nepal,
* Terry Gillett of the Village Telco project for trying to figure out which access point models would work, only to find that any access point may not work,
* Terry Gillett of the Village Telco project for trying to figure out which access point models would work, only to find that any access point may not work,
* James Cameron of OLPC, for finding the problem and fixing it,
* James Cameron of OLPC, for finding the problem and fixing it,
* Tim Moody for testing,


== See Also ==
== See Also ==
* [http://lists.laptop.org/pipermail/devel/2014-February/038170.html a call for testing],
* [http://lists.laptop.org/pipermail/devel/2014-February/038170.html a call for testing],
* [http://dev.laptop.org/ticket/12757 ticket #12757],
* [http://dev.laptop.org/ticket/12757 ticket #12757],
* the kernel patch for [http://dev.laptop.org/git/olpc-kernel/commit/?h=x86-3.3&id=e98f01abce522fb70a3852b23b62205244ef69b8 XO-1, XO-1.5], and [http://dev.laptop.org/git/olpc-kernel/commit/?h=arm-3.0-wip&id=d8ce42dfe56537b10161a0b4504b2d1a5cd89553 XO-1.75].
* the kernel patch for [http://dev.laptop.org/git/olpc-kernel/commit/?h=x86-3.3&id=e98f01abce522fb70a3852b23b62205244ef69b8 XO-1, XO-1.5], [http://dev.laptop.org/git/olpc-kernel/commit/?h=arm-3.0-wip&id=d8ce42dfe56537b10161a0b4504b2d1a5cd89553 XO-1.75], and [http://dev.laptop.org/git/olpc-kernel/commit/?h=arm-3.5&id=2b6d1f5871af0c1e6ed05e0441df17a35801799d XO-4],
* the upstreamed kernel patch [https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/net/wireless/libertas/cfg.c?id=95320774fae71d7b22b970ef4267fcc4d1ad23d8 merged by Linus Torvalds for 3.14].

Latest revision as of 23:03, 6 July 2014

OLPC has identified and fixed a problem with the wireless driver on the XO-1, XO-1.5, XO-1.75 and XO-4 laptops.

Problem

Wireless networks are not shown in network neighbourhood, or take a long time to be shown, or disappear, which prevents use of the network.

On XO-4 (8787), the problem does not occur.

On XO-4 (8686), XO-1.75, XO-1.5, and XO-1 (8388) the problem is more likely as the number of hidden networks increases, becoming especially obvious once there are many more hidden networks than normal networks. A cell phone hosted hidden network carried into a classroom by an adult may induce the symptom.

On XO-1 (8388), the problem is very likely as the number of XO-1 laptops in a room increases, becoming obvious at around 10 laptops.

On OLPC OS 11.3.1 and earlier the problem should not occur.

Solution

Upgrade to 13.2.1.

Or, on unsecure laptops, upgrade just the kernel, Start the Terminal activity and type this:

sudo yum install -y kernel

And then shutdown and reboot.

Workaround

If the solution cannot be applied, there are two alternate workarounds:

  • On an affected laptop, repeat the scan using Terminal until the access point appears:
sudo iwlist eth0 scan
  • Disable all hidden networks. Disable mesh on all laptops within 300m. This may be impractical for some deployments, since mesh is often useful.

Diagnosis

XO-1, XO-1.5, XO-1.75, and XO-4: hidden network probe responses arrive at the XO during a scan, may cause the loss of scan results for networks that responded later.

XO-1: mesh probe responses that are sent by other XO-1s, and arrive at an XO-1 during a scan, cause the loss of scan results for access points that responded later. As the number of XO-1 laptops increases relative to the number of access points, the probability of failure increases. With one access point and nine XO-1 laptops the probability of failure can be as high as 90%.

The probability of failure also depends on the collision detection backoff, which may depend on the MAC address of the access point.

The Marvell 8388 and 8686 wireless adapters depend on the libertas driver. The Marvell 8787 wireless adapter depends on the mwifiex driver. The problem only occurs in the libertas driver.

Verification

Enable scan debugging and watch the kernel messages:

sudo su
echo 0x80 > /sys/module/libertas/parameters/libertas_debug
cat /proc/kmsg

Perform a scan. Check if the message scan response: invalid IE fmt is shown. The message only appears if the problem occurs.

Credits

  • microdeployments in Haiti,
  • a deployment in Nepal,
  • Terry Gillett of the Village Telco project for trying to figure out which access point models would work, only to find that any access point may not work,
  • James Cameron of OLPC, for finding the problem and fixing it,

See Also