ChangeSet@1.1536, 2004-12-22 11:57:07-02:00, marcelo@logos.cnet Fix NFS hang on unlink problems: cset exclude: trond.myklebust@fys.uio.no|ChangeSet|20041110174036|20706 Trond says: That will probably cause some report of "posix compatibility problems" due to a side-effect of the "subtree_check" default on knfsd: the problem is that hard links can have different filehandles if they are in different directories. That causes problems for sillyrename (which shows up in the Connectathon tests) but also for file caching (since the 2 filehandles will end up associated to different inodes). This is a problem that really should be solved by changing the default on knfsd, though, rather than through hacks in the client. ChangeSet@1.1535, 2004-12-22 11:55:42-02:00, marcelo@logos.cnet Cset exclude: trond.myklebust@fys.uio.no|ChangeSet|20040521160141|29598 ChangeSet@1.1534, 2004-12-22 11:14:04-02:00, baris@idealteknoloji.com [PATCH] Remove msleep() definitions from sx8.c and forcedeth.c: it is generic now Hi, Recent 2.4.29-pre2-bk2 patch moves msecs_to_jiffies() and msleep() from include/linux/libata-compat.h to include/linux/delay.h with several revisions as i see. But 2.4.29-pre2-bk2 won't compile on my box because these functions still exist in drivers/block/sx8.c and drivers/net/forcedeth.c files and causing redefinition errors. I think they're forgotten. If they're forgotten there, patches that remove them are attachted (i have a clean compilation with them). sx8.c | 11 ----------- 1 files changed, 11 deletions(-) forcedeth.c | 6 ------ 1 files changed, 6 deletions(-) ChangeSet@1.1533, 2004-12-21 16:40:47-02:00, marcelo@logos.cnet Changed EXTRAVERSION to -pre3 ChangeSet@1.1532, 2004-12-21 15:04:26-02:00, solar@openwall.com [PATCH] stronger (paranoic) mremap argument checking Let me start by admitting that all of the mremap fixes below are believed to be either non-security (correctness) ones or to be redundant (hardening). But I want them to get in anyway. ChangeSet@1.1531, 2004-12-21 14:56:33-02:00, ak@suse.de [PATCH] x86_64: fix signal restart bug Fix a pretty bad bug that caused sometimes signals on x86-64 to be restarted like system calls. This corrupted the RIP and in general caused undesirable effects. The problem happens because orig_rax is unsigned on x86-64, but it originally was signed when the signal code was written. And gcc didn't warn about this, because the warning is only in -Wextra. 2.4 was ok in the common path, but still wrong in a different path. In 2.4 we still had a cast for it, but somehow it got dropped in 2.5. Credit goes to John Slice for tracking it down and Erich Boleyn for the original patch. I fixed it at another place too. Signed-off-by: Andi Kleen ChangeSet@1.1530, 2004-12-21 08:37:32-02:00, horms@verge.net.au [PATCH] binfmt_elf force_sig arguments fix There appears to be a small error in the change that was recently applied to fs/binfmt_elf.c to fix error codes and eraly corrupt binary detection. The patch includes changing a send_sig() call to a force_sig() call in load_elf_binary(). However force_sig() only accepts 2 arguments, and thus the patch causes the build to fail. I propose the following patch to simply remove the extra argument to force_sig(), which I beleive will give a sensible result. That or change the call back to send_sig(), though I assume it was changed to force_sig() for a reason. ChangeSet@1.1521.2.7, 2004-12-20 15:21:32-08:00, shemminger@osdl.org [PKT_SCHED]: netem: restart device after inserting packets 2.4 version of the netem wakeup patch. Also fixes the qlen in a couple of places. This makes code basically same as 2.6 Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller ChangeSet@1.1521.2.6, 2004-12-20 15:14:43-08:00, tgraf@suug.ch [PKT_SCHED]: Fix double locking in tcindex destroy path. tcindex's destroy uses its own delete functions to destroy its configuration. The delete function (correctly) takes the qdisc_tree_lock to prevent list walkings from happening while removing from the list. The qdisc_tree_lock is already held if we're comming via the destroy path and thus a double locking takes place. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller ChangeSet@1.1521.2.5, 2004-12-20 15:09:46-08:00, shemminger@osdl.org [TCP]: Missing newline character in printk. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller ChangeSet@1.1527.1.27, 2004-12-20 13:43:54-02:00, marcelo@logos.cnet Cset exclude: akpm@osdl.org|ChangeSet|20041218001750|00972 ChangeSet@1.1527.1.26, 2004-12-20 13:35:14-02:00, solar@openwall.com [PATCH] sysctl: block bogus argument earlier ChangeSet@1.1527.1.25, 2004-12-20 08:09:10-02:00, Andries.Brouwer@cwi.nl [PATCH] do not use CONFIG_BLK_STATS Hi Marcelo, Two years ago I twice sent you the below patch. It is still needed. In the past month alone I have explained fifteen people with obscure mount problems that these were caused by CONFIG_BLK_STATS. Andries ChangeSet@1.1527.1.24, 2004-12-20 06:49:28-02:00, marcelo.tosatti@cyclades.com [PATCH] Move msleep() from libata-compat.h to generic headers We need to move msleep() out from libata-compat.h Here's a patch to do that while backporting improved jiffies to msecs/usecs and back conversion functions which handle different HZ values than 100. ChangeSet@1.1527.1.23, 2004-12-20 06:35:37-02:00, abbotti@mev.co.uk [PATCH] serial closing_wait and close_delay used from wrong data structure In several drivers, the closing_wait and close_delay values are written to a struct serial_state by TIOCSSERIAL, but the values used in the close routine are read from a struct async_struct, with no code to transfer of values between the two structures. This patch ignores the members in struct async_struct and uses the values from struct serial_state. Signed-off-by: Ian Abbott ChangeSet@1.1527.1.22, 2004-12-20 06:34:35-02:00, solar@openwall.com [PATCH] procfs enhanced error reporting ChangeSet@1.1527.1.21, 2004-12-20 05:20:28-02:00, solar@openwall.com [PATCH] binfmt_elf fix return error codes and early corrupt binary detection ChangeSet@1.1527.1.20, 2004-12-17 23:11:00-02:00, solar@openwall.com [PATCH] Fix booting off USB CD-ROMs (do_mounts.c) Fix for booting off USB CD-ROMs (to do_mounts.c). ChangeSet@1.1527.1.19, 2004-12-17 22:55:57-02:00, marcelo@logos.cnet [PATCH] Backport v2.6 tty/ldisc locking fixes ChangeSet@1.1527.1.18, 2004-12-17 22:17:50-02:00, akpm@osdl.org [PATCH] If the machine is full of unmapped clean pagecache pages the kernel won't even try to reclaim inodes > vm_vfs_scan_ratio: > ------------------ > is what proportion of the VFS queues we will scan in one go. > A value of 6 for vm_vfs_scan_ratio implies that 1/6th of the > unused-inode, dentry and dquot caches will be freed during a > normal aging round. > Big fileservers (NFS, SMB etc.) probably want to set this > value to 3 or 2. > > The default value is 6. > ============================================================= Thanks for the info - but doesn't increasing the value of vm_vfs_scan_ratio mean that less of the caches will be freed? Doing a few tests (on another test file system with 2 million or so files and 1Gb of memory) running 'find $disk -type f', with vm_vfs_scan_ratio set to 6 (or 10), the first two column values for xfs_inode, linvfs_icache and dentry_cache in /proc/slabinfo reach about 900000 and stay around that value, but setting vm_vfs_scan_ratio to 1, then each value still reaches 900000, but then falls to a few thousand and increases up to 900000 and then drop away again and repeats. This still happens when I cat many large files (100Mb) to /dev/null at the same time as running the find i.e. the inode caches can still reach 90% of the memory before being reclaimed (with vm_vfs_scan_ratio set to 1). If I stop the find process when the inode caches reach about 90% of the memory, and then start cat'ing the large files, it appears the inode caches are never reclaimed (or longer than it takes to cat 100Gb of data to /dev/null) - is this expected behaviour? It seems the inode cache has priority over cached file data. What triggers the 'normal ageing round'? Is it possible to trigger this earlier (at a lower memory usage), or give a higher priority to cached data? From: Andrew Morton It does. If the machine is full of unmapped clean pagecache pages the kernel won't even try to reclaim inodes. This should help a bit: ChangeSet@1.1527.1.17, 2004-12-17 22:02:43-02:00, hjl@lucon.org [PATCH] backport v2.6: Fix pty race condition http://bugme.osdl.org/show_bug.cgi?id=3894 Created an attachment (id=4277) --> (http://bugme.osdl.org/attachment.cgi?id=4277&action=view) A patch for kernel 2.4.29 This patch should apply to kernel 2.4.29. ChangeSet@1.1527.1.16, 2004-12-17 21:45:58-02:00, chrisw@osdl.org [PATCH] Backport of 2.6 fix to insert_vm_struct to make it return an error rather than BUG(). Backport of 2.6 fix to insert_vm_struct to make it return an error rather than BUG(). This eliminates a user triggerable BUG() when user created a large vma that overlapped with arg pages during exec (could be triggered with a.out on i386 and x86_64 and elf on ia64). Signed-off-by: Chris Wright ===== arch/ia64/ia32/binfmt_elf32.c 1.13 vs edited ===== ChangeSet@1.1527.1.15, 2004-12-17 16:30:45-02:00, geert@linux-m68k.org [PATCH] m68k: fix incorrect config comment in check_bugs() M68k: Fix incorrect config comment in check_bugs() Signed-off-by: Geert Uytterhoeven ChangeSet@1.1527.1.14, 2004-12-16 16:26:55-02:00, marcelo@logos.cnet Solar Designer: Fix do_follow_link() comment ChangeSet@1.1527.1.13, 2004-12-16 16:06:31-02:00, chrisw@osdl.org [PATCH] a.out: error check on set_brk It's possible for do_brk() to fail during set_brk() when exec'ing and a.out. This was noted with Florian's a.out binary and overcommit set to 0. Capture this error and terminate properly. Signed-off-by: Chris Wright Signed-off-by: Linus Torvalds ChangeSet@1.1527.1.12, 2004-12-16 06:20:26-02:00, marcelo@logos.cnet Changed EXTRAVERSION to -pre2 TAG: v2.4.29-pre2