Bug 326744 - Slow end of file transfer to usb device.
Summary: Slow end of file transfer to usb device.
Status: RESOLVED DUPLICATE of bug 281270
Alias: None
Product: frameworks-kio
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 5.51.0
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: David Faure
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2013-10-27 15:09 UTC by Davide Marcelli
Modified: 2018-11-20 14:11 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
progress bar already reached 100% but usb device unmounting fails (537.75 KB, image/png)
2018-10-29 16:01 UTC, Patrick Silva
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Davide Marcelli 2013-10-27 15:09:49 UTC
When i transfer a file (usually a big file 600, 700 mb, but it happens also with smaller files) to a usb drive, kio took a lot of time to close the transfer process (4-5 minutes), even if the transfer is completely ended, in fact i can stop the process when transfer speed is 0 and the progress bar is at 100% and the file is copied without problems.
I noticed this bug in Archlinux, Chakra and Kubuntu 13.04 and 13.10.

Reproducible: Always

Steps to Reproduce:
1. Copy a file
2. Paste to a usb drive
Comment 1 KnappeMario 2013-11-14 20:53:16 UTC
I have the same problem with slow end of file transfer end to usb device. Its happens with Kernel 3.11 and 3.12 so it's not looking like a kio Bug.
I

Kubuntu 13.10 64Bit
KDE 4.11.2
Kernel 3.11 and 3.12


DebugMsg from a file transfer:

dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl: KDirLister(0x1dcd1a0)  url= KUrl("trash:/")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl: KDirLister(0x1ea9bc0)  url= KUrl("trash:/")
dolphin(3380) KBookmarkManager::notifyChanged: KBookmarkManager::notifyChanged (  "" )
dolphin(3380)/kio (KDirListerCache) KDirListerCache::listDir: Entry already in use: KUrl("trash:/")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl: KDirLister(0x1da03e0)  url= KUrl("trash:/")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::listDir: Entry already in use: KUrl("trash:/")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl: KDirLister(0x1ceb620)  url= KUrl("trash:/")
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0x1c2eec0)
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::StatJob(0x1c2eec0) KIO::Slave(0x190c8e0)
dolphin(3380)/kio (KIOJob) KIO::CopyJobPrivate::statCurrentSrc: fast path! found info about KUrl("file:///home/mario/Kubuntu/kubuntu-13.10-desktop-amd64-test.iso") in KDirLister
dolphin(3380)/kio (KIOJob) KIO::CopyJobPrivate::statCurrentSrc: Stating finished. To copy: 1023410176 , available: 3058626560
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0x1c7aec0)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0x1c05a10)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update started in KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotFileDirty: Doing stat on: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::cancelJob: KIO::ListJob(0x1c05a10) QObject(0x0)
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::ListJob(0x1c05a10) QObject(0x0)
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0x1cb8a80)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update started in KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::cancelJob: KIO::ListJob(0x1cb8a80) QObject(0x0)
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::ListJob(0x1cb8a80) QObject(0x0)
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0x1da03e0)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update started in KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (Slave) KIO::Slave::createSlave: createSlave "file" for KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (KIOConnection) KIO::ConnectionServer::listenForRemote: Listening on  "local:/tmp/ksocket-mario/dolphinnT3380.slave-socket"
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::ListJob(0x1da03e0) KIO::Slave(0x1dcdba0)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotUpdateResult: finished update KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
"/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
dolphin(3380)/kio (Slave) KIO::Slave::kill: killing slave pid 3506 ( "thumbnail://" )
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::DirectCopyJob(0x1c7aec0) KIO::Slave(0x190c8e0)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotFilesAdded: KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0x1a56d10)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update started in KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::ListJob(0x1a56d10) KIO::Slave(0x190c8e0)
dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotUpdateResult: finished update KUrl("file:///media/mario/AF73-3D91")
dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
Comment 2 KnappeMario 2013-11-14 20:54:01 UTC
(In reply to comment #1)
> I have the same problem with slow end of file transfer end to usb device.
> Its happens with Kernel 3.11 and 3.12 so it's not looking like a kio Bug.
> I
> 
> Kubuntu 13.10 64Bit
> KDE 4.11.2
> Kernel 3.11 and 3.12
> 
> 
> DebugMsg from a file transfer:
> 
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl:
> KDirLister(0x1dcd1a0)  url= KUrl("trash:/")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl:
> KDirLister(0x1ea9bc0)  url= KUrl("trash:/")
> dolphin(3380) KBookmarkManager::notifyChanged:
> KBookmarkManager::notifyChanged (  "" )
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::listDir: Entry already
> in use: KUrl("trash:/")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl:
> KDirLister(0x1da03e0)  url= KUrl("trash:/")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::listDir: Entry already
> in use: KUrl("trash:/")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::stopListingUrl:
> KDirLister(0x1ceb620)  url= KUrl("trash:/")
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob:
> KIO::SimpleJob(0x1c2eec0)
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished:
> KIO::StatJob(0x1c2eec0) KIO::Slave(0x190c8e0)
> dolphin(3380)/kio (KIOJob) KIO::CopyJobPrivate::statCurrentSrc: fast path!
> found info about
> KUrl("file:///home/mario/Kubuntu/kubuntu-13.10-desktop-amd64-test.iso") in
> KDirLister
> dolphin(3380)/kio (KIOJob) KIO::CopyJobPrivate::statCurrentSrc: Stating
> finished. To copy: 1023410176 , available: 3058626560
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob:
> KIO::SimpleJob(0x1c7aec0)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory:
> KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob:
> KIO::SimpleJob(0x1c05a10)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update
> started in KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotFileDirty: Doing
> stat on: "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory:
> KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::cancelJob:
> KIO::ListJob(0x1c05a10) QObject(0x0)
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished:
> KIO::ListJob(0x1c05a10) QObject(0x0)
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob:
> KIO::SimpleJob(0x1cb8a80)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update
> started in KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory:
> KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::cancelJob:
> KIO::ListJob(0x1cb8a80) QObject(0x0)
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished:
> KIO::ListJob(0x1cb8a80) QObject(0x0)
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob:
> KIO::SimpleJob(0x1da03e0)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update
> started in KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (Slave) KIO::Slave::createSlave: createSlave "file" for
> KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (KIOConnection) KIO::ConnectionServer::listenForRemote:
> Listening on  "local:/tmp/ksocket-mario/dolphinnT3380.slave-socket"
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished:
> KIO::ListJob(0x1da03e0) KIO::Slave(0x1dcdba0)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotUpdateResult:
> finished update KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
> dolphin(3380)/kio (Slave) KIO::Slave::kill: killing slave pid 3506 (
> "thumbnail://" )
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished:
> KIO::DirectCopyJob(0x1c7aec0) KIO::Slave(0x190c8e0)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotFilesAdded:
> KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory:
> KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::doJob:
> KIO::SimpleJob(0x1a56d10)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::updateDirectory: update
> started in KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished:
> KIO::ListJob(0x1a56d10) KIO::Slave(0x190c8e0)
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::slotUpdateResult:
> finished update KUrl("file:///media/mario/AF73-3D91")
> dolphin(3380)/kio (KDirListerCache) KDirListerCache::processPendingUpdates:
> "/media/mario/AF73-3D91/kubuntu-13.10-desktop-amd64-test.iso"
Comment 3 Nate Graham 2018-04-16 19:19:14 UTC
Is this still an issue with KDE Frameworks 5.45 or greater?
Comment 4 Patrick Silva 2018-04-20 17:09:42 UTC
On Arch Linux (kio 5.45, kernel 4.16.2-2) the situation is exactly the same as described by reporter.
My screencast shows that progress bar and animation in notifications applet stop ~2.5 minutes after the data tramsfer is completed.
Screencast shows copy from my home (EXT4) to my pen drive (FAT32).
https://www.youtube.com/watch?v=-9VcdTmLz88
Comment 5 Andrew Crouthamel 2018-09-28 03:32:41 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 6 Andrew Crouthamel 2018-10-29 02:12:29 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!
Comment 7 Patrick Silva 2018-10-29 15:59:17 UTC
It seems nobody read my post...

(In reply to Patrick Silva from comment #4)
> On Arch Linux (kio 5.45, kernel 4.16.2-2) the situation is exactly the same
> as described by reporter.
> My screencast shows that progress bar and animation in notifications applet
> stop ~2.5 minutes after the data transfer is completed.
> Screencast shows copy from my home (EXT4) to my pen drive (FAT32).
> https://www.youtube.com/watch?v=-9VcdTmLz88

Situation is still the same on Arch Linux.

KDE Plasma Version: 5.14.2
Qt Version: 5.12.0
KDE Frameworks Version: 5.51.0
Kernel Version: 4.18.16-arch1-1-ARCH
Comment 8 Patrick Silva 2018-10-29 16:01:31 UTC
Created attachment 115964 [details]
progress bar already reached 100% but usb device unmounting fails
Comment 9 David Edmundson 2018-11-19 23:03:38 UTC
That's simply how USB devices work.

There's a temporary cache, and there's a flush to the filesystem.

You get it on every OS.
Comment 10 Patrick Silva 2018-11-20 00:39:34 UTC
Current behavior increases data loss risk.
I think that the progress bar should only reach 100% when the device is ready
to be ejected without data loss risk.
Comment 11 Christoph Feck 2018-11-20 10:57:50 UTC

*** This bug has been marked as a duplicate of bug 281270 ***
Comment 12 David Edmundson 2018-11-20 11:58:05 UTC
> I think that the progress bar should only reach 100% when

how?
Comment 13 Patrick Silva 2018-11-20 12:14:27 UTC
(In reply to David Edmundson from comment #12)
> > I think that the progress bar should only reach 100% when
> 
> how?

currently the progress bar reaches 100% before the file transfer is really completed. See the screenshot in comment 8.
Comment 14 David Edmundson 2018-11-20 14:11:55 UTC
Yes, I understand what you're saying should happen. 

But I don't think it's possible. There's not enough info exposed to us, I don't think there's even enough information exposed to the kernel.