problem with linaro-media-create

Shawn Guo shawn.guo at freescale.com
Thu Mar 10 04:32:29 UTC 2011


On Wed, Mar 09, 2011 at 09:01:33PM +0800, Shawn Guo wrote:
> On Tue, Mar 08, 2011 at 04:59:18PM +0100, Loïc Minier wrote:
> > On Tue, Mar 08, 2011, Shawn Guo wrote:
> > > I'm scanning all 7 cards I have with the script wait_device, each card
> > > with 10 iterations of the test.
> > > 
> > > 1) Transend 4GB SD
> > > 2) SanDisk 2GB SD
> > > 3) KingMax MMC Mobile 2GB
> > > 
> > > All above 3 cards passed the test with giving "Could list partitions
> > > after 0 seconds!"
> > > 
> > > 4) SanDisk 4GB SD
> > > 5) SanDisk 4GB SD
> > > 6) SanDisk 4GB SD
> > > 7) SanDisk 4GB SD
> > > 
> > > All above 4 cards failed with giving "Giving up after 30 seconds
> > > failing to list partitions".  The interesting thing is it does not
> > > always fail from the beginning.  Some cards can even pass the test for
> > > 4~5 iterations, and then start failing.  If it starts failing, it
> > > always fails until I remove the card and replug it.
> > 
> >  This is really valuable data; SanDisk 4 GB SDs seem to be a trend
> >  above!  It would be interesting if you could borrow another USB reader
> >  for some hours to run the tests on the same SD cards, but a different
> >  adapter.
> > 
> Today in office, with another reader and another maverick machine, the
> result seems consistent.  The new thing is those four failing cards
> sometime ends up with "Could list partitions after 2 seconds!", besides
> the two possible results reported before, 0 second and failed to list.
> 
I have to add something here to correct the conclusion about reader's
impact.

I just got the third reader to play with, and interestingly it can get
all of these failing cards give 'Could list partitions after 0 seconds!'.
Let's focus one failing card (#4, the very first one) to see the
difference that readers make here.

Reader #1: SSK
Reader #2: PISEN
Reader #3: another SSK (golden one)

Host machine (office one): Intel(R) Pentium(R) 4 CPU 2.80GHz + Maverick
Server

=== wait_device testing ===
* On reader #1, consistently fails with 30 seconds timeout
* On reader #2, very likely succeeds after 2 seconds (5 out of 6
  iterations), (fails with 30 seconds timeout on the 6th iteration)
* On reader #3, consistently succeeds after 0 seconds

=== l-m-c installing with sleep(5) ===
* On reader #1, fails on '/dev/sdb: No medium found' like below.
[...]
proc umounted
/dev/sdb: No medium found

sfdisk: cannot open /dev/sdb read-write
Traceback (most recent call last):
  File "/usr/bin/linaro-media-create", line 127, in <module>
    args.should_format_rootfs)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/partitions.py", line 71, in setup_partitions
    board_config, media, HEADS, SECTORS, cylinders)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/partitions.py", line 310, in create_partitions
    run_sfdisk_commands(sfdisk_cmd, heads, sectors, cylinders, media.path)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/partitions.py", line 288, in run_sfdisk_commands
    return proc.communicate("%s\n" % commands)
  File "/usr/lib/python2.6/subprocess.py", line 691, in communicate
    return self._communicate(input)
  File "/usr/lib/python2.6/subprocess.py", line 1258, in _communicate
    self.wait()
  File "/usr/lib/pymodules/python2.6/linaro_media_create/cmd_runner.py", line 66, in wait
    raise SubcommandNonZeroReturnValue(self._my_args, returncode)
linaro_media_create.cmd_runner.SubcommandNonZeroReturnValue: Sub process "['sudo', '-E', 'sfdisk', '-D', '-H'

* On reader #2, fails on 'mkimage: Write error on /tmp/tmpViO9KL/boot-disc/uImage: Success' as below.
[...]
This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
162+1 records in
162+1 records out
166624 bytes (167 kB) copied, 0.0407654 s, 4.1 MB/s
mkimage: Write error on /tmp/tmpViO9KL/boot-disc/uImage: Success
Traceback (most recent call last):
  File "/usr/bin/linaro-media-create", line 134, in <module>
    args.device, args.is_live, args.is_lowmem, args.consoles)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/populate_boot.py", line 57, in populate_boot
    boot_disk, boot_script, boot_device_or_file)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/boards.py", line 118, in make_boot_files
    boot_device_or_file)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/boards.py", line 312, in _make_boot_files
    cls.load_addr, uboot_parts_dir, cls.kernel_suffix, boot_dir)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/boards.py", line 389, in make_uImage
    'kernel', load_addr, load_addr, 'Linux', img_data, img)
  File "/usr/lib/pymodules/python2.6/linaro_media_create/boards.py", line 363, in _run_mkimage
    proc.wait()
  File "/usr/lib/pymodules/python2.6/linaro_media_create/cmd_runner.py", line 66, in wait
    raise SubcommandNonZeroReturnValue(self._my_args, returncode)
linaro_media_create.cmd_runner.SubcommandNonZeroReturnValue: Sub process "['sudo', '-E', 'mkimage', '-A', 'arm', '-O', 'linux', '-T', 'kernel', '-C', 'none', '-a', '0x90008000', '-e', '0x90008000', '-n', 'Linux', '-d', '/tmp/tmpViO9KL/binary/boot/vmlinuz-2.6.38-1000-linaro-mx51', '/tmp/tmpViO9KL/boot-disc/uImage']" returned a non-zero value: 1

* On reader #3, succeeds !!!

So I would say the result not only depends on the cards but also
readers.

-- 
Regards,
Shawn




More information about the linaro-dev mailing list