extent_io.c (a65917156e345946dbde3d7effd28124c6d6a8c2) extent_io.c (bd681513fa6f2ff29aa391f01e413a2d1c59fd77)
1#include <linux/bitops.h>
2#include <linux/slab.h>
3#include <linux/bio.h>
4#include <linux/mm.h>
5#include <linux/pagemap.h>
6#include <linux/page-flags.h>
7#include <linux/module.h>
8#include <linux/spinlock.h>

--- 3003 unchanged lines hidden (view full) ---

3012 unsigned long flags;
3013#endif
3014
3015 eb = kmem_cache_zalloc(extent_buffer_cache, mask);
3016 if (eb == NULL)
3017 return NULL;
3018 eb->start = start;
3019 eb->len = len;
1#include <linux/bitops.h>
2#include <linux/slab.h>
3#include <linux/bio.h>
4#include <linux/mm.h>
5#include <linux/pagemap.h>
6#include <linux/page-flags.h>
7#include <linux/module.h>
8#include <linux/spinlock.h>

--- 3003 unchanged lines hidden (view full) ---

3012 unsigned long flags;
3013#endif
3014
3015 eb = kmem_cache_zalloc(extent_buffer_cache, mask);
3016 if (eb == NULL)
3017 return NULL;
3018 eb->start = start;
3019 eb->len = len;
3020 spin_lock_init(&eb->lock);
3021 init_waitqueue_head(&eb->lock_wq);
3020 rwlock_init(&eb->lock);
3021 atomic_set(&eb->write_locks, 0);
3022 atomic_set(&eb->read_locks, 0);
3023 atomic_set(&eb->blocking_readers, 0);
3024 atomic_set(&eb->blocking_writers, 0);
3025 atomic_set(&eb->spinning_readers, 0);
3026 atomic_set(&eb->spinning_writers, 0);
3027 init_waitqueue_head(&eb->write_lock_wq);
3028 init_waitqueue_head(&eb->read_lock_wq);
3022
3023#if LEAK_DEBUG
3024 spin_lock_irqsave(&leak_lock, flags);
3025 list_add(&eb->leak_list, &buffers);
3026 spin_unlock_irqrestore(&leak_lock, flags);
3027#endif
3028 atomic_set(&eb->refs, 1);
3029

--- 815 unchanged lines hidden ---
3029
3030#if LEAK_DEBUG
3031 spin_lock_irqsave(&leak_lock, flags);
3032 list_add(&eb->leak_list, &buffers);
3033 spin_unlock_irqrestore(&leak_lock, flags);
3034#endif
3035 atomic_set(&eb->refs, 1);
3036

--- 815 unchanged lines hidden ---