Re: Questions about mkfs -A option

2012-10-24 Thread Wang Sheng-Hui
On 2012年10月24日 17:44, Alex Lyakas wrote: > Hi Wang, > if you just look at the code in find_free_dev_extent(): > u64 search_start = 0; > ... > search_start = max((u64)1024 * 1024, search_start); > if (root->fs_info->alloc_start + num_bytes <= device->total_bytes) > search_start = max(root->fs

[PATCH] btrfs-progs: avoid memory leak in find_and_setup_log_root

2012-10-24 Thread Wang Sheng-Hui
In find_and_setup_log_root, the malloced log_root would be leaked if we have bytenr = 0, which would happen at our mkfs stage. Move the memory allocation after the bytenr check, and add allocation failure check. Signed-off-by: Wang Sheng-Hui --- disk-io.c |6 +- 1 files changed, 5 inser

Re: [PATCH 1/2] Btrfs: don't check the permission of the subvolume which we want to delete

2012-10-24 Thread Miao Xie
On Mon, 22 Oct 2012 19:00:18 +0200, Goffredo Baroncelli wrote: > On 2012-10-22 13:38, Miao Xie wrote: >> Step to reproduce: >> # mkfs.btrfs >> # mount -o user_subvol_rm_allowed >> # mkdir /dir0 >> # chmod 777 /dir0 >> # btrfs sub snap /dir0/snap0 >> # su -c "btrfs sub del /dir0/snap0" -s

Re: [PATCH v2] Change the check for PageReadahead into an else-if

2012-10-24 Thread Fengguang Wu
On Thu, Oct 25, 2012 at 02:56:04AM +0530, raghu.prabh...@gmail.com wrote: > From: Raghavendra D Prabhu > > >From 51daa88ebd8e0d437289f589af29d4b39379ea76, page_sync_readahead coalesces > async readahead into its readahead window, so another checking for that again > is > not required. > > Versi

Re: device delete, error removing device [SOLVED]

2012-10-24 Thread Chris Murphy
On Oct 24, 2012, at 3:30 PM, Goffredo Baroncelli wrote: > On 2012-10-24 21:13, Chris Murphy wrote: >> >> It's an interesting solution, but difficult for a larger file system. >> Or at least, could be very time consuming. > It is not a solution but a workaround. Understood. > >> Aside from th

Re: device delete, error removing device [SOLVED]

2012-10-24 Thread Goffredo Baroncelli
On 2012-10-24 21:13, Chris Murphy wrote: > > On Oct 24, 2012, at 12:06 PM, Goffredo Baroncelli > wrote: >>> >> >> I was able to reproduce it: >> >> - I filled the filesystem until I got "No space left on device". > > I didn't even need to get that far. > > >> So it seems that I spread all t

[PATCH v2] Change the check for PageReadahead into an else-if

2012-10-24 Thread raghu . prabhu13
From: Raghavendra D Prabhu >From 51daa88ebd8e0d437289f589af29d4b39379ea76, page_sync_readahead coalesces async readahead into its readahead window, so another checking for that again is not required. Version 2: Fixed the incorrect indentation. Signed-off-by: Raghavendra D Prabhu --- fs/btrfs/

Re: [PATCH] Change the check for PageReadahead into an else-if

2012-10-24 Thread Raghavendra D Prabhu
Hi, * On Tue, Oct 16, 2012 at 10:02:44PM -0400, KOSAKI Motohiro wrote: On Tue, Oct 16, 2012 at 10:00 PM, Fengguang Wu wrote: On Wed, Oct 17, 2012 at 12:28:05AM +0530, raghu.prabh...@gmail.com wrote: From: Raghavendra D Prabhu >From 51daa88ebd8e0d437289f589af29d4b39379ea76, page_sync_read

Re: device delete, error removing device [SOLVED]

2012-10-24 Thread Chris Murphy
On Oct 24, 2012, at 12:06 PM, Goffredo Baroncelli wrote: >> > > I was able to reproduce it: > > - I filled the filesystem until I got "No space left on device". I didn't even need to get that far. > So it seems that I spread all the data to the other disk, filling up the > smaller ones. So

Re: device delete, error removing device [SOLVED]

2012-10-24 Thread Goffredo Baroncelli
On 2012-10-24 00:29, Chris Murphy wrote: > > On Oct 23, 2012, at 4:16 PM, Goffredo Baroncelli > wrote: > > I think it needs to be bigger. I was at a bit over 8GB file size for > a 9GB file system (3x 3GB drives). There was about 300MB of free > space left according to df -h, which was for the w

Re: help with btrfs send

2012-10-24 Thread Arne Jansen
On 10/24/2012 06:53 PM, frantz.hacquard wrote: > Hi, > > I don't know if it's the good place to ask my question. > I'm a french student who studies IT. > I'm working on a project with the btrfs filesystem on Gentoo 64 bits. > I have to create snapshots and to compare the differences between them >

Re: help with btrfs send

2012-10-24 Thread Rory Campbell-Lange
On 24/10/12, frantz.hacquard (frantz.hacqu...@ensi-bourges.fr) wrote: > I don't know if it's the good place to ask my question. > I'm a french student who studies IT. > I'm working on a project with the btrfs filesystem on Gentoo 64 bits. > I have to create snapshots and to compare the differences

Re: [PATCH] Btrfs: recheck bio against block device when we map the bio

2012-10-24 Thread Alex Elder
On 10/22/2012 02:55 PM, Josef Bacik wrote: > On Mon, Oct 22, 2012 at 10:14:58AM -0600, Alex Elder wrote: >> On 10/19/2012 04:01 PM, Josef Bacik wrote: >>> Alex reported a problem where we were writing between chunks on a rbd >>> device. The thing is we do bio_add_page using logical offsets, but th

Re: [PATCH] Btrfs: drop locks before calling read_tree_block from get_old_root

2012-10-24 Thread Liu Bo
On 10/24/2012 06:45 PM, Jan Schmidt wrote: > get_old_root needs its lock on the root node only to clone that buffer. > However, when we call read_tree_block, we know already that we're not > going to clone the root node. Thus we can safely unlock before, to avoid > issues where read_tree_block make

[PATCH] Btrfs: drop locks before calling read_tree_block from get_old_root

2012-10-24 Thread Jan Schmidt
get_old_root needs its lock on the root node only to clone that buffer. However, when we call read_tree_block, we know already that we're not going to clone the root node. Thus we can safely unlock before, to avoid issues where read_tree_block makes potentially sleeping allocations. Signed-off-by:

Re: Help understanding btrfsck output...

2012-10-24 Thread Alex Lyakas
Swami, code is your friend again:) #define I_ERR_FILE_NBYTES_WRONG (1 << 10) // 400 ... if (rec->found_size != rec->nbytes) rec->errors |= I_ERR_FILE_NBYTES_WRONG; >From what I recently learned "nbytes" for an inode is the total sum of extents this inode has (assuming this is a re

Re: [PATCH 2/2] Btrfs: do not delete a subvolume which is in a R/O subvolume

2012-10-24 Thread cwillu
On Wed, Oct 24, 2012 at 4:03 AM, Miao Xie wrote: > On Mon, 22 Oct 2012 05:57:12 -0600, cwillu wrote: >> On Mon, Oct 22, 2012 at 5:39 AM, Miao Xie wrote: >>> Step to reproduce: >>> # mkfs.btrfs >>> # mount >>> # btrfs sub create /subv0 >>> # btrfs sub snap /subv0/snap0 >>> # change /subv0

Re: [PATCH 2/2] Btrfs: do not delete a subvolume which is in a R/O subvolume

2012-10-24 Thread Miao Xie
On Mon, 22 Oct 2012 05:57:12 -0600, cwillu wrote: > On Mon, Oct 22, 2012 at 5:39 AM, Miao Xie wrote: >> Step to reproduce: >> # mkfs.btrfs >> # mount >> # btrfs sub create /subv0 >> # btrfs sub snap /subv0/snap0 >> # change /subv0 from R/W to R/O >> # btrfs sub del /subv0/snap0 >> >> We

Re: inode_cache

2012-10-24 Thread Alex Lyakas
Swami, I believe the only thing that "inode_cache" mount option does is allowing to reuse inode numbers. Like if you had a file with inode number=X and you delete this file, then you will never have inode=X in the same file tree (subvolume) again. You can look at btrfs_find_free_ino() that allocate

Re: [PATCH 3/6] Btrfs: tree mod log's old roots could still be part of the tree

2012-10-24 Thread Liu Bo
On 10/23/2012 09:55 PM, Jan Schmidt wrote: > Tree mod log treated old root buffers as always empty buffers when starting > the rewind operations. However, the old root may still be part of the > current tree at a lower level, with still some valid entries. > > Signed-off-by: Jan Schmidt > --- >

Re: Questions about mkfs -A option

2012-10-24 Thread Alex Lyakas
Hi Wang, if you just look at the code in find_free_dev_extent(): u64 search_start = 0; ... search_start = max((u64)1024 * 1024, search_start); if (root->fs_info->alloc_start + num_bytes <= device->total_bytes) search_start = max(root->fs_info->alloc_start, search_start); ... key.objectid =

[BUG][PATCH][BTRFS-PROGS] Bug overflow fix

2012-10-24 Thread Rock Lee
If there's is a long name directory exists in the /dev, then an overflow will hit in function utils.c btrfs_scan_one_dir:1013! The minimal fix is to use snprintf instead of strcpy. The reason why not using strncpy is that, if there is no null byte among the first n bytes of src, the string place

Re: [PATCH] btrfs: Return EINVAL when length to trim is less than FSB

2012-10-24 Thread Li Zefan
On 2012/10/24 16:15, Lukáš Czerner wrote: > On Tue, 16 Oct 2012, Lukas Czerner wrote: > >> Date: Tue, 16 Oct 2012 11:34:36 +0200 >> From: Lukas Czerner >> To: linux-btrfs@vger.kernel.org >> Cc: jba...@fusionio.com, Lukas Czerner >> Subject: [PATCH] btrfs: Return EINVAL when length to trim is les

Re: [PATCH] btrfs: Return EINVAL when length to trim is less than FSB

2012-10-24 Thread Lukáš Czerner
On Tue, 16 Oct 2012, Lukas Czerner wrote: > Date: Tue, 16 Oct 2012 11:34:36 +0200 > From: Lukas Czerner > To: linux-btrfs@vger.kernel.org > Cc: jba...@fusionio.com, Lukas Czerner > Subject: [PATCH] btrfs: Return EINVAL when length to trim is less than FSB > > Currently if len argument in btrfs_