lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 11 Jun 2016 01:02:55 +0200
From:	Wim Osterholt <wim@....tudelft.nl>
To:	jikos@...nel.org
Cc:	Wim Osterholt <wim@....tudelft.nl>, linux-kernel@...r.kernel.org
Subject: disfunctional floppy driver in kernels 4.5, 4.6 and 4.7

L.S.

up to vanilla kernel 4.4.13 floppy functionality performs like it should.
(On an x86 PC that is. With a 1.44MB diskette drive.)
>From kernel 4.5* and up it changed to barely usable.

After a virgin start (cold or warm boot) with an empty diskette drive and
then loaded with a standard 720K diskette you may run 'mdir' (from mtools)
and it shows the directory fine.
The first time you load a standard 1.44MB diskette (wether it is a virgin
start or after a 720K disktette) and you run mdir, it says literally:

 plain_io: Input/output error
 init A: could not read boot sector
 Cannot initialize 'A:'

After this, all subsequent runs of mdir will do fine on both floppies.
However, most of my floppies are in a different format. (1.6MB)
I rely on 'setfdprm' (from fdutils) to set the correct parameters.

setfdprm /dev/fd0 1600/1440
/dev/fd0: Invalid argument

Strace shows me:
...
open(/dev/fd0, O_ACCMODE) = -1

So this actually means that 'invalid argument' refers to O_ACCMODE.

At all kernels I see no changed rights in:
ls -al /dev/fd0
 brw-rw---- 1 root disk 2, 0 May 13 16:43 /dev/fd0

It looks to me that the code in floppy.c is quite old; no changes here.
So the bug is elsewhere in the kernel.

Could someone please explain and repair the magic that is happening here?

Thanks in advance, Wim Osterholt.


----- wim@....tudelft.nl -----

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ