Bug 11711

Summary: dd no longer reports errors when it cannot write full records
Product: Busybox Reporter: pete.shanahan
Component: Standard ComplianceAssignee: unassigned
Status: RESOLVED FIXED    
Severity: normal CC: busybox-cvs
Priority: P5    
Version: 1.30.x   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Host: Target:
Build:
Attachments: patch for the coreutils/dd.c source to do the correct check

Description pete.shanahan 2019-03-05 11:23:49 UTC
Created attachment 7966 [details]
patch for the coreutils/dd.c source to do the correct check

This patch: https://git.busybox.net/busybox/commit/?h=1_30_stable&id=394eebed6656dfc2e56a79500b602023000ac415

has caused a regression in dd, where it no longer reports errors when unable to write to the disk e.g. out of space.

The problem is the underlying full_write call no longer returns -1 on error.

All consumers should be checked for this condition, and changed to check for -1 or an incomplete write
Comment 1 pete.shanahan 2019-03-05 11:35:48 UTC
A quick look through the code seems to indicate that dd is the only one with the problem.
Comment 2 Denys Vlasenko 2019-05-14 15:49:44 UTC
Fixed in git, thanks!