https://github.com/torvalds/linux
Revision 425d83156ca27f74e2cc3f370138038c3c8947f8 authored by Alexandre Oliva on 30 November 2011, 18:43:00 UTC, committed by Chris Mason on 30 November 2011, 18:43:00 UTC
We test whether a block group has enough free space to hold the requested block, but when we're doing clustered allocation, we can save some cycles by testing whether it has enough room for the cluster upfront, otherwise we end up attempting to set up a cluster and failing. Only in the NO_EMPTY_SIZE loop do we attempt an unclustered allocation, and by then we'll have zeroed the cluster size, so this patch won't stop us from using the block group as a last resort. Signed-off-by: Alexandre Oliva <oliva@lsd.ic.unicamp.br> Signed-off-by: Chris Mason <chris.mason@oracle.com>
1 parent 1b22bad
Tip revision: 425d83156ca27f74e2cc3f370138038c3c8947f8 authored by Alexandre Oliva on 30 November 2011, 18:43:00 UTC
Btrfs: skip block groups without enough space for a cluster
Btrfs: skip block groups without enough space for a cluster
Tip revision: 425d831
File | Mode | Size |
---|---|---|
ABI | ||
DocBook | ||
PCI | ||
RCU | ||
accounting | ||
acpi | ||
aoe | ||
arm | ||
auxdisplay | ||
blackfin | ||
block | ||
blockdev | ||
cdrom | ||
cgroups | ||
connector | ||
console | ||
cpu-freq | ||
cpuidle | ||
cris | ||
crypto | ||
development-process | ||
device-mapper | ||
devicetree | ||
driver-model | ||
dvb | ||
early-userspace | ||
fault-injection | ||
fb | ||
filesystems | ||
firmware_class | ||
frv | ||
hid | ||
hwmon | ||
i2c | ||
i2o | ||
ia64 | ||
ide | ||
infiniband | ||
input | ||
ioctl | ||
isdn | ||
ja_JP | ||
kbuild | ||
kdump | ||
ko_KR | ||
laptops | ||
leds | ||
m68k | ||
make | ||
mips | ||
misc-devices | ||
mmc | ||
mn10300 | ||
mtd | ||
namespaces | ||
netlabel | ||
networking | ||
nfc | ||
parisc | ||
pcmcia | ||
power | ||
powerpc | ||
pps | ||
prctl | ||
pti | ||
ptp | ||
rapidio | ||
s390 | ||
scheduler | ||
scsi | ||
security | ||
serial | ||
sh | ||
sound | ||
sparc | ||
spi | ||
sysctl | ||
target | ||
telephony | ||
thermal | ||
timers | ||
trace | ||
usb | ||
vDSO | ||
video4linux | ||
virtual | ||
vm | ||
w1 | ||
watchdog | ||
wimax | ||
x86 | ||
zh_CN | ||
.gitignore | -rw-r--r-- | 107 bytes |
00-INDEX | -rw-r--r-- | 11.9 KB |
BUG-HUNTING | -rw-r--r-- | 8.1 KB |
Changes | -rw-r--r-- | 11.7 KB |
CodingStyle | -rw-r--r-- | 29.0 KB |
DMA-API-HOWTO.txt | -rw-r--r-- | 28.0 KB |
DMA-API.txt | -rw-r--r-- | 26.5 KB |
DMA-ISA-LPC.txt | -rw-r--r-- | 5.2 KB |
DMA-attributes.txt | -rw-r--r-- | 1.3 KB |
HOWTO | -rw-r--r-- | 27.2 KB |
IPMI.txt | -rw-r--r-- | 28.5 KB |
IRQ-affinity.txt | -rw-r--r-- | 2.5 KB |
IRQ.txt | -rw-r--r-- | 962 bytes |
Intel-IOMMU.txt | -rw-r--r-- | 3.8 KB |
Makefile | -rw-r--r-- | 160 bytes |
ManagementStyle | -rw-r--r-- | 12.9 KB |
SAK.txt | -rw-r--r-- | 2.8 KB |
SM501.txt | -rw-r--r-- | 2.8 KB |
SecurityBugs | -rw-r--r-- | 1.8 KB |
SubmitChecklist | -rw-r--r-- | 4.4 KB |
SubmittingDrivers | -rw-r--r-- | 6.3 KB |
SubmittingPatches | -rw-r--r-- | 28.5 KB |
VGA-softcursor.txt | -rw-r--r-- | 2.0 KB |
applying-patches.txt | -rw-r--r-- | 19.5 KB |
atomic_ops.txt | -rw-r--r-- | 19.0 KB |
bad_memory.txt | -rw-r--r-- | 1.1 KB |
basic_profiling.txt | -rw-r--r-- | 1.7 KB |
binfmt_misc.txt | -rw-r--r-- | 5.9 KB |
braille-console.txt | -rw-r--r-- | 1.4 KB |
bt8xxgpio.txt | -rw-r--r-- | 4.3 KB |
btmrvl.txt | -rw-r--r-- | 2.9 KB |
bus-virt-phys-mapping.txt | -rw-r--r-- | 7.9 KB |
cachetlb.txt | -rw-r--r-- | 17.1 KB |
circular-buffers.txt | -rw-r--r-- | 7.6 KB |
coccinelle.txt | -rw-r--r-- | 7.9 KB |
cpu-hotplug.txt | -rw-r--r-- | 14.6 KB |
cpu-load.txt | -rw-r--r-- | 3.0 KB |
cputopology.txt | -rw-r--r-- | 3.8 KB |
dcdbas.txt | -rw-r--r-- | 3.6 KB |
debugging-modules.txt | -rw-r--r-- | 954 bytes |
debugging-via-ohci1394.txt | -rw-r--r-- | 7.4 KB |
dell_rbu.txt | -rw-r--r-- | 4.9 KB |
devices.txt | -rw-r--r-- | 115.8 KB |
dmaengine.txt | -rw-r--r-- | 7.1 KB |
dontdiff | -rw-r--r-- | 2.5 KB |
dynamic-debug-howto.txt | -rw-r--r-- | 9.5 KB |
edac.txt | -rw-r--r-- | 26.9 KB |
eisa.txt | -rw-r--r-- | 7.1 KB |
email-clients.txt | -rw-r--r-- | 8.6 KB |
feature-removal-schedule.txt | -rw-r--r-- | 21.5 KB |
flexible-arrays.txt | -rw-r--r-- | 5.5 KB |
futex-requeue-pi.txt | -rw-r--r-- | 5.0 KB |
gcov.txt | -rw-r--r-- | 7.5 KB |
gpio.txt | -rw-r--r-- | 30.4 KB |
highuid.txt | -rw-r--r-- | 2.4 KB |
hw_random.txt | -rw-r--r-- | 3.5 KB |
hwspinlock.txt | -rw-r--r-- | 11.7 KB |
init.txt | -rw-r--r-- | 2.5 KB |
initrd.txt | -rw-r--r-- | 14.1 KB |
intel_txt.txt | -rw-r--r-- | 10.2 KB |
io-mapping.txt | -rw-r--r-- | 3.2 KB |
io_ordering.txt | -rw-r--r-- | 1.9 KB |
iostats.txt | -rw-r--r-- | 7.9 KB |
irqflags-tracing.txt | -rw-r--r-- | 2.6 KB |
isapnp.txt | -rw-r--r-- | 433 bytes |
java.txt | -rw-r--r-- | 10.7 KB |
kernel-doc-nano-HOWTO.txt | -rw-r--r-- | 11.4 KB |
kernel-docs.txt | -rw-r--r-- | 33.1 KB |
kernel-parameters.txt | -rw-r--r-- | 94.9 KB |
kmemcheck.txt | -rw-r--r-- | 29.8 KB |
kmemleak.txt | -rw-r--r-- | 7.7 KB |
kobject.txt | -rw-r--r-- | 17.6 KB |
kprobes.txt | -rw-r--r-- | 29.5 KB |
kref.txt | -rw-r--r-- | 6.1 KB |
ldm.txt | -rw-r--r-- | 3.8 KB |
local_ops.txt | -rw-r--r-- | 6.1 KB |
lockdep-design.txt | -rw-r--r-- | 8.8 KB |
lockstat.txt | -rw-r--r-- | 10.7 KB |
logo.gif | -rw-r--r-- | 16.0 KB |
logo.txt | -rw-r--r-- | 563 bytes |
magic-number.txt | -rw-r--r-- | 9.7 KB |
mca.txt | -rw-r--r-- | 11.3 KB |
md.txt | -rw-r--r-- | 24.9 KB |
media-framework.txt | -rw-r--r-- | 13.9 KB |
memory-barriers.txt | -rw-r--r-- | 82.3 KB |
memory-hotplug.txt | -rw-r--r-- | 15.0 KB |
memory.txt | -rw-r--r-- | 1.2 KB |
mono.txt | -rw-r--r-- | 2.5 KB |
mutex-design.txt | -rw-r--r-- | 5.8 KB |
nmi_watchdog.txt | -rw-r--r-- | 4.2 KB |
nommu-mmap.txt | -rw-r--r-- | 12.7 KB |
numastat.txt | -rw-r--r-- | 866 bytes |
oops-tracing.txt | -rw-r--r-- | 12.5 KB |
padata.txt | -rw-r--r-- | 7.3 KB |
parport-lowlevel.txt | -rw-r--r-- | 32.2 KB |
parport.txt | -rw-r--r-- | 8.8 KB |
pi-futex.txt | -rw-r--r-- | 5.7 KB |
pnp.txt | -rw-r--r-- | 6.8 KB |
preempt-locking.txt | -rw-r--r-- | 5.2 KB |
printk-formats.txt | -rw-r--r-- | 4.9 KB |
prio_tree.txt | -rw-r--r-- | 5.2 KB |
ramoops.txt | -rw-r--r-- | 2.3 KB |
rbtree.txt | -rw-r--r-- | 9.1 KB |
rfkill.txt | -rw-r--r-- | 4.8 KB |
robust-futex-ABI.txt | -rw-r--r-- | 8.7 KB |
robust-futexes.txt | -rw-r--r-- | 9.4 KB |
rt-mutex-design.txt | -rw-r--r-- | 32.8 KB |
rt-mutex.txt | -rw-r--r-- | 3.5 KB |
rtc.txt | -rw-r--r-- | 15.5 KB |
serial-console.txt | -rw-r--r-- | 4.0 KB |
sgi-ioc4.txt | -rw-r--r-- | 2.0 KB |
sgi-visws.txt | -rw-r--r-- | 678 bytes |
sparse.txt | -rw-r--r-- | 3.0 KB |
spinlocks.txt | -rw-r--r-- | 6.5 KB |
stable_api_nonsense.txt | -rw-r--r-- | 9.2 KB |
stable_kernel_rules.txt | -rw-r--r-- | 3.6 KB |
svga.txt | -rw-r--r-- | 14.1 KB |
sysfs-rules.txt | -rw-r--r-- | 8.1 KB |
sysrq.txt | -rw-r--r-- | 11.6 KB |
unaligned-memory-access.txt | -rw-r--r-- | 10.0 KB |
unicode.txt | -rw-r--r-- | 6.5 KB |
unshare.txt | -rw-r--r-- | 13.1 KB |
vgaarbiter.txt | -rw-r--r-- | 8.1 KB |
video-output.txt | -rw-r--r-- | 1.1 KB |
volatile-considered-harmful.txt | -rw-r--r-- | 5.6 KB |
workqueue.txt | -rw-r--r-- | 15.6 KB |
xz.txt | -rw-r--r-- | 5.7 KB |
zorro.txt | -rw-r--r-- | 2.8 KB |
Computing file changes ...