- 23 Aug, 2004 40 commits
-
-
Trond Myklebust authored
store 128 bytes, usually NFS servers don't use file handles that are more than 32 bytes in size. This patch creates an efficient mechanism for comparing file handles that ignores the unused bytes in a file handle. Signed-off-by: Chuck Lever <cel@netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
direct I/O support for NFS files. The 2.4 VFS O_DIRECT logic was block based, thus the NFS client had to provide a minimum allowable blocksize for O_DIRECT reads and writes on NFS files. For various reasons we chose 512 bytes. In 2.6, there is no requirement for a minimum blocksize. NFS O_DIRECT reads and writes can go to any byte at any offset in a file. Thus we revert the blocksize setting for NFS file systems to the previous behavior, which was to advertise the "wsize" setting as the optimal I/O block size. This improves the performance of applications like 'cp' which use this value as their transfer size. This patch also exposes the server's reported disk block size in the f_frsize of the vfsstat structure. Signed-off-by: Chuck Lever <cel@netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
request. Get rid of nfs_put_super. Signed-off-by: Chuck Lever <cel@netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
a heavy read and write workload on one mount point from interfering with workloads on other mount points. Note that there is still some serialization due to the big kernel lock. Signed-off-by: Chuck Lever <cel@netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
why we shouldn't be slightly stricter here, so I'm just going to keep sending this until I'm told to stop.... Make sure that unmapped errors are approximately in the range of defined NFS4 errors. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
nfs_open_revalidate() avoids several atomicity problems. Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
for the full set of permissions. Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
Currently we are wasting considerable amounts of space in the page cache. NFSv4: fix buffer overrun bugs that were being hidden by the above. Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
using a dynamically allocated rpc_task structure instead of allocating one on the stack. This reduces stack utilization by over 200 bytes for all synchronous NFS operations. Signed-off-by: Chuck Lever <cel@netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Trond Myklebust authored
immediately unlocked on the server side if blocking has occurred. Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
-
Andrew Morton authored
drivers/net/Kconfig:1749:warning: 'select' used by config symbol 'VIA_VELOCITY' We renamed CONFIG_CRC16. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrey Panin authored
Signed-off-by: Andrey Panin <pazke@donpac.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Adrian Bunk authored
cciss uses /proc to hook into the SCSI subsystem. If you do not build /proc support into your kernel then you should also disable tape support in the driver. Signed-off-by: Adrian Bunk <bunk@fs.tum.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch updates the maintainers list for HP drivers. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch changes our read_ahead to 1024. This has been shown to increase performance. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch fixes our usage of pdev->intr. We were truncating it to an unchar. We were also reading it before calling pci_enable_device. This patch fixes both of those. Thanks to Bjorn Helgaas for the patch. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
Somehow I managed to get the wrong PCI ID in pci_ids.h. 3210 is the correct PCI ID, 3211 is the subsystem ID. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch fixes the vendor ID for our cciss based SATA controller due out later this year and adds the new PCI ID to pci_ids.h. Also changes DRIVER_NAME to HP CCISS. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch fixes our cylinder calculations. Without his fix the number of cylinders maxes out at 65535. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch fixes our output in /proc to display the logical volume sizes and RAID levels correctly. Without this patch RAID level will always be 0 and size may be displayed as 0GB. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch addresses a problem with our utilities. We must zero out the buffer before copying their data into it to prevent bogus info when switching between SCSI & SATA or SAS drives. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Mike Miller authored
This patch fixes our usage of copy_to_user. We were passing in the size of the address rather than the size of the struct. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Anton Blanchard authored
Fix another gcc 3.5 compile issue, this time the default_policy prototype was not marked static whereas the definition was. There is no need for the prototype, so remove it. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Rik van Riel authored
Since various gnupg users have indicated that gpg wants to mlock 32kB of memory, I created the patch below that increases the default mlock ulimit to 32kB. This is no security problem because it's trivial for processes to lock way more memory than this in page tables, network buffers, etc. In fact, since this patch allows gnupg to mlock to prevent passphrase data from being swapped out, the security people will probably like it ;) This gets the new per-user mlock limit a bit more testing, too. Signed-off-by: Rik van Riel <riel@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Rik van Riel authored
Here is the last agreed-on patch that lets normal users mlock pages up to their rlimit. This patch addresses all the issues brought up by Chris and Andrea. From: Chris Wright <chrisw@osdl.org> Couple more nits. The default lockable amount is one page now (first patch is was 0). Why don't we keep it as 0, with the CAP_IPC_LOCK overrides in place? That way nothing is changed from user perspective, and the rest of the policy can be done by userspace as it should. This patch breaks in one scenario. When ulimit == 0, process has CAP_IPC_LOCK, and does SHM_LOCK. The subsequent unlock or destroy will corrupt the locked_shm count. It's also inconsistent in handling user_can_mlock/CAP_IPC_LOCK interaction betwen shm_lock and shm_hugetlb. SHM_HUGETLB can now only be done by the shm_group or CAP_IPC_LOCK. Not any can_do_mlock() user. Double check of can_do_mlock isn't needed in SHM_LOCK path. Interface names user_can_mlock and user_substract_mlock could be better. Incremental update below. Ran some simple sanity tests on this plus my patch below and didn't find any problems. * Make default RLIM_MEMLOCK limit 0. * Move CAP_IPC_LOCK check into user_can_mlock to be consistent and fix but with ulimit == 0 && CAP_IPC_LOCK with SHM_LOCK. * Allow can_do_mlock() user to try SHM_HUGETLB setup. * Remove unecessary extra can_do_mlock() test in shmem_lock(). * Rename user_can_mlock to user_shm_lock and user_subtract_mlock to user_shm_unlock. * Use user instead of current->user to fit in 80 cols on SHM_LOCK. Signed-off-by: Rik van Riel <riel@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ram Pai authored
Here is a consolidated readahead patch that takes care of the performance regression seen with multiple threaded writes to the same file descriptor. The patch does the following: 1. Instead of calculating the average count of sequential access in the read patterns, it calculates the average amount of hits in the current window. 2. This average is used to guide the size of the next current window. 3. Since the field serial_cnt in the ra structure does not make sense with the introduction of the new logic, I have renamed that field as currnt_wnd_hit. This patch will help the read patterns that are not neccessarily sequential but have sufficient locality. However it may regress random workload. Results: 1. Berkley Shands has reported great performance with this patch. 2. iozone showed negligible effect on various read patterns. 3. DSS workload saw neglible change. 4. Sysbench saw a small improvement. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ram Pai authored
Ok I have enclosed the results for the recent readahead fixes. The summary is: there is no significant improvement or decrease in performance of (DSS workload, iozone, sysbench) The increase or decrease is in the margin of errors. I have enclosed a patch that partially backs off Miklos's fix. Shane Shrybman correctly pointed out that the real fix is to set ra->average value to max/2 when we move from readahead-off mode to readahead-on mode. The other part of Miklos's fix becomes irrelevent. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Arjan van de Ven authored
LOOP_CHANGE_FD is an ULONG compatible ioctl, basically same calling convention as LOOP_SET_FD; mark it as such in the compat ioctl list. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Randy Dunlap authored
'make buildcheck' indicates that these functions should not be in an __exit section, so undo that. Yes, they can be called from .text. Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Zou Nanhai authored
Here is a patch to fix a problem of might-sleep-in-atomic which David Mosberger mentioned at http://www.gelato.unsw.edu.au/linux-ia64/0407/10526.html On IA64 platform, a might-sleep-in-atomic warning raise while dumping a multi-thread process. That is because elf_core_dump holds the tasklist_lock before the kernel does a access_process_vm in elf_core_copy_task_regs, This patch detached elf_core_copy_task_regs function from inside tasklist_lock to remove the warning. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Thierry Vignaud authored
fix compiling oldconfig with gcc-3.5: Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Iñaky Pérez-González authored
This patch renames fs/aio.c:'struct timeout' to 'struct aio_timeout'. The rationale behind this decision is this type is used only inside the aforementioned aio.c file and being the type name very generic, it is likely to cause namespace conflicts in the future. I actually found it while working on an extended schedule_timeout()- like API used by robust mutexes but usable by anyone. There I declared a 'struct timeout' and aio.c complained about it. I could have also renamed the struct for the schedule_timeout() like API, but being the aio.c one specific to the file, I thought it might make more sense to rename the later. Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Matt Mackall authored
If netpoll attempts to use a device without polling support, it will oops when shutting down. This adds a check that we've actually attached to a device. Signed-off-by: Matt Mackall <mpm@selenic.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
Remove now-unneeded open-coded unlikelies around IS_ERR(). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-