https://bugs.dragonflybsd.org/https://bugs.dragonflybsd.org/favicon.ico?16293952082007-07-23T02:41:00ZDragonFlyBSD bugtrackerDragonFlyBSD - Bug #732: Live CD problems.https://bugs.dragonflybsd.org/issues/732?journal_id=33292007-07-23T02:41:00Zdillon
<ul></ul><p>:Hi,<br />:<br />:During boot of the live cd this shows up:<br />:<br />:Mounting root from cd9660:cd0c<br />:ata1: FAILURE - zero length DMA transfer attempted<br />:acd0: setting up DMA failed<br />:ata1: FAILURE - zero length DMA transfer attempted<br />:acd0: setting up DMA failed<br />:ata1: FAILURE - zero length DMA transfer attempted<br />:acd0: setting up DMA failed<br />:ata1: FAILURE - zero length DMA transfer attempted<br />:acd0: setting up DMA failed<br />:ata1: FAILURE - zero length DMA transfer attempted<br />:acd0: setting up DMA failed</p>
<pre><code>That is definitely not correct. If you don't mind burning another dead<br /> CD could you please try this patch? It will force the system to panic<br /> when it tries to do a 0-length I/O. Then get a backtrace from the DDB<br /> prompt so we can see the call chain that leads up to the problem.</code></pre>
<pre><code>-Matt</code></pre>
<p>Index: ata-dma.c
===================================================================<br />RCS file: /cvs/src/sys/dev/disk/nata/ata-dma.c,v<br />retrieving revision 1.4<br />diff <del>u -p -r1.4 ata-dma.c<br />--</del> ata-dma.c 5 Jun 2007 18:30:40 <del>0000 1.4<br />+<ins>+ ata-dma.c 22 Jul 2007 19:32:04 -0000<br /><code>@ -227,6 +227,7 </code>@ return EIO;<br /> }<br /> if (!count) {<br /> device_printf(dev, "FAILURE - zero length DMA transfer attempted\n");<br /></ins> panic("zero length DMA transfer");<br /> return EIO;<br /> }<br /> if (((uintptr_t)data & (ch</del>>dma->alignment - 1)) ||<br />Index: atapi-cd.c
===================================================================<br />RCS file: /cvs/src/sys/dev/disk/nata/atapi-cd.c,v<br />retrieving revision 1.7<br />diff <del>u -p -r1.7 atapi-cd.c<br />--</del> atapi-cd.c 3 Jun 2007 04:48:29 -0000 1.7<br />+++ atapi-cd.c 22 Jul 2007 19:35:03 -0000<br /><code>@ -785,6 +785,8 </code>@ biodone(bp);<br /> return 0;<br /> }</p>
<p>+ <abbr title="bbp->b_bcount != 0, ("acd_strategy: 0-length I/O"">KASSERT</abbr>);<br />+<br /> bp->bio_driver_info = cdev;<br /> bbp->b_resid = bbp->b_bcount;</p>
<p><code>@ -842,6 +844,8 </code>@ lba = (bp->bio_offset & 0x00FFFFFFFFFFF<br /> }</p>
<pre><code>count = bbp->b_bcount / blocksize;<br />+ KASSERT(count != 0, ("acd_strategy: 0-length I/O %d bytes vs %d blksize",<br />+ bbp->b_bcount, blocksize));</code></pre>
<pre><code>if (bbp->b_cmd == BUF_CMD_READ) {<br /> /* if transfer goes beyond range adjust it to be within limits */</code></pre> DragonFlyBSD - Bug #732: Live CD problems.https://bugs.dragonflybsd.org/issues/732?journal_id=33382007-07-23T09:00:00Ztomaz.borstnar
<ul></ul><p>Snapshot from 22th July and basically the same problems:</p>
<p>WinFast K7S741M Series 426XP215 072204<br />XP2400+</p>
<p>Samsung CRRW+DVD-R</p>
<p>acd0: FAILURE - READ_BIG HARDWARE ERROR asc=0x08 ascq=0x03<br />vm_fault: pager read error, pid 1 (init)</p>
<p>This string is common on Google so I decided to disable UDMA on secondary channel and got this:</p>
<p>ata1: FAILURE - zero length DMA transfer attempted<br />acd0: setting up DMA failed<br />(cd0:ata1:0:0:0): <abbr title="10">READ</abbr>. CDB: 28 0 0 0 0 10 0 0 0 0<br />(cd0:ata1:0:0:0): error code 0<br />(cd0:ata1:0:0:0): cddone: got error 0x5 back<br />Root mount failed: 5<br />Mounting root from cd9660:acd0c<br />cd9660: RockRidge Extension<br />acd0: FAILURE - READ_BIG HARDWARE ERROR asc=0x08 ascq=0x03<br />vm_fault: pager read error, pid 1 (swapper)<br />init died (signal 6, exit 0)<br />panic: Going nowhere without my init!</p>
<p>With CD-R I got the same results as in the first place (which was done on CD-RW).</p>
<p>I got one backtrace, but did not write it down :(</p>
<p>Tomaž</p> DragonFlyBSD - Bug #732: Live CD problems.https://bugs.dragonflybsd.org/issues/732?journal_id=33392007-07-23T14:39:00Zluxh
<ul></ul><p>Is this sufficient?</p>
<p>(kgdb) bt<br />#0 dumpsys () at thread.h:83<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: lib/libcr/sys/ cleanup (Closed)" href="https://bugs.dragonflybsd.org/issues/1">#1</a> 0xc02eb11b in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:371<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: K&R -> ANSI cleanup status (Closed)" href="https://bugs.dragonflybsd.org/issues/2">#2</a> 0xc02eb8a4 in panic (fmt=0xc0562c05 "from debugger") at<br />/usr/src/sys/kern/kern_shutdown.c:796<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: freebsds pipe-reverse test fails on dfly (Closed)" href="https://bugs.dragonflybsd.org/issues/3">#3</a> 0xc0166a66 in db_panic (addr=-1068477435, have_addr=0, count=-1,<br />modif=0xc07d6604 "") at /usr/src/sys/ddb/db_command.c:447<br /><a class="issue tracker-1 status-5 priority-5 priority-high3 closed" title="Bug: Rework of nrelease (Closed)" href="https://bugs.dragonflybsd.org/issues/4">#4</a> 0xc01669fb in db_command (last_cmdp=0xc0634690, cmd_table=0x0,<br />aux_cmd_tablep=0xc05be6f8, aux_cmd_tablep_end=0xc05be714) at<br />/usr/src/sys/ddb/db_command.c:343<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: sys/dev cleanup (Closed)" href="https://bugs.dragonflybsd.org/issues/5">#5</a> 0xc0166adb in db_command_loop () at /usr/src/sys/ddb/db_command.c:469<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: sys/emulation cleanup (Closed)" href="https://bugs.dragonflybsd.org/issues/6">#6</a> 0xc0169670 in db_trap (type=3, code=0) at /usr/src/sys/ddb/db_trap.c:71<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: /sys/boot cleanup (Closed)" href="https://bugs.dragonflybsd.org/issues/7">#7</a> 0xc05050a8 in kdb_trap (type=3, code=0, regs=0xc07d6728) at<br />/usr/src/sys/platform/pc32/i386/db_interface.c:148<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: make upgrade broken (Closed)" href="https://bugs.dragonflybsd.org/issues/8">#8</a> 0xc0517f20 in trap (frame=0xc07d6728) at<br />/usr/src/sys/platform/pc32/i386/trap.c:804<br /><a class="issue tracker-1 status-5 priority-5 priority-high3 closed" title="Bug: panic with HEAD (Closed)" href="https://bugs.dragonflybsd.org/issues/9">#9</a> 0xc05060f6 in calltrap () at /usr/src/sys/platform/pc32/i386/exception.s:783<br /><a class="issue tracker-1 status-5 priority-5 priority-high3 closed" title="Bug: make buildworld broken (Closed)" href="https://bugs.dragonflybsd.org/issues/10">#10</a> 0xc0505405 in Debugger (msg=0x12 <Address 0x12 out of bounds>) at<br />cpufunc.h:73<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: libstand cleanup (Closed)" href="https://bugs.dragonflybsd.org/issues/11">#11</a> 0xc02eb89c in panic (fmt=0xc05652e4 "zero length DMA transfer") at<br />/usr/src/sys/kern/kern_shutdown.c:794<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: /sys/net cleanup (Closed)" href="https://bugs.dragonflybsd.org/issues/12">#12</a> 0xc01a04c8 in ata_dmaload (dev=0xc622bb28, data=0xc0c14000 "",<br />count=0, dir=2, addr=0x12, entries=0x0) at<br />/usr/src/sys/dev/disk/nata/ata-dma.c:230<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Buildworld error/panic (Closed)" href="https://bugs.dragonflybsd.org/issues/13">#13</a> 0xc01a0ca0 in ata_begin_transaction (request=0xc0b2b190) at<br />/usr/src/sys/dev/disk/nata/ata-lowlevel.c:180<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: zombie processes waiting for a lock, smth to worry about? (Closed)" href="https://bugs.dragonflybsd.org/issues/14">#14</a> 0xc01a4710 in ata_start (dev=0xc622bb28) at<br />/usr/src/sys/dev/disk/nata/ata-queue.c:214<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: savecore -z patch (Closed)" href="https://bugs.dragonflybsd.org/issues/15">#15</a> 0xc01a4376 in ata_queue_request (request=0xc0b2b190) at<br />/usr/src/sys/dev/disk/nata/ata-queue.c:95<br /><a class="issue tracker-1 status-5 priority-5 priority-high3 closed" title="Bug: install: net/bridge/*.h: No such file or directory (Closed)" href="https://bugs.dragonflybsd.org/issues/16">#16</a> 0xc01b386d in atapi_action (sim=0xc0b03ba8, ccb=0x0) at<br />/usr/src/sys/dev/disk/nata/atapi-cam.c:602<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: Minor typos (Closed)" href="https://bugs.dragonflybsd.org/issues/17">#17</a> 0xc014be68 in xpt_run_dev_sendq (bus=0xc0af2c90) at<br />/usr/src/sys/bus/cam/cam_xpt.c:3640<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: extern uint64_t tsc_frequency missing (Closed)" href="https://bugs.dragonflybsd.org/issues/18">#18</a> 0xc014b111 in xpt_action (start_ccb=0xca67a140) at<br />/usr/src/sys/bus/cam/cam_xpt.c:2809<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: usched questions and a patch (Closed)" href="https://bugs.dragonflybsd.org/issues/19">#19</a> 0xc015c90b in cdstart (periph=0xc0b03bf8, start_ccb=0xca67a140) at<br />/usr/src/sys/bus/cam/scsi/scsi_cd.c:1584<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: No detection of 8169S Gb interface (Closed)" href="https://bugs.dragonflybsd.org/issues/20">#20</a> 0xc014bbfc in xpt_run_dev_allocq (bus=0xc0af2c90) at<br />/usr/src/sys/bus/cam/cam_xpt.c:3507<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: /etc/network.subr list_net_interfaces() fix (Closed)" href="https://bugs.dragonflybsd.org/issues/21">#21</a> 0xc014baa1 in xpt_schedule (perph=0xc0b03bf8,<br />new_priority=3232705680) at /usr/src/sys/bus/cam/cam_xpt.c:3402<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: RealTek 8169S/8110S support. (Closed)" href="https://bugs.dragonflybsd.org/issues/22">#22</a> 0xc015c5d2 in cdstrategy (ap=0x12) at<br />/usr/src/sys/bus/cam/scsi/scsi_cd.c:1496<br />#23 0xc02d456d in dev_dstrategy (dev=0xc0b25fe8, bio=0x20) at<br />/usr/src/sys/kern/kern_device.c:238<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: waitpid() with WUNTRACED flag? (was Re: Hang on ctrl+Z after the MPSAFE tsleep/wakeup commit) (Closed)" href="https://bugs.dragonflybsd.org/issues/24">#24</a> 0xc030094e in diskstrategy (ap=0x12) at /usr/src/sys/kern/subr_disk.c:423<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: for some time one can not select european cities when setting time zone via installer (Closed)" href="https://bugs.dragonflybsd.org/issues/25">#25</a> 0xc02d456d in dev_dstrategy (dev=0xc0b26f18, bio=0x20) at<br />/usr/src/sys/kern/kern_device.c:238<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: vlan(4) broken. (Closed)" href="https://bugs.dragonflybsd.org/issues/26">#26</a> 0xc034824d in spec_strategy (ap=0xc65f5d18) at<br />/usr/src/sys/vfs/specfs/spec_vnops.c:544<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: ip_output.c bug? (Closed)" href="https://bugs.dragonflybsd.org/issues/27">#27</a> 0xc034328b in vop_strategy (ops=0x0, vp=0xc0b6b188,<br />bio=0xc0ba3e30) at /usr/src/sys/kern/vfs_vopops.c:659<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: negative number from FTP (Closed)" href="https://bugs.dragonflybsd.org/issues/28">#28</a> 0xc0329357 in vn_strategy (vp=0xc0b6b188, bio=0x20) at<br />/usr/src/sys/kern/vfs_bio.c:2779<br /><a class="issue tracker-1 status-5 priority-5 priority-high3 closed" title="Bug: /usr/src/sys/dev/netif/ndis/if_ndis.c (Closed)" href="https://bugs.dragonflybsd.org/issues/29">#29</a> 0xc0326140 in bread (vp=0xc0b6b188, loffset=) at<br />/usr/src/sys/kern/vfs_bio.c:630<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: NIC vlan(4) capabilities (Closed)" href="https://bugs.dragonflybsd.org/issues/30">#30</a> 0xc02c2f4e in iso_mountfs (devvp=0xc0b6b188, mp=0xc0b84020,<br />argp=0xc07d6b64) at /usr/src/sys/vfs/isofs/cd9660/cd9660_vfsops.c:321<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: panic (Closed)" href="https://bugs.dragonflybsd.org/issues/31">#31</a> 0xc02c2ad8 in iso_mountroot (mp=0xc0b84020) at<br />/usr/src/sys/vfs/isofs/cd9660/cd9660_vfsops.c:165<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Better news about that wi panic (Closed)" href="https://bugs.dragonflybsd.org/issues/32">#32</a> 0xc02c2b36 in cd9660_mount (mp=0xc0b84020, path=0x0, data=0x12<br /><Address 0x12 out of bounds>, cred=0xc0b16120) at<br />/usr/src/sys/vfs/isofs/cd9660/cd9660_vfsops.c:189<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: all manpages at the end say "DragonFly 1.3" on 1.4 RC2 ISO (Closed)" href="https://bugs.dragonflybsd.org/issues/33">#33</a> 0xc032f650 in vfs_mountroot_try (mountfrom=0xc0577e53<br />"cd9660:cd0c") at /usr/src/sys/kern/vfs_conf.c:244<br /><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: 1.4.0 RC2: installer ignores request to make MFS partitions (Closed)" href="https://bugs.dragonflybsd.org/issues/34">#34</a> 0xc032f3f4 in vfs_mountroot (junk=0x0) at /usr/src/sys/kern/vfs_conf.c:143<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: unmount-ncp.diff (see comments on kernel@) (Closed)" href="https://bugs.dragonflybsd.org/issues/35">#35</a> 0xc02c7cd1 in mi_startup () at /usr/src/sys/kern/init_main.c:234<br /><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: nnull.diff (see comments on kernel@) (Closed)" href="https://bugs.dragonflybsd.org/issues/36">#36</a> 0xc014098b in begin () at /usr/src/sys/platform/pc32/i386/locore.s:337</p> DragonFlyBSD - Bug #732: Live CD problems.https://bugs.dragonflybsd.org/issues/732?journal_id=33442007-07-24T00:21:01Zdillon
<ul></ul><p>:Is this sufficient?</p>
<pre><code>This helps. I'm researching it now. Somehow a 2K read got turned<br /> into a 0 block read.</code></pre>
<pre><code>-Matt</code></pre> DragonFlyBSD - Bug #732: Live CD problems.https://bugs.dragonflybsd.org/issues/732?journal_id=33452007-07-24T03:11:00Zdillon
<ul></ul><p>Ok, all the live CD problems should now theoretically be fixed. I'm<br /> doing a full nrelease build to test it.</p>
<pre><code>I found numerous additional bugs while tracking down this one,<br /> including problems tracking the open count on the device. This<br /> typically prevented the CD from being ejected. /dev/cd0 also had the<br /> wrong minor number, and the generic disk layer also failed to properly<br /> track opens when an open failed (which I found when I couldn't<br /> eject the CD after trying to open the incorrect /dev/cd0 device).</code></pre>
<pre><code>The main issue was that the CAM layer failed to set the si_iosize_max<br /> field in the device structure. This caused the strategy code to<br /> try to break I/O's down into 0-sized chunks, resulting in an endless<br /> loop and/or panic.</code></pre>
<pre><code>NATA's CAM interface also failed to properly set transfer length<br /> limits based on the DMA transfer limit and instead just used 65535<br /> unconditionally. This resulted in accesses via the SCSI device<br /> (/dev/cd0) potentially making I/O requests that were too large.</code></pre>
<pre><code>-Matt</code></pre> DragonFlyBSD - Bug #732: Live CD problems.https://bugs.dragonflybsd.org/issues/732?journal_id=33532007-07-24T19:12:01Zluxh
<ul></ul><p>...</p>
<blockquote>
<p>-Matt</p>
</blockquote>
<p>I did one too and it seems to work. Thanks!</p>
<p>Max</p> DragonFlyBSD - Bug #732: Live CD problems.https://bugs.dragonflybsd.org/issues/732?journal_id=33542007-07-24T19:16:36Zluxh
<ul></ul><p>Commit msgs:<br /><a class="external" href="http://leaf.dragonflybsd.org/mailarchive/commits/2007-07/msg00198.html">http://leaf.dragonflybsd.org/mailarchive/commits/2007-07/msg00198.html</a><br /><a class="external" href="http://leaf.dragonflybsd.org/mailarchive/commits/2007-07/msg00200.html">http://leaf.dragonflybsd.org/mailarchive/commits/2007-07/msg00200.html</a></p>