search for: rb_right

Displaying 20 results from an estimated 64 matches for "rb_right".

2012 May 24
2
[PATCH] Btrfs: fix the same inode id problem when doing auto defragment
...y(parent, struct inode_defrag, rb_node); - if (defrag->ino < entry->ino) + if (__compare_inode_defrag(defrag, entry) < 0) p = &parent->rb_left; - else if (defrag->ino > entry->ino) + else if (__compare_inode_defrag(defrag, entry) > 0) p = &parent->rb_right; else { /* if we''re reinserting an entry for @@ -159,28 +174,33 @@ int btrfs_add_inode_defrag(struct btrfs_trans_handle *trans, /* * must be called with the defrag_inodes lock held */ -struct inode_defrag *btrfs_find_defrag_inode(struct btrfs_fs_info *info, u64 ino, +struct ino...
2009 Aug 21
0
[GIT PULL] btrfs rb corruption fix
...id inode_tree_add(struct inode *inode) entry = rb_entry(parent, struct btrfs_inode, rb_node); if (inode->i_ino < entry->vfs_inode.i_ino) - p = &(*p)->rb_left; + p = &parent->rb_left; else if (inode->i_ino > entry->vfs_inode.i_ino) - p = &(*p)->rb_right; + p = &parent->rb_right; else { WARN_ON(!(entry->vfs_inode.i_state & (I_WILL_FREE | I_FREEING | I_CLEAR))); - break; + rb_erase(parent, &root->inode_tree); + RB_CLEAR_NODE(parent); + spin_unlock(&root->inode_lock); + goto again; } } rb_l...
2008 Nov 07
0
[PATCH][cfq-cgroups] Introduce ioprio class for top layer.
...e + * preference to them. IDLE cfq_data goes to the back. + * after that, sort on the next service time. + */ + if (cfq_data_class_rt(cfqd) > cfq_data_class_rt(__cfqd)) + n = &(*p)->rb_left; + else if (cfq_data_class_rt(cfqd) < cfq_data_class_rt(__cfqd)) + n = &(*p)->rb_right; + else if (cfq_data_class_idle(cfqd) < + cfq_data_class_idle(__cfqd)) + n = &(*p)->rb_left; + else if (cfq_data_class_idle(cfqd) > + cfq_data_class_idle(__cfqd)) + n = &(*p)->rb_right; + else if (rb_key < __cfqd->rb_key) n = &(*p)->rb_left; el...
2008 Nov 07
0
[PATCH][cfq-cgroups] Introduce ioprio class for top layer.
...e + * preference to them. IDLE cfq_data goes to the back. + * after that, sort on the next service time. + */ + if (cfq_data_class_rt(cfqd) > cfq_data_class_rt(__cfqd)) + n = &(*p)->rb_left; + else if (cfq_data_class_rt(cfqd) < cfq_data_class_rt(__cfqd)) + n = &(*p)->rb_right; + else if (cfq_data_class_idle(cfqd) < + cfq_data_class_idle(__cfqd)) + n = &(*p)->rb_left; + else if (cfq_data_class_idle(cfqd) > + cfq_data_class_idle(__cfqd)) + n = &(*p)->rb_right; + else if (rb_key < __cfqd->rb_key) n = &(*p)->rb_left; el...
2012 Oct 04
3
[PATCH] btrfs ulist use rbtree instead
..._ulist_rbtree_search(struct ulist *ulist, u64 val) +{ + struct rb_node *node = ulist->root.rb_node; + struct ulist_node *v; + while (node) { + v = rb_entry(node, struct ulist_node, node); + if (v->val < val) + node = node->rb_left; + else if (v->val > val) + node = node->rb_right; + else + return v; + } + return NULL; +} + + +int __ulist_rbtree_add_node(struct ulist *ulist, struct ulist_node *node) +{ + struct rb_node **new = &(ulist->root.rb_node), *parent = NULL; + struct ulist_node *v; + while (*new) { + v = rb_entry(*new, struct ulist_node, node); + if (v-&g...
2017 Oct 18
2
Null deference panic in CentOS-6.5
...ive = 19, hrtick_csd_pending = 0, hrtick_csd = { list = { next = 0x0, prev = 0x0 }, func = 0xffffffff8105aff0 <__hrtick_start>, info = 0xffff88013bc56840, flags = 0, priv = 0 }, hrtick_timer = { node = { rb_parent_color = 0, rb_right = 0x0, rb_left = 0x0 }, _expires = { tv64 = 0 }, _softexpires = { tv64 = 0 }, function = 0xffffffff81059120 <hrtick>, base = 0xffff88013bc11628, state = 0, start_pid = -1, start_site = 0x0, start_comm = "\000\000\000\...
2013 Apr 03
0
[PATCH] Btrfs-progs: add a free space cache checker to fsck
...ruct rb_node *parent = NULL; + struct btrfs_free_space *info; + + while (*p) { + parent = *p; + info = rb_entry(parent, struct btrfs_free_space, offset_index); + + if (offset < info->offset) { + p = &(*p)->rb_left; + } else if (offset > info->offset) { + p = &(*p)->rb_right; + } else { + /* + * we could have a bitmap entry and an extent entry + * share the same offset. If this is the case, we want + * the extent entry to always be found first if we do a + * linear search through the tree, since we want to have + * the quickest allocation time, and a...
2008 Nov 12
15
[PATCH][RFC][12+2][v3] A expanded CFQ scheduler for cgroups
This patchset expands traditional CFQ scheduler in order to support cgroups, and improves old version. Improvements are as following. * Modularizing our new CFQ scheduler. The expanded CFQ scheduler is registered/unregistered as new I/O elevator scheduler called "cfq-cgroups". By this, the traditional CFQ scheduler, which does not handle cgroups, and our new CFQ
2008 Nov 12
15
[PATCH][RFC][12+2][v3] A expanded CFQ scheduler for cgroups
This patchset expands traditional CFQ scheduler in order to support cgroups, and improves old version. Improvements are as following. * Modularizing our new CFQ scheduler. The expanded CFQ scheduler is registered/unregistered as new I/O elevator scheduler called "cfq-cgroups". By this, the traditional CFQ scheduler, which does not handle cgroups, and our new CFQ
2011 Jan 06
3
Offline Deduplication for Btrfs V2
Just a quick update, I''ve dropped the hashing stuff in favor of doing a memcmp in the kernel to make sure the data is still the same. The thing that takes a while is reading the data up from disk, so doing a memcmp of the entire buffer isn''t that big of a deal, not to mention there''s a possiblity for malicious users if there is a problem with the hashing algorithms we
2013 Oct 17
42
[PATCH v8 0/19] enable swiotlb-xen on arm and arm64
Hi all, this patch series enables xen-swiotlb on arm and arm64. It has been heavily reworked compared to the previous versions in order to achieve better performances and to address review comments. We are not using dma_mark_clean to ensure coherency anymore. We call the platform implementation of map_page and unmap_page. We assume that dom0 has been mapped 1:1 (physical address == machine
2008 Jun 02
1
[PATCH 0/2] dm-ioband: I/O bandwidth controller v1.1.0: Introduction
Hi everyone, This is dm-ioband version 1.1.0 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. - Can be applied to the kernel 2.6.26-rc2-mm1. - Changes from 1.0.0 (posted on May 19, 2008): - Measures against high memory pressure. I/O requests to reclaim pages won't
2008 Jun 02
1
[PATCH 0/2] dm-ioband: I/O bandwidth controller v1.1.0: Introduction
Hi everyone, This is dm-ioband version 1.1.0 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. - Can be applied to the kernel 2.6.26-rc2-mm1. - Changes from 1.0.0 (posted on May 19, 2008): - Measures against high memory pressure. I/O requests to reclaim pages won't
2008 Jun 02
1
[PATCH 0/2] dm-ioband: I/O bandwidth controller v1.1.0: Introduction
Hi everyone, This is dm-ioband version 1.1.0 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. - Can be applied to the kernel 2.6.26-rc2-mm1. - Changes from 1.0.0 (posted on May 19, 2008): - Measures against high memory pressure. I/O requests to reclaim pages won't
2006 Aug 02
10
[PATCH 0/6] htb: cleanup
The HTB scheduler code is a mess, this patch set does some basic house cleaning. The first four should cause no code change, but the last two need more testing. -- Stephen Hemminger <shemminger@osdl.org> "And in the Packet there writ down that doome" - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to
2008 Jul 04
1
[PATCH 0/2] dm-ioband: I/O bandwidth controller v1.2.0: Introduction
Hi everyone, This is the dm-ioband version 1.2.0 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. - Can be applied to the kernel 2.6.26-rc5-mm3. - Changes from 1.1.0 (posted on June 2, 2008): - Dynamic policy switching A user can change the bandwidth control policy
2008 Jul 04
1
[PATCH 0/2] dm-ioband: I/O bandwidth controller v1.2.0: Introduction
Hi everyone, This is the dm-ioband version 1.2.0 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. - Can be applied to the kernel 2.6.26-rc5-mm3. - Changes from 1.1.0 (posted on June 2, 2008): - Dynamic policy switching A user can change the bandwidth control policy
2008 Jul 04
1
[PATCH 0/2] dm-ioband: I/O bandwidth controller v1.2.0: Introduction
Hi everyone, This is the dm-ioband version 1.2.0 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. - Can be applied to the kernel 2.6.26-rc5-mm3. - Changes from 1.1.0 (posted on June 2, 2008): - Dynamic policy switching A user can change the bandwidth control policy
2008 Sep 24
1
[PATCH 0/8] I/O bandwidth controller and BIO tracking
Hi everyone, These patchsets are the new releases of dm-ioband and bio-cgroup which are ported to 2.6.27-rc5-mm1. dm-ioband Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same block device. A job is a group of processes with the same pid or pgrp or uid or a virtual machine such as KVM or Xen. A
2008 Sep 24
1
[PATCH 0/8] I/O bandwidth controller and BIO tracking
Hi everyone, These patchsets are the new releases of dm-ioband and bio-cgroup which are ported to 2.6.27-rc5-mm1. dm-ioband Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same block device. A job is a group of processes with the same pid or pgrp or uid or a virtual machine such as KVM or Xen. A