Displaying 9 results from an estimated 9 matches for "num_writers".
2020 Jul 14
7
[Bug 3192] New: openssh-8.2 & openssl-1.1.1d error: dereferencing pointer to incomplete type Not found struct BIO , bio->num_write
https://bugzilla.mindrot.org/show_bug.cgi?id=3192
Bug ID: 3192
Summary: openssh-8.2 & openssl-1.1.1d error: dereferencing
pointer to incomplete type Not found struct BIO ,
bio->num_write
Product: Portable OpenSSH
Version: 8.2p1
Hardware: Other
OS: Linux
Status: NEW
2010 Oct 26
0
[PATCH v2] Btrfs: fix deadlock in btrfs_commit_transaction
We calculate timeout (either 1 or MAX_SCHEDULE_TIMEOUT) based on whether
num_writers > 1 or should_grow at the top of the loop. Then, much much
later, we wait for that timeout if either num_writers or should_grow is
true. However, it''s possible for a racing process (calling
btrfs_end_transaction()) to decrement num_writers such that we wait
forever instead of for 1....
2010 Oct 25
14
[PATCH 0/6] Btrfs commit fixes, async subvol operations
Hi Chris,
This is the extent of my current queue of Btrfs snapshot/subvol/commit
stuff. Most of these were posted several months ago. Can be sent
upstream during this merge window? Not having this functionality is
becoming a bit of a roadblock for our efforts to keep the Ceph data in a
consistent state.
These patches are also available from
2007 Aug 09
1
[RFC] All my fsync changes
...t;fs_info->running_transaction;
if (!cur_trans) {
+ int ret;
cur_trans = kmem_cache_alloc(btrfs_transaction_cachep,
GFP_NOFS);
total_trans++;
BUG_ON(!cur_trans);
root->fs_info->generation++;
root->fs_info->running_transaction = cur_trans;
- cur_trans->num_writers = 0;
+ cur_trans->num_writers = 1;
+ cur_trans->num_joined = 0;
cur_trans->transid = root->fs_info->generation;
init_waitqueue_head(&cur_trans->writer_wait);
init_waitqueue_head(&cur_trans->commit_wait);
@@ -65,8 +70,15 @@ static int join_transaction(struct b...
2012 Dec 18
1
[Qemu-devel] [PATCH v6 12/12] virtio-blk: add x-data-plane=on|off performance feature
On Tue, Dec 18, 2012 at 03:57:17PM +0100, Stefan Hajnoczi wrote:
> > > @@ -407,6 +409,14 @@ static void virtio_blk_handle_output(VirtIODevice *vdev, VirtQueue *vq)
> > > .num_writes = 0,
> > > };
> > >
> > > + /* Some guests kick before setting VIRTIO_CONFIG_S_DRIVER_OK so start
> > > + * dataplane here instead of waiting
2012 Dec 18
1
[Qemu-devel] [PATCH v6 12/12] virtio-blk: add x-data-plane=on|off performance feature
On Tue, Dec 18, 2012 at 03:57:17PM +0100, Stefan Hajnoczi wrote:
> > > @@ -407,6 +409,14 @@ static void virtio_blk_handle_output(VirtIODevice *vdev, VirtQueue *vq)
> > > .num_writes = 0,
> > > };
> > >
> > > + /* Some guests kick before setting VIRTIO_CONFIG_S_DRIVER_OK so start
> > > + * dataplane here instead of waiting
2010 Apr 19
0
[PATCH 08/12] Btrfs: Introduce global metadata reservation
...ransaction(trans, root);
+ else
+ wake_up_process(info->transaction_kthread);
+ }
+
mutex_lock(&info->trans_mutex);
- cur_trans = info->running_transaction;
- WARN_ON(cur_trans != trans->transaction);
+ WARN_ON(cur_trans != info->running_transaction);
WARN_ON(cur_trans->num_writers < 1);
cur_trans->num_writers--;
@@ -663,30 +699,30 @@ static noinline int commit_fs_roots(stru
int btrfs_defrag_root(struct btrfs_root *root, int cacheonly)
{
struct btrfs_fs_info *info = root->fs_info;
- int ret;
struct btrfs_trans_handle *trans;
+ int ret;
unsigned long nr;...
2011 Mar 23
0
[PATCH] Btrfs: cleanup some BUG_ON()
...1:28:09.000000000 +0900
@@ -57,7 +57,8 @@ static noinline int join_transaction(str
if (!cur_trans) {
cur_trans = kmem_cache_alloc(btrfs_transaction_cachep,
GFP_NOFS);
- BUG_ON(!cur_trans);
+ if (!cur_trans)
+ return -ENOMEM;
root->fs_info->generation++;
cur_trans->num_writers = 1;
cur_trans->num_joined = 0;
@@ -195,7 +196,11 @@ again:
wait_current_trans(root);
ret = join_transaction(root);
- BUG_ON(ret);
+ if (ret < 0) {
+ if (type != TRANS_JOIN_NOLOCK)
+ mutex_unlock(&root->fs_info->trans_mutex);
+ return ERR_PTR(ret);
+ }
cur_trans =...
2009 Aug 24
0
[PATCH] Btrfs: proper metadata -ENOSPC handling
...handle *trans,
break;
}
count++;
- }
+ } while (!nested_trans && count < 4);
mutex_lock(&info->trans_mutex);
cur_trans = info->running_transaction;
@@ -314,12 +574,32 @@ static int __btrfs_end_transaction(struct btrfs_trans_handle *trans,
WARN_ON(cur_trans->num_writers < 1);
cur_trans->num_writers--;
+ /*
+ * XXX this needs to be removed once we shake out the bugs with the
+ * block accounting stuff, this is only supposed to catch a buggy case,
+ * so ideally this should never happen once we are done with this stuff.
+ */
+ if (trans->bytes_used...