NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/49971: Massive directory corruption with kernels newer than 11.Jun.2015



>Number:         49971
>Category:       kern
>Synopsis:       Massive directory corruption with kernels newer than 11.Jun.2015
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jun 14 11:50:00 +0000 2015
>Originator:     tps%vr-web.de@localhost
>Release:        NetBSD 5.2_STABLE June, 13th 2015 18:17
>Environment:
System: NetBSD test-sct-bsn5-muc.bfs.de 5.2_STABLE NetBSD 5.2_STABLE (GENERIC) #32: Sat Jun 13 18:17:27 CEST 2015 jenkins%test-sct-bsn5-muc.bfs.de@localhost:/usr/obj/sys/arch/amd64/compile/GENERIC amd64
Architecture: x86_64
Machine: amd64
>Description:
	Copying files to the system (CVS-Checkout done on an other system)
        leads to directory corruption. Directories are marked as "deleted",
        but exist halfways. Link count of these is 1, but should be 2.
        Such directories cant be deleted, but are not listed. cd into them
        is possible. It is even possible to create files within these directories
        You may delete those files, fill them with data, edit them.
        Trying to remove the directory leads to "Directory not empty". Listing the
        directory lists only "." and "..". No other files. Recursively deleting with
        "rm -rf </path/to/empty/not/deletable/directory>" may, for example, list:
        /usr/src/CVS/S/mod, if /usr/src/CVS is reported as not empty.
        Listing "/usr/src/CVS" will only show "." and "..". cd into /usr/src/CVS/S
        is possible! Creating a file with "touch <filename>" works too. You may now
        delete the created file with "rm <filename>" (it will even be possible to delete it
        using "rm -rf /usr/src/CVS"). But directory /usr/src/CVS will be reported as being not
        empty and will not be deleted.
>How-To-Repeat:
	Compile a new kernel, install it, then copy a lot of files to this system, while deleting files and directories. Easiest way: do an rsync for some big directory, then change things at source and do an rsync (with --delete) again.

>Fix:

Unknown



Home | Main Index | Thread Index | Old Index