aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-10-29Btrfs: let the user know space caching is enabledJosef Bacik1-0/+2
If you mount -o space_cache, the option will be persistent across mounts, but to make sure the user knows that they did this, emit a message telling them if they didn't mount with -o space_cache but the feature is still used. Signed-off-by: Josef Bacik <[email protected]>
2010-10-29Btrfs: Add a clear_cache mount optionJosef Bacik4-3/+8
If something goes wrong with the free space cache we need a way to make sure it's not loaded on mount and that it's cleared for everybody. When you pass the clear_cache option it will make it so all block groups are setup to be cleared, which keeps them from being loaded and then they will be truncated when the transaction is committed. Thanks, Signed-off-by: Josef Bacik <[email protected]>
2010-10-29Btrfs: add support for mixed data+metadata block groupsJosef Bacik2-4/+28
There are just a few things that need to be fixed in the kernel to support mixed data+metadata block groups. Mostly we just need to make sure that if we are using mixed block groups that we continue to allocate mixed block groups as we need them. Also we need to make sure __find_space_info will find our space info if we search for DATA or METADATA only. Tested this with xfstests and it works nicely. Thanks, Signed-off-by: Josef Bacik <[email protected]>
2010-10-29Btrfs: check cache->caching_ctl before returning if caching has startedJosef Bacik1-0/+6
With the free space disk caching we can mark the block group as started with the caching, but we don't have a caching ctl. This can race with anybody else who tries to get the caching ctl before we cache (this is very hard to do btw). So instead check to see if cache->caching_ctl is set, and if not return NULL. Thanks, Signed-off-by: Josef Bacik <[email protected]>
2010-10-29Btrfs: load free space cache if it existsJosef Bacik3-3/+345
This patch actually loads the free space cache if it exists. The only thing that really changes here is that we need to cache the block group if we're going to remove an extent from it. Previously we did not do this since the caching kthread would pick it up. With the on disk cache we don't have this luxury so we need to make sure we read the on disk cache in first, and then remove the extent, that way when the extent is unpinned the free space is added to the block group. This has been tested with all sorts of things. Signed-off-by: Josef Bacik <[email protected]>
2010-10-29Btrfs: write out free space cacheJosef Bacik6-13/+420
This is a simple bit, just dump the free space cache out to our preallocated inode when we're writing out dirty block groups. There are a bunch of changes in inode.c in order to account for special cases. Mostly when we're doing the writeout we're holding trans_mutex, so we need to use the nolock transacation functions. Also we can't do asynchronous completions since the async thread could be blocked on already completed IO waiting for the transaction lock. This has been tested with xfstests and btrfs filesystem balance, as well as my ENOSPC tests. Thanks, Signed-off-by: Josef Bacik <[email protected]>
2010-10-29oprofile: Remove deprecated use of flush_scheduled_work()Tejun Heo3-4/+9
flush_scheduled_work() is deprecated and scheduled to be removed. sync_stop() currently cancels cpu_buffer works inside buffer_mutex and flushes the system workqueue outside. Instead, split end_cpu_work() into two parts - stopping further work enqueues and flushing works - and do the former inside buffer_mutex and latter outside. For stable kernels v2.6.35.y and v2.6.36.y. Signed-off-by: Tejun Heo <[email protected]> Cc: [email protected] Signed-off-by: Robert Richter <[email protected]>
2010-10-29oprofile: Fix the hang while taking the cpu offlineSantosh Shilimkar1-0/+13
The kernel build with CONFIG_OPROFILE and CPU_HOTPLUG enabled. The oprofile is initialised using system timer in absence of hardware counters supports. Oprofile isn't started from userland. In this setup while doing a CPU offline the kernel hangs in infinite for loop inside lock_hrtimer_base() function This happens because as part of oprofile_cpu_notify(, it tries to stop an hrtimer which was never started. These per-cpu hrtimers are started when the oprfile is started. echo 1 > /dev/oprofile/enable This problem also existwhen the cpu is booted with maxcpus parameter set. When bringing the remaining cpus online the timers are started even if oprofile is not yet enabled. This patch fix this issue by adding a state variable so that these hrtimer start/stop is only attempted when oprofile is started For stable kernels v2.6.35.y and v2.6.36.y. Reported-by: Jan Sebastien <[email protected]> Tested-by: sricharan <[email protected]> Signed-off-by: Santosh Shilimkar <[email protected]> Cc: [email protected] Signed-off-by: Robert Richter <[email protected]>
2010-10-29braino in internal.hAl Viro1-1/+1
wrong return type... Signed-off-by: Al Viro <[email protected]>
2010-10-29convert simple cases of nfs-related ->get_sb() to ->mount()Al Viro1-50/+46
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert btrfsAl Viro1-9/+6
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert cephAl Viro1-23/+27
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert gfs2Al Viro1-29/+22
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert afsAl Viro1-12/+7
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert ecryptfsAl Viro1-7/+5
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert sysfsAl Viro1-19/+13
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert cgroup and cpusetAl Viro2-13/+11
Signed-off-by: Al Viro <[email protected]>
2010-10-29switch get_sb_ns() usersAl Viro3-15/+12
Signed-off-by: Al Viro <[email protected]>
2010-10-29switch procfs to ->mount()Al Viro1-7/+6
Signed-off-by: Al Viro <[email protected]>
2010-10-29setting ->proc_mnt doesn't belong in proc_get_sb()Al Viro1-1/+2
take that to kern_mount_data()-using callers Signed-off-by: Al Viro <[email protected]>
2010-10-29convert cifsAl Viro1-8/+7
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert nilfsAl Viro1-9/+7
Signed-off-by: Al Viro <[email protected]>
2010-10-29switch logfs to ->mount()Al Viro2-27/+23
Signed-off-by: Al Viro <[email protected]>
2010-10-29logfs: fix a leak in get_sbAl Viro4-7/+8
a) switch ->put_device() to logfs_super * b) actually call it on early failures in logfs_get_sb_device() Signed-off-by: Al Viro <[email protected]>
2010-10-29logfs get_sb, part 3Al Viro4-39/+29
take logfs_get_sb_device() calls to logfs_get_sb() itself Signed-off-by: Al Viro <[email protected]>
2010-10-29logfs get_sb, part 2Al Viro4-14/+13
take setting s_bdev/s_mtd/s_devops to callers of logfs_get_sb_device(), don't bother passing them separately Signed-off-by: Al Viro <[email protected]>
2010-10-29logfs get_sb massage, part 1Al Viro4-21/+39
move allocation of logfs_super to logfs_get_sb, pass it to logfs_get_sb_...(). Signed-off-by: Al Viro <[email protected]>
2010-10-29convert v9fsAl Viro1-12/+10
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert ubifsAl Viro1-7/+6
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert get_sb_pseudo() usersAl Viro8-43/+32
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert get_sb_nodev() usersAl Viro17-73/+87
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert get_sb_single() usersAl Viro25-139/+147
Signed-off-by: Al Viro <[email protected]>
2010-10-29convert get_sb_mtd() users to ->mount()Al Viro4-49/+36
Signed-off-by: Al Viro <[email protected]>
2010-10-29new helper: mount_bdev()Al Viro31-161/+150
... and switch of the obvious get_sb_bdev() users to ->mount() Signed-off-by: Al Viro <[email protected]>
2010-10-29beginning of transtion: ->mount()Al Viro2-3/+16
eventual replacement for ->get_sb() - does *not* get vfsmount, return ERR_PTR(error) or root of subtree to be mounted. Signed-off-by: Al Viro <[email protected]>
2010-10-29fix open/umount raceAl Viro2-3/+5
nameidata_to_filp() drops nd->path or transfers it to opened file. In the former case it's a Bad Idea(tm) to do mnt_drop_write() on nd->path.mnt, since we might race with umount and vfsmount in question might be gone already. Fix: don't drop it, then... IOW, have nameidata_to_filp() grab nd->path in case it transfers it to file and do path_drop() in callers. After they are through with accessing nd->path... Reported-by: Miklos Szeredi <[email protected]> Signed-off-by: Al Viro <[email protected]>
2010-10-29a couple of open-coded ihold() introduced by nfs mergeAl Viro1-2/+2
Signed-off-by: Al Viro <[email protected]>
2010-10-29x86-32: Restore irq stacks NUMA-aware allocationsEric Dumazet1-2/+7
Commit 22d4cd4c4d ("Allocate irq stacks seperate from percpu area") removed NUMA affinity of IRQ stacks as side-effect of the fix. Using alloc_pages_node() instead of __get_free_pages() is safe, even if the target node has no available LOWMEM pages : alloc_pages_node() fallbacks to another node. Signed-off-by: Eric Dumazet <[email protected]> Acked-by: Brian Gerst <[email protected]> Cc: [email protected] Cc: [email protected] Cc: Peter Zijlstra <[email protected]> LKML-Reference: <1288276854.2649.607.camel@edumazet-laptop> Signed-off-by: Ingo Molnar <[email protected]>
2010-10-29md: tidy up device searches in read_balance.NeilBrown1-56/+36
The code for searching through the device list to read-balance in raid1 is rather clumsy and hard to follow. Try to simplify it a bit. No important functionality change here. Signed-off-by: NeilBrown <[email protected]>
2010-10-29md/raid1: fix some typos in comments.NeilBrown1-3/+3
Signed-off-by: NeilBrown <[email protected]>
2010-10-29md/raid1: discard unused variable.NeilBrown2-3/+0
This structure field (flushing_bio_list) is never used, so remove it. Signed-off-by: NeilBrown <[email protected]>
2010-10-29md: unplug writes to external bitmaps.NeilBrown1-1/+1
When writing to an 'external' bitmap we don't currently unplug the device before waiting, so we can get a 3msec delay each time; So use REQ_UNPLUG to force and unplug. Signed-off-by: NeilBrown <[email protected]>
2010-10-28x86, uv: More Westmere support on SGI UVRuss Anderson1-4/+3
Enable Westmere support for all APIC modes on SGI UV. Signed-off-by: Russ Anderson <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: H. Peter Anvin <[email protected]>
2010-10-28Input: bu21013_ts - fix null dereference in error handlingDan Carpenter1-1/+1
bu21013_data could be NULL so better not reference it. Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-10-28Input: ad7879 - prevent invalid finger data reportsMichael Hennerich1-5/+27
Considering following scenario - the touch is present on the screen at the beginning of the last conversion sequence, but by the time the last sequence is finished, the finger is lift off. The AD7879 data available interrupt signals (DAV) completion, however some X,Y values are not valid because the screen inputs were floating during the acquisition. The AD7877 acts differently here, since it only asserts DAV if the touch is still present when the conversion sequence finished. Based on the fact that this can only happen in the last sample of the repeated conversion sequence, we simply skip the last (short glitches are filtered by the AD7879 internal median and average filters). This doesn't cause noticeable side effects, since the minimum conversion interval is 9.44ms. We receive ~100 waypoint samples per second, so we simply delay the result by 9.44ms. We also reject samples where pressure is greater than pressure_max. Signed-off-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-10-29kconfig: Have streamline_config process menuconfigs tooSteven Rostedt1-2/+2
Some menuconfigs in the Kconfig files have prompts and dependencies. Currently, streamline_config misses these, and this can cause streamline_config to keep modules enabled that should not be, and even worse, not enable those that should. This patch makes streamline_config process menuconfigs just like it would process a config. Reported-by: member graysky <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
2010-10-29kconfig: Fix streamline_config to read multi line deps in Kconfig filesSteven Rostedt1-1/+18
I noticed that some Kconfig files have multi line dependencies that continue with a backslash. Those dependencies on the next line will be missed by streamline_config. For example: config CS89x0 tristate "CS89x0 support" depends on NET_ETHERNET && (ISA || EISA || MACH_IXDP2351 \ || ARCH_IXDP2X01 || MACH_MX31ADS) The "|| ARCH_IXDP2X01 || MACH_MX31ADS)" will not be processed. This patch adds code to handle this case. Signed-off-by: Steven Rostedt <[email protected]>
2010-10-29kconfig: Fix missing declaration of variable $dir in streamline_config.plhiromu1-1/+3
On Fri, Aug 17, 2010 at 01:43PM +0800, Américo Wang wrote: > Acked-by: WANG Cong <[email protected]> > > BTW, I think we should add "use strict;" too. Then I added "use strict;" to streamline_config.pl, I saw another warning. > Global symbol "$dir" requires explicit package name at scripts/kconfig/streamline_config.pl line 286. > Global symbol "$dir" requires explicit package name at scripts/kconfig/streamline_config.pl line 287. > Global symbol "$dir" requires explicit package name at scripts/kconfig/streamline_config.pl line 288. Then I added "my $dir;" to line 285. Cc: Américo Wang <[email protected]> Cc: Toralf Foerster <[email protected]> Cc: KAMEZAWA Hiroyuki <[email protected]> Cc: YOSHIFUJI Hideaki <[email protected]> Signed-off-by: Hiromu Yakura <[email protected]> LKML-Reference: <1282042158.7160.9.camel@hiromu-Macbook> [ changed to just add my in front of $dir instead of new line ] Signed-off-by: Steven Rostedt <[email protected]>
2010-10-29kconfig: Fix variable name typo %prompts in streamline_config.plhiromu yagura1-2/+2
When I added "use strict;" to streamline_config.pl, I saw the following warnings: > Global symbol "%prompt" requires explicit package name at scripts/kconfig/streamline_config.pl line 183. > Global symbol "%prompt" requires explicit package name at scripts/kconfig/streamline_config.pl line 368. The declaration of %prompt was incorrect, and should have been %prompts. Cc: Toralf Foerster <[email protected]> Cc: KAMEZAWA Hiroyuki <[email protected]> Cc: YOSHIFUJI Hideaki <[email protected]> Signed-off-by: Hiromu Yakura <[email protected]> LKML-Reference: <1281845597.11566.5.camel@camp10-laptop> Signed-off-by: Steven Rostedt <[email protected]>
2010-10-29kconfig: Make localmodconfig handle environment variablesSteven Rostedt1-1/+11
The commit 838a2e55e6a4e9e8a10451ed2ef0f7a08dabdb04 kbuild: migrate all arch to the kconfig mainmenu upgrade Broke make localmodconfig. The reason was that it added a environment variable to the kconfig source, which the streamline_config.pl could not handle. This patch changes streamline_config.pl to handle kconfig sources using environment variables in their names. Cc: Arnaud Lacombe <[email protected]> Cc: Sam Ravnborg <[email protected]> Cc: Michal Marek <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>