Re: [PATCH 1/5] [RFC] Add volatile range management code

2012-08-09 Thread Andrea Righi
On Thu, Aug 09, 2012 at 12:33:17PM -0700, John Stultz wrote: > On 08/09/2012 06:35 AM, Andrea Righi wrote: > >On Thu, Aug 09, 2012 at 02:46:37AM -0700, Michel Lespinasse wrote: > >>On Fri, Jul 27, 2012 at 8:57 PM, John Stultz wrote: > >>>v5: > >>>* Drop intervaltree for prio_tree usage per Michel

Re: [PATCH 1/5] [RFC] Add volatile range management code

2012-08-09 Thread John Stultz
On 08/09/2012 06:35 AM, Andrea Righi wrote: On Thu, Aug 09, 2012 at 02:46:37AM -0700, Michel Lespinasse wrote: On Fri, Jul 27, 2012 at 8:57 PM, John Stultz wrote: v5: * Drop intervaltree for prio_tree usage per Michel & Dmitry's suggestions. Actually, I believe the ranges you need to track

Re: [PATCH 1/5] [RFC] Add volatile range management code

2012-08-09 Thread John Stultz
On 08/09/2012 02:46 AM, Michel Lespinasse wrote: On Fri, Jul 27, 2012 at 8:57 PM, John Stultz wrote: v5: * Drop intervaltree for prio_tree usage per Michel & Dmitry's suggestions. Actually, I believe the ranges you need to track are non-overlapping, correct ? Correct. Any overlapping rang

Re: [PATCH 1/5] [RFC] Add volatile range management code

2012-08-09 Thread Andrea Righi
On Thu, Aug 09, 2012 at 02:46:37AM -0700, Michel Lespinasse wrote: > On Fri, Jul 27, 2012 at 8:57 PM, John Stultz wrote: > > v5: > > * Drop intervaltree for prio_tree usage per Michel & > > Dmitry's suggestions. > > Actually, I believe the ranges you need to track are non-overlapping, correct

Re: [PATCH 1/5] [RFC] Add volatile range management code

2012-08-09 Thread Michel Lespinasse
On Fri, Jul 27, 2012 at 8:57 PM, John Stultz wrote: > v5: > * Drop intervaltree for prio_tree usage per Michel & > Dmitry's suggestions. Actually, I believe the ranges you need to track are non-overlapping, correct ? If that is the case, a simple rbtree, sorted by start-of-range address, would

[PATCH 1/5] [RFC] Add volatile range management code

2012-07-27 Thread John Stultz
This patch provides the volatile range management code that filesystems can utilize when implementing FALLOC_FL_MARK_VOLATILE. It tracks a collection of page ranges against a mapping stored in an interval-tree. This code handles coalescing overlapping and adjacent ranges, as well as splitting rang