[prev in list] [next in list] [prev in thread] [next in thread] 

List:       konq-bugs
Subject:    [Bug 179214] New: frequent crashes when renaming/deleting folder ->
From:       Marcel Partap <mpartap () gmx ! net>
Date:       2008-12-31 14:42:20
Message-ID: bug-179214-5021 () http ! bugs ! kde ! org/
[Download RAW message or body]

http://bugs.kde.org/show_bug.cgi?id=179214

           Summary: frequent crashes when renaming/deleting folder -> race
                    condition on _k_slotDeleteItems?
           Product: konqueror
           Version: unspecified
          Platform: unspecified
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
        AssignedTo: konq-bugs@kde.org
        ReportedBy: mpartap@gmx.net


Version:           4.1.86 (KDE 4.1.86 (KDE 4.2 >= 20081221)) (using 4.1.86 (KDE
4.1.86 (KDE 4.2 >= 20081221)), Gentoo)
Compiler:          x86_64-pc-linux-gnu-gcc
OS:                Linux (x86_64) release 2.6.28-rc9-git1

can't really track this down right now but as i'm just reorganizing my disks it
happened a couple of times now..

right before the troubling assertion i added a kDebug that dumps the hash list
checked for the item.. example output for a crash followin.

konqueror(9845)/kio (KDirListerCache) KDirListerCache::emitRedirections:
KUrl("file:///mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ/series") ->
KUrl("file:///mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ/misc")
konqueror(9845)/kio (KDirListerCache) KDirListerCache::removeDirFromCache:
KUrl("file:///mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ/series")
konqueror(9845)/kio (KDirModel) KDirModelPrivate::_k_slotRefreshItems:
dataChanged( "[invalid index, i.e. root]"  -  "[invalid index, i.e. root]"
konqueror(9845)/kio (KDirWatch) KDirWatch::setDirty: "KDirWatch-1" emitting
dirty "/mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ"
konqueror(9845)/kio (KDirListerCache) KDirListerCache::slotFileDirty:
"/mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ"
konqueror(9845)/kio (KDirListerCache) KDirListerCache::updateDirectory:
KUrl("file:///mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ")
konqueror(9845)/kio (KDirListerCache) KDirListerCache::updateDirectory: update
started in KUrl("file:///mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ")
konqueror(9845)/kio (KDirListerCache) KDirListerCache::slotUpdateResult:
finished update KUrl("file:///mnt/sdd1/sdc1-reiserfs-move/MovieZ/SerieZ")
konqueror(9845)/kio (KIOJob) KIO::CopyJobPrivate::startRenameJob: This seems to
be a suitable case for trying to rename before stat+[list+]copy+del
konqueror(9845)/kio (KDirWatch) KDirWatchPrivate::inotifyEventReceived: 0
instance(s) monitoring the new dir
"/mnt/sdd1/skeleton/MovieZ/SerieZ/English/misc"
konqueror(9845)/kio (KIOJob) KIO::CopyJobPrivate::slotResultRenaming: Renaming
succeeded, move on
konqueror(9845)/kio (KDirListerCache) KDirListerCache::slotFilesAdded:
"file:///mnt/sdd1/skeleton/MovieZ/SerieZ/English"
konqueror(9845)/kio (KDirListerCache) KDirListerCache::updateDirectory:
KUrl("file:///mnt/sdd1/skeleton/MovieZ/SerieZ/English")
konqueror(9845)/kio (KDirListerCache) KDirListerCache::updateDirectory: update
started in KUrl("file:///mnt/sdd1/skeleton/MovieZ/SerieZ/English")
konqueror(9845)/kio (KDirListerCache) KDirListerCache::slotFilesRemoved: 1
konqueror(9845) KDirModelPrivate::_k_slotDeleteItems: m_childNodesByName: 
QHash(("series", 0x2f3ac50))
konqueror(9845) KDirModelPrivate::_k_slotDeleteItems: url.fileName() =  "misc"
ASSERT: "dirNode->m_childNodesByName.contains(url.fileName())" in file
/mnt/sda3/var/tmp/paludis/kde-base-kdelibs-scm/work/kdelibs-scm/kio/kio/kdirmodel.cpp,
line 471
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = konqueror path = <unknown> pid = 9845
sock_file=/root/.kde/socket-localhost/kdeinit4__

so here _k_slotDeleteItems gets invoked with the old file path for whatever
reason. It happens fairly frequently when you rename/move stuff within a folder
structure, should be easy to replicate. Sorry no fix yet here..


-- 
Configure bugmail: http://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Konq-bugs mailing list
Konq-bugs@mail.kde.org
https://mail.kde.org/mailman/listinfo/konq-bugs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic