summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] add boot option to control Intel SATA/PATA combined modeJesse Barnes2005-12-132-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Combined mode sucks. Especially when both libata and the legacy IDE drivers try to drive ports on the same device, since that makes DMA rather difficult. This patch addresses the problem by allowing the user to control which driver binds to the ports in a combined mode configuration. In many cases, they'll probably want the libata driver to control both ports since it can use DMA for talking with ATAPI devices (when libata.atapi_enabled=1 of course). It also allows the user to get old school behavior by letting the legacy IDE driver bind to both ports. But neither is forced, the patch doesn't change current behavior unless one of combined_mode=ide or combined_mode=libata is passed on the boot line. Either of those options may require you to access your devices via different device nodes (/dev/hd* in the ide case and /dev/sd* in the libata case), though of course if you have udev installed nicely you may not notice anything. :) Let me know if the documentation is too cryptic, I'd be happy to expand on it if necessary. I think most users will want to boot with 'combined_mode=libata' and add 'options libata atapi_enabled=1' to their modules.conf to get good DVD playing and disk behavior (haven't tested CD or DVD writing though). I'd much rather things behave sanely by default (i.e. DMA for devices on both ports), but apparently that's difficult given the various chip bugs and hardware configs out there (not to mention that people's drives may suddenly change from /dev/hdc to /dev/sdb), so this boot option may be the correct long term fix. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* Merge branch 'upstream-fixes'Jeff Garzik2005-12-135-10/+16
|\
| * [libata] mark certain hardware (or drivers) with a no-atapi flagJeff Garzik2005-12-135-10/+16
| | | | | | | | | | | | | | | | | | | | Some hardware does not support the PACKET command at all. Other hardware supports ATAPI, but the driver does something nasty such as calling BUG() when an ATAPI command is issued. For these such cases, we mark them with a new flag, ATA_FLAG_NO_ATAPI. Initial version contributed by Ben Collins.
* | Merge branch 'master'Jeff Garzik2005-12-1321-99/+307
|\|
| * [PATCH] fbdev: Fix incorrect unaligned access in little-endian machinesAntonino A. Daplas2005-12-134-36/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The drawing function cfbfillrect does not work correctly when access is not unsigned-long aligned. It manifests as extra lines of pixels that are not complete drawn. Reversing the shift operator solves the problem, so I would presume that this bug would manifest only on little endian machines. The function cfbcopyarea may also have this bug. Aligned access should present no problems. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] fbdev: Shift pixel value before entering loop in cfbimageblitAntonino A. Daplas2005-12-131-1/+2
| | | | | | | | | | | | | | | | | | | | In slow imageblit, the pixel value is shifted by a certain amount (dependent on the bpp and endianness) for each iteration. This is inefficient. Better do the shifting once before going into the loop. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] fbdev: fix switch to KD_TEXT, enhanced versionKnut Petersen2005-12-132-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Every framebuffer driver relies on the assumption that the set_par() function of the driver is called before drawing functions and other functions dependent on the hardware state are executed. Whenever you switch from X to a framebuffer console for the very first time, there is a chance that a broken X system has _not_ set the mode to KD_GRAPHICS, thus the vt and framebuffer code executes a screen redraw and several other functions before a set_par() is executed. This is believed to be not a bug of linux but a bug of X/xdm. At least some X releases used by SuSE and Debian show this behaviour. There was a 2nd case, but that has been fixed by Antonino Daplas on 10-dec-2005. This patch allows drivers to set a flag to inform fbcon_switch() that they prefer a set_par() call on every console switch, working around the problems caused by the broken X releases. The flag will be used by the next release of cyblafb and might help other drivers that assume a hardware state different to the one used by X. As the default behaviour does not change, this patch should be acceptable to everybody. Signed-off-by: Knut Petersen <Knut_Petersen@t-online.de> Acked-by: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] fbcon: Avoid illegal display panningAntonino A. Daplas2005-12-131-6/+19
| | | | | | | | | | | | | | | | Avoid calls to fb_pan_display when driver is suspended or not in text mode. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] fbdev: Pan display fixesAntonino A. Daplas2005-12-131-5/+21
| | | | | | | | | | | | | | | | | | | | | | | | - Fix fb_pan_display rejecting yoffsets that are valid if panning mode is ywrap. - Add more robust error checking in fb_pan_display specially since this function is accessible by userland apps. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] fbcon: Add ability to save/restore graphics stateAntonino A. Daplas2005-12-132-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | Add hooks to save and restore the graphics state. These hooks are called in fbcon_blank() when entering/leaving KD_GRAPHICS mode. This is needed by savagefb at least so it can cooperate with savage_dri and by cyblafb. State save/restoration can be full or partial. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] fbcon: fix complement_mask() with 512 character mapAntonino A. Daplas2005-12-131-1/+8
| | | | | | | | | | | | | | | | | | There is a bug in the complement_mask when you have a 512-character map. Linux boots to a default 256-character map and most probably your login profile is loading a 512-character map which results in a bad gpm cursor. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] cciss: fix for deregister_diskMike Miller2005-12-131-1/+3
| | | | | | | | | | | | | | | | | | | | | | This patch adds setting our drv->queue = NULL back in deregister_disk. The drv->queue is part of our controller struct. blk_cleanup_queue works only on the queue in the gendisk struct. Signed-off-by: Mike Miller <mike.miller@hp.com> Cc: Jens Axboe <axboe@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] x86_64: Bug correction in populate_memnodemap()Eric Dumazet2005-12-131-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As reported by Keith Mannthey, there are problems in populate_memnodemap() The bug was that the compute_hash_shift() was returning 31, with incorrect initialization of memnodemap[] To correct the bug, we must use (1UL << shift) instead of (1 << shift) to avoid an integer overflow, and we must check that shift < 64 to avoid an infinite loop. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] x86_64: Fix collision between pmtimer and pit/hpetjohn stultz2005-12-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | On systems that do not support the HPET legacy functions (basically the IBM x460, but there could be others), in time_init() we accidentally fall into a PM timer conditional and set the vxtime_hz value to the PM timer's frequency. We then use this value with the HPET for timekeeping. This patch (which mimics the behavior in time_init_gtod) corrects the collision. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] x86_64: Fix 32bit thread coredumpsAndi Kleen2005-12-131-2/+1
| | | | | | | | | | | | | | | | | | | | When a register set is passed in don't try to fix up the pointer. Noticed by Al Viro Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] i386/x86-64 Correct for broken MCFG tables on K8 systemsAndi Kleen2005-12-132-5/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They report all busses as MMCONFIG capable, but it never works for the internal devices in the CPU's builtin northbridge. It just probes all func 0 devices on bus 0 (the internal northbridge is currently always on bus 0) and if they are not accessible using MCFG they are put into a special fallback bitmap. On systems where it isn't we assume the BIOS vendor supplied correct MCFG. Requires the earlier patch for mmconfig type1 fallback Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] i386/x86-64 Fall back to type 1 access when no entry foundAndi Kleen2005-12-134-19/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | When there is no entry for a bus in MCFG fall back to type1. This is especially important on K8 systems where always some devices can't be accessed using mmconfig (in particular the builtin northbridge doesn't support it for its own devices) Cc: <gregkh@suse.de> Cc: <jgarzik@pobox.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] i386/x86-64: Don't call change_page_attr with a spinlock heldAndi Kleen2005-12-132-14/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's illegal because it can sleep. Use a two step lookup scheme instead. First look up the vm_struct, then change the direct mapping, then finally unmap it. That's ok because nobody can change the particular virtual address range as long as the vm_struct is still in the global list. Also added some LinuxDoc documentation to iounmap. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] i386/x86-64 disable LAPIC completely for offline CPUShaohua Li2005-12-132-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Disabling LAPIC timer isn't sufficient. In some situations, such as we enabled NMI watchdog, there is still unexpected interrupt (such as NMI) invoked in offline CPU. This also avoids offline CPU receives spurious interrupt and anything similar. Signed-off-by: Shaohua Li <shaohua.li@intel.com> Signed-off-by: Andi Kleen <ak@suse.de> Acked-by: "Seth, Rohit" <rohit.seth@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] x86_64: Make sure hpet_address is 0 when any part of HPET ↵Andi Kleen2005-12-131-1/+3
| | | | | | | | | | | | | | | | | | | | initialization fails Otherwise TSC->HPET fallback could see incorrect state and crash later. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * Merge branch 'upstream-fixes' of ↵Linus Torvalds2005-12-132-5/+7
| |\ | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
| | * [PATCH] ieee80211_crypt_tkip depends on NET_RADIOOlaf Hering2005-12-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** Warning: ".wireless_send_event" [net/ieee80211/ieee80211_crypt_tkip.ko] undefined! Signed-off-by: Olaf Hering <olh@suse.de> net/ieee80211/Kconfig | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| | * [PATCH] skge: get rid of warning on raceStephen Hemminger2005-12-131-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Get rid of warning in case of race with ring full and lockless tx on the skge driver. It is possible to be in the transmit routine with no available slots and already stopped. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| * | Merge branch 'upstream-fixes' of ↵Linus Torvalds2005-12-131-2/+2
| |\ \ | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
| * | | [drm] fix radeon aperture issueDave Airlie2005-12-131-1/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ben noticed that on certain cards we've landed the AGP space on top of the second aperture instead of after it.. Which messes things up a lot on those machines. This just moves the gart further out, a more correct fix is in the works from Ben for after 2.6.15. Signed-off-by: Dave Airlie <airlied@linux.ie> CC: Ben Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | [PATCH] libata: remove unused qc->waitingTejun Heo2005-12-132-14/+2
| | | | | | | | | | | | | | | | | | | | | | | | There is no user of qc->waiting left after ata_exec_internal() changes. Kill the field. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* | | [PATCH] libata: remove unused functionsTejun Heo2005-12-132-30/+0
| | | | | | | | | | | | | | | | | | | | | | | | There is no user of ata_qc_wait_err() and ata_qc_complete_noop() after ata_exec_internal() changes. Remove unused functions. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* | | [PATCH] libata: use ata_exec_internal()Tejun Heo2005-12-131-101/+44
| | | | | | | | | | | | | | | | | | | | | | | | This patch converts all users of libata internal commands to use ata_exec_internal(). Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* | | [PATCH] libata: implement ata_exec_internal()Tejun Heo2005-12-132-0/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch implements ata_exec_internal() function which performs libata internal command execution. Previously, this was done by each user by manually initializing a qc, issueing it, waiting for its completion and handling errors. In addition to obvious code factoring, using ata_exec_internal() fixes the following bugs. * qc not freed on issue failure * ap->qactive clearing could race with the next internal command * race between timeout handling and irq * ignoring error condition not represented in tf->status Also, qc & hardware are not accessed anymore once it's completed, making internal commands more conformant with general semantics. ata_exec_internal() also makes it easy to issue internal commands from multiple threads if that becomes necessary. This patch only implements ata_exec_internal(). A following patch will convert all users. Signed-off-by: Tejun Heo <htejun@gmail.com> -- Jeff, all patches have been regenerated against upstream branch as of today. (575ab52a218e4ff0667a6cbd972c3af443ee8713) Also, I took out a debug printk from ata_exec_internal (don't know how that one got left there). Other than that, all patches are identical to the previous posting. Thanks. :-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* | | Merge branch 'upstream-fixes'Jeff Garzik2005-12-1317-113/+341
|\ \ \ | | |/ | |/|
| * | [PATCH] libata-core.c: fix parameter bug on kunmap_atomic() callsMark Lord2005-12-131-2/+2
| |/ | | | | | | | | | | | | | | | | Fix incorrect pointer usage on two calls to kunmap_atomic(). This seems to happen a lot, because kunmap() wants the struct page *, whereas kunmap_atomic() instead wants the mapped virtual address. Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| * Merge branch 'release' of ↵Linus Torvalds2005-12-1313-103/+336
| |\ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
| | * [IA64] Define an ia64 version of __raw_read_trylockKeith Owens2005-12-121-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IA64 is using the generic version of __raw_read_trylock, which always waits for the lock to be free instead of returning when the lock is in use. Define an ia64 version of __raw_read_trylock which behaves correctly, and drop the generic one. Signed-off-by: Keith Owens <kaos@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * [IA64] Fix missing parameter for local_add/subChristoph Lameter2005-12-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Local add/sub macros need to have a parameter to specify the addend/subtrahend respectively. Signed-off-by: Christoph Lameter <clameter@sgi.org> Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * [IA64-SGI] Fix SN PTC deadlock recoveryJack Steiner2005-12-061-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patch that added support for a new platform chipset (shub2) broke PTC deadlock recovery on older versions of the chipset. (PTCs are the SN platform-specific method for doing a global TLB purge). This patch fixes deadlock recovery so that it works on both the old & new chipsets. Signed-off-by: Jack Steiner <steiner@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * [IA64] Change SET_PERSONALITY to comply with comment in binfmt_elf.c.Robin Holt2005-12-064-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have a customer application which trips a bug. The problem arises when a driver attempts to call do_munmap on an area which is mapped, but because current->thread.task_size has been set to 0xC0000000, the call to do_munmap fails thinking it is an unmap beyond the user's address space. The comment in fs/binfmt_elf.c in load_elf_library() before the call to SET_PERSONALITY() indicates that task_size must not be changed for the running application until flush_thread, but is for ia64 executing ia32 binaries. This patch moves the setting of task_size from SET_PERSONALITY() to flush_thread() as indicated. The customer application no longer is able to trip the bug. Signed-off-by: Robin Holt <holt@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * [IA64] Limit the maximum NODEDATA_ALIGN() offsetJack Steiner2005-12-061-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The per-node data structures are allocated with strided offsets that are a function of the node number. This prevents excessive cache-aliasing from occurring. On systems with a large number of nodes, the strided offset becomes too large. This patch restricts the maximum offset to 32MB. This is far larger than the size of any current L3 cache. Signed-off-by: Jack Steiner <steiner@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * [IA64-SGI] altix: pci_window fixupJohn Keller2005-12-062-25/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Altix only patch to add fixup code that sets up pci_controller->window. This code is a temporary fix until ACPI support on Altix is added. Also, corrects the usage of pci_dev->sysdata, which had previously been used to reference platform specific device info, to now point to a pci_controller struct. Signed-off-by: John Keller <jpk@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * Auto-update from upstreamTony Luck2005-12-0536-224/+354
| | |\
| | * | [IA64] Allow salinfo_decode to detect signals on readKeith Owens2005-12-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Return -EINTR instead of -ERESTARTSYS when signals are delivered during a blocked read of /proc/sal/*/event. This allows salinfo_decode to detect signals when it is blocked on a read of those files. Signed-off-by: Keith Owens <kaos@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * | [IA64] refresh tiger_defconfig ready for 2.6.15Tony Luck2005-12-031-24/+50
| | | | | | | | | | | | | | | | Signed-off-by: Tony Luck <tony.luck@intel.com>
| | * | [IA64] Updates to the sn2_defconfig for 2.6.15.Robin Holt2005-12-021-43/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This updates the sn2_defconfig file for the Altix 330 hardware, enables the AGP graphics for the SGI Prism, and removes prompts for the remainder of the new features. Greg Edwards reviewed the changes. Signed-off-by: Robin Holt <holt@sgi.com> Signed-off-by: Greg Edwards <edwardsg@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
| * | | Merge branch 'upstream-fixes' of ↵Linus Torvalds2005-12-132-7/+2
| |\ \ \ | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
| | * | | [PATCH] pcnet32: use MAC address from prom also on powerpcOlaf Hering2005-12-121-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CSR contains garbage after a coldboot on RS/6000. One some systems (like my 44p 270) the MAC address is all FF, on others (like my B50) it is ff:ff:ff:fd:ff:6b. It can eventually be fixed by loading pcnet32, set the interface into the UP state, rmmod pcnet32 and load it again. But this worked only on the 270. Only netbooting after a cold start provides the correct MAC address via prom and CSR. This makes it very unreliable. I dont know why the MAC is stored in two different places. Remove the special case for powerpc, which was added in early 2.4 development. Signed-off-by: Olaf Hering <olh@suse.de> drivers/net/pcnet32.c | 5 ----- 1 files changed, 5 deletions(-) Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| | * | | Merge branch 'master'Jeff Garzik2005-12-12177-3559/+3808
| | |\ \ \
| | * | | | [PATCH] sk98lin: rx checksum offset not setStephen Hemminger2005-12-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The checksum offsets for receive offload were not being set correctly. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| * | | | | get_user_pages: don't try to follow PFNMAP pagesLinus Torvalds2005-12-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nick Piggin points out that a few drivers play games with VM_IO (why? who knows..) and thus a pfn-remapped area may not have that bit set even if remap_pfn_range() set it originally. So make it explicit in get_user_pages() that we don't follow VM_PFNMAP pages, since pretty much by definition they do not have a "struct page" associated with them. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | | | | [PATCH] libata: ata_piix 450NX errataAlan Cox2005-12-131-1/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* | | | | | Merge branch 'master'Jeff Garzik2005-12-13198-3600/+3843
|\| | | | |
| * | | | | Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/nf-2.6Linus Torvalds2005-12-131-1/+4
| |\ \ \ \ \