#6046 HIGH Update.: browse is slow after update from ship.2 to update.1 or joyride

Zarro Boogs per Child bugtracker at laptop.org
Wed Jan 30 14:03:28 EST 2008


#6046: browse is slow after update from ship.2 to update.1 or joyride
------------------------------+---------------------------------------------
  Reporter:  erikos           |       Owner:  cscott                           
      Type:  defect           |      Status:  new                              
  Priority:  high             |   Milestone:  Update.1                         
 Component:  upgrade utility  |     Version:  Development build as of this date
Resolution:                   |    Keywords:  rainbow-integration, upgrade     
  Verified:  0                |    Blocking:                                   
 Blockedby:                   |  
------------------------------+---------------------------------------------
Changes (by sayamindu):

  * owner:  erikos => cscott
  * component:  browse-activity => upgrade utility


Comment:

 I have a modified fontconfig binary at
 http://dev.laptop.org/~sayamindu/libfontconfig.so.1.2.0, which prints out
 the time deltas between FcConfig was initialized and the mtime of
  * the conf files of fontconfig
  * the toplevel font directory (/usr/share/fonts)
  * the most recently changed font directories themselves
 (/usr/share/fonts/arabic and so on)
 whenever FcConfigUptoDate() is called.

 Simon installed this file in the affected XO, and he ran a testcase he had
 written which calls FcConfigUptoDate()
 (http://dev.laptop.org/~erikos/fc_test.c), and the output is at
 http://dev.laptop.org/~erikos/fc_test.log
 This indicates that some subdirectory (or directories) of /usr/share/fonts
 has its mtime set in the future (approximately by around three hours),
 which causes FcConfigUptoDate() to return FcFalse. And sure enough, the
 previous comment by Simon confirms that there are directories with
 timestamps set in the future.

 Previously Marco had pointed out that Xulrunner's
 [http://lxr.mozilla.org/seamonkey/source/gfx/thebes/src/gfxFontconfigUtils.cpp
 gfxFontconfigUtils.cpp] calls FcConfigUptoDate() from
 UpdateFontListInternal(), and if it is unsuccessful, the FcConfig is
 reinitialized and the whole thing repeats itself again. So we have
 Xulrunner going through the fonts again and again, causing the slowdown.


 It looks as if the olpc-update utility is somehow setting times of some of
 the directories incorrectly (timezone issues). Reassigning component to
 upgrade-utility.

-- 
Ticket URL: <http://dev.laptop.org/ticket/6046#comment:27>
One Laptop Per Child <http://dev.laptop.org>
OLPC bug tracking system



More information about the Bugs mailing list