Re: floppy disk controller broken
On Thursday 18 September 2008 3:53:06 am Michel Talon wrote: > On Wed, Sep 17, 2008 at 05:13:39PM -0400, John Baldwin wrote: > > On Wednesday 17 September 2008 11:04:33 am Michel Talon wrote: > > > Hello, > > > > > > when testing FreeBSD-7.1-BETA i discovered that the floppy disk > > > controller doesn't work correctly. Trying to format a floppy (perhaps > > > with bad blocks) i get: > > > Processing fdformat: ioctl(FD_FORM): Device not configured > > > instead of the normal E letter. I then checked the same problem is > > > present on FreeBSD-6.3 and it has been reported by Beech Rintoul (*) in > > > 2006! Of course the floppy disk driver is particularly messy, but > > > this is not pretty. > > > > > > (*) i386/103862: Error with fdformat > > > > It looks like the ioctl to format a track used to never report failures from > > the controller. The newer driver does. What I've done with fdformat is to > > make it just ignore the errors in userland instead. Try this: > > > > Index: fdformat.c > > === > > --- fdformat.c (revision 183112) > > +++ fdformat.c (working copy) > > @@ -75,8 +75,7 @@ > > f.fd_formb_secno(i) = il[i+1]; > > f.fd_formb_secsize(i) = secsize; > > } > > - if(ioctl(fd, FD_FORM, (caddr_t)&f) < 0) > > - err(EX_OSERR, "ioctl(FD_FORM)"); > > + (void)ioctl(fd, FD_FORM, (caddr_t)&f); > > } > > > > static int > > > > > > -- > > John Baldwin > > This doesn't work any more. This time i get > niobe# fdformat fd0 > Format 1440K floppy `/dev/fd0'? (y/n): y > Processing done. > > where only the first E takes some time to be printed, and all subsequent > ones are printed instantaneously, that is all other formatting is not > tried. In principle the formatting process must try each of the > "sectors" in turn, and can come up with a series of V and F. > > Moreover, trying to write to the floppy: > niobe# dd if=/dev/zero of=/dev/fd0 conv=noerror > dd: /dev/fd0: Input/output error > 5+0 records in > 4+0 records out > 2048 bytes transferred in 4.054404 secs (505 bytes/sec) > > I don't expect such result. Traditionnally writing works, while reading > may fail. Here reading fails with incoherent messages: > dd: /dev/fd0: Device not configured > 3+0 records in > 3+0 records out > 1536 bytes transferred in 2.595216 secs (592 bytes/sec) > repeated a large number of times. But nothing in dmesg, contrary to the > tradition which showed the defective sectors. > > In conclusion i am under the impression that the in kernel driver is > severely botched. Of course nobody uses floppies any more, but this is > quite ugly. There are actually changes to the floppy driver in HEAD that I think address this. I don't recall if they were MFC'd to 7. -- John Baldwin ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"
Re: floppy disk controller broken
On Sun, 21 Sep 2008 06:45:29 -0700 Jeremy Chadwick <[EMAIL PROTECTED]> wrote: > Remove "device udbp" from your kernel configuration and try again. > The problem with bulk pipes is somewhat well-known at this point. This machine have a GENERIC kernel: [EMAIL PROTECTED] uname -a FreeBSD kg-work2.kg4.no 7.0-STABLE FreeBSD 7.0-STABLE #0: Mon Jul 21 20:40:31 CEST 2008 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC i386 And it seems like udbp is commented out in GENERIC: [EMAIL PROTECTED] grep udbp /sys/i386/conf/GENERIC #device udbp# USB Double Bulk Pipe devices So it might be something else. usb controller / chipset, or whatever. BTW, for completeness, this machine is a Dell OptiPlex SX270[1]. References: 1) http://tingox.googlepages.com/sx270 -- Regards, Torfinn Ingolfsen ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Sun, 21 Sep 2008 12:44:03 +0200 Torfinn Ingolfsen <[EMAIL PROTECTED]> wrote: > I will try ufdformat on a different machine now. Ok, on a different machine[1], it works without problems: [EMAIL PROTECTED] uname -a FreeBSD kg-i82.kg4.no 7.0-STABLE FreeBSD 7.0-STABLE #3: Wed May 28 15:59:38 CEST 2008 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/I81K i386 [EMAIL PROTECTED] ./ufdformat da0 Geometry: 80 cyl 2 heads 18 secpercyl 512 bytespersec current: 2880 blocks, 512 bytes-per-block formatted 0: 2880 blocks, 512 bytes-per-block 1: 1232 blocks, 1024 bytes-per-block 2: 2400 blocks, 512 bytes-per-block Format 1440K floppy `da0'? (y/n): y Processing done. Why it didn't work on the first machine[2] I don't know. References: 1) http://tingox.googlepages.com/i81k 2) http://tingox.googlepages.com/sx270 -- Regards, Torfinn Ingolfsen ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Sun, Sep 21, 2008 at 12:44:03PM +0200, Torfinn Ingolfsen wrote: > On Thu, 18 Sep 2008 23:33:40 +0100 > "Bruce M. Simpson" <[EMAIL PROTECTED]> wrote: > > > Someone was going to pick this up, finish it off, and commit it, but > > I haven't heard back from them: > > http://people.freebsd.org/~bms/dump/tools/ufdformat/ > > It compiled fine on FreeBSD 7.0-stable: > [EMAIL PROTECTED] uname -a > FreeBSD kg-work2.kg4.no 7.0-STABLE FreeBSD 7.0-STABLE #0: Mon Jul 21 > 20:40:31 CEST 2008 > [EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC i386 > > But when I tried to use, it printed two 'V''s and then seemed to be > doing nothing. > > In /var/log/messages I got these: > Sep 21 12:09:35 kg-work2 kernel: umass0: CBI reset failed, TIMEOUT > Sep 21 12:09:40 kg-work2 kernel: umass0: CBI bulk-in stall clear failed, > TIMEOUT > Sep 21 12:09:45 kg-work2 kernel: umass0: CBI bulk-out stall clear failed, > TIMEOUT > Sep 21 12:11:55 kg-work2 kernel: umass0: CBI reset failed, TIMEOUT > Sep 21 12:13:00 kg-work2 kernel: umass0: CBI bulk-in stall clear failed, > TIMEOUT > Sep 21 12:14:05 kg-work2 kernel: umass0: CBI bulk-out stall clear failed, > TIMEOUT > Sep 21 12:16:15 kg-work2 kernel: umass0: CBI reset failed, TIMEOUT Remove "device udbp" from your kernel configuration and try again. The problem with bulk pipes is somewhat well-known at this point. -- | Jeremy Chadwickjdc at parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB | ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Thu, 18 Sep 2008 23:33:40 +0100 "Bruce M. Simpson" <[EMAIL PROTECTED]> wrote: > Someone was going to pick this up, finish it off, and commit it, but > I haven't heard back from them: > http://people.freebsd.org/~bms/dump/tools/ufdformat/ It compiled fine on FreeBSD 7.0-stable: [EMAIL PROTECTED] uname -a FreeBSD kg-work2.kg4.no 7.0-STABLE FreeBSD 7.0-STABLE #0: Mon Jul 21 20:40:31 CEST 2008 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC i386 But when I tried to use, it printed two 'V''s and then seemed to be doing nothing. In /var/log/messages I got these: Sep 21 12:09:35 kg-work2 kernel: umass0: CBI reset failed, TIMEOUT Sep 21 12:09:40 kg-work2 kernel: umass0: CBI bulk-in stall clear failed, TIMEOUT Sep 21 12:09:45 kg-work2 kernel: umass0: CBI bulk-out stall clear failed, TIMEOUT Sep 21 12:11:55 kg-work2 kernel: umass0: CBI reset failed, TIMEOUT Sep 21 12:13:00 kg-work2 kernel: umass0: CBI bulk-in stall clear failed, TIMEOUT Sep 21 12:14:05 kg-work2 kernel: umass0: CBI bulk-out stall clear failed, TIMEOUT Sep 21 12:16:15 kg-work2 kernel: umass0: CBI reset failed, TIMEOUT The funny thing is - that situation seemed to vlock commands from executing, or the terminals from printing outrput. I had several terminal windows up, and a ssh session from another machine. I could type a command, but nothing would happen after I pressed enter. Switching workspaces in X and switching vty's worked fine. In the end, I had to yank the floppy (which panicked the machine as expected). The floppy I used was this one: Sep 21 11:45:58 kg-work2 root: Unknown USB device: vendor 0x0644 product 0x bus uhub1 Sep 21 11:45:59 kg-work2 kernel: umass0: on uhub1 Sep 21 11:45:59 kg-work2 kernel: da0 at umass-sim0 bus 0 target 0 lun 0 Sep 21 11:45:59 kg-work2 kernel: da0: Removable Direct Access SCSI-0 device Sep 21 11:45:59 kg-work2 kernel: da0: 1.000MB/s transfers I will try ufdformat on a different machine now. -- Regards, Torfinn Ingolfsen ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Fri, Sep 19, 2008 at 11:55:05AM +0200, Oliver Fromme wrote: > Michel Talon wrote: > > Oliver Fromme wrote: > > > Michel Talon wrote: > > > > Moreover, trying to write to the floppy: > > > > niobe# dd if=/dev/zero of=/dev/fd0 conv=noerror > > > > dd: /dev/fd0: Input/output error > > > > 5+0 records in > > > > 4+0 records out > > > > 2048 bytes transferred in 4.054404 secs (505 bytes/sec) > > > > > > > > I don't expect such result. Traditionnally writing works, while reading > > > > may fail. > > > > > > Maybe I misunderstand what you're saying, but ... > > > When I try to write to a floppy that has *not* been > > > successfully formatted, I very much expect to get > > > Input/output error. Anything else would be a bug. > > > > The floppy has certainly be formatted, in the past. Perhaps i > > remember badly, i have not used floppies since years, but > > in this case the behavior with Windows, Linux and ancient FreeBSD > > was that you could write to the floppy, but could encounter errors > > while reading. > > Since you mentioned "ancient" FreeBSD, I assume that was > using buffered block devices, when FreeBSD still supported > them? That sounds right -- again, if my memory hasn't failed me... > Nowadays /dev/fd0 is a character device which is > unbuffered, i.e. your dd(1) command goes straight to the > disk, and if the drive reports an error (typically sync > mark not found if the floppy is unformatted), it goes back > up to dd(1) immediately and you get Input/output error. Ah ha! Evolution has occurred. Thanks for educating me. :-) -- | Jeremy Chadwickjdc at parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB | ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
Michel Talon wrote: > Oliver Fromme wrote: > > Michel Talon wrote: > > > Moreover, trying to write to the floppy: > > > niobe# dd if=/dev/zero of=/dev/fd0 conv=noerror > > > dd: /dev/fd0: Input/output error > > > 5+0 records in > > > 4+0 records out > > > 2048 bytes transferred in 4.054404 secs (505 bytes/sec) > > > > > > I don't expect such result. Traditionnally writing works, while reading > > > may fail. > > > > Maybe I misunderstand what you're saying, but ... > > When I try to write to a floppy that has *not* been > > successfully formatted, I very much expect to get > > Input/output error. Anything else would be a bug. > > The floppy has certainly be formatted, in the past. Perhaps i > remember badly, i have not used floppies since years, but > in this case the behavior with Windows, Linux and ancient FreeBSD > was that you could write to the floppy, but could encounter errors > while reading. Since you mentioned "ancient" FreeBSD, I assume that was using buffered block devices, when FreeBSD still supported them? Nowadays /dev/fd0 is a character device which is unbuffered, i.e. your dd(1) command goes straight to the disk, and if the drive reports an error (typically sync mark not found if the floppy is unformatted), it goes back up to dd(1) immediately and you get Input/output error. Best regards Oliver -- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M. Handelsregister: Registergericht Muenchen, HRA 74606, Geschäftsfuehrung: secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün- chen, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd "We will perhaps eventually be writing only small modules which are identi- fied by name as they are used to build larger ones, so that devices like indentation, rather than delimiters, might become feasible for expressing local structure in the source language." -- Donald E. Knuth, 1974 ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
You could try formatting the floppy in a USB drive. Someone was going to pick this up, finish it off, and commit it, but I haven't heard back from them: http://people.freebsd.org/~bms/dump/tools/ufdformat/ ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Thu, Sep 18, 2008 at 08:32:50PM +0200, Michel Talon wrote: > On Thu, Sep 18, 2008 at 06:18:45PM +0200, Oliver Fromme wrote: > > Michel Talon wrote: > > > John Baldwin wrote: > > > > It looks like the ioctl to format a track used to never report > > failures from > > > > the controller. The newer driver does. What I've done with fdformat > > is to > > > > make it just ignore the errors in userland instead. Try this: > > > > > > > > Index: fdformat.c > > > > === > > > > --- fdformat.c(revision 183112) > > > > +++ fdformat.c(working copy) > > > > @@ -75,8 +75,7 @@ > > > > f.fd_formb_secno(i) = il[i+1]; > > > > f.fd_formb_secsize(i) = secsize; > > > > } > > > > - if(ioctl(fd, FD_FORM, (caddr_t)&f) < 0) > > > > - err(EX_OSERR, "ioctl(FD_FORM)"); > > > > + (void)ioctl(fd, FD_FORM, (caddr_t)&f); > > > > } > > > > > > > > static int > > > > > > This doesn't work any more. This time i get > > > niobe# fdformat fd0 > > > Format 1440K floppy `/dev/fd0'? (y/n): y > > > Processing done. > > > > > > where only the first E takes some time to be printed, and all subsequent > > > ones are printed instantaneously, that is all other formatting is not > > > tried. In principle the formatting process must try each of the > > > "sectors" in turn, and can come up with a series of V and F. > > > > > > Moreover, trying to write to the floppy: > > > niobe# dd if=/dev/zero of=/dev/fd0 conv=noerror > > > dd: /dev/fd0: Input/output error > > > 5+0 records in > > > 4+0 records out > > > 2048 bytes transferred in 4.054404 secs (505 bytes/sec) > > > > > > I don't expect such result. Traditionnally writing works, while reading > > > may fail. > > > > Maybe I misunderstand what you're saying, but ... > > When I try to write to a floppy that has *not* been > > successfully formatted, I very much expect to get > > Input/output error. Anything else would be a bug. > > > > Best regards > >Oliver > > The floppy has certainly be formatted, in the past. Perhaps i > remember badly, i have not used floppies since years, but > in this case the behavior with Windows, Linux and ancient FreeBSD > was that you could write to the floppy, but could encounter errors > while reading. Using dd conv=noerror allowed to recover the valid part. > Under Windows you could very well use floppies partly damaged with > bad blocks or tracks. Here the driver seems to bail out at the first > error, so that the above commands run much faster than they should, > a few seconds, while something of the order of a minute should be > more realistic. I swore in older FreeBSD (2.x days?) there was a command which was actually used for dealing with bad sectors on floppy disks. I might be thinking of badsect(8), can't remember... -- | Jeremy Chadwickjdc at parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB | ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Thu, Sep 18, 2008 at 06:18:45PM +0200, Oliver Fromme wrote: > Michel Talon wrote: > > John Baldwin wrote: > > > It looks like the ioctl to format a track used to never report failures > from > > > the controller. The newer driver does. What I've done with fdformat is > to > > > make it just ignore the errors in userland instead. Try this: > > > > > > Index: fdformat.c > > > === > > > --- fdformat.c(revision 183112) > > > +++ fdformat.c(working copy) > > > @@ -75,8 +75,7 @@ > > > f.fd_formb_secno(i) = il[i+1]; > > > f.fd_formb_secsize(i) = secsize; > > > } > > > - if(ioctl(fd, FD_FORM, (caddr_t)&f) < 0) > > > - err(EX_OSERR, "ioctl(FD_FORM)"); > > > + (void)ioctl(fd, FD_FORM, (caddr_t)&f); > > > } > > > > > > static int > > > > This doesn't work any more. This time i get > > niobe# fdformat fd0 > > Format 1440K floppy `/dev/fd0'? (y/n): y > > Processing done. > > > > where only the first E takes some time to be printed, and all subsequent > > ones are printed instantaneously, that is all other formatting is not > > tried. In principle the formatting process must try each of the > > "sectors" in turn, and can come up with a series of V and F. > > > > Moreover, trying to write to the floppy: > > niobe# dd if=/dev/zero of=/dev/fd0 conv=noerror > > dd: /dev/fd0: Input/output error > > 5+0 records in > > 4+0 records out > > 2048 bytes transferred in 4.054404 secs (505 bytes/sec) > > > > I don't expect such result. Traditionnally writing works, while reading > > may fail. > > Maybe I misunderstand what you're saying, but ... > When I try to write to a floppy that has *not* been > successfully formatted, I very much expect to get > Input/output error. Anything else would be a bug. > > Best regards >Oliver The floppy has certainly be formatted, in the past. Perhaps i remember badly, i have not used floppies since years, but in this case the behavior with Windows, Linux and ancient FreeBSD was that you could write to the floppy, but could encounter errors while reading. Using dd conv=noerror allowed to recover the valid part. Under Windows you could very well use floppies partly damaged with bad blocks or tracks. Here the driver seems to bail out at the first error, so that the above commands run much faster than they should, a few seconds, while something of the order of a minute should be more realistic. -- Michel TALON ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
Michel Talon wrote: > John Baldwin wrote: > > It looks like the ioctl to format a track used to never report failures > > from > > the controller. The newer driver does. What I've done with fdformat is > > to > > make it just ignore the errors in userland instead. Try this: > > > > Index: fdformat.c > > === > > --- fdformat.c(revision 183112) > > +++ fdformat.c(working copy) > > @@ -75,8 +75,7 @@ > > f.fd_formb_secno(i) = il[i+1]; > > f.fd_formb_secsize(i) = secsize; > > } > > - if(ioctl(fd, FD_FORM, (caddr_t)&f) < 0) > > - err(EX_OSERR, "ioctl(FD_FORM)"); > > + (void)ioctl(fd, FD_FORM, (caddr_t)&f); > > } > > > > static int > > This doesn't work any more. This time i get > niobe# fdformat fd0 > Format 1440K floppy `/dev/fd0'? (y/n): y > Processing done. > > where only the first E takes some time to be printed, and all subsequent > ones are printed instantaneously, that is all other formatting is not > tried. In principle the formatting process must try each of the > "sectors" in turn, and can come up with a series of V and F. > > Moreover, trying to write to the floppy: > niobe# dd if=/dev/zero of=/dev/fd0 conv=noerror > dd: /dev/fd0: Input/output error > 5+0 records in > 4+0 records out > 2048 bytes transferred in 4.054404 secs (505 bytes/sec) > > I don't expect such result. Traditionnally writing works, while reading > may fail. Maybe I misunderstand what you're saying, but ... When I try to write to a floppy that has *not* been successfully formatted, I very much expect to get Input/output error. Anything else would be a bug. Best regards Oliver -- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M. Handelsregister: Registergericht Muenchen, HRA 74606, Geschäftsfuehrung: secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün- chen, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd "The most important decision in [programming] language design concerns what is to be left out." -- Niklaus Wirth ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Wed, Sep 17, 2008 at 05:13:39PM -0400, John Baldwin wrote: > On Wednesday 17 September 2008 11:04:33 am Michel Talon wrote: > > Hello, > > > > when testing FreeBSD-7.1-BETA i discovered that the floppy disk > > controller doesn't work correctly. Trying to format a floppy (perhaps > > with bad blocks) i get: > > Processing fdformat: ioctl(FD_FORM): Device not configured > > instead of the normal E letter. I then checked the same problem is > > present on FreeBSD-6.3 and it has been reported by Beech Rintoul (*) in > > 2006! Of course the floppy disk driver is particularly messy, but > > this is not pretty. > > > > (*) i386/103862: Error with fdformat > > It looks like the ioctl to format a track used to never report failures from > the controller. The newer driver does. What I've done with fdformat is to > make it just ignore the errors in userland instead. Try this: > > Index: fdformat.c > === > --- fdformat.c(revision 183112) > +++ fdformat.c(working copy) > @@ -75,8 +75,7 @@ > f.fd_formb_secno(i) = il[i+1]; > f.fd_formb_secsize(i) = secsize; > } > - if(ioctl(fd, FD_FORM, (caddr_t)&f) < 0) > - err(EX_OSERR, "ioctl(FD_FORM)"); > + (void)ioctl(fd, FD_FORM, (caddr_t)&f); > } > > static int > > > -- > John Baldwin This doesn't work any more. This time i get niobe# fdformat fd0 Format 1440K floppy `/dev/fd0'? (y/n): y Processing done. where only the first E takes some time to be printed, and all subsequent ones are printed instantaneously, that is all other formatting is not tried. In principle the formatting process must try each of the "sectors" in turn, and can come up with a series of V and F. Moreover, trying to write to the floppy: niobe# dd if=/dev/zero of=/dev/fd0 conv=noerror dd: /dev/fd0: Input/output error 5+0 records in 4+0 records out 2048 bytes transferred in 4.054404 secs (505 bytes/sec) I don't expect such result. Traditionnally writing works, while reading may fail. Here reading fails with incoherent messages: dd: /dev/fd0: Device not configured 3+0 records in 3+0 records out 1536 bytes transferred in 2.595216 secs (592 bytes/sec) repeated a large number of times. But nothing in dmesg, contrary to the tradition which showed the defective sectors. In conclusion i am under the impression that the in kernel driver is severely botched. Of course nobody uses floppies any more, but this is quite ugly. -- Michel TALON ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: floppy disk controller broken
On Wednesday 17 September 2008 11:04:33 am Michel Talon wrote: > Hello, > > when testing FreeBSD-7.1-BETA i discovered that the floppy disk > controller doesn't work correctly. Trying to format a floppy (perhaps > with bad blocks) i get: > Processing fdformat: ioctl(FD_FORM): Device not configured > instead of the normal E letter. I then checked the same problem is > present on FreeBSD-6.3 and it has been reported by Beech Rintoul (*) in > 2006! Of course the floppy disk driver is particularly messy, but > this is not pretty. > > (*) i386/103862: Error with fdformat It looks like the ioctl to format a track used to never report failures from the controller. The newer driver does. What I've done with fdformat is to make it just ignore the errors in userland instead. Try this: Index: fdformat.c === --- fdformat.c (revision 183112) +++ fdformat.c (working copy) @@ -75,8 +75,7 @@ f.fd_formb_secno(i) = il[i+1]; f.fd_formb_secsize(i) = secsize; } - if(ioctl(fd, FD_FORM, (caddr_t)&f) < 0) - err(EX_OSERR, "ioctl(FD_FORM)"); + (void)ioctl(fd, FD_FORM, (caddr_t)&f); } static int -- John Baldwin ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
floppy disk controller broken
Hello, when testing FreeBSD-7.1-BETA i discovered that the floppy disk controller doesn't work correctly. Trying to format a floppy (perhaps with bad blocks) i get: Processing fdformat: ioctl(FD_FORM): Device not configured instead of the normal E letter. I then checked the same problem is present on FreeBSD-6.3 and it has been reported by Beech Rintoul (*) in 2006! Of course the floppy disk driver is particularly messy, but this is not pretty. (*) i386/103862: Error with fdformat -- Michel TALON ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"