Hi, the proposed patch [1] can still be applied, and the reproducer below is still valid. Please let me know I could fix something in the patch.
[1] https://www.mail-archive.com/bug-tar@gnu.org/msg04443.html Pavel On Sunday, March 16, 2014 10:55:38 PM CET Pavel Raiskup wrote: > Hello François, > > On Thursday, March 13, 2014 14:43:55 François Ouellet wrote: > > When dumping a file which is being actively updated by an application > > (in our case it was an outlook pst file on our samba server), safe_read() > > can sometimes return 0. > > > > When it happens, sparse_dump_region() goes into an infinite loop. > > > > I don't know what the proper fix would be. I just fixed it on our server > > with this: > > thanks for clear report! You can try the attached patch if you wanted (but it > has the same effects as yours one, just the message is little bit different). > Reproducer: > > $ truncate -s 10M file > $ tar cSf archive file > $ truncate -s 5M file > $ tar df archive > > Could we please apply at least something like the patch attached? > Looking at the code, I don't like duplications. I was thinking > about safe_read/blocking_read wrapper with sth. like 'bool may_eof' > argument (and others) to make it possible to deal with errors at one > place (stopped once I realized that it will be somehow bigger code > change). Would you be interested in such patch? > > Pavel