[Bug 2132150] Re: dd: O_DIRECT partial block writes fail
Launchpad Bug Tracker
2132150 at bugs.launchpad.net
Wed Feb 11 00:17:14 UTC 2026
This bug was fixed in the package rust-coreutils - 0.6.0-0ubuntu1
---------------
rust-coreutils (0.6.0-0ubuntu1) resolute; urgency=medium
* New usptream version (LP: #2139697)
* Fixes:
- comm does not work as expected with process substitution (LP: #2138315)
- git: FTBFS in Resolute (LP: #2138217)
- tee with multiple --append fails in rust corutils (LP: #2134578)
- echo 1 | sort | head -n0: sort: write failed: 'standard output':
Broken pipe (LP: #2133156)
- env: Rust unwrap with UTF-8 symbols in environment variables
(LP: #2132941)
- "du" is double-counting hard links when multiple arguments specified
(LP: #2132245)
- dd: O_DIRECT partial block writes fail (LP: #2132150)
- date does not support localized output (LP: #2130859)
- SSH sessions blocked on unavailable automounts by default in Ubuntu 25.10
(LP: #2130843)
- rust-coreutils 'shred' refuses to write to a device (LP: #2130396)
- rust-coreutils stats handling breaks wireguard's wg-quick (LP: #2127851)
- rust-coreutils:dd: Broken pipe (LP: #2125943)
- /usr/bin/sort: -k option does not behave as GNU's sort (LP: #2125504)
- uutils wc crashed with SIGABRT on logout (LP: #2122166)
- who, pinky are empty - need to talk to logind (LP: #2117771)
* Drop applied patches:
- use-mem-zeroed.diff: The timespec C-binding struct has been replaced
by the safe abstraction nix::sys::time::TimeSpec. Padding should now
be handled internally for 32-bit architectures.
* Refresh patches:
- Tweak-release-build-profile.patch
- build-stty.patch
- dd-ensure-full-writes.patch
- fix-prefix.diff
- glibc-2.42.patch
- require-utilities-to-be-invoked-using-matching-path.patch
- use-l10n-translations-in-makefile.patch
- workspace-exclude.patch
* Add patch:
- prevent-stty-termios2-on-ppc64el.patch: The termios2 header is not
always available or exposed on ppc64el systems. Use the standard termios
interface instead to avoid build failures on such systems.
* Skip failing tests:
(s390x)
- test_env::test_simulation_of_terminal_for_stdout_only
- test_nohup::test_nohup_stderr_to_stdout
- test_nohup::test_nohup_with_pseudo_terminal_emulation_on_stdin_stdout_stderr_get_replaced
- test_touch::test_touch_changes_time_of_file_in_stdout
(amd64v3)
- test_dd::test_stdin_stdout_skip_w_multiplier
* Re-enable previously failing tests:
- test_chown::test_chown_only_group_id_nonexistent_group
- test_chown::test_chown_only_user_id_nonexistent_user
- test_expr::test_long_input
- test_factor::test_parallel
- test_install::test_install_and_strip
- test_install::test_install_and_strip_with_program
- test_ls::test_device_number
- test_ls::test_localized_possible_values
- test_od::test_od_options_after_filename
- test_od::test_suppress_duplicates
- test_sort::
+ test_argument_suggestion
+ test_clap_localization_help_message
+ test_clap_localization_invalid_value
+ test_clap_localization_unknown_argument
+ test_error_colors_disabled
+ test_error_colors_enabled
+ test_french_translations
+ test_help_colors_disabled
+ test_help_colors_enabled
- test_stat::
+ test_mount_point_basic
+ test_mount_point_combined_with_other_specifiers
+ test_multi_files
+ test_normal_format
+ test_printf
+ test_symlinks
+ test_terse_fs_format
- test_error_messages_french_translation
- test_french_colored_error_messages
- test_help_messages_french_translation
- util_invalid_name_invalid_command
-- Simon Johnsson <simon.johnsson at canonical.com> Tue, 03 Feb 2026
17:53:04 +0100
** Changed in: rust-coreutils (Ubuntu)
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to rust-coreutils in Ubuntu.
https://bugs.launchpad.net/bugs/2132150
Title:
dd: O_DIRECT partial block writes fail
Status in rust-coreutils:
Fix Released
Status in rust-coreutils package in Ubuntu:
Fix Released
Bug description:
In the rust-coreutils versions currently in the archive, dd fails to
write partial blocks with the O_DIRECT flag. This is currently causing
autopkgtest failures for packages such as cryptsetup.
This issue is known upstream[1] and has been fixed in rust-coreutils
0.4.0[2].
Upgrading rust-coreutils to 0.4.0 will fix this bug.
================
Bug reproduction
================
Create a file with a size that's not a multiple of block size (3 8K blocks + 511 bytes):
root at test:~# for run in {1..25087}; do echo -n -e '\x42' >> test_direct_input.iso; done
root at test:~# dd if=/root/test_direct_input.iso of=/root/test_direct_output.img oflag=direct bs=8192 status=none
dd: IO error: Invalid input
This bug is reproducible for rust-coreutils 0.2.2 and 0.3.0.
[1]: https://github.com/uutils/coreutils/issues/9003
[2]: https://github.com/uutils/coreutils/pull/9016
To manage notifications about this bug go to:
https://bugs.launchpad.net/rust-coreutils/+bug/2132150/+subscriptions
More information about the foundations-bugs
mailing list