http://bugzilla.opensuse.org/show_bug.cgi?id=1198669 http://bugzilla.opensuse.org/show_bug.cgi?id=1198669#c8 --- Comment #8 from David Disseldorp <ddiss@suse.com> --- (In reply to Linus Kardell from comment #4)
Created attachment 858358 [details] debug.trace
It looks as though the I/O failure is coming from a spurious ENOENT in the read path: ... read(0, "r\377\350X\3305j\2217\251\1\311\\\326(\307\7e\363'#\307\344!P\221\211h\34*\307\236"..., 512) = 512 write(1, "r\377\350X\3305j\2217\251\1\311\\\326(\307\7e\363'#\307\344!P\221\211h\34*\307\236"..., 512) = 512 read(0, "D\234J\321\256\313\262\332\32\350\352\236Rg\253\300p\254t\205\235=\205g\322M\n}\372\302\0I"..., 512) = 512 write(1, "D\234J\321\256\313\262\332\32\350\352\236Rg\253\300p\254t\205\235=\205g\322M\n}\372\302\0I"..., 512) = 512 read(0, 0x5585832ea000, 512) = -1 ENOENT (Filen eller katalogen finns inte) Wading through the ntfs3 file read code-path there appear to be a handful of ENOENT return sites, with the (IMO) most probable being in the compression specific attr_wof_frame_info() path: #ifdef CONFIG_NTFS3_LZX_XPRESS /* Read header of Xpress/LZX file to get info about frame. */ attr_wof_frame_info() attr_load_runs_range(type=ATTR_DATA, name=WOF_NAME) attr_load_runs_vcn() ->attr = ni_find_attr(ni, NULL, NULL, type, name, name_len, &vcn, NULL); if (!attr) { /* Is record corrupted? */ return -ENOENT; } .. ntfs_bio_pages() if (!run_lookup_entry(run, vcn, &lcn, &clen, &run_idx)) { err = -ENOENT; ... } if (!run_get_entry(run, ++run_idx, &vcn, &lcn, &clen) || vcn != vcn_next) { err = -ENOENT; I'll work on preparing some ftrace instructions to profile some of the above call sites. -- You are receiving this mail because: You are on the CC list for the bug.