<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"><style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }div.foxdiv20140819170224734505 { }body { font-size: 10.5pt; font-family: å®‹ä½“; color: rgb(0, 0, 0); line-height: 1.5; }</style></head><body> 
<div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal;">Hi ,</span></div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal;">As to the dvd-rom on freescale arm board,there is something more to talk about:the failure of burning of dvd-rom via sata-sata,it fails at </span><span style="font-family: å®‹ä½“, Tahoma; line-height: normal; font-size: 10.5pt; background-color: window;">SCSI-passthrough for DVD </span><span style="font-family: å®‹ä½“, Tahoma; line-height: normal; font-size: 10.5pt; background-color: window;">drives via ioctl(SG_IO).And the usb-sata connected dvd-rom doesnot meet this problem.</span></div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal; font-size: 10.5pt; background-color: window;">The </span><span style="font-size: 10.5pt; line-height: 1.5; background-color: window;">details about </span><span style="font-size: 10.5pt; font-family: å®‹ä½“, Tahoma; line-height: normal; background-color: window;">SCSI-passthrough for DVD </span><span style="font-size: 10.5pt; font-family: å®‹ä½“, Tahoma; line-height: normal; background-color: window;">drives via ioctl(SG_IO) is from the author of burning tool,whose mail is </span><span style="font-family: å®‹ä½“, Tahoma; line-height: normal; font-size: 10.5pt; background-color: window;">bug-xorriso@gnu.org.</span></div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal; font-size: 10.5pt; background-color: window;">-----------------------------------------------------------------------------------------------------------------------------------------------------</span></div><div><div>I am upstream developer of libburn, which on Linux uses</div><div>ioctl(SG_IO) to perform SCSI transactions with DVD drives.</div><div>Lian jianfei experiences problems with these transactions,</div><div>but only on the Freescale ARM system, not on Linux systems</div><div>based on i386 or amd64 processors.</div><div> </div><div>I would like to help my user to reach success. But my</div><div>knowledge of SCSI passthrough ends at the code part</div><div>where the transaction request enters the Linux elevator.</div><div> </div><div>Needed would be an expert who can find the decisive differences</div><div>between SATA on i386 and SATA on ARM.</div><div>Lian jianfei and me are ready to do experiments and to provide</div><div>further details (of which we did not think now).</div><div> </div><div> </div><div>Symptoms are:</div><div> </div><div>Some SCSI commands get implausible replies and some even get the</div><div>same reply bytes as the previous different command. I have a log</div><div>of the transactions on the user's machine.</div><div>At some point this leads to memory management corruption:</div><div> </div><div>  malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.</div><div> </div><div>Valgrind finds no sins in userspace which would explain this.</div><div>But it crashes too with corruption of its own memory management.</div><div> </div><div>Program growisofs seems to luckily stumble around the pitfalls.</div><div>(It has no SCSI log feature to spy on its dialog with SG_IO.)</div><div>Program cdrecord does not crash but refuses because of too much</div><div>nonsense replies.</div><div> </div><div>The reports of my user indicate that the false replies do not</div><div>always happen at the same occasion.</div><div> </div><div>I get the suspicion that ioctl(SG_IO) occasionally puts the SCSI</div><div>reply data into memory addresses different from those handed</div><div>over as sg_io_hdr_t.dxferp (see <scsi/sg.h>).</div><div> </div><div> </div><div>-------------------------------------------------------------</div><div>Conspicious incidents in the SCSI transaction log:</div><div> </div><div>Already the second SCSI command sent to the drive yields an</div><div>implausible reply (line 9 of the log file):</div><div> </div><div>INQUIRY</div><div>12 00 00 00 24 00</div><div>From drive: 36b</div><div>5b 00 05 32 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>     9495 us     [ 121103 ]</div><div> </div><div>This means that command 12h INQUIRY was sent as the six bytes</div><div>"12 00 00 00 24 00" which are shown in hexadecimal notation.</div><div>The drive replied 36 bytes. The transaction lasted 9495</div><div>microseconds, time elapsed since libburn start is 121103</div><div>microseconds.</div><div> </div><div>The reply is not plausible. According to SPC-3 specs, it</div><div>should give vendor and product name beginning at byte 8.</div><div> </div><div>Some time later, the same command yields a plausible reply:</div><div> </div><div>INQUIRY</div><div>12 00 00 00 24 00</div><div>From drive: 36b</div><div>05 80 05 32 5b 00 00 00 4f 70 74 69 61 72 63 20 42 44 20 52</div><div>57 20 42 44 2d 35 37 35 30 48 20 20 31 2e 30 30</div><div>      470 us     [ 3005485 ]</div><div> </div><div>Note that not only the ASCII letters of the names appeared,</div><div>but also the device is now reported to have removable media,</div><div>and the reply is announced to have more than 4 bytes.</div><div>SPC-3, 6.4.2: "The standard INQUIRY data (see table 81)</div><div>               shall contain at least 36 bytes."</div><div> </div><div>We learn that the drive is an Optiarc BD-5750H Blu-ray burner.</div><div> </div><div>-------------------------</div><div> </div><div>In line 16 of the log file, GET CONFIGURATION is used with</div><div>minimal size in order to learn about the number of available</div><div>reply bytes.</div><div>The reply to this command is plausible and the next GET</div><div>CONFIGURATION shall fetch the list of features and profiles.</div><div>This second command replies an unplausible feature header,</div><div>a piece of a plausible profile list, and lots of zeros.</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 00 08 00</div><div>From drive: 8b</div><div>00 00 01 9c 00 00 00 1b</div><div>     8910 us     [ 130814 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 01 a0 00</div><div>From drive: 416b</div><div>00 16 00 00 00 15 00 00 00 00 03 44 00 43 00 00 00 41 00 00</div><div>00 40 00 00 00 2b 00 00 00 1b 01 00 00 1a 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>... zeros to the end ...</div><div> </div><div>Later in line 93 of the log file, the same gesture yields</div><div>a plausible reply:</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 00 08 00</div><div>From drive: 8b</div><div>00 00 01 9c 00 00 00 1b</div><div>     1020 us     [ 3006688 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 01 a0 00</div><div>From drive: 416b</div><div>00 00 01 9c 00 00 00 1b 00 00 03 44 00 43 00 00 00 41 00 00</div><div>00 40 00 00 00 2b 00 00 00 1b 01 00 00 1a 00 00 00 16 00 00</div><div>00 15 00 00 00 14 00 00 00 13 00 00 00 12 00 00 00 11 00 00</div><div>00 10 00 00 00 0a 00 00 00 09 00 00 00 08 00 00 00 02 00 00</div><div>00 01 0b 08 00 00 00 07 01 00 00 00 00 02 07 04 02 00 00 00</div><div>... more feature bytes ...</div><div>01 0b 00 04 00 00 00 01 01 0d 08 04 1b 01 04 01</div><div> </div><div>Here we learn from feature 0001h that the drive is attached</div><div>to Physical Interface standard 7 = Serial ATAPI.</div><div> </div><div>-------------------------</div><div> </div><div>Now comes the suspicion of wrong memory addressing:</div><div> </div><div>In line 48 of the log file, immediately after the bad output</div><div>from GET CONFIGURATION, the reply is a starting piece of the</div><div>previous reply. (Needless to say that it is unplausible as</div><div>reply to a MODE SENSE for page 2Ah.)</div><div> </div><div>MODE SENSE</div><div>5a 00 2a 00 00 00 00 00 1e 00</div><div>From drive: 30b</div><div>00 16 00 00 00 15 00 00 00 00 03 44 00 43 00 00 00 41 00 00</div><div>00 40 00 00 00 2b 00 00 00 1b</div><div>     7452 us     [ 151247 ]</div><div> </div><div>Strangely, the next request for mode page 01h is fulfilled fine:</div><div> </div><div>MODE SENSE</div><div>5a 00 01 00 00 00 00 00 0c 00</div><div>From drive: 12b</div><div>00 12 41 00 00 00 00 00 01 0a 80 0f</div><div>     8265 us     [ 160402 ]</div><div> </div><div>-----------</div><div> </div><div>The protest "5 24 00 INVALID FIELD IN CDB" with this</div><div>START/STOP UNIT command would be plausible if the drive tray</div><div>was not motorized. But my user reports that it does eject</div><div>sometimes. So either it can only eject and not pull in,</div><div>or we have an unplausible error indication (sense data) here:</div><div> </div><div>START/STOP UNIT</div><div>1b 00 00 00 03 00</div><div>+++ sense data = 70 00 05 00 00 00 00 0A 00 00 00 00 24 00 00 C0 00 03</div><div>+++ key=5  asc=24h  ascq=00h</div><div>    10473 us     [ 198939 ]</div><div> </div><div>At least it shows no indication of mad reply.</div><div>If this is a problem, then probably an unrelated one.</div><div> </div><div>-----------</div><div> </div><div>Then begins a period of plausible replies, until GET CONFIGURATION</div><div>echoes the reply of a previous MODE SENSE command:</div><div> </div><div>MODE SENSE</div><div>5a 00 05 00 00 00 00 00 0a 00</div><div>From drive: 10b</div><div>00 3a 41 00 00 00 00 00 05 32</div><div>      499 us     [ 3019491 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 00 08 00</div><div>From drive: 8b</div><div>00 3a 41 00 00 00 00 00</div><div>     1062 us     [ 3021392 ]</div><div> </div><div>This lures libburn into a madly sized transaction request:</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 41 04 00</div><div>cdrskin: FATAL : Failed to transfer command to drive</div><div>cdrskin: ( Most recent system error: 22  'Invalid argument' )</div><div>--- SG_IO: return= -1 , errno= 22 , host_status= 0x0 , driver_status= 0x0</div><div> </div><div>(The current SVN version of libburn is supposed to detect</div><div>this situation and avoid the mad request.)</div><div> </div><div>Before libburn could react on the bad outcome of ioctl(SG_IO)</div><div>there collapsed the memory management:</div><div> </div><div>malloc.c:3096: sYSMALLOc: Assertion [... see above ...]</div><div> </div><div>As said at the beginning of the mail, valgrind did not find</div><div>write sins in the userspace part of the program run.</div><div>There was one bad read reported (should be fixed now in SVN):</div><div> </div><div>  ==3668== Invalid read of size 1</div><div>  ==3668==    at 0x484C2E0: strip_spaces (drive.c:1205)</div><div>  ...</div><div>  ==3668==  Address 0x4ae221f is 1 bytes before a block of size 152 alloc'd</div><div>  ==3668==    at 0x48324E8: calloc (vg_replace_malloc.c:618)</div><div> </div><div>Later valgrind's memory management collapsed:</div><div> </div><div>  valgrind: m_mallocfree.c:277 (mk_plain_bszB): Assertion 'bszB != 0' failed.</div><div>  valgrind: This is probably caused by your program erroneously writing past the</div><div>  end of a heap block and corrupting heap metadata.  If you fix any</div><div>  invalid writes reported by Memcheck, this assertion failure will</div><div>  probably go away.  Please try that before reporting this as a bug.</div><div> </div><div>The bad write must have been outside the checked code.</div><div>Only the kernel comes to my mind as a suspect.</div><div> </div><div> </div><div>Following are the original log files on which i base my</div><div>preliminary diagnosis.</div><div>----------------------------------------------------------------------------</div><div>Full SCSI transaction log file:</div><div>----------------------------------------------------------------------------</div><div>cdrskin 1.3.6 : limited cdrecord compatibility wrapper for libburn</div><div>cdrskin: NOTE : greying out all drives besides given dev='/dev/sr0'</div><div>cdrskin: scanning for devices ...</div><div> </div><div>TEST UNIT READY</div><div>00 00 00 00 00 00</div><div>     9010 us     [ 109778 ]</div><div> </div><div>INQUIRY</div><div>12 00 00 00 24 00</div><div>From drive: 36b</div><div>5b 00 05 32 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>     9495 us     [ 121103 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 00 08 00</div><div>From drive: 8b</div><div>00 00 01 9c 00 00 00 1b</div><div>     8910 us     [ 130814 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 01 a0 00</div><div>From drive: 416b</div><div>00 16 00 00 00 15 00 00 00 00 03 44 00 43 00 00 00 41 00 00</div><div>00 40 00 00 00 2b 00 00 00 1b 01 00 00 1a 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</div><div>     9282 us     [ 142494 ]</div><div> </div><div>MODE SENSE</div><div>5a 00 2a 00 00 00 00 00 1e 00</div><div>From drive: 30b</div><div>00 16 00 00 00 15 00 00 00 00 03 44 00 43 00 00 00 41 00 00</div><div>00 40 00 00 00 2b 00 00 00 1b</div><div>     7452 us     [ 151247 ]</div><div> </div><div>MODE SENSE</div><div>5a 00 01 00 00 00 00 00 0c 00</div><div>From drive: 12b</div><div>00 12 41 00 00 00 00 00 01 0a 80 0f</div><div>     8265 us     [ 160402 ]</div><div> </div><div>PREVENT/ALLOW MEDIA REMOVAL</div><div>1e 00 00 00 00 00</div><div>     9013 us     [ 169708 ]</div><div>cdrskin: ... scanning for devices done</div><div> </div><div>START/STOP UNIT</div><div>1b 00 00 00 03 00</div><div>+++ sense data = 70 00 05 00 00 00 00 0A 00 00 00 00 24 00 00 C0 00 03</div><div>+++ key=5  asc=24h  ascq=00h</div><div>    10473 us     [ 198939 ]</div><div> </div><div>PREVENT/ALLOW MEDIA REMOVAL</div><div>1e 00 00 00 01 00</div><div>     9640 us     [ 208662 ]</div><div> </div><div>START/STOP UNIT</div><div>1b 01 00 00 01 00</div><div>    10091 us     [ 218808 ]</div><div> </div><div>TEST UNIT READY</div><div>00 00 00 00 00 00</div><div>      299 us     [ 719309 ]</div><div> </div><div>START/STOP UNIT</div><div>1b 00 00 00 01 00</div><div>  2285410 us     [ 3004795 ]</div><div> </div><div>INQUIRY</div><div>12 00 00 00 24 00</div><div>>From drive: 36b</div><div>05 80 05 32 5b 00 00 00 4f 70 74 69 61 72 63 20 42 44 20 52</div><div>57 20 42 44 2d 35 37 35 30 48 20 20 31 2e 30 30</div><div>      470 us     [ 3005485 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 00 08 00</div><div>From drive: 8b</div><div>00 00 01 9c 00 00 00 1b</div><div>     1020 us     [ 3006688 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 01 a0 00</div><div>From drive: 416b</div><div>00 00 01 9c 00 00 00 1b 00 00 03 44 00 43 00 00 00 41 00 00</div><div>00 40 00 00 00 2b 00 00 00 1b 01 00 00 1a 00 00 00 16 00 00</div><div>00 15 00 00 00 14 00 00 00 13 00 00 00 12 00 00 00 11 00 00</div><div>00 10 00 00 00 0a 00 00 00 09 00 00 00 08 00 00 00 02 00 00</div><div>00 01 0b 08 00 00 00 07 01 00 00 00 00 02 07 04 02 00 00 00</div><div>00 03 07 04 29 00 00 00 00 04 08 04 00 00 00 00 00 10 01 08</div><div>00 00 08 00 00 10 01 00 00 1d 00 00 00 1e 08 04 83 00 00 00</div><div>00 1f 05 04 01 00 01 00 00 20 04 0c 00 00 00 00 00 00 08 00</div><div>00 10 01 00 00 21 0c 08 01 00 05 02 10 00 00 00 00 23 08 08</div><div>0b 00 00 00 00 00 00 00 00 24 04 04 80 00 00 00 00 26 00 00</div><div>00 2a 04 04 01 00 00 00 00 2b 01 04 01 00 00 00 00 2c 00 04</div><div>03 00 00 00 00 2d 08 04 46 00 3f 01 00 2e 04 04 6f 00 16 00</div><div>00 2f 08 04 4e 00 00 00 00 33 00 08 00 00 00 01 10 00 00 00</div><div>00 37 00 04 00 07 00 00 00 38 00 04 00 00 00 00 00 3b 00 04</div><div>01 00 00 00 00 40 08 1c 01 00 00 00 00 0c 00 00 00 00 00 00</div><div>00 06 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 41 04 14</div><div>00 00 00 00 00 0c 00 00 00 00 00 00 00 06 00 00 00 00 00 00</div><div>01 00 03 00 01 05 07 04 00 00 00 00 01 06 00 04 00 00 00 01</div><div>01 07 11 04 1f 00 00 00 01 08 03 0c 31 31 30 37 36 30 30 45</div><div>32 31 32 20 01 0a 01 0c 46 44 43 00 53 44 43 00 54 4f 43 00</div><div>01 0b 00 04 00 00 00 01 01 0d 08 04 1b 01 04 01</div><div>     1077 us     [ 3008957 ]</div><div> </div><div>MODE SENSE</div><div>5a 00 2a 00 00 00 00 00 1e 00</div><div>From drive: 30b</div><div>00 3a 41 00 00 00 00 00 2a 32 3f 37 f0 77 2b 20 2b 48 00 00</div><div>11 60 2b 48 00 00 2b 48 2b 48</div><div>      850 us     [ 3010085 ]</div><div> </div><div>MODE SENSE</div><div>5a 00 2a 00 00 00 00 00 3c 00</div><div>From drive: 60b</div><div>00 3a 41 00 00 00 00 00 2a 32 3f 37 f0 77 2b 20 2b 48 00 00</div><div>11 60 2b 48 00 00 2b 48 2b 48 00 01 00 00 00 01 2b 48 00 04</div><div>00 00 20 76 00 00 15 a4 00 00 0c fc 00 01 2b 48 00 00 00 00</div><div>      847 us     [ 3011240 ]</div><div> </div><div>GET PERFORMANCE</div><div>ac 00 00 00 00 00 00 00 00 00 03 00</div><div>From drive: 8b</div><div>00 00 00 44 00 00 00 00</div><div>      852 us     [ 3012224 ]</div><div> </div><div>GET PERFORMANCE</div><div>ac 00 00 00 00 00 00 00 00 04 03 00</div><div>From drive: 72b</div><div>00 00 00 44 00 00 00 00 09 00 00 00 00 23 05 3f 00 00 2b 48</div><div>00 00 2b 48 00 00 00 00 00 23 05 3f 00 00 2b 48 00 00 20 76</div><div>00 00 00 00 00 23 05 3f 00 00 15 a4 00 00 15 a4 00 00 00 00</div><div>00 23 05 3f 00 00 0d 87 00 00 0c fc</div><div>      906 us     [ 3013418 ]</div><div> </div><div>GET PERFORMANCE</div><div>ac 00 00 00 00 00 00 00 00 04 03 00</div><div>From drive: 72b</div><div>00 00 00 44 00 00 00 00 09 00 00 00 00 23 05 3f 00 00 2b 48</div><div>00 00 2b 48 00 00 00 00 00 23 05 3f 00 00 2b 48 00 00 20 76</div><div>00 00 00 00 00 23 05 3f 00 00 15 a4 00 00 15 a4 00 00 00 00</div><div>00 23 05 3f 00 00 0d 87 00 00 0c fc</div><div>      848 us     [ 3014552 ]</div><div> </div><div>GET PERFORMANCE</div><div>ac 10 00 00 00 00 00 00 00 00 00 00</div><div>From drive: 8b</div><div>00 00 00 14 00 00 00 00</div><div>      648 us     [ 3015585 ]</div><div> </div><div>GET PERFORMANCE</div><div>ac 10 00 00 00 00 00 00 00 01 00 00</div><div>From drive: 24b</div><div>00 00 00 14 00 00 00 00 00 00 00 00 00 00 11 db 00 23 05 3f</div><div>00 00 2b 4b</div><div>      608 us     [ 3016590 ]</div><div> </div><div>GET PERFORMANCE</div><div>ac 10 00 00 00 00 00 00 00 01 00 00</div><div>From drive: 24b</div><div>00 00 00 14 00 00 00 00 00 00 00 00 00 00 11 db 00 23 05 3f</div><div>00 00 2b 4b</div><div>      608 us     [ 3017728 ]</div><div> </div><div>MODE SENSE</div><div>5a 00 01 00 00 00 00 00 0c 00</div><div>From drive: 12b</div><div>00 12 41 00 00 00 00 00 01 0a 80 0f</div><div>      459 us     [ 3018605 ]</div><div> </div><div>MODE SENSE</div><div>5a 00 05 00 00 00 00 00 0a 00</div><div>From drive: 10b</div><div>00 3a 41 00 00 00 00 00 05 32</div><div>      499 us     [ 3019491 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 00 08 00</div><div>From drive: 8b</div><div>00 3a 41 00 00 00 00 00</div><div>     1062 us     [ 3021392 ]</div><div> </div><div>GET CONFIGURATION</div><div>46 00 00 00 00 00 00 41 04 00</div><div>cdrskin: FATAL : Failed to transfer command to drive</div><div>cdrskin: ( Most recent system error: 22  'Invalid argument' )</div><div>--- SG_IO: return= -1 , errno= 22 , host_status= 0x0 , driver_status= 0x0</div><div>cdrskin: malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.</div><div> </div><div>UNIX-SIGNAL:  SIGABRT  errno= 22</div><div> </div><div>cdrskin: ABORT : Handling started. Please do not press CTRL+C now.</div><div>cdrskin: ABORT : Trying to ignore any further signals</div><div>cdrskin: ABORT : Abort processing depends on speed and buffer size</div><div>cdrskin: ABORT : Usually it is done with 4x speed after about a MINUTE</div><div>cdrskin: URGE  : But wait at least the normal burning time before any kill -9</div><div>cdrskin: ABORT : Urged drive worker threads to do emergency halt.</div><div> </div><div>----------------------------------------------------------------------------</div><div>Full valgrind log of a similar run:</div><div>----------------------------------------------------------------------------</div><div>==3668== Memcheck, a memory error detector</div><div>==3668== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.</div><div>==3668== Using Valgrind-3.9.0 and LibVEX; rerun with -h for copyright info</div><div>==3668== Command: cdrskin dev=/dev/sr0 -msinfo</div><div>==3668==</div><div>cdrskin 1.3.6 : limited cdrecord compatibility wrapper for libburn</div><div>cdrskin: NOTE : greying out all drives besides given dev='/dev/sr0'</div><div>cdrskin: scanning for devices ...</div><div>==3668== Thread 2:</div><div>==3668== Invalid read of size 1</div><div>==3668==    at 0x484C2E0: strip_spaces (drive.c:1205)</div><div>==3668==    by 0x48517EB: burn_drive_scan_sync (drive.c:1239)</div><div>==3668==    by 0x48478A7: scan_worker_func (async.c:230)</div><div>==3668==    by 0x4912B0F: start_thread (in /lib/libpthread-2.13.so)</div><div>==3668==  Address 0x4ae221f is 1 bytes before a block of size 152 alloc'd</div><div>==3668==    at 0x48324E8: calloc (vg_replace_malloc.c:618)</div><div>==3668==    by 0x48514FB: burn_drive_scan_sync (drive.c:1413)</div><div>==3668==    by 0x48478A7: scan_worker_func (async.c:230)</div><div>==3668==    by 0x4912B0F: start_thread (in /lib/libpthread-2.13.so)</div><div>==3668==</div><div>cdrskin: ... scanning for devices done</div><div>cdrskin: FATAL : Failed to transfer command to drive</div><div>cdrskin: ( Most recent system error: 22  'Invalid argument' )</div><div> </div><div>valgrind: m_mallocfree.c:277 (mk_plain_bszB): Assertion 'bszB != 0' failed.</div><div>valgrind: This is probably caused by your program erroneously writing past the</div><div>end of a heap block and corrupting heap metadata.  If you fix any</div><div>invalid writes reported by Memcheck, this assertion failure will</div><div>probably go away.  Please try that before reporting this as a bug.</div><div> </div><div>==3668==    at 0x3804C24C: ??? (in /usr/local/lib/valgrind/memcheck-arm-linux)</div><div> </div><div>sched status:</div><div>  running_tid=1</div><div> </div><div>Thread 1: status = VgTs_Runnable</div><div>==3668==    at 0x48324E8: calloc (vg_replace_malloc.c:618)</div><div>==3668==    by 0x4854843: burn_alloc_mem (init.c:657)</div><div>==3668==    by 0x4861C27: sg_close_drive_fd (sg-linux.c:608)</div><div>==3668==    by 0x486273B: react_on_drive_loss.isra.5 (sg-linux.c:2040)</div><div>==3668==    by 0x4863097: sg_issue_command (sg-linux.c:2187)</div><div>==3668==    by 0x485B67F: mmc_get_configuration_al (mmc.c:2972)</div><div>==3668==    by 0x485CA17: mmc_get_configuration (mmc.c:3250)</div><div>==3668==    by 0x485D47F: mmc_read_disc_info (mmc.c:1912)</div><div>==3668==    by 0x4865DAB: spc_sense_write_params (spc.c:797)</div><div>==3668==    by 0x484C63B: burn_drive_inquire_media (drive.c:273)</div><div>==3668==    by 0x48503B3: burn_drive_grab (drive.c:536)</div><div>==3668==    by 0x12E13: Cdrskin_grab_drive (cdrskin.c:4132)</div><div>==3668==    by 0x1B71F: Cdrskin_msinfo (cdrskin.c:7873)</div><div>==3668==    by 0x20217: Cdrskin_run (cdrskin.c:9515)</div><div>==3668==    by 0xB5F3: main (cdrskin.c:9691)<span style="font-family: å®‹ä½“, Tahoma; line-height: normal; font-size: 10.5pt; background-color: window;">Best Regards</span></div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;"> </div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;">------------------</div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;"><br></div><div>Note: see also the FAQ in the source distribution.</div><div>It contains workarounds to several common problems.</div><div>In particular, if Valgrind aborted or crashed after</div><div>identifying problems in your program, there's a good chance</div><div>that fixing those problems will prevent Valgrind aborting or</div><div>crashing, especially if it happened in m_mallocfree.c.</div><div> </div><div>If that doesn't help, please report this bug to: www.valgrind.org</div><div> </div><div>In the bug report, send all the above text, the valgrind</div><div>version, and what OS and version you are using.  Thanks.</div><div>--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</div></div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal;"><br></span></div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal;"><br></span></div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal;"><br></span></div><div><span style="font-family: å®‹ä½“, Tahoma; line-height: normal;"><br></span></div><div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;">Best Regards</div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;"> </div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;">------------------</div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;"><span style="font-size: 10.5pt; background-color: window;">Lian jianfei</span></div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;">5F, No.15, Ke Hui 2nd Street, Ke Hui Development Centre Science Avenue, Science City, Luo Gang District Guangzhou, China 510663</div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;">TEL: 15989094327</div><div style="font-family: å®‹ä½“, Tahoma; line-height: normal;">Email: lianjf@ava.com.cn</div></div></div>
<blockquote style="margin-Top: 0px; margin-Bottom: 0px; margin-Left: 0.5em"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:wally.yeh@atrustcorp.com">Wally Yeh</a></div><div><b>Date:</b> 2014-08-19 16:23</div><div><b>To:</b> <a href="mailto:lianjf@ava.com.cn">lianjf@ava.com.cn</a></div><div><b>CC:</b> <a href="mailto:meta-freescale@yoctoproject.org">meta-freescale</a></div><div><b>Subject:</b> Re: [meta-freescale] about freescale dvd-rom</div></div></div><div><div class="FoxDiv20140819170224734505"><div dir="ltr"><div><div>Hi, Lian:<br></div>    how do you test? so you just plug the usb external dvd drive , then you wish there are some application will pop up and play the content in the DVD?<br><br></div>Wally<br></div>
<div class="gmail_extra"><br><br><div class="gmail_quote">2014-08-19 15:33 GMT+08:00 <a href="mailto:lianjf@ava.com.cn">lianjf@ava.com.cn</a> <span dir="ltr"><<a href="mailto:lianjf@ava.com.cn" target="_blank">lianjf@ava.com.cn</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div> 
<div><div><span style="font-family:宋体,Tahoma;line-height:normal">Hi ,</span></div><div><span style="font-family:宋体,Tahoma;line-height:normal">Can anyone tell me freescale imx6q arm board support dvd-rom perfectly?I test it ,but it seems that it doesnot work okay.</span></div>
<div><span style="font-family:宋体,Tahoma;line-height:normal">Any help would be </span>appreciated<span style="font-family:宋体,Tahoma;line-height:normal">.</span></div><div><span style="font-family:宋体,Tahoma;line-height:normal"><br>
</span></div><div><span style="font-family:宋体,Tahoma;line-height:normal"><br></span></div><div><span style="font-family:宋体,Tahoma;line-height:normal"><br></span></div><div><div style="font-family:宋体,Tahoma;line-height:normal">
Best Regards</div><div style="font-family:宋体,Tahoma;line-height:normal"> </div><div style="font-family:宋体,Tahoma;line-height:normal">------------------</div><div style="font-family:宋体,Tahoma;line-height:normal"><span style="font-size:10.5pt;background-color:window">Lian jianfei</span></div>
<div style="font-family:宋体,Tahoma;line-height:normal">5F, No.15, Ke Hui 2nd Street, Ke Hui Development Centre Science Avenue, Science City, Luo Gang District Guangzhou, China 510663</div><div style="font-family:宋体,Tahoma;line-height:normal">
TEL: 15989094327</div><div style="font-family:宋体,Tahoma;line-height:normal">Email: <a href="mailto:lianjf@ava.com.cn" target="_blank">lianjf@ava.com.cn</a></div></div></div>
</div><br>--<br>
_______________________________________________<br>
meta-freescale mailing list<br>
<a href="mailto:meta-freescale@yoctoproject.org">meta-freescale@yoctoproject.org</a><br>
<a href="https://lists.yoctoproject.org/listinfo/meta-freescale" target="_blank">https://lists.yoctoproject.org/listinfo/meta-freescale</a><br>
<br></blockquote></div><br></div>
</div></div></blockquote></body></html>