Do you get the same behavior when you run dd with iflag=fullblock? Without that flag, it's possible dd's input to read a smaller block than requested (which would correspond with a smaller write to the output).
On Tue, Jun 23, 2020 at 9:28 AM Hashim Aziz via Cygwin <cygwin@cygwin.com> wrote: > I hadn't checked with 512 byte block sizes because of the amount of time > it would have taken, but sure enough have just finished trying with bs=512 > and no block size at all (so dd's default block size, which is either 512 > or 1024) and although each wipe took over 24 hours, they did indeed wipe > all of the sectors. So it seems that there's a bug with regards to how > Cygwin handles the last block when a large (i.e. sane) block size is > selected, and that this bug doesn't occur on actual UNIX-based systems. > > ________________________________ > From: Cygwin <cygwin-boun...@cygwin.com> on behalf of Eliot Moss < > m...@cs.umass.edu> > Sent: 20 June 2020 9:26 PM > To: The Cygwin Mailing List <cygwin@cygwin.com> > Subject: Re: [cygwin] DD bug fails to wipe last 48 sectors of a disk > > On 6/20/2020 1:31 PM, Hashim Aziz via Cygwin wrote: > > To reproduce simply run the following command on a drive (obviously, > this will irreversibly wipe all data): > > > > dd if=/dev/zero of=/dev/sdX bs=4M status=progress > > > > Both drives were attached via internal SATA (by way of a PCIE to SATA > Host Bus Adapter). > > > > Cygwin was running in an elevated window as dd cannot run in Cygwin > without administrator access, at least not on Windows 10 and not when > dealing with raw disks. I was running Avast the first time I discovered > this, and am currently running Windows Defender, so doubt that the AV is > the cause of this. > > > > The hard drives are a Western Digital WD10PURX-64E5EY0 (Serial: > WD-WCC4J6HX189U) and a Kingston SV200S3128G (Serial: 12BA315PKAWK). > > > > I just ran DD for Windows 0.6beta3 with variations of the following > command: > > > > dd.exe if=/dev/zero of=\\.\PHYSICALDRIVEX --progress bs=4M > > > > ...and can confirm that the bug also manifests here, but in a slightly > different way - irrespective of the disk or block size, it fails to wipe > the last 176 sectors of the drive. > > I was going to ask: even with block size 512 bytes? But I guess you > checked that ... > > Regards - Eliot > -- > Problem reports: https://cygwin.com/problems.html > FAQ: https://cygwin.com/faq/ > Documentation: https://cygwin.com/docs.html > Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple > -- > Problem reports: https://cygwin.com/problems.html > FAQ: https://cygwin.com/faq/ > Documentation: https://cygwin.com/docs.html > Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple > -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple