summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [CIFS] Cleanup formattingSteve French2007-10-032-46/+51
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] CIFS ACL support (part 2)Shirish Pargaonkar2007-10-034-60/+151
| | | | | Signed-off-by: Shirish Pargaonkar <shirishp@us.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] remove some redundant argument checksMariusz Kozlowski2007-10-031-14/+8
| | | | | | | | | This patch does kmalloc + memset conversion to kzalloc and removes some redundant argument checks. Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Reduce chance of list corruption in find_writable_fileSteve French2007-10-021-15/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | When find_writable_file is racing with close and the session to the server goes down, Shaggy noticed that there was a chance that an open file in the list of files off the inode could have been freed by close since cifs_reconnect can block (the spinlock thus not held). This means that we have to start over at the beginning of the list in some cases. There is a 2nd change that needs to be made later (pointed out by Jeremy Allison and Shaggy) in order to prevent cifs_close ever freeing the cifs per file info when a write is pending. Although we delay close from freeing this memory for sufficiently long for all known cases, ultimately on a very, very slow write overlapping a close pending we need to allow close to return (without freeing the cifs file info) and defer freeing the memory to be the responsibility of the (sloooow) write thread (presumably have to look at every place wrtPending is decremented - and add a flag for deferred free for after wrtPending goes to zero). Acked-by: Shaggy <shaggy@us.ibm.com> Acked-by: Shirish Pargaonkar <shirishp@us.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] change misleading field nameSteve French2007-10-012-8/+6
| | | | | | num_auth is really num_subauth in ACL terminology Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] named pipe support (part 2)Steve French2007-09-294-5/+17
| | | | | | Also fixes typo which could cause build break Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] CIFS support for named pipes (part 1)Steve French2007-09-295-8/+37
| | | | | | | | | | | | This allows cifs to mount to ipc shares (IPC$) which will allow user space applications to layer over authenticated cifs connections (useful for Wine and others that would want to put DCE/RPC over CIFS or run CIFS named pipes) Acked-by: Rob Shearman <rob@codeweavers.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix memory leak in statfs to very old serversSteve French2007-09-282-4/+5
| | | | | | | We were allocating request buffers twice in the statfs path when mounted to very old (Windows 9x) servers. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] fix cut and paste error - missing defines cause cifsacl build errorSteve French2007-09-251-1/+8
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] move cifs acl code to new file and fix build breakSteve French2007-09-255-109/+137
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Support for CIFS ACLs (part 1)Steve French2007-09-244-8/+143
| | | | | | | | Add code to be able to dump CIFS ACL information when Query Posix ACL with cifsacl mount parm enabled. Signed-off-by: Shirish Pargoankar <shirishp@us.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] fix typo in previous commitSteve French2007-09-201-1/+1
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Print better error when server returns malformed QueryUnixInfo responseSteve French2007-09-201-0/+3
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Add warning message when broken server fails SetFSInfo callSteve French2007-09-201-1/+10
| | | | | | | | | | | | | A reasonably common NAS server returns an error on the SetFSInfo of the Unix capabilities. Log a message for this alerting the user that the server may have problems with the Unix extensions, and telling them what they can do to workaround it. Unfortunately the server does not return other clues that we could easily use to turn the Unix Extension support off automatically in this case (since they claim to support it). Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fallback to standard mkdir if server incorrectly claims support forSteve French2007-09-172-3/+6
| | | | | | posix ops Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] fix small memory leak in an error path in new posix mkdirSteve French2007-09-171-2/+6
| | | | | | | | | | | | | There is a small memory leak in fs/cifs/inode.c::cifs_mkdir(). Storage for 'pInfo' is allocated with kzalloc(), but if the call to CIFSPOSIXCreate(...) happens to return 0 and pInfo->Type == -1, then we'll jump to the 'mkdir_get_info' label without freeing the storage allocated for 'pInfo'. This patch adds a kfree() call to free the storage just before jumping to the label, thus getting rid of the leak. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] missing field in debug output from previous fixSteve French2007-09-151-1/+2
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix potential NULL pointer usage if kzalloc failsSteve French2007-09-152-12/+17
| | | | | | | Potential problem was noticed by Cyrill Gorcunov CC: Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] typo in earlier cifs_reconnect fixSteve French2007-09-151-1/+0
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Respect umask when using POSIX mkdirJeff2007-09-131-0/+1
| | | | | | | | | When making a directory with POSIX mkdir calls, cifs_mkdir does not respect the umask. This patch causes the new POSIX mkdir to create with the right mode Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] lock inode open file list in close in case racing with openSteve French2007-09-111-0/+2
| | | | | | | | | | Harmless since it only protected turning off caching for the inode, but cleaner to lock around this in case we have a close racing with open. Signed-off-by: Shaggy <shaggy@us.ibm.com> CC: Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix oops in find_writable_fileSteve French2007-09-081-9/+28
| | | | | | | | There was a case in which find_writable_file was not waiting long enough under heavy stress when writepages was racing with close of the file handle being used by the write. Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix warnings shown by newer version of sparseSteve French2007-08-314-37/+32
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] formatting cleanup found by checkpatchSteve French2007-08-3110-105/+80
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] fix for incorrect session reconnectsSteve French2007-08-301-6/+7
| | | | | | | | | | | | | | cifs reconnect could end up happening incorrectly due to the small initial tcp recvmsg response. When the socket was within three bytes of being full and the recvmsg returned only 1 to 3 bytes of the initial 4 byte read of the RFC1001 length field. Fortunately this seems to be less common on more current kernels, but this fixes it so cifs tries to retrieve all 4 bytes of the initial tcp read. Signed-off-by: Shirish Pargoankar <shirishp@us.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS][KJ] use abs() from kernel.h where appropriateAndre Haupt2007-08-301-1/+1
| | | | | Signed-off-by: Andrew Haupt <andre@finow14.de> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] fix typo in previousSteve French2007-08-241-1/+1
| | | | Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Byte range unlock request to non-Unix server can unlock too muchJeff Layton2007-08-242-2/+6
| | | | | | | | | | | | | | | | | On a mount without posix extensions enabled, when an unlock request is made, the client can release more than is intended. To reproduce, on a CIFS mount without posix extensions enabled: 1) open file 2) do fcntl lock: start=0 len=1 3) do fcntl lock: start=2 len=1 4) do fcntl unlock: start=0 len=1 ...on the unlock call the client sends an unlock request to the server for both locks. The problem is a bad test in cifs_lock. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] Fix unbalanced call to GetXid/FreeXidCyrill Gorcunov2007-08-241-1/+1
| | | | | Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
* [CIFS] cifs truncate missing a fix for private map COW raceSteve French2007-08-231-0/+9
| | | | | | | vmtruncate had added the same fix to handle the case of private pages being Copy on writed while truncate_inode_pages is going on Signed-off-by: Steve French <sfrench@us.ibm.com>
* fix - ensure we don't use bootconsoles after init has been releasedRobin Getz2007-08-221-4/+6
| | | | | | | | | Gerd Hoffmann pointed out that my patch from yesterday can lead to a null pointer dereference if the kernel is booted with no console, and no earlyprintk defined. This fixes that issue. Signed-off-by: Robin Getz <rgetz@blackfin.uclinux.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* [POWERPC] Fix PCI Device ID for MPC8544/8533 processorsKumar Gala2007-08-222-2/+6
| | | | | | | | | | The initial user manuals for MPC8544/8533 had some issues with properly documenting the device IDs for MPC8544/8533. These processors are almost identical and both show up on the reference boards. Fix up the quirks for PCIe support to handle MPC8533/E. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* sky2: don't clear phy power bitsStephen Hemminger2007-08-211-2/+2
| | | | | | | | | There are special PHY settings available on Yukon EC-U chip that should not get cleared. This should solve mysterious errors on some motherboards (like Gigabyte DS-3). Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* hisax: update hfc_usb driverMartin Bachem2007-08-212-445/+288
| | | | | | | | | | This fixes handling of USB ISO completion error -EXDEV and includes several other changes to current CVS version at isdn4linux.de (changes in debug flags, style of code remarks, etc) Signed-off-by: Martin Bachem <info@colognechip.com> Acked-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i386: Mark NUMA support experimentalAndi Kleen2007-08-211-2/+6
| | | | | | | | | | | | | I did some testing and found quite a lot of problems (doesn't boot at all on non NUMA and misassigns cores on Opteron systems). Mark it as experimental and warn against its use for now. It's still default y for SUMMIT/NUMAQ because it'll presumably work on these systems. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Revert "USB: EHCI cpufreq fix"Linus Torvalds2007-08-215-215/+0
| | | | | | | | | | | | | This reverts commit 196705c9bbc03540429b0f7cf9ee35c2f928a534. It was reported to cause a regression by Daniel Exner, and Arjan van de Ven points out that we actually already have infrastructure in place for setting limits on acceptable DMA latency that would be the much more correct fix for the problem with some Broadcom EHCI controllers. Fixed up trivial conflicts due to the changes to support big-endian host controller descriptors in drivers/usb/host/{ehci-sched.c,ehci.h}. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* dio: zero struct dio with kzalloc instead of manuallyZach Brown2007-08-211-17/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch uses kzalloc to zero all of struct dio rather than manually trying to track which fields we rely on being zero. It passed aio+dio stress testing and some bug regression testing on ext3. This patch was introduced by Linus in the conversation that lead up to Badari's minimal fix to manually zero .map_bh.b_state in commit: 6a648fa72161d1f6468dabd96c5d3c0db04f598a It makes the code a bit smaller. Maybe a couple fewer cachelines to load, if we're lucky: text data bss dec hex filename 3285925 568506 1304616 5159047 4eb887 vmlinux 3285797 568506 1304616 5158919 4eb807 vmlinux.patched I was unable to measure a stable difference in the number of cpu cycles spent in blockdev_direct_IO() when pushing aio+dio 256K reads at ~340MB/s. So the resulting intent of the patch isn't a performance gain but to avoid exposing ourselves to the risk of finding another field like .map_bh.b_state where we rely on zeroing but don't enforce it in the code. Signed-off-by: Zach Brown <zach.brown@oracle.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6Linus Torvalds2007-08-2115-74/+113
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: ide-disk: workaround for buggy HPA support on ST340823A (take 3) hpt34x: fix CONFIG_HPT34X_AUTODMA=n handling triflex: add missing ->dma_base check pdc202xx_old: add missing ->dma_base check pdc202xx_new: add missing ->dma_base check cs5530: add missing ->dma_base check ide: ide_config_drive_speed() bugfixes ide: add cable detection for early UDMA66 devices (take 3) ide-pmac: fix drive->init_speed reporting ide: config_drive_for_dma() fixes ide-cris: fix ->set_pio_mode method to set transfer mode on the device ide: fix hidden dependencies on CONFIG_IDE_GENERIC ide: make CONFIG_IDE_GENERIC default to N
| * ide-disk: workaround for buggy HPA support on ST340823A (take 3)Bartlomiej Zolnierkiewicz2007-08-202-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This disk reports total number of sectors instead of maximum sector address in response to READ_NATIVE_MAX_ADDRESS command and also happily accepts SET_MAX_ADDRESS command with the bogus value. This results in +1 sector capacity being used and errors on attempts to use the last sector. ... hdd: Host Protected Area detected.         current capacity is 78165360 sectors (40020 MB)         native  capacity is 78165361 sectors (40020 MB) hdd: Host Protected Area disabled. ... hdd: reading: block=78165360, sectors=1, buffer=0xc1e63000 hdd: dma_intr: status=0x51 { DriveReady SeekComplete Error } hdd: dma_intr: error=0x10 { SectorIdNotFound }, LBAsect=78165360, sector=78165360 ... Add hpa_list[] table and workaround the issue in idedisk_check_hpa(). v2: * Add missing export and improve patch description a bit. v3: * Add list termination. (From Mikko) Fixes kernel bugzilla bug #8816. Thanks to Mikko for investigating the issue and helping with this patch. Cc: Mikko Rapeli <mikko.rapeli@iki.fi> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * hpt34x: fix CONFIG_HPT34X_AUTODMA=n handlingBartlomiej Zolnierkiewicz2007-08-201-4/+2
| | | | | | | | | | | | | | | | | | | | | | Programming DMA mode may destroy current PIO mode setting so if CONFIG_HPT34X_AUTODMA=n (the default case) make ide_tune_dma() fail early by disabling all host DMA masks and re-tune PIO mode. This fix doesn't help with the driver being broken but is needed for some other changes. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * triflex: add missing ->dma_base checkBartlomiej Zolnierkiewicz2007-08-201-0/+3
| | | | | | | | | | | | | | | | If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks shouldn't be initialized or bad things will happen. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * pdc202xx_old: add missing ->dma_base checkBartlomiej Zolnierkiewicz2007-08-201-3/+6
| | | | | | | | | | | | | | | | If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks shouldn't be initialized or bad things will happen. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * pdc202xx_new: add missing ->dma_base checkBartlomiej Zolnierkiewicz2007-08-201-2/+8
| | | | | | | | | | | | | | | | | | | | If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks shouldn't be initialized or bad things will happen. Also this host driver requires valid PCI BAR4 for normal operation so check it in ->init_chipset and fail initialization if not set. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * cs5530: add missing ->dma_base checkBartlomiej Zolnierkiewicz2007-08-201-1/+7
| | | | | | | | | | | | | | | | | | | | If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks shouldn't be initialized or bad things will happen. Also this host driver requires valid PCI BAR4 for normal operation so check it in ->init_chipset and fail initialization if not set. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * ide: ide_config_drive_speed() bugfixesBartlomiej Zolnierkiewicz2007-08-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use ->OUTBSYNC instead of ->OUTB when writing command register (needed for scc_pata and pmac host drivers). * Don't check DRDY bit of the status register on ATAPI devices (ATAPI devices are free to ignore DRDY bit). Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp> Cc: Akira Iguchi <akira2.iguchi@toshiba.co.jp> Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * ide: add cable detection for early UDMA66 devices (take 3)Bartlomiej Zolnierkiewicz2007-08-203-23/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Move ide_in_drive_list() from ide-dma.c to ide-iops.c. * Add ivb_list[] table for listening early UDMA66 devices which don't conform to ATA4 standard wrt cable detection (bit14 is zero, only bit13 is valid) and use only device side cable detection for them since host side cable detection may be unreliable. * Add model "QUANTUM FIREBALLlct10 05" with firwmare "A03.0900" to the list (from Craig's bugreport). v2: * Improve kernel message basing on suggestion from Sergei. v3: * Don't print kernel message when no device side cable detection is done, plus some minor fixes. (Noticed by Sergei) Thanks to Craig for testing this patch. Cc: Craig Block <chblock3@yahoo.com> Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * ide-pmac: fix drive->init_speed reportingBartlomiej Zolnierkiewicz2007-08-201-11/+3
| | | | | | | | | | | | | | | | | | | | pmac_ide_tune_chipset() don't set drive->init_speed. Fix it by setting drive->{current,init}_speed in pmac_ide_do_setfeature() and clean up pmac_ide_{tune_chipset,mdma_enable,udma_enable}(). Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * ide: config_drive_for_dma() fixesBartlomiej Zolnierkiewicz2007-08-203-26/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add DMA blacklist checking (->ide_dma_on check probably can go now). * Add ->atapi_dma flag checking and remove no longer needed ns87415_ide_dma_check() from ns87415 host driver. * Remove now needless __ide_dma_check() wrapper and symbol export. * Check drive->autodma instead of hwif->autodma (there should be no changes in behavior as all users of config_drive_for_dma() set both ->autodma flags). Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * ide-cris: fix ->set_pio_mode method to set transfer mode on the deviceBartlomiej Zolnierkiewicz2007-08-201-0/+2
| | | | | | | | | | Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
| * ide: fix hidden dependencies on CONFIG_IDE_GENERICBartlomiej Zolnierkiewicz2007-08-203-0/+11
| | | | | | | | | | | | | | | | | | Some host drivers depend on CONFIG_IDE_GENERIC to do the probing but their config options lack explicit dependencies on IDE_GENERIC. In the long-term these host drivers should be fixed to do the probing themselves but for now fix them by making their config options select CONFIG_IDE_GENERIC. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>