aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2005-10-28[PATCH] fix try_module_get race in elevator_findTejun Heo1-10/+14
This patch removes try_module_get race in elevator_find. try_module_get should always be called with the spinlock protecting what the module init/cleanup routines register/unregister to held. In the case of elevators, we should be holding elv_list to avoid it going away between spin_unlock_irq and try_module_get. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2005-10-28Following the same idea, it occurs to me that we should only updateChen, Kenneth W1-0/+3
disk stat when "now" is different from disk->stamp. Otherwise, we are again needlessly adding zero to the stats. Signed-off-by: Ken Chen <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2005-10-28[patch] remove gendisk->stamp_idle fieldChen, Kenneth W3-8/+7
struct gendisk has these two fields: stamp, stamp_idle. Update to stamp_idle is always in sync with stamp and they are always the same. Therefore, it does not add any value in having two fields tracking same timestamp. Suggest to remove it. Also, we should only update gendisk stats with non-zero value. Advantage is that we don't have to needlessly calculate memory address, and then add zero to the content. Signed-off-by: Ken Chen <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2005-10-27Merge /home/trondmy/scm/kernel/git/torvalds/linux-2.6Trond Myklebust4-7/+8
2005-10-27RPC: Ensure that nobody can queue up new upcalls after rpc_close_pipes()Trond Myklebust1-14/+15
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Allow files that are open for write to invalidate cachesTrond Myklebust1-4/+0
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFSv4: Convert unnecessary XDR warning messages into dprintk()Trond Myklebust1-11/+6
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFSv4: Add post-op attributes to NFSv4 write and commit callbacks.Trond Myklebust3-7/+36
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFSv4: Add post-op attributes to nfs4_proc_remove()Trond Myklebust3-14/+45
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFSv4: Add post-op attributes to nfs4_proc_rename()Trond Myklebust3-7/+41
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFSv4: Add post-op attributes to nfs4_proc_link()Trond Myklebust3-11/+54
Optimise attribute revalidation when hardlinking. Add post-op attributes for the directory and the original inode. Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Ensure that nfs_link() instantiates the dentry correctlyTrond Myklebust1-7/+4
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Add optional post-op getattr instruction to the NFSv4 file close.Trond Myklebust3-7/+39
"Optional" means that the close call will not fail if the getattr at the end of the compound fails. If it does succeed, try to refresh inode attributes. Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Optimise attribute revalidation on close().Trond Myklebust1-2/+2
Only force a getattr in nfs_file_flush() if the attribute cache is stale. Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFSv4: Add directory post-op attributes to the CREATE operations.Trond Myklebust3-15/+84
Since the directory attributes change every time we CREATE a file, we might as well pick up the new directory attributes in the same compound. Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: nfs_lookup doesn't need to revalidate the parent directory's inodeChuck Lever1-6/+0
nfs_lookup() used to consult a lookup cache before trying an actual wire lookup operation. The lookup cache would be invalid, of course, if the parent directory's mtime had changed, so nfs_lookup performed an inode revalidation on the parent. Since nfs_lookup() doesn't use a cache anymore, the revalidation is no longer necessary. There are cases where it will generate a lot of unnecessary GETATTR traffic. See http://bugzilla.linux-nfs.org/show_bug.cgi?id=9 Test-plan: Use lndir and "rm -rf" and watch for excess GETATTR traffic or application level errors. Signed-off-by: Chuck Lever <[email protected]> Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Don't let nfs_end_data_update() clobber attribute update informationTrond Myklebust5-29/+73
Since we almost always call nfs_end_data_update() after we called nfs_refresh_inode(), we now end up marking the inode metadata as needing revalidation immediately after having updated it. This patch rearranges things so that we mark the inode as needing revalidation _before_ we call nfs_refresh_inode() on those operations that need it. Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Optimise inode attribute cache updatesTrond Myklebust6-20/+44
Allow nfs_refresh_inode() also to update attributes on the inode if the RPC call was sent after the last call to nfs_update_inode(). Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Convert cache_change_attribute into a jiffy-based valueTrond Myklebust2-5/+5
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27NFS: Cleanup initialisation of struct nfs_fattrTrond Myklebust7-65/+71
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27Merge branch 'master'Jeff Garzik18-54/+103
2005-10-27Merge branch 'master'Jeff Garzik18-54/+103
2005-10-27Linux v2.6.14Linus Torvalds1-1/+1
"Better late than never"
2005-10-27Merge master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6Linus Torvalds1-0/+1
2005-10-27[PATCH] cpufreq: SMP fix for conservative governorDave Jones1-3/+3
Don't try to access not-present CPUs. Conservative governor will always oops on SMP without this fix. Fixes http://bugzilla.kernel.org/show_bug.cgi?id=4781 Signed-off-by: Venkatesh Pallipadi <[email protected]> Signed-off-by: Dave Jones <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-27Revert "x86-64: Avoid unnecessary double bouncing for swiotlb"Linus Torvalds1-3/+3
Commit id 6142891a0c0209c91aa4a98f725de0d6e2ed4918 Andi Kleen reports that it seems to break things for some people, and since it's purely a small optimization, revert it for now. Signed-off-by: Linus Torvalds <[email protected]>
2005-10-27Merge /home/trondmy/scm/kernel/git/torvalds/linux-2.6Trond Myklebust66-504/+737
2005-10-27NFS: Fix a bad cast in nfs3_read_doneTrond Myklebust1-1/+1
Signed-off-by: Trond Myklebust <[email protected]>
2005-10-27Revert "RPC: stops the release_pipe() funtion from being called twice"Trond Myklebust1-2/+0
This reverts 747c5534c9a6da4aa87e7cdc2209ea98ea27f381 commit.
2005-10-27[TCP]: Clear stale pred_flags when snd_wnd changesHerbert Xu1-0/+1
This bug is responsible for causing the infamous "Treason uncloaked" messages that's been popping up everywhere since the printk was added. It has usually been blamed on foreign operating systems. However, some of those reports implicate Linux as both systems are running Linux or the TCP connection is going across the loopback interface. In fact, there really is a bug in the Linux TCP header prediction code that's been there since at least 2.1.8. This bug was tracked down with help from Dale Blount. The effect of this bug ranges from harmless "Treason uncloaked" messages to hung/aborted TCP connections. The details of the bug and fix is as follows. When snd_wnd is updated, we only update pred_flags if tcp_fast_path_check succeeds. When it fails (for example, when our rcvbuf is used up), we will leave pred_flags with an out-of-date snd_wnd value. When the out-of-date pred_flags happens to match the next incoming packet we will again hit the fast path and use the current snd_wnd which will be wrong. In the case of the treason messages, it just happens that the snd_wnd cached in pred_flags is zero while tp->snd_wnd is non-zero. Therefore when a zero-window packet comes in we incorrectly conclude that the window is non-zero. In fact if the peer continues to send us zero-window pure ACKs we will continue making the same mistake. It's only when the peer transmits a zero-window packet with data attached that we get a chance to snap out of it. This is what triggers the treason message at the next retransmit timeout. Signed-off-by: Herbert Xu <[email protected]> Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
2005-10-27[PATCH] Yet more posix-cpu-timer fixesRoland McGrath1-4/+7
This just makes sure that a thread's expiry times can't get reset after it clears them in do_exit. This is what allowed us to re-introduce the stricter BUG_ON() check in a362f463a6d316d14daed0f817e151835ce97ff7. Signed-off-by: Linus Torvalds <[email protected]>
2005-10-27Revert "remove false BUG_ON() from run_posix_cpu_timers()"Linus Torvalds2-18/+26
This reverts commit 3de463c7d9d58f8cf3395268230cb20a4c15bffa. Roland has another patch that allows us to leave the BUG_ON() in place by just making sure that the condition it tests for really is always true. That goes in next. Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] Fix cpu timers expiration timeOleg Nesterov1-3/+3
There's a silly off-by-one error in the code that updates the expiration of posix CPU timers, causing them to not be properly updated when they hit exactly on their expiration time (which should be the normal case). This causes them to then fire immediately again, and only _then_ get properly updated. Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26Merge master.kernel.org:/home/rmk/linux-2.6-serialLinus Torvalds2-1/+27
2005-10-26Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds2-1/+2
2005-10-26posix cpu timers: fix timer orderingLinus Torvalds1-6/+4
Pointed out by Oleg Nesterov, who has been walking over the code forwards and backwards. Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] fix radeon_cp_init_ring_buffer()Ivan Kokshaysky1-5/+6
I've seen similar failure on alpha. Obviously, someone forgot to convert sg->handle stuff for PCI gart case. Signed-off-by: Dave Airlie <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] svcsock timestamp fixAndrew Morton1-1/+1
Convert nanoseconds to microseconds correctly. Spotted by Steve Dickson <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] Fix HFS+ to free up the space when a file is deleted.Peter Wainwright1-0/+1
fsck_hfs reveals lots of temporary files accumulating in the hidden directory "\000\000\000HFS+ Private Data". According to the HFS+ documentation these are files which are unlinked while in use. However, there may be a bug in the Linux hfsplus implementation which causes this to happen even when the files are not in use. It looks like the "opencnt" field is never initialized as (I think) it should be in hfsplus_read_inode. This means that a file can appear to be still in use when in fact it has been closed. This patch seems to fix it for me. Signed-off-by: Anton Altaparmakov <[email protected]> Cc: Roman Zippel <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] kill massive wireless-related log spamJeff Garzik1-2/+7
Although this message is having the intended effect of causing wireless driver maintainers to upgrade their code, I never should have merged this patch in its present form. Leading to tons of bug reports and unhappy users. Some wireless apps poll for statistics regularly, which leads to a printk() every single time they ask for stats. That's a little bit _too_ much of a reminder that the driver is using an old API. Change this to printing out the message once, per kernel boot. Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] export cpu_online_mapAndrew Morton1-0/+1
With CONFIG_SMP=n: *** Warning: "cpu_online_map" [drivers/firmware/dcdbas.ko] undefined! due to set_cpus_allowed(). Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] ppc64: Fix wrong register mapping in mpic driverBenjamin Herrenschmidt1-2/+2
The mpic interrupt controller driver (used on G5 and early pSeries among others) has a bug where it doesn't get the right virtual address for the timer registers. It causes the driver to poke at the MMIO space of whatever has been mapped just next to it (ouch !) when initializing and causes boot failures on some IBM machines. Signed-off-by: Benjamin Herrenschmidt <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] NUMA: broken per cpu pageset countersMagnus Damm1-0/+2
The NUMA counters in struct per_cpu_pageset (linux/mmzone.h) are never cleared today. This works ok for CPU 0 on NUMA machines because boot_pageset[] is already zero, but for other CPU:s this results in uninitialized counters. Signed-off-by: Magnus Damm <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[PATCH] md: make sure mdthreads will always respond to kthread_stopNeilBrown1-4/+6
There are still a couple of cases where md threads (the resync/recovery thread) is not interruptible since the change to use kthreads. All places there it tests "signal_pending", it should also test kthread_should_stop, as with this patch. Signed-off-by: Neil Brown <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-10-26[libata] ata_timing fixAlan Cox1-1/+1
2005-10-26[ARM] 3032/1: sparse: complains about generic_fls() prototype in ↵Ian Campbell1-1/+0
asm-arm/bitops.h Patch from Ian Campbell Sparse complains about the definition of generic_fls in asm-arm/bitops.h: CHECK /home/icampbell/devel/kernel/2.6/arch/arm/mach-pxa/viper.c include2/asm/bitops.h:350:34: error: marked inline, but without a definition The definition is unnecessary since linux/bitops.h defines generic_fls before including asm/bitops.h and asm/bitops.h should not be included directly. There are still some places where asm/bitops.h is directly included, but I think that code should be fixed. I was a little wary of the patch for this reason but lubbock, mainstone and assabet all build OK and so do my in house boards... ARM is the only arch with the generic_fls prototype in this way. Signed-off-by: Ian Campbell <[email protected]> Signed-off-by: Russell King <[email protected]>
2005-10-26Merge branch 'master'Jeff Garzik54-501/+686
2005-10-26Merge branch 'master'Jeff Garzik54-501/+686
2005-10-26[PATCH] ieee80211 build fixJames Ketrenos1-1/+1
James Ketrenos wrote: > [3/4] Use the tx_headroom and reserve requested space. This patch introduced a compile problem; patch below corrects this. Fixed compilation error due to not passing tx_headroom in ieee80211_tx_frame. Signed-off-by: James Ketrenos <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2005-10-26[netdrvr forcedeth] scatter gather and segmentation offload supportAyaz Abdulla1-87/+162
also: - eliminate use of pointless get_nvpriv() wrapper, and use netdev_priv() directly. - use NETDEV_TX_xxx return codes