ChangeSet@1.2010, 2004-10-19 18:27:56-07:00, torvalds@ppc970.osdl.org Merge http://lia64.bkbits.net/linux-ia64-release-2.6.10 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.2007, 2004-10-19 16:59:19-07:00, torvalds@ppc970.osdl.org Merge PCI updates ChangeSet@1.1988.98.12, 2004-10-19 16:46:21-07:00, greg@kroah.com I2C: convert from pci_module_init to pci_register_driver for all i2c drivers. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.11, 2004-10-19 16:19:10-07:00, kraxel@bytesex.org [PATCH] I2C: i2c bus power management support The patch below adds power management support to the i2c bus. It adds just two small functions which call down to the devices power management functions if they are present, so the i2c device drivers will receive the suspend and resume events. From: Gerd Knorr Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.93.10, 2004-10-19 23:41:47+01:00, rmk@flint.arm.linux.org.uk [SERIAL] serial_reg.h update. This includes a fuller definition of the 8250 and compatible bits, and adding notes where the definition varies between different chips. This also fixes the following build error: drivers/serial/8250.c:185: error: `UART_FCR_R_TRIG_10' ChangeSet@1.1988.98.10, 2004-10-19 15:24:45-07:00, khali@linux-fr.org [PATCH] I2C: lm87 driver ported to Linux 2.6 This is my port of the lm87 driver to Linux 2.6. It is based on the preliminary work of Jeff Oliver. I then significantly improved the code, added functionality, tested the whole thing on a real motherboard, fixed a couple remaining bugs, and here we are. I'll port a number of improvements and fixes back to the 2.4 version of the driver after lm_sensors 2.8.8 is released (i.e. soon). Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.9, 2004-10-19 15:22:22-07:00, ben-linux@fluff.org [PATCH] I2C: S3C2410 I2C Bus driver Bus driver for the Samsung S3C2410 SoC onboard I2C controller Signed-off-by: Ben Dooks Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.8, 2004-10-19 15:22:05-07:00, khali@linux-fr.org [PATCH] I2C: Clean up i2c-amd756 and i2c-prosavage messages A number of messages in the i2c-amd756 and i2c-prosavage drivers have a leading ": " (especially the former). This is a legacy from lm_sensors' printks of the 2.4 times. This patch cleans them up. While I was there, I dropped a couple useless white spaces and dots as well. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.7, 2004-10-19 15:21:48-07:00, khali@linux-fr.org [PATCH] I2C: Fix amd756 name This sets the proper name for busses supported by the i2c-amd756 driver. So far, all busses were named AMD756 regardless of the real hardware. Setting the real name is certainly less confusing for the user, and the sensors-detect script expects this too. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.6, 2004-10-19 15:21:33-07:00, khali@linux-fr.org [PATCH] I2C: Update Kconfig for AMD bus drivers This updates the AMD entries i2c/busses/Kconfig in two ways: * Add missing PCI dependancy. * Reword the help so that users know exactly what is supported by each driver. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.5, 2004-10-19 15:21:15-07:00, nacc@us.ibm.com [PATCH] I2C: replace schedule_timeout() with msleep_interruptible() in i2c-ibm_iic.c Use msleep_interruptible() instead of schedule_timeout() to guarantee the task delays as expected. Remove the unnecessary set_current_state() following the if, as schedule_timeout() [and thus, mlseep_interruptible()] is guaranteed to return in TASK_RUNNING. Signed-off-by: Nishanth Aravamudan Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.4, 2004-10-19 15:20:59-07:00, R.Marek@sh.cvut.cz [PATCH] I2C: fix it8712 detection Following patch fixes the bug introduced by me in VID VRM patch. Spotted (and later reviewed) by Jean Delvare. This bug is non-fatal, it8712 will be just treated as it was before my VID VRM patch. Tested on it8705 and it8712 hardware. Signed-off-by: Rudolf Marek Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.3, 2004-10-19 15:20:22-07:00, khali@linux-fr.org [PATCH] I2C: Fourth auto-fan control interface proposal Here comes my fourth (and hopefully last) sysfs interface proposal for implementing auto-fan control in 2.6. Previous proposals have been discussed here: [1] http://archives.andrew.net.au/lm-sensors/msg07517.html [2] http://archives.andrew.net.au/lm-sensors/msg08049.html [3] http://archives.andrew.net.au/lm-sensors/msg18008.html The interface is still made up of two parts: per fan temp channels selection, and trip points selection. Changes from the third proposal: pwm[1-*]_enable value 2 is now used to explicitely state the auto pwm mode. This was proposed by Mark D. Studebaker [4]. [4] http://archives.andrew.net.au/lm-sensors/msg18011.html Temp channels selection ======================= Renamed files from fan[1-*]_auto_channels to pwm[1-*]_auto_channels_temp. The change from fan tp pwm is to match the recent renaming suggested by Mark M. Hoffman [5]. The "_temp" suffix is to leave some room for a "_fan" suffix at a later time if new chips drive auto pwm according to fan speeds instead of temperature. [5] http://archives.andrew.net.au/lm-sensors/msg18797.html Trip points =========== Trip points are now numbered (point1, point2, etc...) instead of named (_off, _min, _max, _full...). This solves the problem of various chips having a different number of trip points. The interface is still chip independent in that it doesn't require chip-specific knowledge to be used by user-space apps. The reason for this change is that newer chips tend to have more trip points. the LM63 has 8, the LM93 has no less than 12. Also, I read in the LM63 datasheet that ideal pwm vs temperature curve were parabolic in shape. Seems hard to achieve this if we arbitrarily lock the number of trip points to 3 ;) I also introduced an optional hysteresis temperature for trip points. The LM63 has this. Since it makes full sense I'd expect other chips to propose this as well. As before, there are two sets of files, each chip driver picks the one matching its internal model: trip points are either temperature channel-dependent (ADM1031...) or pwm channel-dependent (IT87xx...). If we ever come accross fan speed-driven pwm outputs where trip points are fan channel-dependent we may have to offer a third set of files. We'll see when/if this happens. I hope I have taken everyone's comments and advice into account and we can make this interface proposal part of the sysfs interface standard now. I'm sorry it took so long. Comments welcome. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.98.2, 2004-10-19 15:14:51-07:00, khali@linux-fr.org [PATCH] I2C: Spare 1 byte in lm90 driver I just noticed the other day that the lm90 driver uses an u16 to store the value of the 8-bit alarms register. This is most probably due to the fact that I originally copied the lm90 driver from the lm83 driver, which actually has two 8-bit registers for alarms, and obviously forgot to change the variable type. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.2.81, 2004-10-19 14:48:04-07:00, greg@kroah.com PCI: fix up pci_save/restore_state in via-agp due to api change. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1988.69.45, 2004-10-19 20:41:27+00:00, pfg@sgi.com [IA64-SGI] Fixes calling arg1 for bte_crb_error_handler() Signed-off-by: Patrick Gefre Signed-off-by: Tony Luck ChangeSet@1.1988.69.44, 2004-10-19 20:38:23+00:00, holt@sgi.com [IA64-SGI] Distribute useage of BTE interfaces. During peak utilization periods, the first interface on a node has an inordinately large amount of contention. This is due to all cpus starting their scan for an interface at 0. This patch distributes that based upon the slice the requesting cpu is attached to. Signed-off-by: Robin Holt Signed-off-by: Tony Luck ChangeSet@1.1988.69.43, 2004-10-19 20:36:01+00:00, holt@sgi.com [IA64-SGI] Correct BTE notification timeouts on SN2. The SN2 Block Transfer Engine occassionally fails to send a notification that it has completed a transfer to the kernel. This patch adds a timeout mechanism which will detect the failure, reset the interface, and then retry the transfer. Signed-off-by: Robin Holt Signed-off-by: Tony Luck ChangeSet@1.1988.69.42, 2004-10-19 20:22:26+00:00, pfg@sgi.com [IA64-SGI] BUG_ON test was backwards Signed-off-by: Patrick Gefre Signed-off-by: Tony Luck ChangeSet@1.1988.97.4, 2004-10-19 22:06:01+02:00, bzolnier@trik.(none) [ide] convert ide_hwif_t->ide_dma_begin() to ->dma_start() Make ->ide_dma_begin() functions void and rename them to ->dma_start(). Signed-off-by: Bartlomiej Zolnierkiewicz ChangeSet@1.1988.97.3, 2004-10-19 22:00:15+02:00, bzolnier@trik.(none) [ide] add ide_hwif_t->dma_exec_cmd() * split off ->dma_exec_cmd() from ->ide_dma_[read,write] functions * choose command to execute by ->dma_exec_cmd() in higher layers and remove ->ide_dma_[read,write] * in Etrax ide.c driver REQ_DRIVE_TASKFILE requests weren't handled properly for drive->addressing == 0 * in trm290.c read and write commands were interchanged * in sgiioc4.c commands weren't sent to disk devices Signed-off-by: Bartlomiej Zolnierkiewicz ChangeSet@1.1988.97.2, 2004-10-19 21:49:30+02:00, bzolnier@trik.(none) [ide] add ide_hwif_t->dma_setup() * tag REQ_DRIVE_TASKFILE write requests with REQ_RW * split off ->dma_setup() from ->ide_dma_[read,write] functions * use ->dma_setup() directly in ATAPI drivers and remove media checks from ->ide_dma_[read,write] * ->ide_dma_[read,write,begin] cannot fail now * in Etrax ide.c setup DMA for ATAPI devices before sending command to drive (so setup order is the same as for disks) Signed-off-by: Bartlomiej Zolnierkiewicz ChangeSet@1.2005, 2004-10-19 12:25:16-07:00, torvalds@ppc970.osdl.org Merge bk://linux-dj.bkbits.net/cpufreq into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.2004, 2004-10-19 12:21:19-07:00, torvalds@ppc970.osdl.org Merge arm integrator time.h removal ChangeSet@1.2002, 2004-10-19 12:08:58-07:00, torvalds@ppc970.osdl.org Merge ChangeSet@1.2001, 2004-10-19 12:05:46-07:00, torvalds@ppc970.osdl.org Merge bk://linux-dj.bkbits.net/agpgart into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1855.2.12, 2004-10-19 14:53:12-04:00, davej@dhcp83-103.boston.redhat.com [AGPGART] Fix incorrect VIA PT880 entry. There was a mistake in the list of IDs I got from VIA, which meant this chipset was incorrectly recognised. Signed-off-by: Dave Jones ChangeSet@1.1988.94.11, 2004-10-19 19:52:44+01:00, rmk@flint.arm.linux.org.uk [ARM] Add documentation for ARM kernel timer infrastructure. ChangeSet@1.1988.94.10, 2004-10-19 19:36:16+01:00, rmk@flint.arm.linux.org.uk [ARM] Add generic RTC implementation. This provides a number of helper functions and data structures for RTC implementations to make use of, including a standard implemention for /proc/driver/rtc and the rtc miscdevice. It supports runtime registration of RTC timekeeping sources. ChangeSet@1.1999, 2004-10-19 10:51:41-07:00, torvalds@ppc970.osdl.org Merge bk://gkernel.bkbits.net/net-drivers-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1998, 2004-10-19 10:50:22-07:00, torvalds@ppc970.osdl.org Trivial Makefile merge ChangeSet@1.1988.97.1, 2004-10-19 19:46:59+02:00, bzolnier@trik.(none) [ide] add sg_init_one() helper and teach ide about it Signed-off-by: Bartlomiej Zolnierkiewicz ChangeSet@1.1988.69.41, 2004-10-19 17:33:58+00:00, holt@sgi.com [IA64-SGI] Double spin_unlock in bte.c If all bte interfaces are in use, the current code will leave the bte pointer set when exiting from the loop trying to locate an interface to use. This results in two processes using the same interface and both trying to free the same one. With a premptible kernel, this results in the preempt count getting off. Signed-off-by: Robin Holt Signed-off-by: Tony Luck ChangeSet@1.1988.94.9, 2004-10-19 18:02:21+01:00, rmk@flint.arm.linux.org.uk [ARM] Sanitise Footbridge machine class. Footbridge was suffering from a little lack of care and attention; it still had the nasty arch.c file with all the associated #ifdef gross-ness that entailed. Re-jig footbridge support so that each machine type contains all the necessary support code, with a separate common implementation which they all share. ChangeSet@1.1988.2.80, 2004-10-19 09:54:42-07:00, greg@kroah.com Merge kroah.com:/home/greg/linux/BK/bleed-2.6 into kroah.com:/home/greg/linux/BK/pci-2.6 ChangeSet@1.1988.96.2, 2004-10-19 12:50:14-04:00, jgarzik@pobox.com Merge pobox.com:/spare/repo/libata-dev/ahci into pobox.com:/spare/repo/libata-2.6 ChangeSet@1.1988.94.8, 2004-10-19 17:49:21+01:00, ben-linux@org.rmk.(none) [ARM PATCH] 2132/1: Fix timer NULL pointer de-reference on suspend Patch from Ben Dooks Timer suspend code fails to check for NULL before calling the timer implementor's suspend or resume hooks. Signed-off-by: Ben Dooks ChangeSet@1.1988.2.79, 2004-10-19 09:36:24-07:00, dtor_core@ameritech.net [PATCH] ieee1394: SBP-2 - rename some constants to fix clash with new SCSI core defines. Acked by Ben Collins. Signed-off-by: Dmitry Torokhov Signed-off-by: Linus Torvalds ChangeSet@1.1988.94.7, 2004-10-19 17:36:06+01:00, rmk@flint.arm.linux.org.uk Merge flint.arm.linux.org.uk:/usr/src/bk/linux-2.6-timer into flint.arm.linux.org.uk:/usr/src/bk/linux-2.6-rmk ChangeSet@1.1988.94.6, 2004-10-19 17:22:26+01:00, rmk@flint.arm.linux.org.uk [ARM] Fix missed udelay usage - assembly needs to call __udelay now. ChangeSet@1.1988.95.3, 2004-10-19 12:20:09-04:00, jgarzik@pobox.com Hand-merge typhoon and wavelan_cs conflicts, when merging viro's ETH* patches. ChangeSet@1.1988.94.5, 2004-10-19 17:15:34+01:00, rmk@flint.arm.linux.org.uk [ARM] Move machine specific boot variables to separate makefile. Move machine specific boot variables out of arch/arm/boot/Makefile into arch/arm/mach-*/Makefile.boot. ChangeSet@1.1988.2.78, 2004-10-19 09:10:04-07:00, torvalds@ppc970.osdl.org Merge bk://kernel.bkbits.net/gregkh/linux/usb-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1988.94.4, 2004-10-19 17:02:04+01:00, rmk@flint.arm.linux.org.uk [ARM] Clean up footbridge configuration. ChangeSet@1.1988.94.3, 2004-10-19 16:53:05+01:00, rmk@flint.arm.linux.org.uk [ARM] Rehash iwmmxt signal handling. In the near future, VFP will want to save state onto the user stack. Therefore, separate out the iwmmxt specific parts, and implement a generic "safe copy to user space using random CPU instructions". This is necessary because iwmmxt and VFP both use special CPU instructions to load and/or save their state. ChangeSet@1.1988.95.2, 2004-10-19 11:47:30-04:00, jgarzik@pobox.com Merge pobox.com:/spare/repo/netdev-2.6/typhoon into pobox.com:/spare/repo/net-drivers-2.6 ChangeSet@1.1988.95.1, 2004-10-19 11:45:50-04:00, jgarzik@pobox.com Merge pobox.com:/spare/repo/netdev-2.6/wireless-ext into pobox.com:/spare/repo/net-drivers-2.6 ChangeSet@1.1988.94.2, 2004-10-19 16:44:21+01:00, rmk@flint.arm.linux.org.uk [ARM] Convert to constant-optimising udelay() implementation. This allows us to eliminate a multiplication when we have a constant delay value, as per x86. ChangeSet@1.1988.94.1, 2004-10-19 16:33:08+01:00, rmk@flint.arm.linux.org.uk [ARM] Add netconsole support to ARM AM79C961A driver. ChangeSet@1.1988.68.260, 2004-10-19 08:30:26-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: message conversion fix for le32_to_cpu parameters - fixed incorrect parameters to le32_to_cpu which was introduced with the I2O message conversion patch Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.259, 2004-10-19 08:30:14-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: correct error code if bus is busy in i2o_scsi - corrected the error code in i2o_scsi_reply to return the correct error code DID_BUS_BUSY if bus is busy (original from Alan Cox) Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.258, 2004-10-19 08:24:08-07:00, nacc@us.ibm.com [PATCH] net/mac89x0: replace schedule_timeout() with msleep_interruptible() Signed-off-by: Nishanth Aravamudan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.257, 2004-10-19 08:23:55-07:00, janitor@sternwelten.at [PATCH] janitor: __FUNCTION__ string concatenation deprecated __FUNCTION__ string concatenation is deprecated Signed-off-by: Clemens Buchacher Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.256, 2004-10-19 08:23:43-07:00, janitor@sternwelten.at [PATCH] janitor: replace dprintk with pr_debug in microcode.c Replaced dprintk with pr_debug from kernel.h Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.255, 2004-10-19 08:23:30-07:00, janitor@sternwelten.at [PATCH] drivers/isdn: replace milliseconds() with msecs_to_jiffies() Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.254, 2004-10-19 08:23:18-07:00, janitor@sternwelten.at [PATCH] janitor: isdn/icn: change units of ICN_BOOT_TIMEOUT1 Change units of ICN_BOOT_TIMEOUT1 to msecs instead of jiffies for msleep_interruptible() in icn.c. Also, remove unused constant ICN_CHANLOCK_DELAY. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.253, 2004-10-19 08:23:05-07:00, janitor@sternwelten.at [PATCH] janitor: replace dprintk with pr_debug in drivers/scsi/tpam/ Replaced dprintk, and deleted it out of tpam.h. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.252, 2004-10-19 08:22:53-07:00, janitor@sternwelten.at [PATCH] ieee1394: replace schedule_timeout() with msleep_interruptible() Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.251, 2004-10-19 08:22:40-07:00, janitor@sternwelten.at [PATCH] drivers/md: replace schedule_timeout() with msleep_interruptible() Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.250, 2004-10-19 08:22:28-07:00, janitor@sternwelten.at [PATCH] janitor: drivers/message: replace schedule_timeout() with msleep_interruptible() Use msleep_interruptible() instead of schedule_timeout() under drivers/message. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.249, 2004-10-19 08:22:16-07:00, janitor@sternwelten.at [PATCH] janitor: drivers/media: replace schedule_timeout() with msleep() Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.248, 2004-10-19 08:22:03-07:00, janitor@sternwelten.at [PATCH] janitor: video/radeonfb: remove MS_TO_HZ() Removes definition of MS_TO_HZ() in favor of msecs_to_jiffies(). Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.247, 2004-10-19 08:21:51-07:00, janitor@sternwelten.at [PATCH] janitor: video/radeon_base: replace MS_TO_HZ() with msecs_to_jiffies() Replace MS_TO_HZ() with msecs_to_jiffies(). Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.246, 2004-10-19 08:21:39-07:00, janitor@sternwelten.at [PATCH] janitor: kill KERNEL_VERSION duplicate in videocodec.c Kill KERNEL_VERSION duplicate. Funny that it insn't even used in here Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.245, 2004-10-19 08:21:27-07:00, janitor@sternwelten.at [PATCH] janitor: fix-typo-arm-dma arch/arm26/machine/dma.c caught by Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.244, 2004-10-19 08:21:15-07:00, janitor@sternwelten.at [PATCH] janitor: mark __init/__exit static drivers/net/bsd_comp Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.243, 2004-10-19 08:21:02-07:00, janitor@sternwelten.at [PATCH] janitor: mark __init/__exit static drivers/net/ppp_deflate Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.242, 2004-10-19 08:20:50-07:00, janitor@sternwelten.at [PATCH] janitor: remove check_region from drivers/char/esp.c Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.241, 2004-10-19 08:20:38-07:00, janitor@sternwelten.at [PATCH] drivers/char: replace schedule_timeout() with msleep_interruptible() Replace lots of open-coded sleeps with msleep_interruptible() under drivers/char. Signed-off-by: Maximilian Attems Signed-off-by: Nishanth Aravamudan Signed-off-by: Rogier Wolff Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.240, 2004-10-19 08:20:24-07:00, janitor@sternwelten.at [PATCH] janitor: char/sx: replace direct assignment with set_current_state() Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.239, 2004-10-19 08:20:11-07:00, janitor@sternwelten.at [PATCH] janitor: char/ipmi_si_intf: add set_current_state() Add set_current_state() before schedule_timeout() so a delay is achieved. Without the addition, schedule_timeout() returns immediately. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.238, 2004-10-19 08:19:59-07:00, janitor@sternwelten.at [PATCH] janitor: char/fdc-io: replace direct assignment with set_current_state() Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.237, 2004-10-19 08:19:47-07:00, janitor@sternwelten.at [PATCH] janitor: char/sis-agp: replace schedule_timeout() with msleep() Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.236, 2004-10-19 08:19:34-07:00, janitor@sternwelten.at [PATCH] janitor: char/rio_linux: replace schedule_timeout() with msleep()/msleep_interruptible() Use msleep()/msleep_interruptible() [as appropriate] instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.235, 2004-10-19 08:19:22-07:00, janitor@sternwelten.at [PATCH] janitor: list_for_each: drivers-char-drm-radeon_mem.c s/for/list_for_each/ Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.234, 2004-10-19 08:19:10-07:00, janitor@sternwelten.at [PATCH] janitor: remove old ifdefs fasttimer Patches to remove some old ifdefs. remove most of the #include kill compat cruft like #define ahd_pci_set_dma_mask pci_set_dma_mask Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.233, 2004-10-19 08:18:58-07:00, janitor@sternwelten.at [PATCH] janitor: remove old ifdefs dmascc Patches to remove some old ifdefs. remove most of the #include kill compat cruft like #define ahd_pci_set_dma_mask pci_set_dma_mask Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.232, 2004-10-19 08:18:46-07:00, janitor@sternwelten.at [PATCH] janitor: cpqarray remove unused include remove unused #include Old ifdefs were removed that used it's definition. Signed-off-by: Maximilian Attems Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.231, 2004-10-19 08:18:33-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: quieten sparse 1-bit-bitfield warnings in i2o.h - Single-bit bitfields should be unsigned. Quell sparse warnings for these. (from Randy Dunlap) Signed-off-by: Randy Dunlap Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.230, 2004-10-19 08:18:19-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: new functions to convert messages to a virtual address - added new function i2o_msg_in_to_virt and i2o_msg_out_to_virt, to turn an I2O message to a virtual address (original from Alan Cox) - replaced readl with le32_to_cpu where it is not necessary (original from Alan Cox) Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.229, 2004-10-19 08:18:07-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: added support for Promise controllers - added support for Promise I2O controllers, which need a different initialization sequence (original from Alan Cox) Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.228, 2004-10-19 08:17:55-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: code beautifying and cleanup - added KERN_* to printk where it was missing (original from Alan Cox) - removed unused code which was commented out already (original from Alan Cox) - make error messages more sane in i2o_block (original from Alan Cox) Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.227, 2004-10-19 08:17:43-07:00, wli@holomorphy.com [PATCH] sparc32: early tick_ops The zaphod scheduler likes to call scheduler_tick() before time_init(). sparc32 oopses. Perhaps a scheduler bug, but this robustifies things. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.226, 2004-10-19 08:17:30-07:00, wli@holomorphy.com [PATCH] profile: 512x Altix timer interrupt livelock fix I've been informed that /proc/profile livelocks some systems in the timer interrupt, usually at boot. The following patch attempts to amortize the atomic operations done on the profile buffer to address this stability concern. This patch has nothing to do with performance; kernels using periodic timer interrupts are under realtime constraints to complete whatever work they perform within timer interrupts before the next timer interrupt arrives lest they livelock, performing no work whatsoever apart from servicing timer interrupts. The latency of the cacheline bounce for prof_buffer contributes to the time spent in the timer interrupt, hence it must be amortized when remote access latencies or deviations from fair exclusive cacheline acquisition may cause cacheline bounces to take longer than the interval between timer ticks. What this patch does is to create a pair of per-cpu open-addressed hashtables indexed by profile buffer slot holding values representing the number of pending profile buffer hits for the profile buffer slot. When this hashtable overflows, one iterates over the hashtable accounting each of the pairs of profile buffer slots and hit counts to the global profile buffer. Zero is a legitimate profile buffer slot, so zero hit counts represent unused hashtable entries. The hashtable is furthermore protected from flush IPI's by interrupt disablement. In order to flush the pending profile hits for read_profile(), this patch flips betweeen the pairs of per-cpu profile buffer by signalling all cpus to flip via IPI at the time of read_profile(), followed by doing all the work to flush the profile hits from the older per-cpu buffers in the context of the caller of read_profile(), with exclusion provided by a semaphore ensuring that only one caller of profile_flip_buffers() may execute at a time, and using interrupt disablement to prevent buffer flip IPI's from altering the hashtables or flip state while an update is in progress. The flip state is per-cpu so that remote cpus need only disable interrupts locally for synchronization, which is both simple and busywait-free for remote cpus. The flip states all change in tandem when some cpu requests the hashtables be flipped, and the requester waits for the completion of smp_call_function() for notification that all cpus have finished flipping between their hashtables. The IPI handler merely toggles the flip state (which is an array index) between 0 and 1. This is expected to be a much stronger amortization than merely reducing the frequency of profile buffer access by a factor of the size of the hashtable because numerous hits may be held for each of its entries. This reduces what was before the patch a number of atomic increments equal to what after the patch becomes the sum of the hits held for each entry in the hashtable, to a number of atomic_add()'s equal to the number of entries in the per_cpu hashtable. This is nondeterministic, but as the profile hits tend to be concentrated in a very small number of profile buffer slots during any given timing interval, is likely to represent a very large number of atomic increments. This amortization of atomic increments does not depend on the hash function, only the sharp peakedness of the distribution of profile buffer hits. This algorithm has two advantages over full-size per-cpu profile buffers. The first is that the space footprint is much smaller. Per-cpu profile buffers would increase the space requirements by a factor of num_online_cpus(), where this algorithm only requires one page per cpu. The second is that reading the profile state is much faster, because the state that must be traversed is exactly the above space consumers, and the relative reduction in size concomitantly reduces the time required for a read operation. I also took the liberty of adding some commentary to the comments at the beginning of the file reflecting the major work done on profile.c in recent months and describing what the file implements. The reporters of this issue have verified that this resolves their timer interrupt livelock on 512x Altixen. In my own testing on 4x logical x86-64, this patch saw a rate of about 18 flushes per minute under load, or about one flush every 3 seconds, for about 38.4 atomic accesses to the profile buffer per second per cpu in one of the algorithm's worst cases, about 3.84% of the number of atomic profile buffer accesses per second per cpu as a normal kernel would commit. This represents a twenty-six-fold increase in the scalability on SMP systems with 4KB PAGE_SIZE, i.e. with a 4KB PAGE_SIZE, the number of atomic profile buffer accesses per second per cpu is reduced by a factor of 26, thereby increasing the number of cpus a system must have before it would experience a timer interrupt livelock by a factor of 26, with the proviso that cacheline bounces must take the same amount of time to service. This increase in the scalability of the kernel is expected to be much larger for ia64, which has a large PAGE_SIZE, because the distribution of profile buffer hits is so sharply peaked that doubling the hashtable size will much more than double the amortization factor. In fact, only 19 flushes were observed on a 64x Altix over an approximately 10 minute AIM7 run, and 1 flush on a 512x Altix over the course of an entire AIM7 run, for truly vast effective amortization factors. A prior version of this patch, which did not include the node-local hashtable allocation and bounded collision chains has been successfully tested on 64x and 512x ia64 vs 2.6.9-rc2, 8x ia64 vs. 2.6.9-rc2-mm1, 4x x86-64 vs. 2.6.9-rc2-mm1, and 6x sparc64 vs. 2.6.9-rc2-mm1. This patch minus the hashtable initialization fix has been successfully tested on 2x ppc64, 2x alpha, 8x ia64, 6x sparc64, and 4x x86-64, all vs. 2.6.9-rc2-mm1. This precise version of the patch has been successfully tested on 8x ia32 against 2.6.9-rc2-mm1 and 6x sparc64 vs. both 2.6.9-rc2-mm1 and 2.6.9-rc2-mm2. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.225, 2004-10-19 08:17:18-07:00, jmorris@redhat.com [PATCH] SELinux: allow all filesystems to specify fscreate mount option The patch below allows all types of filesystems to specify the fscreate mount option (which is used to specify the security context of the filesystem itself). This was previously only available for filesystems with full xattr security labeling, but is also potentially required for filesystems with e.g. psuedo xattr labeling such as devpts and tmpfs. An example of use is to specify at mount time the fs security context of a tmpfs filesystem, overriding the default specified in policy for that filesystem. This patch has been in the Fedora kernel for some weeks with no problems. Signed-off-by: James Morris Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.224, 2004-10-19 08:17:06-07:00, agruen@suse.de [PATCH] xattr: re-introduce validity check before xattr cache insert * ext[23]_xattr_list(): - Before inserting an xattr block into the cache, make sure that the block is not corrupted. The check got moved after inserting into the cache in the xattr consolidation patches, so corrupted blocks could become visible to cache users. - Take a variable out of the loop that calls the ->list handlers. * A few cosmetic changes. Signed-off-by: Andreas Gruenbacher Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.223, 2004-10-19 08:16:53-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - tmpfs This patch adds xattr support to tmpfs, and a security xattr handler. The purpose of this is to allow udev to be mounted on tmpfs, as used currently by Fedora. Original patch from: Luke Kenneth Casson Leighton . Signed-off-by: James Morris Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.222, 2004-10-19 08:16:41-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - devpts This patch updates the devpts xattr handler code to the generic xattr API, also adds a GPL notice, author and copyright details. Signed-off-by: James Morris Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.221, 2004-10-19 08:16:28-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - ext2 This patch converts ext2 xattr and acl code to the new generic xattr API. Signed-off-by: James Morris Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.220, 2004-10-19 08:16:16-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - ext3 This patch converts the ext3 xattr and acl code to the generic xattr API. Signed-off-by: James Morris Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.219, 2004-10-19 08:16:03-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - LSM This patch replaces the dentry parameter with an inode in the LSM inode_{set|get|list}security hooks, in keeping with the ext2/ext3 code. dentries are not needed here. Signed-off-by: James Morris Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.218, 2004-10-19 08:15:51-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - generic xattr API This patch consolidates common xattr handling logic into the core fs code, with modifications suggested by Christoph Hellwig (hang off superblock, remove locking, use generic code as methods), for use by ext2, ext3 and devpts, as well as upcoming tmpfs xattr code. Signed-off-by: James Morris Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.217, 2004-10-19 08:15:39-07:00, medaglia@undl.org.br [PATCH] Fix types.h This patch fixes troubles when compiling some applications that include , like xmms. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.216, 2004-10-19 08:15:27-07:00, drepper@redhat.com [PATCH] Simplify last lib/idr.c change The last change to alloc_layer in lib/idr.c unnecessarily complicates the code and depending on the definition of spin_unlock will cause worse code to be generated than necessary. The following patch should improve the situation. Signed-off-by: Ulrich Drepper Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.215, 2004-10-19 08:15:14-07:00, haroldo.gamal@infolink.com.br [PATCH] smbfs does not honor uid, gid, file_mode and dir_mode supplied by user mount This patch fixes "Samba Bugzilla Bug 999". The last version (2.6.8.1) of smbfs kernel module do not honor uid, gid, file_mode and dir_mode supplied by user during mount. This bug is also logged as "Kernel Bug Tracker Bug 3330". To fully work, some modifications are needed to samba smbmount.c and smbmnt.c files. Those patches are available at Samba and Kernel Bug Tracker pages. After those patches, if the user do not supply any of the parameters above, the uid, gid, file_mode and dir_mode on the server will be used by the client. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.214, 2004-10-19 08:15:02-07:00, nickpiggin@yahoo.com.au [PATCH] taint on bad_page Hugh and I both thought this would be generally useful. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.213, 2004-10-19 08:14:50-07:00, nickpiggin@yahoo.com.au [PATCH] taint: fix forced rmmod This taint didn't appear to be reported. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.212, 2004-10-19 08:14:38-07:00, ak@muc.de [PATCH] x86-64/i386: add mce tainting This patch adds machine check tainting. When a handled machine check occurs the oops gets a new 'M' flag. This is useful to ignore machines with hardware problems in oops reports. On i386 a thermal failure also sets this flag. Done for x86-64 and i386 so far. Signed-off-by: Andi Kleen Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.211, 2004-10-19 08:14:25-07:00, dipankar@in.ibm.com [PATCH] Document RCU based dcache lookup Finally some in-tree documentation for RCU-based dcache look-up. Signed-off-by: Dipankar Sarma Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.210, 2004-10-19 08:14:13-07:00, dipankar@in.ibm.com [PATCH] Remove d_bucket Tested using dcachebench and hevy rename test. http://lse.sourceforge.net/locking/dcache/rename_test/ While going over dcache code, I realized that d_bucket which was introduced to prevent hash chain traversals from going into an infinite loop earlier, is no longer necessary. Originally, when RCU based lock-free lookup was first introduced, dcache hash chains used list_head. Hash chain traversal was terminated when dentry->next reaches the list_head in the hash bucket. However, if renames happen during a lock-free lookup, a dentry may move to different bucket and subsequent hash chain traversal from there onwards may not see the list_head in the original bucket at all. In fact, this would result in the list_head in the bucket interpreted as a list_head in dentry and bad things will happen after that. Once hlist based hash chains were introduced in dcache, the termination condition changed and lock-free traversal would be safe with NULL pointer based termination of hlists. This means that d_bucket check is no longer required. There still exist some theoritical livelocks like a dentry getting continuously moving and lock-free look-up never terminating. But that isn't really any worse that what we have. In return for these changes, we reduce the dentry size by the size of a pointer. That should make akpm and mpm happy. Signed-off-by: Dipankar Sarma Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.209, 2004-10-19 08:14:01-07:00, dipankar@in.ibm.com [PATCH] Fix dcache lookup __d_lookup() has leftover stuff from earlier code to protect it against rename. The smp_rmb() there was needed for the sequence counter logic. Original dcache_rcu had : + move_count = dentry->d_move_count; + smp_rmb(); + if (dentry->d_name.hash != hash) continue; if (dentry->d_parent != parent) continue; This was to make sure that comparisons didn't happen before before the sequence counter was snapshotted. This logic is now gone and memory barrier is not needed. Removing this should also improve performance. The other change is the leftover smp_read_barrier_depends(), later converted to rcu_dereference(). Originally, the name comparison was not protected against d_move() and there could have been a mismatch of allocation size of the name string and dentry->d_name.len. This was avoided by making the qstr update in dentry atomic using a d_qstr pointer. Now, we do ->d_compare() or memcmp() with the d_lock held and it is safe against d_move(). So, there is no need to rcu_dereference() anything. In fact, the current code is meaningless. Signed-off-by: Dipankar Sarma Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.208, 2004-10-19 08:13:49-07:00, schwidefsky@de.ibm.com [PATCH] cleanup: time.h, times.h, timex.h and jiffies.h This patch moves some definitions among time.h, times.h, timex.h and jiffies.h. The purpose is to sort all jiffies related functions to jiffies.h, to get rid of the cyclic dependency between time.h & timex.h and to move all #include lines to the start of the header files. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.207, 2004-10-19 08:13:35-07:00, schwidefsky@de.ibm.com [PATCH] cleanup: remove unused definitions from timex.h The CLOCK_TICK_FACTOR and FINETUNE defines from are not used anywhere. Kill them. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.206, 2004-10-19 08:13:23-07:00, schwidefsky@de.ibm.com [PATCH] cleanup: move call to update_process_times. For non-smp kernels the call to update_process_times is done in the do_timer function. It is more consistent with smp kernels to move this call to the architecture file which calls do_timer. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.205, 2004-10-19 08:13:09-07:00, hch@lst.de [PATCH] don't include in security.h gets pulled in in lots of places, so use forward declarations for struct ctl_table instead of pulling sysctl in everywhere. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.204, 2004-10-19 08:12:57-07:00, hch@lst.de [PATCH] mark inter_module_* deprecated These had been officially deprecated since Rusty's module rewrite, but never got the __deprecated marker. The only remaining users are drm and mtd, so we'll get some warnings for common builds. But maybe that's the only way to get the drm people to fix the mess :) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.203, 2004-10-19 08:12:45-07:00, hch@lst.de [PATCH] remove MOD_INC_USE_COUNT/MOD_DEC_USE_COUNT They've been marked deprecated since 2.5.x and there's no more users. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.202, 2004-10-19 08:12:33-07:00, agruen@suse.de [PATCH] Replace hard-coded MODVERDIR in modpost When building external modules, MODVERDIR is relative to the external module instead of in the kernel source tree. Use the MODVERDIR environment variable instead of the hard-coded path in modpost. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.201, 2004-10-19 08:12:21-07:00, stelian@popies.net [PATCH] A simple FIFO implementation A simple ringbuffer implementation for various character drivers. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.200, 2004-10-19 08:12:08-07:00, wli@holomorphy.com [PATCH] report per-process pagetable usage Andi Kleen requested that the number of pagetable pages in use by a process be reported in /proc/$PID/status; this patch implements that. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.199, 2004-10-19 08:11:56-07:00, wli@holomorphy.com [PATCH] make console_conditional_schedule() __sched and use cond_resched() Relatively minor add-on (not necessarily tied to it or required to be taken or a fix for any bug). Since cond_resched() is using PREEMPT_ACTIVE now, it may be useful to update the open-coded instance of cond_resched() to use the generic call. Also, it should probably be __sched so the caller shows up in wchan. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.198, 2004-10-19 08:11:44-07:00, wli@holomorphy.com [PATCH] procfs: fix task_mmu.c text size reporting Not all binfmts page align ->end_code and ->start_code, so the task_mmu statistics calculations need to perform this alignment themselves. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.197, 2004-10-19 08:11:32-07:00, Natalie.Protasevich@unisys.com [PATCH] Incorrect PCI interrupt assignment on ES7000 for platform GSI In arch/i386/kernel/acpi/boot.c, platform GSI does not propagate back from mp_register_gsi() to a calling routine which results in IRQ to be set for wrong GSI. This causes most of the PCI slots on the first PCI module to fail. This patch fixes the problem by returning new GSI back to acpi_register_gsi(). Signed-off-by: Natalie Protasevich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.93.9, 2004-10-19 16:11:22+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Keep trying to register our console device. Some serial drivers receive their serial port device information via the device model. This unfortunately means that the selected port may not be available when the console subsystem initialises, so we must keep trying to register the console after each port is added. ChangeSet@1.1988.68.196, 2004-10-19 08:11:20-07:00, raven@themaw.net [PATCH] autofs4: allow map update recognition Having recently repaired autofs' ability to recognise updates to maps dynamically I found I needed to reintroduce the directory inode lookup method (I broke the update recognition several versions ago, oops). This patch does this and applies cleanly against 2.6.9-rc1-mm4. As far as I can tell from testing it doesn't introduce any backward incompatibilities. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.195, 2004-10-19 08:11:08-07:00, zwane@linuxpower.ca [PATCH] Allow multiple inputs in alternative_input I had to use the following patch to allow multiple arguments to be passed down to the asm stub for alternative_input whilst writing alternatives for mwait code, it seems like a simple enough fix. Signed-off-by: Zwane Mwaikambo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.194, 2004-10-19 08:10:55-07:00, wli@holomorphy.com [PATCH] pidhashing: enforce PID_MAX_LIMIT in sysctls The pid_max sysctl doesn't enforce PID_MAX_LIMIT or sane lower bounds. RESERVED_PIDS + 1 is the minimum pid_max that won't break alloc_pidmap(), and PID_MAX_LIMIT may not be aligned to 8*PAGE_SIZE boundaries for unusual values of PAGE_SIZE, so this also rounds up PID_MAX_LIMIT to it. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.193, 2004-10-19 08:10:43-07:00, wli@holomorphy.com [PATCH] pidhashing: lower PID_MAX_LIMIT for 32-bit machines /proc/ breaks when PID_MAX_LIMIT is elevated on 32-bit, so this patch lowers it there. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.192, 2004-10-19 08:10:31-07:00, wli@holomorphy.com [PATCH] pidhashing: retain older vendor copyright I was informed that the vendor component of the copyright can't be clobbered without more care, so this patch retains the older vendor, updating it only to reflect the appropriate time period. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.191, 2004-10-19 08:10:19-07:00, wli@holomorphy.com [PATCH] pidhashing: rewrite alloc_pidmap() Rewrite alloc_pidmap() to clarify control flow by eliminating all usage of goto, honor pid_max and first available pid after last_pid semantics, make only a single pass over the used portion of the pid bitmap, and update copyrights to reflect ongoing maintenance by Ingo and myself. Signed-off-by: William Irwin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.190, 2004-10-19 08:10:06-07:00, suresh.b.siddha@intel.com [PATCH] no exec: i386 and x86_64 cleanups Sync x86_64 noexec behaviour with i386. And remove all the confusing noexec related boot parameters. Signed-off-by: Suresh Siddha Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.189, 2004-10-19 08:09:53-07:00, vandrove@vc.cvut.cz [PATCH] Add VIDIOC_S_CTRL_OLD to matroxfb For several months I'm receiving complaints from matroxfb users that v4lctl suddenly stops working for them on kernel upgrade. Problem is that VIDIOC_S_CTRL was renumbered, but all distros still use old VIDIOC_S_CTRL value (f.e. even xawtv-3.94 in Debian unstable still uses old VIDIOC_S_CTRL definition). So let's add this old VIDIOC_S_CTRL value (now named VIDIOC_S_CTRL_OLD) to matroxfb's v4l handling. Signed-off-by: Petr Vandrovec Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.188, 2004-10-19 08:09:41-07:00, adaplas@hotpop.com [PATCH] fbdev: trivial fb_get_options fix for cyber2000fb and bw2fb Trivial fb_get_options fix for - cyber200fb - bw2fb Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.187, 2004-10-19 08:09:29-07:00, geert@linux-m68k.org [PATCH] FrameMaster II build fix fm2fb: Trivial fix for the breakage introduced by the addition of fb_get_options(). Signed-off-by: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.186, 2004-10-19 08:09:17-07:00, benh@kernel.crashing.org [PATCH] rework radeonfb blanking This patch cleans up some old cruft in the manipulation of the LVDS interface registers and fixes the blanking code to work with various DVI flat panels. Since this is all very sensitive stuff, I'm posting the patch here for testing before submitting it upstream, though Andrew is welcome to put it in -mm. It also fix some problems with getting the right PLL setup on recent Mac laptops, replacing the old hard coded list of values with cleaner code that "probes" the PLL setup done by the firmware. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.185, 2004-10-19 08:09:05-07:00, vandrove@vc.cvut.cz [PATCH] Assorted matroxfb fixes This small change does: (1) Properly document 'outputs' option. (2) Properly use accelerated characters drawing. fbcon used depth == 0 for character painting long ago, but it is fixed for several months. (3) Provide correct hints for fbcon about matroxfb/matroxfb_crtc2 hardware capabilities. Signed-off-by: Petr Vandrovec Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.184, 2004-10-19 08:08:53-07:00, vandrove@vc.cvut.cz [PATCH] Remove big-endian mode from matroxfb One of the PowerPC developers, Kostas Georgiou, pointed out to me discussion back from 2001 that they would prefer little endian mode as majority of users runs XF4.x and not Xpmac. And apparently nobody runs Xpmac now, so we can safely remove big-endian mode from matroxfb completely. So let's simplify matroxfb a bit: Accelerator and ILOAD fifo is now always in little endian mode. This is what XFree does. Due to this change all #ifdefs based on endianness was removed from driver - except one which selects framebuffer endinaness (but there is no code in matroxfb which writes to framebuffer directly). It seems that while I was not looking m68k got ioremap, and all architectures now offer ioremap and ioremap_nocache. Let's kill code which mapped ioremap_nocache to ioremap, and ioremap to bus_to_virt for architectures which did not provide them. And this also fixes small typo - M_C2CTL should be 0x3C10 and not 0x3E10. Apparently Matrox notes about need to program this register during initialization are not so important... Signed-off-by: Petr Vandrovec Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.183, 2004-10-19 08:08:40-07:00, adaplas@hotpop.com [PATCH] fbdev: split vesafb option vram into vtotal and vremap From: Gerd Knorr : "IMHO the the only sane thing is to have two options for total + remapped memory as well. Otherwise we'll end up changing that back and forth like it happened for the size calculation stuff for quite some time ... The patch below does just that and also has the other vmode fix (vmode = yres * linelength /* instead of yres * xres * depth >> 3 */)." Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.182, 2004-10-19 08:08:28-07:00, adaplas@hotpop.com [PATCH] fbdev: fix framebuffer memory calculation for vesafb - use vesafb_fix.line_length * vesafb_defined.yres to calculate the minimum memory required for a video mode. From Aurelien Jacobs . - separately calculate the memory required for a video mode, memory to be remapped, and total memory (for MTRR). From Gerd Knorr . - the 'vram' option is for memory to be remapped, not total memory. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.181, 2004-10-19 08:08:16-07:00, venkatesh.pallipadi@intel.com [PATCH] Fix EDID_INFO in zero-page EDID_INFO is encroaching on the space meant for E820 map in zero-page. This will result in E820 map corruption on any system that has more=20 than 18 E820 entries and CONFIG_VIDEO_SELECT. Not sure how this bug=20 managed to hide for more than a year. Attached patch should fix the bug. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.180, 2004-10-19 08:08:05-07:00, adaplas@hotpop.com [PATCH] fbcon unimap fix fbcon doesn't set a unimap at boot time, so special characters come out wrongly. This is the code sequence in take_over_console(). newcon->startup() oldcon->deinit() newcon->init() The previous console driver (ie, vgacon), via its deinit method, may release the unimap allocated by fbcon in fbcon_startup. This is the reason why calling con_set_default_unimap() in fbcon_init() works, but not in fbcon_startup(). Check if the default display has an allocated unimap, and if it has none, call con_set_default_unimap(). And if the target display has no allocated unimap, then call con_copy_unimap(), where the source unimap is from the default display. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.179, 2004-10-19 08:07:53-07:00, tiwai@suse.de [PATCH] VGA console font problems on 2.6 kernel From: Egbert Eich I would like to utilize kernel ioctls to save/restore console fonts in VGA text mode when running X. So far the Xserver takes care of this however there more and more problems with this: 1. On some platforms (IA64) we need to POST the BIOS before we even have a chance to access the hardware ourselves. This POSTing will usually undo any changes to the graphics hardware that the kernel may have done. 2. More and more drivers fully rely on BIOS support however the BIOS functions which could be used to save/restore register settings may be broken so the only way of mode save/restore is getting/setting the BIOS mode ID. I've hacked up some code for X however I ran into two problems: 1. con_font_get() in linux/drivers/char/vt.c seems to be broken as the font parameters (height, width, charcount) are never reported back. Therefore this function seems to be pretty useless. The fix is simple (please see below). 2. fb consoles seem to allow to install fonts per vt so that the user can have a different font on every console. The text console driver doesn't support this: the font is downloaded to the video card and will be used for all systems. Still the vga_con driver stores the font parameters per console with the effect that setting a font with different parameters on one console will result in the wron values when this font information is read back from another console. Appearantly this broken feature has been introduced in 2.6 as in the 2.4 kernel the vga_con font information is stored in one single global variable. The IA64 platform at least still heavily relies on the VGA text console. To be able to fix some VT switching issues with X on this platform I need these two issues resolved. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.178, 2004-10-19 08:07:41-07:00, adaplas@hotpop.com [PATCH] fbdev: Add iomem annotations to vga16fb.c Add iomem annotations to vga16fb.c Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.177, 2004-10-19 08:07:29-07:00, adaplas@hotpop.com [PATCH] fbdev: Add iomem annotations to i810fb Add iomem annotations to i810fb. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.176, 2004-10-19 08:07:17-07:00, adaplas@hotpop.com [PATCH] fbdev: Add iomem annotations to fbmem.c Add iomem annotations to fbmem.c Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.175, 2004-10-19 08:07:05-07:00, andreas@fjortis.info [PATCH] fbdev: Remove i810fb explicit agp initialization hack. When Antonino A. Daplas posted his "fbdev: Initialize i810fb after agpgart" patch he said that the ugly agp initialization hack for intel agp shouldn't be needed but that he couldn't test it. I have tested the framebuffer updates and additionally removed the initialization hack and it does indeed work. Signed-off-by: Andreas Henriksson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.174, 2004-10-19 08:06:52-07:00, benh@kernel.crashing.org [PATCH] radeonfb: Fix monitor probe logic Fix a small logic error in the monitor probe code when nothing was found. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.173, 2004-10-19 08:06:40-07:00, adaplas@hotpop.com [PATCH] fbdev: fix scrolling corruption This patches fixes the following: - scrolling corruption if scrolling mode is SCROLL_PAN_MOVE. This bug was introduced by the tile blitting patch. - flashing cursor even when console is blanked Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.172, 2004-10-19 08:06:28-07:00, adaplas@hotpop.com [PATCH] fbdev: Add Tile Blitting support Hopefully, this patch fixes one last major regression for one particular driver, namely matroxfb. This drier has 2 versions, one for the kernel and another as a '2.4 backport' patch. This patch adds a tileblitting extension to fbcon. This extension, in summary, is basically a forward-port of the 2.4 fbdev/fbcon framework to 2.6 but without the fbcon dependency. Tile blitting is similar to bitblit, except that the basic unit is a tile (a bitmap of x-by-y dimensions). The display, instead of being described in terms of pixels and scanlines, are described as a region further subdivided into rectangular sections. In fbcon parlance, a tile is a character. Besides a possible fix for matroxfb, tileblitting can be advantageous for hardware that supports some kind of fontcaching mechanism. Also, in the unlikely chance that the console begins supporting multicolored fonts, tileblitting is probably more optimal than bitblitting because bitblitting will need to push more data through the bus. To enable support for this extension, a driver needs to: - enable CONFIG_FB_TILEBLITTING - set FBINFO_MISC_TILEBLITTING in info->flags - set the required function pointers in struct fb_tileops. The required operations are: - void (*fb_settile)(struct fb_info *info, struct fb_tilemap *map); tells driver about the tile characteristics (dimensions, bitdepth) and about the tilemap which is an array of bitmaps: display->fontdata - void (*fb_tilecopy)(struct fb_info *info, struct fb_tilearea *area); move a rectangular section of tiles (bmove) - void (*fb_tilefill)(struct fb_info *info, struct fb_tilerect *rect); fill a rectangular section with a tile (clear) - void (*fb_tileblit)(struct fb_info *info, struct fb_tileblit *blit); copy an array of tiles to a rectangular section (putcs) - void (*fb_tilecursor)(struct fb_info *info, struct fb_tilecursor *cursor); cursor function Changes: Addition of this extension necessitates cleanup of fbcon.c. The basic drawing functions in fbcon are bmove, clear, putcs and cursor (the fbcon_* set). The fbcon_* set are just wrappers to accel_* set. However, usage is not consistent, some functions call the fbcon_* set, others call the accel_* set. With this patch, a new fbcon-specific structure (struct fbcon_ops) is created. Depending on the setting of the hardware, this struct contains pointers to either the tileblitting set or the bitblitting set (formerly the accel_* set). The tileblitting set is new in this patch. The vast majority of functions in fbcon will need to only call the fbcon_* set. In turn, it calls functions in struct fbcon_ops. Knowledge of the blitting type is not required. The accel_* set is renamed to bit_* and is moved into a separate file, bitblit.c. The tile blitting set is in tileblit.c. In my case at least, the cleanup did produce an unexpected but beneficial side effect, a little more speedup. Not much, < 5%. Petr, if you have comments, suggestions, or you think this is a bad idea, let me know. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.171, 2004-10-19 08:06:15-07:00, adaplas@hotpop.com [PATCH] fbdev: Pass struct device to class_simple_device_add Swsusp turns off the display when a power-management-enabled framebuffer driver is used. According to Nigel Cunningham , the fix may involve the following: "...I thought the best approach would be to use device classes to find the struct dev for the frame buffer driver, and then use the same code I use for storage devices to avoid suspending the frame buffer until later..." Changes: - pass info->device to class_simple_device_add() - add struct device *device to struct fb_info - store struct device in framebuffer_alloc() - for drivers not using framebuffer_alloc(), store the struct during initalization - port i810fb and rivafb to use framebuffer_alloc() Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1988.68.170, 2004-10-19 08:06:02-07:00, adaplas@hotpop.com [PATCH] fbcon: Fix setup boot options of fbcon This patch fixes the 'fbcon=map: