[Sheepdog] [PATCH 1/2] deleting data objects of a vdi before deleting the inode

Liu Yuan namei.unix at gmail.com
Sat Apr 28 05:48:46 CEST 2012


On 04/28/2012 12:00 AM, Christoph Hellwig wrote:

> This patch seems to break deletions of volumes if there was any data
> in them, e.g.
> 
> collie vdi create test 10G
> collie vdi write test (...)
> collie vdi delete test
> collie vdi list
>   Name        Id    Size    Used  Shared    Creation time   VDI id  Tag
>   test         1  0.0 MB  0.0 MB  0.0 MB 2012-04-27 17:49   7c2b25


I think the problem is caused by your patch:

        inode = malloc(sizeof(*inode));
        if (!inode) {
                eprintf("failed to allocate memory\n");
                goto out;
        }

        nr_copies = get_nr_copies(dw->vnodes);
        if (nr_copies > inode->nr_copies)
                nr_copies = inode->nr_copies; <--inode->nr_copies will
get a random value

Thanks,
Yuan




More information about the sheepdog mailing list