OLPC:News: Difference between revisions

From OLPC
Jump to navigation Jump to search
Line 6: Line 6:


=Laptop News 2007-11-17=
=Laptop News 2007-11-17=
1. Nationwide: This week we launched Give One Get One (See http://laptopgiving.org). eBay reports the fastest ramp-up they have ever seen.
1. Nationwide: Last week we launched Give One Get One (See http://laptopgiving.org). eBay reports the fastest ramp-up they have ever seen.


2. Changshu: Richard Smith and Gary Chiang found the root cause of many if not all of our “hardware” suspend/resume problems. They were caused unexpected interrupts being generated by the embedded controller (EC) just as the laptop was going to sleep; the problem can be corrected with a firmware upgrade. We will continue to test to ensure that we can suspend and resume for a million cycles. This development ends a four-month struggle to identify and fix major problems associated with suspend and resume.
2. Changshu: Richard Smith and Gary Chiang found the root cause of many if not all of our “hardware” suspend/resume problems. They were caused unexpected interrupts being generated by the embedded controller (EC) just as the laptop was going to sleep; the problem can be corrected with a firmware upgrade. We will continue to test to ensure that we can suspend and resume for a million cycles. This development ends a four-month struggle to identify and fix major problems associated with suspend and resume.

Revision as of 17:11, 19 November 2007

  This page is monitored by the OLPC team.
   HowTo [ID# 78614]  +/-  

You can subscribe to the OLPC community-news mailing list by visiting the laptop.org mailman site.

Laptop News 2007-11-17

1. Nationwide: Last week we launched Give One Get One (See http://laptopgiving.org). eBay reports the fastest ramp-up they have ever seen.

2. Changshu: Richard Smith and Gary Chiang found the root cause of many if not all of our “hardware” suspend/resume problems. They were caused unexpected interrupts being generated by the embedded controller (EC) just as the laptop was going to sleep; the problem can be corrected with a firmware upgrade. We will continue to test to ensure that we can suspend and resume for a million cycles. This development ends a four-month struggle to identify and fix major problems associated with suspend and resume.

3. Mass Production: We had a glorious end to a near sleepless few weeks for many. On Friday, we made a firmware fix to arguably our most troublesome blocker bug. This suspend/resume bug could have limited our battery life (between charges) when using collaborative applications and mesh (details below). Thanks to all who helped from OLPC, Quanta, Red Hat, AMD, plus many individual contributors; special thanks to Richard Smith, John Watlington, Gary Chaing, and Mary Lou Jepsen.

The Pentagram designed OLPC boxes, both the five-pack and single-pack look great, and are in stark contrast to all the other boxes in the factory.

4. Firmware: Mitch Bradley fixed some bugs in the OFW JFFS2 driver. They impact olpc-update, so we will need a new firmware release—Q2D05—for the update. Mitch also installed the school-server software and did some OFW network update testing. There is an issue with the way that OFW associates with the mesh—currently OFW-based updates only work with infrastructure mode. He sorted out some issues surrounding keyboard tags in manufacturing data and specified a new SK manufacturing data tag to report the SKU number. This will let us identify G1G1 machines in the data we get back from Quanta, so we can generate developer keys for those machines.

5. Schedules: Many thanks to C. Scott Ananian who has led the team to get to build a new in-house build system; as a result, we have a better handle on the process, repeatability, and tracing to source files. Some issues such as security and mesh sharing are taking longer than expected to stabilize, so we are evaluating the impact on the “Update.1” release schedule.

6. Testing: Dafydd Harries and Robert McQueen from Collabra visited OLPC’s Cambridge office for a week of “larger-scale” mesh testing and debugging; lots of good progress was made. David Woodhouse was also in town, working with Marvell, CozyBit, Ricardo Carrano, Marcelo Tosatti, and Michail Bletsas to help debug Ticket 4470 (WLAN hang). We have a much better understanding of this bug (See below) and hope to begin testing a work around soon.

Simon Schampijer spent a number of hours at the local Starbuck's testing various browser versions and settings with T-Mobile service. He has narrowed down some slow response issues to a specific version of our browser and is working with both Mozilla and T-Mobile to get to the root cause.

Alex Latham spent another week in suspend/resume testing as well as latest-build tests and various combinations of OS and kernel to help identify problem areas. Ricardo is working on a test bed to recreate Ticket 1863 (the LazyWDS bug) and help understand association problems with various access points (Linksys mostly). He has also provided data related to the amount of beaconing traffic from XOs.

7. Suspend/resume: As mentioned above, Richard Smith and Gary Chaing solved the mystery of our suspend and resume problems (Ticket 1835) that were bedeviling us in the factory. A well placed SCI just before MAIN_ON goes low (i.e., during the suspend code) hangs the system. The (primary) source of this SCI is from an wake up event generated by traffic from one of the PS2 devices. The wonderful news is that this is a firmware problem with the embedded controller, so our hardware manufactured to date will work correctly once the firmware is upgraded. A test bed of 41 laptops executed over 20,000 cycles without a single 1835 error.

8. Sugar/activities: Simon Schampijer worked with Michael Stone on Rainbow integration for the Browse activity and with Bernie Innocenti on a change in the X11 symbol tables that caused the View Source key to stop working. Bernie has requested to revert this change upstream. Another bug was fixed in the full-screen mode.

Tomeu Vizoso fixed some bugs in the DataStore related to security, USB sticks, and activity custom metadata properties. He also helped to track down some bugs in Browse related to downloads and bugs in the Journal in regard to bundle installation, updating of relative dates in the list view and usability of the search entry.

Reinier Herres has been working on the Calculate activity. It can now parse Unicode, thus its internationalization is somewhat improved. Reinier also wrote a patch to enable “exit from full-screen” in the the Browse activity. He also wrote a patch to display those activities where a friend is participating in the Friends/Group view.

Sayamindu Dasgupta fixed a problem with font caching (Ticket 1525) by backporting some changes from fontconfig 2.4.92 to 2.4.2 (the version being used in the builds). This leads to more robust font caching, and hopefully will resolve the issue of Activities taking up 100% of the CPU due to an incorrectly set real-time clock and the issue of newly added fonts not beng recognized by the system. Sayamindu has also been helping with the final phase of our Pootle deployment: GIT integration has begun and http://dev.laptop.org/translate should be fully open for translation very soon.

Gabriel Burt posted a Pippy library to the Sugar list: the library allows access to the camera from Pippy and can easily be used to create time-lapse photography—thanks, Gabriel! An intuitive extension would be to add a slide-show image viewer to Pippy for viewing these images. There is a initial pass at a “Thanks” program in the Pippy library. Please add any names we have inadvertently overlooked—in addition to demonstrating table use, we are also using it to acknowledge community contributions to the project.

Muriel Godoi release Memorize Version 20, which uses the new tubes interface and has some fixes to collaboration mode. However, he has some problems due to Rainbow issues (Ticket 4872) regarding loading journal objects using objectchooser. Muriel is also making progress on Food Force. He has the main interface coded in pgu, the GUI library for pygame; there is a Sugar skin to widgets in pgu; and the first version of the three basic classes that compose the game model—resource, facility, and indicator—are running.

Bernie has integrated a few more keyboard changes and sent them upstream. There are still a few pending keyboard changes unmerged, e.g., Walter Bender has finished Dari and Uzbek keyboard layouts that need merging. Bernie also released an updated version of olpc-utils with bug fixes and simplifications. He is backporting it to our old builds to enable localization on the stable builds too. He has integrated more of his packages upstream and built them with Koji.

9. Power management: Chris Ball added more features to the power manager, including a way to disable automatic suspend (run “touch /etc/ohm/inhibit-suspend”), a shortening of the automatic timeouts (25 seconds until screen dim; a further 5 seconds until suspend), and disabling these features when plugged into AC (or on an early-model XO without reliable suspend support).

10. Builds: Dennis Gilmore joined OLPC this week to become our “buildmeister.” Dennis has been a mainstay in the Fedora build community and with his joining the team, we hope to make integration easier for community contributors. This week Dennis has been working on automating conversion of .xo to .rpm—useful for when we build our images. He also spent some time teaching SJ Klein and and Mako Hill how to write spec files. And he has been working on getting those pieces we have outside of Fedora back into Fedora; Dennis has branched all the X packages Bernie has had separated for OLPC-2 and generally trying to work out what is where, how, and why.

As noted above, C. Scott Ananian has continued work on build maintenance. He also rewrote olpc-update, which is back in the builds for those of you who’d prefer to update over the network. He also has made a preliminary auto-update/theft-deterrence server implementation.

11. Kernel: Andres Salomon attempted to fix the double mouse-click bug, which led him to attempt to build the xorg evdev driver, which in turn required him to find all the appropriate RPMs—which were not all that easy to find—and required him to set up an FC7+OLPC build machine, which led to him to upgrading the kernel build machine (from FC6) to FC7+OLPC, which has reaffirmed his great dislike of yum (and rpm), caused kernel builds no longer worked, which thus required a bunch of changes to the kernel spec file. He then decided that because some of his sanity was still intact and because he could not get his XO online to actually test the freshly built evdev driver, he would start fixing Libertas (wireless driver) problems. He is now looking for a brick wall to pound his head against.

12. Wireless: Dave Woodhouse spent the week working on the critical wireless bug (Ticket 4470). Although the driver was misbehaving, we have improved its behavior (the driver is now properly serializing commands sent to the 8388's firmware) and we have fairly much eliminated the possibility that the problem is caused by driver misbehavior. Thanks also to Marcelo Tossati and Asish Shukla. Marvell's team in Pune discovered that a wireless scan command would occasionally timeout without a response, triggering a halt in further command processing by the firmware. This seems to explain the behavior noticed by David. There are plenty of issues with the driver—which may well be causing less frequent problems—and the whole of the command queuing needs to be rewritten. But not this week.

13. Presence: Robert McQueen and Dafydd Harries resolved a number of issues this week: they learned how to make RPMs and became a Fedora committer on the relevant packages; they found and fixed a very reproducible bug where telepathy-gabble crashed due to buggy resolver result retry code in loudmouth; they tested the benefits of and then enabled SSL-level DEFLATE compression with appropriate patches to loudmouth and presence service; they tested and pushed fixes for telepathy-gabble and telepathy-salut into Joyride to make activity sharing work when Rainbow is enabled; they perpetrated a nasty Network Manager hack to disable scanning while connected, to try and help avoid the perils of #4470 when testing collaboration stuff (thanks dcbw); they discussed various UI strategies regarding scaling with Eben Eliason, and they set up a cron job to remind them to file these weekly reports :).

Rob also made a wiki page documenting how to set up ejabberd in the way that jabber.laptop.org is configured (See Ejabberd_Configuration). This will allow anyone to create separate (or local servers) for experimentation purposes, collaborating without network access, or just easing load on jabber.laptop.org. Rob is also working on a page to document the server extensions we currently rely on, and our plans to replace them with an OLPC-specific Jabber component which should be more scalable and can be attached to any unmodified Jabber server (See XMPP_Extensions).

Guillaume Desmottes engaged in on-going testing of activity sharing. He tested the Salut fragmentation fix and fixed a Presence Service regression regarding the Share property (Ticket 4660); he reported and started to investigate a Gabble problem with sharing (Ticket 4809); he fixed two sources of Salut crashing (Tickets 4885 and 4903); he changed the Salut debug-flag behavior to make it consistent with Gabble (Ticket 4886); he created a wiki page explaining how to enable Telepathy log files (See Telepathy-debug); he found and fixed a Presence Service bug: it didn't try to reconnect Gabble when the initial connect attempt failed (Ticket 4907); he added an exponential backoff in retrying Gabble connection (Ticket 2522); and he wrote a workaround for D-Bus tubes within Rainbow (Tickets 4947 and 4948).

Morgan Collett fixed in Sugar regarding handling non-OLPC buddies; buddies are tracked by key in Sugar but non-OLPC buddies have no key (Ticket 4656). However, the fix is deemed too invasive for Update.1. Morgan also assisted some activity authors with Tubes stuff, did some Presense Service testing on Joyride; he reverted the HelloMesh activity tutorial to previous method of getting buddies from handles and Worked on Tubes tutorial.

Simon McVittie has also been doing a bit of bug herding and build support. Also he has been doing upstream work on the development version of telepathy-glib. Sjoerd Simons fixed and helped fixing some of the bugs that were discovered during testing of Salut.

More News

Laptop News is archived here and here.

You can subscribe to the OLPC community-news mailing list by visiting the laptop.org mailman site.

Press requests: please send email to press@racepointgroup.com

Milestones

Latest milestones:

Nov. 2007 Mass Production has started.
July. 2007 One Laptop per Child Announces Final Beta Version of its Revolutionary XO Laptop.
Apr. 2007 First pre-B3 machines built.
Mar. 2007 First mesh network deployment.
Feb. 2007 B2-test machines become available and are shipped to developers and the launch countries.
Jan. 2007 Rwanda announced its participation in the project.

All milestones can be found here.


Press

You can subscribe to the OLPC community-news mailing list by visiting the laptop.org mailman site.

  This page is monitored by the OLPC team.
   HowTo [ID# 78614]  +/-  

You can subscribe to the OLPC community-news mailing list by visiting the laptop.org mailman site.

Laptop News 2007-11-17

1. Nationwide: Last week we launched Give One Get One (See http://laptopgiving.org). eBay reports the fastest ramp-up they have ever seen.

2. Changshu: Richard Smith and Gary Chiang found the root cause of many if not all of our “hardware” suspend/resume problems. They were caused unexpected interrupts being generated by the embedded controller (EC) just as the laptop was going to sleep; the problem can be corrected with a firmware upgrade. We will continue to test to ensure that we can suspend and resume for a million cycles. This development ends a four-month struggle to identify and fix major problems associated with suspend and resume.

3. Mass Production: We had a glorious end to a near sleepless few weeks for many. On Friday, we made a firmware fix to arguably our most troublesome blocker bug. This suspend/resume bug could have limited our battery life (between charges) when using collaborative applications and mesh (details below). Thanks to all who helped from OLPC, Quanta, Red Hat, AMD, plus many individual contributors; special thanks to Richard Smith, John Watlington, Gary Chaing, and Mary Lou Jepsen.

The Pentagram designed OLPC boxes, both the five-pack and single-pack look great, and are in stark contrast to all the other boxes in the factory.

4. Firmware: Mitch Bradley fixed some bugs in the OFW JFFS2 driver. They impact olpc-update, so we will need a new firmware release—Q2D05—for the update. Mitch also installed the school-server software and did some OFW network update testing. There is an issue with the way that OFW associates with the mesh—currently OFW-based updates only work with infrastructure mode. He sorted out some issues surrounding keyboard tags in manufacturing data and specified a new SK manufacturing data tag to report the SKU number. This will let us identify G1G1 machines in the data we get back from Quanta, so we can generate developer keys for those machines.

5. Schedules: Many thanks to C. Scott Ananian who has led the team to get to build a new in-house build system; as a result, we have a better handle on the process, repeatability, and tracing to source files. Some issues such as security and mesh sharing are taking longer than expected to stabilize, so we are evaluating the impact on the “Update.1” release schedule.

6. Testing: Dafydd Harries and Robert McQueen from Collabra visited OLPC’s Cambridge office for a week of “larger-scale” mesh testing and debugging; lots of good progress was made. David Woodhouse was also in town, working with Marvell, CozyBit, Ricardo Carrano, Marcelo Tosatti, and Michail Bletsas to help debug Ticket 4470 (WLAN hang). We have a much better understanding of this bug (See below) and hope to begin testing a work around soon.

Simon Schampijer spent a number of hours at the local Starbuck's testing various browser versions and settings with T-Mobile service. He has narrowed down some slow response issues to a specific version of our browser and is working with both Mozilla and T-Mobile to get to the root cause.

Alex Latham spent another week in suspend/resume testing as well as latest-build tests and various combinations of OS and kernel to help identify problem areas. Ricardo is working on a test bed to recreate Ticket 1863 (the LazyWDS bug) and help understand association problems with various access points (Linksys mostly). He has also provided data related to the amount of beaconing traffic from XOs.

7. Suspend/resume: As mentioned above, Richard Smith and Gary Chaing solved the mystery of our suspend and resume problems (Ticket 1835) that were bedeviling us in the factory. A well placed SCI just before MAIN_ON goes low (i.e., during the suspend code) hangs the system. The (primary) source of this SCI is from an wake up event generated by traffic from one of the PS2 devices. The wonderful news is that this is a firmware problem with the embedded controller, so our hardware manufactured to date will work correctly once the firmware is upgraded. A test bed of 41 laptops executed over 20,000 cycles without a single 1835 error.

8. Sugar/activities: Simon Schampijer worked with Michael Stone on Rainbow integration for the Browse activity and with Bernie Innocenti on a change in the X11 symbol tables that caused the View Source key to stop working. Bernie has requested to revert this change upstream. Another bug was fixed in the full-screen mode.

Tomeu Vizoso fixed some bugs in the DataStore related to security, USB sticks, and activity custom metadata properties. He also helped to track down some bugs in Browse related to downloads and bugs in the Journal in regard to bundle installation, updating of relative dates in the list view and usability of the search entry.

Reinier Herres has been working on the Calculate activity. It can now parse Unicode, thus its internationalization is somewhat improved. Reinier also wrote a patch to enable “exit from full-screen” in the the Browse activity. He also wrote a patch to display those activities where a friend is participating in the Friends/Group view.

Sayamindu Dasgupta fixed a problem with font caching (Ticket 1525) by backporting some changes from fontconfig 2.4.92 to 2.4.2 (the version being used in the builds). This leads to more robust font caching, and hopefully will resolve the issue of Activities taking up 100% of the CPU due to an incorrectly set real-time clock and the issue of newly added fonts not beng recognized by the system. Sayamindu has also been helping with the final phase of our Pootle deployment: GIT integration has begun and http://dev.laptop.org/translate should be fully open for translation very soon.

Gabriel Burt posted a Pippy library to the Sugar list: the library allows access to the camera from Pippy and can easily be used to create time-lapse photography—thanks, Gabriel! An intuitive extension would be to add a slide-show image viewer to Pippy for viewing these images. There is a initial pass at a “Thanks” program in the Pippy library. Please add any names we have inadvertently overlooked—in addition to demonstrating table use, we are also using it to acknowledge community contributions to the project.

Muriel Godoi release Memorize Version 20, which uses the new tubes interface and has some fixes to collaboration mode. However, he has some problems due to Rainbow issues (Ticket 4872) regarding loading journal objects using objectchooser. Muriel is also making progress on Food Force. He has the main interface coded in pgu, the GUI library for pygame; there is a Sugar skin to widgets in pgu; and the first version of the three basic classes that compose the game model—resource, facility, and indicator—are running.

Bernie has integrated a few more keyboard changes and sent them upstream. There are still a few pending keyboard changes unmerged, e.g., Walter Bender has finished Dari and Uzbek keyboard layouts that need merging. Bernie also released an updated version of olpc-utils with bug fixes and simplifications. He is backporting it to our old builds to enable localization on the stable builds too. He has integrated more of his packages upstream and built them with Koji.

9. Power management: Chris Ball added more features to the power manager, including a way to disable automatic suspend (run “touch /etc/ohm/inhibit-suspend”), a shortening of the automatic timeouts (25 seconds until screen dim; a further 5 seconds until suspend), and disabling these features when plugged into AC (or on an early-model XO without reliable suspend support).

10. Builds: Dennis Gilmore joined OLPC this week to become our “buildmeister.” Dennis has been a mainstay in the Fedora build community and with his joining the team, we hope to make integration easier for community contributors. This week Dennis has been working on automating conversion of .xo to .rpm—useful for when we build our images. He also spent some time teaching SJ Klein and and Mako Hill how to write spec files. And he has been working on getting those pieces we have outside of Fedora back into Fedora; Dennis has branched all the X packages Bernie has had separated for OLPC-2 and generally trying to work out what is where, how, and why.

As noted above, C. Scott Ananian has continued work on build maintenance. He also rewrote olpc-update, which is back in the builds for those of you who’d prefer to update over the network. He also has made a preliminary auto-update/theft-deterrence server implementation.

11. Kernel: Andres Salomon attempted to fix the double mouse-click bug, which led him to attempt to build the xorg evdev driver, which in turn required him to find all the appropriate RPMs—which were not all that easy to find—and required him to set up an FC7+OLPC build machine, which led to him to upgrading the kernel build machine (from FC6) to FC7+OLPC, which has reaffirmed his great dislike of yum (and rpm), caused kernel builds no longer worked, which thus required a bunch of changes to the kernel spec file. He then decided that because some of his sanity was still intact and because he could not get his XO online to actually test the freshly built evdev driver, he would start fixing Libertas (wireless driver) problems. He is now looking for a brick wall to pound his head against.

12. Wireless: Dave Woodhouse spent the week working on the critical wireless bug (Ticket 4470). Although the driver was misbehaving, we have improved its behavior (the driver is now properly serializing commands sent to the 8388's firmware) and we have fairly much eliminated the possibility that the problem is caused by driver misbehavior. Thanks also to Marcelo Tossati and Asish Shukla. Marvell's team in Pune discovered that a wireless scan command would occasionally timeout without a response, triggering a halt in further command processing by the firmware. This seems to explain the behavior noticed by David. There are plenty of issues with the driver—which may well be causing less frequent problems—and the whole of the command queuing needs to be rewritten. But not this week.

13. Presence: Robert McQueen and Dafydd Harries resolved a number of issues this week: they learned how to make RPMs and became a Fedora committer on the relevant packages; they found and fixed a very reproducible bug where telepathy-gabble crashed due to buggy resolver result retry code in loudmouth; they tested the benefits of and then enabled SSL-level DEFLATE compression with appropriate patches to loudmouth and presence service; they tested and pushed fixes for telepathy-gabble and telepathy-salut into Joyride to make activity sharing work when Rainbow is enabled; they perpetrated a nasty Network Manager hack to disable scanning while connected, to try and help avoid the perils of #4470 when testing collaboration stuff (thanks dcbw); they discussed various UI strategies regarding scaling with Eben Eliason, and they set up a cron job to remind them to file these weekly reports :).

Rob also made a wiki page documenting how to set up ejabberd in the way that jabber.laptop.org is configured (See Ejabberd_Configuration). This will allow anyone to create separate (or local servers) for experimentation purposes, collaborating without network access, or just easing load on jabber.laptop.org. Rob is also working on a page to document the server extensions we currently rely on, and our plans to replace them with an OLPC-specific Jabber component which should be more scalable and can be attached to any unmodified Jabber server (See XMPP_Extensions).

Guillaume Desmottes engaged in on-going testing of activity sharing. He tested the Salut fragmentation fix and fixed a Presence Service regression regarding the Share property (Ticket 4660); he reported and started to investigate a Gabble problem with sharing (Ticket 4809); he fixed two sources of Salut crashing (Tickets 4885 and 4903); he changed the Salut debug-flag behavior to make it consistent with Gabble (Ticket 4886); he created a wiki page explaining how to enable Telepathy log files (See Telepathy-debug); he found and fixed a Presence Service bug: it didn't try to reconnect Gabble when the initial connect attempt failed (Ticket 4907); he added an exponential backoff in retrying Gabble connection (Ticket 2522); and he wrote a workaround for D-Bus tubes within Rainbow (Tickets 4947 and 4948).

Morgan Collett fixed in Sugar regarding handling non-OLPC buddies; buddies are tracked by key in Sugar but non-OLPC buddies have no key (Ticket 4656). However, the fix is deemed too invasive for Update.1. Morgan also assisted some activity authors with Tubes stuff, did some Presense Service testing on Joyride; he reverted the HelloMesh activity tutorial to previous method of getting buddies from handles and Worked on Tubes tutorial.

Simon McVittie has also been doing a bit of bug herding and build support. Also he has been doing upstream work on the development version of telepathy-glib. Sjoerd Simons fixed and helped fixing some of the bugs that were discovered during testing of Salut.

More News

Laptop News is archived here and here.

You can subscribe to the OLPC community-news mailing list by visiting the laptop.org mailman site.

Press requests: please send email to press@racepointgroup.com

Milestones

Latest milestones:

Nov. 2007 Mass Production has started.
July. 2007 One Laptop per Child Announces Final Beta Version of its Revolutionary XO Laptop.
Apr. 2007 First pre-B3 machines built.
Mar. 2007 First mesh network deployment.
Feb. 2007 B2-test machines become available and are shipped to developers and the launch countries.
Jan. 2007 Rwanda announced its participation in the project.

All milestones can be found here.


Press

You can subscribe to the OLPC community-news mailing list by visiting the laptop.org mailman site. Template loop detected: Press More articles can be found here.

Video

Miscellaneous videos of the laptop can be found here.

More articles can be found here.

Video

Miscellaneous videos of the laptop can be found here.