transid failed / mount Problem on Linux pc6 3.17.2-1-ARCH #1 SMP PREEMPT Thu Oct 30 20:49:39 CET 2014 x86_64 GNU/Linux

2014-11-11 Thread Juergen Sauer
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi! this event occoured today in the morning. Accidentially the Archive Machine was kickt into hibernation. After reactivating the archive Btrfs filesystem was readonly, after rebooting the system the archive btrfs filesystem was not mountable

[PATCH 1/2] btrfs-progs: rename btrfs_scan_lblkid() to btrfs_scan_devices()

2014-11-11 Thread Karel Zak
It seems like bad idea to use a library name (lblkid) within generic function name. The currently used scanning library is implementation detail and this detail should be hidden for rest of the code. Signed-off-by: Karel Zak k...@redhat.com --- cmds-device.c | 2 +- cmds-filesystem.c | 2 +-

[PATCH 2/2] btrfs-progs: use udev to scan for devices

2014-11-11 Thread Karel Zak
Currently btrfs uses libblkid to scan for block devices with BTRFS. The disadvantage is that this method is expensive. The udevd maintains information about all block devices in udev db and all devices are probed by udevd (it's linked with libblkid). We don't have to duplicate this thing in btrfs.

Re: [PATCH 2/2 v4] btrfs-progs: optimize btrfs_scan_lblkid() for multiple calls

2014-11-11 Thread Karel Zak
On Fri, Oct 31, 2014 at 07:04:58PM +0800, Anand Jain wrote: On 31/10/2014 17:08, Karel Zak wrote: On Fri, Oct 31, 2014 at 12:11:20PM +0800, Anand Jain wrote: btrfs_scan_lblikd() is called by most the device related command functions. And btrfs_scan_lblkid() is most expensive function

[PATCH] mm: check memory reclaim bugs caused fs reentrance

2014-11-11 Thread Dmitry Monakhov
If filesystem holds transaction open 'current-journal_info' it should not performs memory allocations with __GFP_FS flag enabled otherwise this result in fs reentarance which lead to: 1) reentrance to itself : deadlock or internal assertion failure due to incorrect journal credits 1) entrance to

btrfs re-entrance bugs

2014-11-11 Thread Dmitry Monakhov
Dmitry Monakhov dmonak...@openvz.org writes: If filesystem holds transaction open 'current-journal_info' it should not performs memory allocations with __GFP_FS flag enabled otherwise this result in fs reentarance which lead to: 1) reentrance to itself : deadlock or internal assertion

[PATCH 2/2] btrfs-progs: use udev to scan for devices (v2)

2014-11-11 Thread Karel Zak
Currently btrfs uses libblkid to scan for block devices with BTRFS. The disadvantage is that this method is expensive. The udevd maintains information about all block devices in udev db and all devices are probed by udevd (it's linked with libblkid). We don't have to duplicate this thing in btrfs.

Is it safe to refactor struct btrfs_root *root out of these functions?

2014-11-11 Thread Daniel Dressler
Hi I'm gearing up to tackle the Pass fs_info instead of root project suggested on the wiki. I've read through the entire codebase and made note of 102 functions which could be refactored. Three of these do not make any use of their root argument at all, is it safe to refactor these as well?

open_ctree failed after ATA errors

2014-11-11 Thread Florian Bruhin
I have the following setup: - Two harddisks - Both individually encrypted using LUKS - Both combined into a btrfs using the btrfs raid1 feature - The above duplicated twice: - /dev/mapper/data1 and /dev/mapper/data2 - /mnt/data - /dev/mapper/secdata1 and /dev/mapper/secdata2 -

Re: open_ctree failed after ATA errors

2014-11-11 Thread Robert White
The below is a hard disk going bad or other systematic problem at the hardware level (controller card, interrupt conflict, etc). In fact, given ata6.00: irq_stat 0x0800, interface fatal error its pretty much a smoking gun about your controller. Since you just upgraded your kernel I'd

Re: open_ctree failed after ATA errors

2014-11-11 Thread Chris Murphy
On Nov 11, 2014, at 8:51 AM, Florian Bruhin m...@the-compiler.org wrote: I have the following setup: - Two harddisks - Both individually encrypted using LUKS - Both combined into a btrfs using the btrfs raid1 feature - The above duplicated twice: - /dev/mapper/data1 and

kernel = 3.16 saturates I/O endlessly and without reason

2014-11-11 Thread Julien Muchembled
Hello, I upgraded my kernel from 3.15.10 to 3.17.2 and after a while, btrfs kworkers started to read/write data at maximum speed for hours whereas I was doing nothing. So I rebooted with kernel 3.15.10 and hopefully everything went back to normal. Later attempts to upgrade to 3.16.7 or 3.17.2

Re: kernel = 3.16 saturates I/O endlessly and without reason

2014-11-11 Thread Chris Mason
On Tue, Nov 11, 2014 at 3:10 PM, Julien Muchembled j...@jmuchemb.eu wrote: Hello, I upgraded my kernel from 3.15.10 to 3.17.2 and after a while, btrfs kworkers started to read/write data at maximum speed for hours whereas I was doing nothing. So I rebooted with kernel 3.15.10 and

Re: kernel = 3.16 saturates I/O endlessly and without reason

2014-11-11 Thread Julien Muchembled
Le 11/11/14 21:30, Chris Mason a écrit : On Tue, Nov 11, 2014 at 3:10 PM, Julien Muchembled j...@jmuchemb.eu wrote: I upgraded my kernel from 3.15.10 to 3.17.2 and after a while, btrfs kworkers started to read/write data at maximum speed for hours whereas I was doing nothing. So I rebooted

Re: [PATCH] mm: check memory reclaim bugs caused fs reentrance

2014-11-11 Thread Dave Chinner
On Tue, Nov 11, 2014 at 03:49:50PM +0400, Dmitry Monakhov wrote: If filesystem holds transaction open 'current-journal_info' it should not performs memory allocations with __GFP_FS flag enabled otherwise this result in fs reentarance which lead to: 1) reentrance to itself : deadlock or

Re: transid failed / mount Problem on Linux pc6 3.17.2-1-ARCH #1 SMP PREEMPT Thu Oct 30 20:49:39 CET 2014 x86_64 GNU/Linux

2014-11-11 Thread Duncan
Juergen Sauer posted on Tue, 11 Nov 2014 12:13:41 +0100 as excerpted: this event occoured today in the morning. Accidentially the Archive Machine was kickt into hibernation. After reactivating the archive Btrfs filesystem was readonly, after rebooting the system the archive btrfs

[PATCH] Btrfs: ctree: reduce args where only fs_info used

2014-11-11 Thread Daniel Dressler
This patch is part of a larger project to cleanup btrfs's internal usage of struct btrfs_root. Many functions take btrfs_root only to grab a pointer to fs_info. This causes programmers to ponder which root can be passed. Since only the fs_info is read affected functions can accept any root,

Re: open_ctree failed after ATA errors

2014-11-11 Thread Florian Bruhin
Hi, First of all: I noticed was able to mount my partitions when doing with a different path, which made me investigate my /etc/fstab. It contained this: LABEL=data1 /mnt/databtrfs

[PATCH 3/4] btrfs-progs: Export btrfs-find-root related structures to allow the usage in other tools.

2014-11-11 Thread Qu Wenruo
Export structs in btrfs-find-root to allow other btrfs-progs to integrate find-root function. This will mainly help btrfsck to search tree root if all tree root and backup are not available. Signed-off-by: Qu Wenruo quwen...@cn.fujitsu.com --- Makefile | 2 +- btrfs-find-root.c | 197

[PATCH 2/4] btrfs-progs: Enhance btrfs-find-root.

2014-11-11 Thread Qu Wenruo
Enhance btrfs-find-root in the following way: 1. Use existing or lightly modified btrfs infrastructure Don't use btrfs-find-root local defined open_ctree or csum check. Slightly modify open_ctree() and csum_tree_block() to provide the chunk-only open_ctree and suprress error output for

[PATCH 1/4] btrfs-progs: Check sb_bytenr with device size before scanning one device.

2014-11-11 Thread Qu Wenruo
When using btrfs check with -s option, if using '-s 2' on a small device which doesn't have the third superblock, No valid Btrfs found will be output, but it is not appropriate. So check sb_bytenr against device size before scanning a device and output proper error message. Signed-off-by: Qu