commit c4184f117af7441fb83bc413d2214d92920e0289 Author: Linus Torvalds Date: Wed Feb 7 20:24:25 2007 -0800 kbuild: make $(checker-shell ) strip spaces around the result It looks like GNU make version 3.80 (but apparently not 3.81) adds leading whitespace to the result of the checker-shell execution. This strips them off explicitly. Also, don't bother symlinking the output file to /dev/null. It's likely as expensive as just writing the temp-file, and we need to remove it anyway afterwards. Signed-off-by: Linus Torvalds commit 905adce4094d64a6691df994e424fbf486301adc Merge: 78149df... 1e8f34f... Author: Linus Torvalds Date: Wed Feb 7 19:32:36 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6: (23 commits) ide-acpi support warning fix ACPI support for IDE devices IDE Driver for Delkin/Lexar/etc.. cardbus CF adapter ide: it8213 IDE driver update (version 2) ide: add it8213 IDE driver tc86c001: add missing __init tag for tc86c001_ide_init() tc86c001: mark init_chipset_tc86c001() with __devinit tag tc86c001: init_hwif_tc86c001() can be static ide: add Toshiba TC86C001 IDE driver (take 2) pdc202xx_new: remove check_in_drive_lists abomination pdc202xx_new: remove useless code slc90e66: carry over fixes from piix driver piix: tuneproc() fixes/cleanups piix: fix 82371MX enablebits hpt366: HPT36x PCI clock detection fix hpt366: init code rewrite hpt366: clean up DMA timeout handling for HPT370 hpt366: merge HPT37x speedproc handlers hpt366: cache channel's MCR address hpt366: switch to using pci_get_slot ... commit 78149df6d565c36675463352d0bfe0000b02b7a7 Merge: c96e2c9... 14719f3... Author: Linus Torvalds Date: Wed Feb 7 19:23:44 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (41 commits) Revert "PCI: remove duplicate device id from ata_piix" msi: Make MSI useable more architectures msi: Kill the msi_desc array. msi: Remove attach_msi_entry. msi: Fix msi_remove_pci_irq_vectors. msi: Remove msi_lock. msi: Kill msi_lookup_irq MSI: Combine pci_(save|restore)_msi/msix_state MSI: Remove pci_scan_msi_device() MSI: Replace pci_msi_quirk with calls to pci_no_msi() PCI: remove duplicate device id from ipr PCI: remove duplicate device id from ata_piix PCI: power management: remove noise on non-manageable hw PCI: cleanup MSI code PCI: make isa_bridge Alpha-only PCI: remove quirk_sis_96x_compatible() PCI: Speed up the Intel SMBus unhiding quirk PCI Quirk: 1k I/O space IOBL_ADR fix on P64H2 shpchp: delete trailing whitespace shpchp: remove DBG_XXX_ROUTINE ... commit c96e2c92072d3e78954c961f53d8c7352f7abbd7 Merge: f2aca47... 6435816... Author: Linus Torvalds Date: Wed Feb 7 19:23:21 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (70 commits) USB: remove duplicate device id from zc0301 USB: remove duplicate device id from usb_storage USB: remove duplicate device id from keyspan USB: remove duplicate device id from ftdi_sio USB: remove duplicate device id from visor USB: a bit more coding style cleanup usbcore: trivial whitespace fixes usb-storage: use first bulk endpoints, not last EHCI: fix interrupt-driven remote wakeup USB: switch ehci-hcd to new polling scheme USB: autosuspend for usb printer driver USB Input: Added kernel module to support all GTCO CalComp USB InterWrite School products USB: Sierra Wireless auto set D0 USB: usb ethernet gadget recognizes HUSB2DEV USB: list atmel husb2_udc gadget controller USB: gadgetfs AIO tweaks USB: gadgetfs behaves better on userspace init bug USB: gadgetfs race fix USB: gadgetfs simplifications USB: gadgetfs cleanups ... commit f2aca47dc3c2d0c2d5dbd972558557e74232bbce Merge: 7677ced... b592fcf... Author: Linus Torvalds Date: Wed Feb 7 19:22:26 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: (28 commits) sysfs: Shadow directory support Driver Core: Increase the default timeout value of the firmware subsystem Driver core: allow to delay the uevent at device creation time Driver core: add device_type to struct device Driver core: add uevent vars for devices of a class SYSFS: Fix missing include of list.h in sysfs.h HOWTO: Add a reference to Harbison and Steele sysfs: error handling in sysfs, fill_read_buffer() kobject: kobject_put cleanup sysfs: kobject_put cleanup sysfs: suppress lockdep warnings Driver core: fix race in sysfs between sysfs_remove_file() and read()/write() driver core: Change function call order in device_bind_driver(). driver core: Don't stop probing on ->probe errors. driver core fixes: device_register() retval check in platform.c driver core fixes: make_class_name() retval checks /sys/modules/*/holders USB: add the sysfs driver name to all modules SERIO: add the sysfs driver name to all modules PCI: add the sysfs driver name to all modules ... commit 7677ced48e2bbbb8d847d34f37e5d96d2b0e41e4 Merge: 21d37bb... ac38dfc... Author: Linus Torvalds Date: Wed Feb 7 19:21:56 2007 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (116 commits) sk98lin: planned removal AT91: MACB support sky2: version 1.12 sky2: add new chip ids sky2: Yukon Extreme support sky2: safer transmit timeout sky2: TSO support for EC_U sky2: use dev_err for error reports sky2: add Wake On Lan support fix unaligned exception in /drivers/net/wireless/orinoco.c Remove unused kernel config option DLCI_COUNT z85230: spinlock logic mips: declance: Driver model for the PMAD-A Spidernet: Rework RX linked list NET: turn local_save_flags() + local_irq_disable() into local_irq_save() NET-3c59x: turn local_save_flags() + local_irq_disable() into local_irq_save() hp100: convert pci_module_init() to pci_register_driver() NetXen: Added ethtool support for user level tools. NetXen: Firmware crb init changes. maintainers: add atl1 maintainers ... commit 14719f325e1cd4ff757587e9a221ebaf394563ee Author: Greg Kroah-Hartman Date: Wed Feb 7 16:17:27 2007 -0800 Revert "PCI: remove duplicate device id from ata_piix" This reverts commit b11056355ea149c37edf0ef54976a49f5258cd54. It was incorrect, the proper fix is coming through the SATA tree, sorry about that. Signed-off-by: Greg Kroah-Hartman commit ac38dfc39e7684f55174742e5f0d6c5a0093bbf6 Author: Stephen Hemminger Date: Wed Feb 7 09:18:30 2007 -0800 sk98lin: planned removal Document planned removal of sk98lin driver. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 0cc8674f2be3078fb586add1900c7835c977f384 Author: Andrew Victor Date: Wed Feb 7 16:40:44 2007 +0100 AT91: MACB support The Atmel MACB Ethernet peripheral is also integrated in the AT91SAM9260 and AT91SAM9263 processors. The differences from the AVR32 version are: * Single peripheral clock. * MII/RMII selection bit is inverted. * Clock enable bit. Original patch from Patrice Vilchez. Signed-off-by: Andrew Victor Signed-off-by: Haavard Skinnemoen Signed-off-by: Jeff Garzik commit 683349a3fae4896d91b1fe507ebbadb866587cd8 Author: Stephen Hemminger Date: Tue Feb 6 10:45:45 2007 -0800 sky2: version 1.12 Updated version for WOL and new id's Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit f1a0b6f56e0126b82d7b9c2afa86613af8ee3146 Author: Stephen Hemminger Date: Tue Feb 6 10:45:44 2007 -0800 sky2: add new chip ids More new chip id's from vendor driver version 10.0.4.3 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 9374549428820be10f01e217cec1b34cb3e3de6d Author: Stephen Hemminger Date: Tue Feb 6 10:45:43 2007 -0800 sky2: Yukon Extreme support This is basic support for the new Yukon Extreme chip, extracted from the new vendor driver 10.0.4.3. Since this is untested hardware, it has a big fat warning for now. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 62335ab013d9eaef502bd402eb2eb72e8cff58f1 Author: Stephen Hemminger Date: Tue Feb 6 10:45:42 2007 -0800 sky2: safer transmit timeout Rather than trying to be "smart" about possible transmit timeout causes. Just clear all pending frames and reset the PHY. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 4a50a876ac325a45de1b582571c1248648801b52 Author: Stephen Hemminger Date: Tue Feb 6 10:45:41 2007 -0800 sky2: TSO support for EC_U The Yukon EC_U chipset apparently supports TSO but only for non-Jumbo frame sizes because it lacks a Ram buffer. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit b02a92586dca362b0b76ad527b91bd44ce58ece5 Author: Stephen Hemminger Date: Tue Feb 6 10:45:40 2007 -0800 sky2: use dev_err for error reports Use the standard dev_xxx functions instead of printk directly for error reports. Fix a bug where the initialization would return 0 if allocation of network device failed. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit f7feaca77d6ad6bcfcc88ac54e3188970448d6fe Author: Eric W. Biederman Date: Sun Jan 28 12:56:37 2007 -0700 msi: Make MSI useable more architectures The arch hooks arch_setup_msi_irq and arch_teardown_msi_irq are now responsible for allocating and freeing the linux irq in addition to setting up the the linux irq to work with the interrupt. arch_setup_msi_irq now takes a pci_device and a msi_desc and returns an irq. With this change in place this code should be useable by all platforms except those that won't let the OS touch the hardware like ppc RTAS. Signed-off-by: Eric W. Biederman Acked-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman commit 5b912c108c8b1fcecbfe13d6d9a183db97b682d3 Author: Eric W. Biederman Date: Sun Jan 28 12:52:03 2007 -0700 msi: Kill the msi_desc array. We need to be able to get from an irq number to a struct msi_desc. The msi_desc array in msi.c had several short comings the big one was that it could not be used outside of msi.c. Using irq_data in struct irq_desc almost worked except on some architectures irq_data needs to be used for something else. So this patch adds a msi_desc pointer to irq_desc, adds the appropriate wrappers and changes all of the msi code to use them. The dynamic_irq_init/cleanup code was tweaked to ensure the new field is left in a well defined state. Signed-off-by: Eric W. Biederman Acked-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman commit 1c659d61cfbd8dc3926688c1bbf12d80f4cfb5c2 Author: Eric W. Biederman Date: Sun Jan 28 12:47:52 2007 -0700 msi: Remove attach_msi_entry. The attach_msi_entry has been reduced to a single simple assignment, so for simplicity remove the abstraction and directory perform the assignment. Signed-off-by: Eric W. Biederman Acked-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman commit 866a8c87c4e51046602387953bbef76992107bcb Author: Eric W. Biederman Date: Sun Jan 28 12:45:54 2007 -0700 msi: Fix msi_remove_pci_irq_vectors. Since msi_remove_pci_irq_vectors is designed to be called during hotplug remove it is actively wrong to query the hardware and expect meaningful results back. To that end remove the pci_find_capability calls. Testing dev->msi_enabled and dev->msix_enabled gives us all of the information we need. Signed-off-by: Eric W. Biederman Acked-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman commit d40f540ce6d992d4123827dbd62f68c4a39c53d0 Author: Eric W. Biederman Date: Sun Jan 28 12:44:21 2007 -0700 msi: Remove msi_lock. With the removal of msi_lookup_irq all of the functions using msi_lock operated on a single device and none of them could reasonably be called on that device at the same time. Since what little synchronization that needs to happen needs to happen outside of the msi functions, msi_lock could never be contended and as such is useless and just complicates the code. Signed-off-by: Eric W. Biederman Acked-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman commit ded86d8d37736df67ddeec4ae00e2ec1a5a90b3c Author: Eric W. Biederman Date: Sun Jan 28 12:42:52 2007 -0700 msi: Kill msi_lookup_irq The function msi_lookup_irq was horrible. As a side effect of running it changed dev->irq, and then the callers would need to change it back. In addition it does a global scan through all of the irqs, which seems to be the sole justification of the msi_lock. To remove the neede for msi_lookup_irq I added first_msi_irq to struct pci_dev. Then depending on the context I replaced msi_lookup_irq with dev->first_msi_irq, dev->msi_enabled, or dev->msix_enabled. msi_enabled and msix_enabled were already present in pci_dev for other reasons. Signed-off-by: Eric W. Biederman Acked-by: Ingo Molnar Signed-off-by: Greg Kroah-Hartman commit 8fed4b65236c44d090bd62f2d14938ae791e0260 Author: Michael Ellerman Date: Thu Jan 25 19:34:08 2007 +1100 MSI: Combine pci_(save|restore)_msi/msix_state The PCI save/restore code doesn't need to care about MSI vs MSI-X, all it really wants is to say "save/restore all MSI(-X) info for this device". This is borne out in the code, we call the MSI and MSI-X save routines side by side, and similarly with the restore routines. So combine the MSI/MSI-X routines into pci_save_msi_state() and pci_restore_msi_state(). It is up to those routines to decide what state needs to be saved. Signed-off-by: Michael Ellerman Signed-off-by: Greg Kroah-Hartman commit 0fcfdabbdbedb3bdc63f29209aeeac805df78a92 Author: Michael Ellerman Date: Thu Jan 25 19:34:08 2007 +1100 MSI: Remove pci_scan_msi_device() pci_scan_msi_device() doesn't do anything anymore, so remove it. Signed-off-by: Michael Ellerman Signed-off-by: Greg Kroah-Hartman commit 88187dfa4d8bb565df762f272511d2c91e427e0d Author: Michael Ellerman Date: Thu Jan 25 19:34:07 2007 +1100 MSI: Replace pci_msi_quirk with calls to pci_no_msi() I don't see any reason why we need pci_msi_quirk, quirk code can just call pci_no_msi() instead. Remove the check of pci_msi_quirk in msi_init(). This is safe as all calls to msi_init() are protected by calls to pci_msi_supported(), which checks pci_msi_enable, which is disabled by pci_no_msi(). The pci_disable_msi routines didn't check pci_msi_quirk, only pci_msi_enable, but as far as I can see that was a bug not a feature. Signed-off-by: Michael Ellerman Signed-off-by: Greg Kroah-Hartman commit 89298c7a41e71ecb1e0c3f793655e9ce09662ce0 Author: Greg Kroah-Hartman Date: Thu Jan 25 16:15:24 2007 -0800 PCI: remove duplicate device id from ipr As pointed out by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit b11056355ea149c37edf0ef54976a49f5258cd54 Author: Greg Kroah-Hartman Date: Thu Jan 25 16:15:24 2007 -0800 PCI: remove duplicate device id from ata_piix As pointed out by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit e36c455c2f5fee08fed395e94c7ab156cd159360 Author: Pavel Machek Date: Tue Jan 16 12:17:13 2007 +0100 PCI: power management: remove noise on non-manageable hw Return early from pci_set_power_state() if hardware does not support power management. This way, we do not generate noise in the logs. Signed-off-by: Pavel Machek Signed-off-by: Greg Kroah-Hartman commit c54c18790700b8b2a503945d729aa425c25691fe Author: Satoru Takeuchi Date: Thu Jan 18 13:50:05 2007 +0900 PCI: cleanup MSI code Cleanup MSI code as follows: - fix some types - fix strange local variable definition - delete unnecessary blank line - add comment to #endif which is far from corresponding #ifdef Signed-off-by: Satoru Takeuchi Signed-off-by: Greg Kroah-Hartman commit 8255cf35d503db7c1b26ae53b6b7f23ada82316f Author: Adrian Bunk Date: Sat Jan 6 21:48:41 2007 +0100 PCI: make isa_bridge Alpha-only Since isa_bridge is neither assigned any value !NULL nor used on !Alpha, there's no reason for providing it. Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 1863100a0244828f78e5e47b22b93ca912e80963 Author: Adrian Bunk Date: Sun Jan 14 14:46:32 2007 +0100 PCI: remove quirk_sis_96x_compatible() Since 2.6.0-test10, all quirk_sis_96x_compatible() had any effect on was a printk(). This patch therefore removes it. Signed-off-by: Adrian Bunk Acked-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman commit 2f2d39d2843570e81be6d53da6052f6752dc3c45 Author: Jean Delvare Date: Fri Jan 5 11:23:15 2007 +0100 PCI: Speed up the Intel SMBus unhiding quirk Speed up the Intel SMBus PCI quirk by avoiding tests which can only fail. This also makes the compiled code significantly smaller when using gcc 3.2/3.4. gcc 4.x appears to optimize the code by itself so this change doesn't make a difference there. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 15a260d53f7ca026e45109d2c2bec8c4b087780b Author: Daniel Yeisley Date: Thu Dec 21 14:34:57 2006 -0500 PCI Quirk: 1k I/O space IOBL_ADR fix on P64H2 There's an existing quirk for the kernel to use 1k IO space granularity on the Intel P64H2. It turns out however that pci_setup_bridge() in drivers/pci/setup-bus.c reads in the IO base and limit address register masks it off to the nearest 4k, and writes it back. This causes the kernel to be on 1k boundaries and the hardware to be 4k aligned. The patch below fixes the problem. Signed-off-by: Dan Yeisley Signed-off-by: Greg Kroah-Hartman commit 9f593e30b318719b0e3889c730cc3a2d0729a707 Author: Kenji Kaneshige Date: Tue Jan 9 13:03:10 2007 -0800 shpchp: delete trailing whitespace This patch deletes trailing white space in SHPCHP driver. This has no functional change. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 1555b33da0b27f933fbe08679935ce9d83c0e9e9 Author: Kenji Kaneshige Date: Tue Jan 9 13:03:01 2007 -0800 shpchp: remove DBG_XXX_ROUTINE This patch removes DBG_ENTER_ROUTINE, DBG_LEAVE_ROUTINE and related code. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 3d9c18872fa1db5c43ab97d8cbca43775998e49c Author: Kenji Kaneshige Date: Tue Jan 9 13:02:48 2007 -0800 shpchp: remove CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE The CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE config option is not needed because polling mechanism for shpc hotplug events can be enabled through module option 'shpchp_poll_mode'. This patch removes CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 34d03419f03bcfdf70d9617a9b90b60c93482c4a Author: Kristen Carlson Accardi Date: Tue Jan 9 13:02:36 2007 -0800 PCIEHP: Add Electro Mechanical Interlock (EMI) support to the PCIE hotplug driver. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 262303fe329a51463925f3749aafc358a4201397 Author: Kenji Kaneshige Date: Thu Dec 21 17:01:10 2006 -0800 pciehp: fix wait command completion This patch fixes this problem that pciehp driver will sleep unnecessarily long when waiting for command completion. With this patch, modprobe pciehp driver becomes very faster as follows for instance. o Without this patch # time /sbin/modprobe pciehp real 0m4.976s user 0m0.000s sys 0m0.004s o With this patch # time /sbin/modprobe pciehp real 0m0.640s user 0m0.000s sys 0m0.004s Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 44ef4cefb0168740184ee3d7d18254339741e9d5 Author: Kenji Kaneshige Date: Thu Dec 21 17:01:09 2006 -0800 pciehp: cleanup wait command completion This patch cleans up the code to wait for command completion. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 75e13178af33e20b5802885f637af2a82c64ac2c Author: Kenji Kaneshige Date: Thu Dec 21 17:01:08 2006 -0800 pciehp: remove unused pcie_cap_base This patch removes unused pcie_cap_base variable. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 15232ece5566710d24c81ac3dd629f7556a92818 Author: Kenji Kaneshige Date: Thu Dec 21 17:01:07 2006 -0800 pciehp: cleanup pciehp.h This patch cleans up pciehp.h. This has no functional change. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit a0f018daa9955d123b9257b08bcac2d59e295967 Author: Kenji Kaneshige Date: Thu Dec 21 17:01:06 2006 -0800 pciehp: cleanup register access This patch cleans up register access functions. This has no functional change. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit a8c2b635979823043ea7766dea1d9371773b4d8e Author: Kenji Kaneshige Date: Thu Dec 21 17:01:05 2006 -0800 pciehp: remove unused pci_bus from struct controller This patch removes unused pci_bus member from struct controller. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 48fe39151727db350347e1dba09d71c8ca24207a Author: Kenji Kaneshige Date: Thu Dec 21 17:01:04 2006 -0800 pciehp: remove unnecessary php_ctlr The struct php_ctlr seems to be only for complicating codes. This patch removes struct php_ctlr and related codes. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 2410fa4eaec4133f9fa8968f277ddb28b89b92b3 Author: Kenji Kaneshige Date: Thu Dec 21 17:01:03 2006 -0800 pciehp: cleanup slot list This patch cleans up slot list handling (use list_head). This has no functional change. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit a0b1725720d9a023a1dee129234f5972056038c6 Author: Kenji Kaneshige Date: Thu Dec 21 17:01:02 2006 -0800 pciehp: cleanup init_slot() This patch cleans up init_slots() in pciehp_core.c based on pcihp_skeleton.c. This has no functional change. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 429538ad3eeffec4199d8adddd1e9e4c80b2c08b Author: Adrian Bunk Date: Sat Nov 18 01:06:29 2006 +0100 PCI: mark pci_find_device() as __deprecated On Fri, Nov 17, 2006 at 09:32:36AM -0500, Alan Cox wrote: > > Soon we should deprecate pci_find_device as well So let's mark it as __deprecated now, which also has the side effect that noone can later whine that removing it might break some shiny external modules. Oh, and if anything starts complaining "But this adds some warnings to my kernel build!", he should either first fix the 200 kB (sic) of warnings I'm getting in 2.6.19-rc5-mm2 starting at MODPOST or go to hell. Signed-off-by: Adrian Bunk Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit fd9b37cc4e32533214f77b34ea03ee85f6e0a4d2 Author: Adrian Bunk Date: Fri Nov 17 15:21:45 2006 +0100 PCI: remove pci_find_device_reverse() This patch removes the no longer used pci_find_device_reverse(). Signed-off-by: Adrian Bunk Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c30ca1db39cecade07143112ecfac09ec6b08e3f Author: Adrian Bunk Date: Tue Dec 19 05:13:15 2006 +0100 PCI: quirks.c: cleanup This patch contains the following cleanups: - move all EXPORT_SYMBOL's directly below the code they are exporting - move all DECLARE_PCI_FIXUP_*'s directly below the functions they are calling Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 81b1955eef786c1b2fe29f6783543ce13d8b0bc4 Author: Linas Vepstas Date: Tue Dec 12 18:29:15 2006 -0600 PCI: Use newly defined PCI channel offline routine Use newly minted routine to access the PCI channel state. Signed-off-by: Linas Vepstas Signed-off-by: Greg Kroah-Hartman commit a7369f1f6533b9efc3209d1df103537bbbf24b8c Author: Linas Vepstas Date: Tue Dec 12 16:55:59 2006 -0600 PCI: define inline for test of channel error state Add very simple routine to indicate the pci channel error state. Signed-off-by: Linas Vepstas Signed-off-by: Greg Kroah-Hartman commit c87deff776feacd05a7411097e8c8c57e549e638 Author: Hidetoshi Seto Date: Mon Dec 18 10:31:06 2006 +0900 PCI : Add selected_regions funcs This patch adds the following changes into generic PCI code especially for PCI legacy I/O port free drivers. - Added new pci_request_selected_regions() and pci_release_selected_regions() for PCI legacy I/O port free drivers in order to request/release only the selected regions. - Added helper routine pci_select_bars() which makes proper mask of BARs from the specified resource type. This would be very helpful for users of pci_enable_device_bars(). Signed-off-by: Kenji Kaneshige Signed-off-by: Hidetoshi Seto Cc: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 38cc13022ed3cea949722d5a6f49025da82c9fd0 Author: Hidetoshi Seto Date: Mon Dec 18 10:30:00 2006 +0900 PCI : add extremely specialized __pci_reenable_device for default resume Original patch was posted as "PCI : Move pci_fixup_device and is_enabled". This 3 of 3 patches does: - add __pci_reenable_device (recover former change of 1st patch) Signed-off-by: Kenji Kaneshige Signed-off-by: Hidetoshi Seto Cc: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 9fb625c3cc3731097a142ecae79a0369fb854c2d Author: Hidetoshi Seto Date: Mon Dec 18 10:28:43 2006 +0900 PCI : Move pci_fixup_device and is_enabled (originally intended change) Original patch was posted as "PCI : Move pci_fixup_device and is_enabled". This 2 of 3 patches does: - Move pci_fixup_device and enable_cnt (originally intended change) - relocate pci_fixup_device (recover latter change of 1st patch) Signed-off-by: Kenji Kaneshige Signed-off-by: Hidetoshi Seto Cc: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 924b08f3ff12eb0e8ecd9e9a9b6a5b884a495c23 Author: Hidetoshi Seto Date: Mon Dec 18 10:27:45 2006 +0900 PCI : remove too specialized __pci_enable_device for default resume Original patch was posted as "PCI : Move pci_fixup_device and is_enabled". This 1 of 3 patches does: - reverts small part of Inaky's patch (remove __pci_enable_device) This change will be recovered by 3rd patch. - temporarily remove pci_fixup_device. This change will be recovered by 2nd patch. Signed-off-by: Kenji Kaneshige Signed-off-by: Hidetoshi Seto Cc: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 07eddf3d597f2d009a37a4e8c7c32a1ffe992f3e Author: Yinghai Lu Date: Wed Nov 29 13:53:10 2006 -0800 PCI: check szhi when sz is 0 when 64 bit iomem bigger than 4G For pci mem resource that size is bigger than 4G, the sz returned by pc_size will be 0. So that resource is skipped, and register contained hi address will be treated as another 32bit resource. We need to use sz64 and pci_sz64 for 64 bit resource for clear logical. Typical usages for this: Opteron system with co-processor and the co-processor could take more than 4G RAM as pre-fetchable mem resource. Signed-off-by: Yinghai Lu Cc: Andi Kleen Cc: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit e3173832d7be8f62a181a1888a65f0a3dc58c2e0 Author: Stephen Hemminger Date: Tue Feb 6 10:45:39 2007 -0800 sky2: add Wake On Lan support Adds basic magic packet wake on lan support to the sky2 driver. Note: initial WOL value is based on BIOS settings. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit dde6d43d060bf0e0f38c66f76908e460db3bf0d8 Author: Hennerich, Michael Date: Mon Feb 5 16:41:35 2007 -0800 fix unaligned exception in /drivers/net/wireless/orinoco.c Prevent an unaligned exception to occur. (GCC 4.1) tmp is defined as char pointer while it is later accessed as short. Cc: Jean Tourrilhes Cc: John W. Linville Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit f100ae2ed04d17fb450fe6e3a3780342da60acd0 Author: Robert P. J. Day Date: Mon Feb 5 16:31:06 2007 -0800 Remove unused kernel config option DLCI_COUNT Remove the unused kernel config option DLCI_COUNT. Signed-off-by: Robert P. J. Day Cc: "David S. Miller" Cc: Jeff Garzik Cc: Krzysztof Halasa {khc@pm.waw.pl> Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 45d3ac4ec31ccf9a39065e8576260c6ac2652c83 Author: Alan Cox Date: Mon Feb 5 16:31:03 2007 -0800 z85230: spinlock logic At some point someone added a spin_lock(&dev->lock) to the IRQ handler for the Z85230 driver. This actually correctly fixes a bug but the necessary changes to remove the chan->lock calls in the event handlers were not made (c->lock is the same lock). Simona Dascenzo reported the problem with the driver and this patch should fix the problem he found. Cc: "David S. Miller" Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 257b346d20cd309a4c5a13b8de5ad2b7c63b590a Author: Maciej W. Rozycki Date: Mon Feb 5 16:28:27 2007 -0800 mips: declance: Driver model for the PMAD-A This is a set of changes that converts the PMAD-A support to the driver model. Signed-off-by: Maciej W. Rozycki Cc: Ralf Baechle Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit d9a9720eab7437aa7f34dcbb92bb4bc8cc36bba9 Author: Linas Vepstas Date: Mon Feb 5 16:29:43 2007 -0800 Spidernet: Rework RX linked list Make the hardware perceive the RX descriptor ring as a null-terminated linked list, instead of a circular ring. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 64358164f5bfe5e11d4040c1eb674c29e1436ce5 Author: Greg Kroah-Hartman Date: Thu Jan 25 16:15:24 2007 -0800 USB: remove duplicate device id from zc0301 As pointed out by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit ab6c41a498cd76085ce45ec407f5fe25968058a6 Author: Greg Kroah-Hartman Date: Thu Jan 25 16:15:24 2007 -0800 USB: remove duplicate device id from usb_storage As pointed out by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 33c6b7e99fb043b7ae7d3deafb552a179a29b489 Author: Greg Kroah-Hartman Date: Thu Jan 25 16:15:24 2007 -0800 USB: remove duplicate device id from keyspan As pointed out by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 210b1975795d4661127144365a889a7a4f2cf1fa Author: Greg Kroah-Hartman Date: Thu Jan 25 16:15:24 2007 -0800 USB: remove duplicate device id from ftdi_sio As pointed out by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 9da88d78bcb5610a4bb9e0e10dfb31cc9b4fdb1b Author: Greg Kroah-Hartman Date: Thu Jan 25 16:15:24 2007 -0800 USB: remove duplicate device id from visor As pointed out by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 1a68f71d4fe71426a5c9703591e068241c03f896 Author: Oliver Neukum Date: Thu Jan 25 11:17:41 2007 +0100 USB: a bit more coding style cleanup I was sitting in a train threatened to be blocked by ice. I took this as a hint to do some more boring work for the common good. Here's a bit more for coding style. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 9251644ab33579d80c038b077f78daa23a04fdcd Author: Oliver Neukum Date: Tue Jan 23 15:55:28 2007 -0500 usbcore: trivial whitespace fixes This patch (as844) makes some trivial whitespace fixes to a few files in usbcore. Oliver did most of the work and Alan added some tidying up. Signed-off-by: Oliver Neukum Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1096f780d0b9d6bade2d42bf823e81db3e553abe Author: Alan Stern Date: Mon Jan 22 11:58:34 2007 -0500 usb-storage: use first bulk endpoints, not last According to the Bulk-Only spec, usb-storage is supposed to use the _first_ bulk-in and bulk-out endpoints it finds, not the _last_. And while we're at it, we ought to test the direction of the interrupt endpoint as well. This patch (as842) makes both changes. Signed-off-by: Alan Stern Cc: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit 629e4427aa817d5c9f11885420abf54b8f5967dc Author: Alan Stern Date: Mon Jan 22 16:08:53 2007 -0500 EHCI: fix interrupt-driven remote wakeup Now that port status change notifications are interrupt-driven, ehci-hcd needs to tell usbcore when a remote-wakeup resume operation is finished -- we can no longer rely on the core to poll and find out. This patch (as843) uses the root-hub status timer to force a poll after the resume is complete. The patch also changes the test for detecting when the TDRSMDN resume period has expired. It's necessary to use time_after_eq() instead of time_after(), since the polling is triggered precisely by a timer. The same change is made for TDRSTR reset expiration, for consistency. Signed-off-by: Alan Stern Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit 1d619f128ba911cd3e6d6ad3475f146eb92f5c27 Author: Marcelo Tosatti Date: Sun Jan 21 19:45:59 2007 -0200 USB: switch ehci-hcd to new polling scheme Switch ehci-hcd to use the new polling scheme, which reports root hub status changes via the interrupt handler, in an asynchronous fashion. Doing so disables polling for status changes (whose handler is rh_timer_func). Tested on a Geode GX machine, which is now capable of running at =~ 5 timer interrupts per second (in the -rt tree), resulting in significant power savings. Signed-off-by: Marcelo Tosatti Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit d0532184086906889f4a0cd92eade1f7be49fbac Author: Oliver Neukum Date: Thu Jan 18 15:06:07 2007 +0100 USB: autosuspend for usb printer driver this implements autosuspend for usb printers. It compiles and is tested. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit a19ceb56cbd1e1beff3e9cf6042e1f31f6487aa6 Author: Jeremy Roberson Date: Thu Jan 18 08:10:25 2007 -0700 USB Input: Added kernel module to support all GTCO CalComp USB InterWrite School products Added a kernel module (gtco) to the USB Input subsystem. This kernel module adds support for all GTCO CalComp USB InterWrite School products. Signed-off-by: Jeremy A. Roberson Signed-off-by: Greg Kroah-Hartman commit e43062dd208594caa94536b8ba4b762d4a16330d Author: Kevin Lloyd Date: Wed Jan 17 16:04:18 2007 -0800 USB: Sierra Wireless auto set D0 This patch ensures that the device is turned on when inserted into the system. It also adds more VID/PIDs and matches the N_OUT_URB with the airprime driver. Signed-off-by: Kevin Lloyd Signed-off-by: Greg Kroah-Hartman commit ef3ff462a31987629c4d0488550fbbb66fbfcc35 Author: Håvard Skinnemoen Date: Mon Feb 27 18:15:04 2006 +0100 USB: usb ethernet gadget recognizes HUSB2DEV Define DEV_CONFIG_CDC when compiling for HUSB2DEV. From: Håvard Skinnemoen Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 1f5b9cc9e4cf5847e7550c4079cebb80170e71dd Author: Håvard Skinnemoen Date: Wed Jan 17 11:03:29 2007 -0800 USB: list atmel husb2_udc gadget controller This identifies the driver for the Atmel HUSB2 Device Controller, as integrated into the first AVR32 chip, the AT32AP700. From: Håvard Skinnemoen Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 49631ca7f3e2fd05186028b453fa27f75b830de7 Author: Alan Stern Date: Tue Jan 16 23:28:48 2007 -0800 USB: gadgetfs AIO tweaks This patch (as837) fixes several mistakes in the AIO interface of the gadgetfs driver: The ki_retry method is not supposed to do a put on the kiocb. The extra call to aio_put_req() causes memory corruption. (Note: This call was removed before, by patch as691, and then mysteriously re-introduced later.) Even if a read transfer is cancelled, we can and should send to the user all the data that did manage to get transferred. Testing for AIO cancellation in the I/O completion handler is both racy and (now) unnecessary. aio_complete() does its own checking, in a safe manner. Signed-off-by: Alan Stern Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit ce46794f77f698eaf3b80922fafac5a9379085e0 Author: David Brownell Date: Tue Jan 16 23:06:07 2007 -0800 USB: gadgetfs behaves better on userspace init bug Resolve an initizlization issue that could come up if the userspace driver wrote invalid descriptors to a dual-speed device. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 5b89db02a5a7c8bad3c6fb7888778082a441b385 Author: David Brownell Date: Tue Jan 16 22:56:26 2007 -0800 USB: gadgetfs race fix This resolves a race in gadgetfs associated with changing device/ep0 when processing control requests. The fix is to change that state earlier, when the control response is issued, so there's no window in which userspace could see the wrong state; and enlarge the scope of the spinlock during the ep0 request completion handler. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 0864c7a9286b02319d3db2103bada1c2269c1e1e Author: David Brownell Date: Tue Jan 16 22:53:58 2007 -0800 USB: gadgetfs simplifications This simplifies event reading by eliminating arithmetic and being more direct/obvious, and tweaks some debug messages slightly. The math elimination will change timings, sometimes enough to allow a race to appear. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 7489d14943181731ef8694e2ea2d5a919b93b956 Author: David Brownell Date: Tue Jan 16 22:51:04 2007 -0800 USB: gadgetfs cleanups Minor gadgetfs cleanups: - EP0 state constants become consistently STATE_DEV_* rather than sometimes omitting the "DEV_"; STATE_EP_* were already consistent. - Comment that ep0 state is protected by the spinlock, and update code that was neglecting that rule. None of this is expected to change behavior. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 3ff4fd94c86259e44d58946af34231a1586b5d93 Author: Oliver Neukum Date: Sat Jan 13 07:32:27 2007 +0100 USB: race fixes for usb-serial, step 3 - fix an error code returned if a device has been disconnected Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 4b10f0f3a0d4caa8b615cd1f770a70912967a3cd Author: Oliver Neukum Date: Sat Jan 13 07:31:27 2007 +0100 USB: race fixes for usb-serial, step 2 - take BKL before looking up a driver to associate with a device to make sure the module is not unloaded after looking up but before association & bumping module count Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 34ef50e5b1f96c2d8c0f3d28b7d407743806256c Author: Oliver Neukum Date: Sat Jan 13 07:29:26 2007 +0100 USB: race fixes for usb-serial step 1 - introduce a spinlock for serial_table to eliminate the window between looking up a device and getting a reference - delay inscription of a new device into serial_table until it is fully initialised - make sure disconnect() kills all URBs to avoid leckage across a soft unbind Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit fdcba53e2d58272bcdb5f1fad694602ccf02ad46 Author: Rainer Weikusat Date: Wed Jan 3 15:36:25 2007 +0100 fix for bugzilla #7544 (keyspan USB-to-serial converter) At least the Keyspan USA-19HS USB-to-serial converter supports two different configurations, one where the input endpoints have interrupt transfer type and one where they are bulk endpoints. The default UHCI configuration uses the interrupt input endpoints. The keyspan driver, OTOH, assumes that the device has only bulk endpoints (all URBs are initialized by calling usb_fill_bulk_urb in keyspan.c/ keyspan_setup_urb). This causes the interval field of the input URBs to have a value of zero instead of one, which 'accidentally' worked with Linux at least up to 2.6.17.11 but stopped to with 2.6.18, which changed the UHCI support code handling URBs for interrupt endpoints. The patch below modifies to driver to initialize its input URBs either as interrupt or as bulk URBs, depending on the transfertype contained in the associated endpoint descriptor (only tested with the default configuration) enabling the driver to again receive data from the serial converter. Greg K-H reworked the patch. Signed-off-by: Rainer Weikusat Signed-off-by: Greg Kroah-Hartman commit 3ede760f0e46317c6716ead8facff88f6a924a49 Author: Oliver Neukum Date: Thu Jan 11 14:35:50 2007 +0100 USB: total removal of multithreaded probing in usb The whole approach is simply wrong. Forking a thread means that - errors are ignored - locking is ignored Doing this correctly would require major surgery for questionable benefit. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 66e56ce75e39210415fb12ceacd5f3580ad72d50 Author: David Brownell Date: Tue Jan 16 12:46:39 2007 -0800 USB: at91_udc wakeup event updates This updates the AT91 UDC driver's handling of wakeup events: - Fix a bug in the original scheme, which was never updated after the {enable,disable}_irq_wake() semantics were updated to address refcounting issues (i.e. behave for shared irqs). - Couple handling of both type of wakeup events, to be more direct. The controller can be source of wakeup events for cases like bus reset and USB resume. On some boards, VBUS sensing is also IRQ driven. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 57e06c11372eccf5acebdd4664eb025fee76c561 Author: Alan Stern Date: Tue Jan 16 11:59:45 2007 -0500 EHCI: force high-speed devices to run at full speed This patch (as710) adds a sysfs class-device attribute file named "companion" for EHCI controllers. The file contains a list of port numbers that are dedicated to the companion controller; by writing a port number to the file the user can force a high-speed device attached directly to the computer to run at full speed. (As far as I know it is not possible to do this for a device attached to an external hub.) A port is removed from the file by writing the negative of its port number. Several users have asked for this facility and it seems like a useful thing to have. Every now and then one runs across a device which behaves much better at full speed than at high speed. Signed-off-by: Alan Stern Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit 625b5c9a0069ef1b61feb3ce599b39f1b04b5666 Author: Alan Stern Date: Tue Jan 16 11:58:47 2007 -0500 EHCI: don't hide ports owned by the companion This patch (as709) changes the way ehci-hcd presents port status values for ports owned by the companion controller. It no longer hides the information; in particular, it allows the core to see the disconnect event that occurs when a full- or low-speed device is switched over to the companion. This is required for the next patch in this series. Signed-off-by: Alan Stern Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit e6316565e568b3b5733be10cfca3c27259bef499 Author: Alan Stern Date: Tue Jan 16 11:58:00 2007 -0500 EHCI: local variable for port status register This patch (as708) introduces a local variable to hold the port status-register address in ehci-hub.c. There's not much improvement in the object code, but it sure is a lot easier to read. Signed-off-by: Alan Stern Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit 896fbd7199035958013d106329843d8ae9618753 Author: Alan Stern Date: Tue Jan 16 11:57:13 2007 -0500 usbcore: remove unused bandwith-related code This patch (as841) removes from usbcore a couple of support routines meant to help with bandwidth allocation. With the changes to uhci-hcd in the previous patch, these routines are no longer used anywhere. Also removed is the CONFIG_USB_BANDWIDTH option; it no longer does anything and is no longer needed since the HCDs now handle bandwidth issues correctly. Signed-off-by: Alan Stern Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 3ca2a3211ee5078d49b04fe7149ff2a76473be51 Author: Alan Stern Date: Tue Jan 16 11:56:32 2007 -0500 UHCI: fix bandwidth allocation This patch (as840) fixes the bandwidth allocation mechanism in uhci-hcd. It has never worked correctly. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 6a6c957eba20814456bc4bffbd4ec42406f9eb02 Author: Geoff Levand Date: Mon Jan 15 20:12:10 2007 -0800 USB: ps3 ohci bus glue USB OHCI driver bus glue for the PS3 game console. Signed-off-by: Geoff Levand Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit de44743b033942731f6b898c2d389f7ee5ac890b Author: Benjamin Herrenschmidt Date: Mon Jan 15 20:12:06 2007 -0800 USB: ohci error handling cleanup Restructure the ohci_hcd_mod_init error handling code in to better support the multiple platform drivers. This does not change the functionality. Signed-off-by: Benjamin Herrenschmidt Cc: David Brownell Signed-off-by: Geoff Levand Signed-off-by: Greg Kroah-Hartman commit 4a1a4d8b87389e35c3af04c0d0a95f6a0391b964 Author: Geoff Levand Date: Mon Jan 15 20:11:52 2007 -0800 USB: ps3 controller hid quirk Add the USB HID quirk HID_QUIRK_SONY_PS3_CONTROLLER. This sends an HID_REQ_GET_REPORT to the the PS3 controller to put the device into 'operational mode'. Signed-off-by: Geoff Levand Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit ad75a41085d80c8ce5e885962c15779935f8267e Author: Geoff Levand Date: Mon Jan 15 20:11:47 2007 -0800 USB: ps3 ehci bus glue USB EHCI driver bus glue for the PS3 game console. Signed-off-by: Geoff Levand Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit b3ebd5222141efa489d95592b7d4536766530e56 Author: Oliver Neukum Date: Tue Jan 16 12:01:26 2007 +0100 USB: better ethtool support for kaweth this implements enough ethtool support to make NetworkManager happy. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit b98b98f97c519894c64bf1bee6b7957e687dfc41 Author: Oliver Neukum Date: Tue Jan 16 09:47:12 2007 +0100 USB: power management for kaweth - implements suspend when the network interface is down - fixes a typo in comments - adds debugging output for power management - fixes a compiler warning Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 511779fd9eb7ed67116e4a1cad802363d2d58b20 Author: Phil Endecott Date: Mon Jan 15 11:35:01 2007 -0800 usb: gadgetfs remove delayed init mode Gadgetfs had a mode in which endpoint descriptors were written by the user program before connection. This mode had some bugs, and hasn't seen much (if any) use. This patch removes that mode, leaving the mode of operation where the user program waits for endpoint 0 to report a SET_CONFIGURATION, and only then configures the endpoints. From: "Phil Endecott" Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 2505107def8b300576223367e3b603620d825e52 Author: David Brownell Date: Mon Jan 15 11:30:28 2007 -0800 usb: gadgetfs whitespace cleanup Remove some whitespace bugs in gadgetfs (mostly from someone's patch updating the AIO support). Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 6dde896e4eac122f388263f0097b691acdc0396f Author: Marc Pignat Date: Tue Jan 9 14:00:11 2007 -0800 USB: ohci-at91 refcount fix for irq wake enables The attached patch fixes the unbalanced calls to enable_irq_wake() and disable_irq_wake() in the AT91 USB Host driver. It should resolve these kernel messages: Unbalanced IRQ x wake disable BUG: warning at kernel/irq/manage.c:167/set_irq_wake() (The original code was debugged before a bug in the genirq wakeup irq logic was fixed by adding the IRQ wake enable/disable refcounting. Not all code yet uses the bugfixed model.) Signed-off-by: Andrew Victor Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit f3f4906516a084bbd9aa3da7592e6b029fe78f5b Author: Alan Stern Date: Mon Jan 8 16:18:05 2007 -0500 usb-storage: SCSI level fixes This patch (as835) removes from usb-storage the code which sets all devices to a SCSI level of at least SCSI-2. The original reasons for doing this no longer apply, and in fact it prevents certain kinds of ATA pass-thru commands from being used. The patch also marks CB and CBI devices that are SCSI-0 (legacy SCSI) as being single-LUN, since the combined SCSI-over-USB transport protocol has no way to convey LUN information to these devices. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit 85a975d0ce48dfa8dec5bf1bd970f8fd2c48af32 Author: Alan Stern Date: Mon Jan 8 12:01:43 2007 -0500 UHCI: no dummy TDs for Iso QHs Isochronous queues don't need a dummy TD because the Queue Header isn't managed by the hardware. This patch (as836) removes the unnecessary dummy TDs. The patch also fixes a long-standing typo in a comment (a "don't" was missing -- potentially very confusing!). Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit f3fe239b67424d88104e32076aec902c0642925f Author: Alan Stern Date: Mon Jan 8 12:00:28 2007 -0500 UHCI: improved debugging checks for the frame list This patch (as768) improves the debugging checks for the uhci-hcd frame list. The number of entries displayed is limited to 10, and the driver now checks for the correct Skeleton QH link value at the end of each chain of Isochronous TDs. The code to compute these link values is now used in two spots, so it is moved into its own separate subroutine. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit f38649fee955c19f4df9b9e7267f87702712d973 Author: Oliver Neukum Date: Fri Jan 5 17:42:35 2007 +0100 USB: race on disconnect in mdc800 I overlooked one. Setting the flag and killing the URBs must be under the lock so that no URB is submitted after usb_kill_urb() Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 6f23ee1fefdc1f80bd8a3ab04a1c41ab2dec14c9 Author: Pete Zaitcev Date: Sat Dec 30 22:43:10 2006 -0800 USB: add binary API to usbmon This patch adds a new, "binary" API in addition to the old, text API usbmon had before. The new API allows for less CPU use, and it allows to capture all data from a packet where old API only captured 32 bytes at most. There are some limitations and conditions to this, e.g. in case someone constructs a URB with 1GB of data, it's not likely to be captured, because even the huge buffers of the new reader are finite. Nonetheless, I expect this new capability to capture all data for all real life scenarios. The downside is, a special user mode application is required where cat(1) worked before. I have sample code at http://people.redhat.com/zaitcev/linux/ and Paolo Abeni is working on patching libpcap. This patch was initially written by Paolo and later I tweaked it, and we had a little back-and-forth. So this is a jointly authored patch, but I am submitting this I am responsible for the bugs. Signed-off-by: Paolo Abeni Signed-off-by: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman commit a8ef36bc0a5fe973bddaa54a5a07cda29e04a602 Author: Sarah Bailey Date: Sat Dec 23 23:14:58 2006 -0800 USB: Add usb_endpoint_xfer_control to usb.h Added a function to check if an endpoint is a control endpoint. There were similar functions for bulk, interrupt, and isoc, but not for control endpoints. Signed-off-by: Sarah Bailey Signed-off-by: Greg Kroah-Hartman commit 7ca46b862f0e30fe0dcc4a4aef5b32f6b6a3fda5 Author: John Daiker Date: Fri Dec 29 19:02:06 2006 -0800 USB Gadget file_storage.c: remove unnecessary casts Went looking through some usb stuff and found some unnecessary casts in file_storage.c This is part of the KernelJanitors TODO list. Signed-off-by: John Daiker Acked-by: Alan Stern Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 52d67f0b5c1b1827cd842020d40bdde4f7d04f59 Author: Johannes Hölzl Date: Sun Dec 17 22:05:09 2006 +0100 USB: Bugfix for aircable: Add module and name to usb_serial_driver While adding the dynamic-id support to usb serial I found a small bug in the air cable driver: Adds module and name information to the usb_serial_driver instance of aircable. So the aircable driver is correctly shown under /sys/bus/usb-serial/drivers/aircable and has the module link. Signed-off-by: Johannes Hölzl Signed-off-by: Greg Kroah-Hartman commit d9b1b787736852f462dbf277b3ca708cbbf693ae Author: Johannes Hölzl Date: Sun Dec 17 21:50:24 2006 +0100 USB serial: add driver pointer to all usb-serial drivers Every usb serial driver should have a pointer to the corresponding usb driver. So the usb serial core can add a new id not only to the usb serial driver, but also to the usb driver. Also the usb drivers of ark3116, mos7720 and mos7840 missed the flag no_dynamic_id=1. This is added now. Signed-off-by: Johannes Hölzl Signed-off-by: Greg Kroah-Hartman commit 93bacefc4cc0b53e1cb6a336d43847154fdf6886 Author: Greg Kroah-Hartman Date: Sun Dec 17 21:50:23 2006 +0100 USB serial: add dynamic id support to usb-serial core Thanks to Johannes Hölzl for fixing a few things and getting it all working properly. This adds support for dynamic usb ids to the usb serial core. The file "new_id" will show up under the usb serial driver, not the usb driver associated with the usb-serial driver (yeah, it can be a bit confusing at first glance...) This patch also modifies the USB core to allow the usb-serial core to reuse much of the dynamic id logic. Signed-off-by: Greg Kroah-Hartman Signed-off-by: Johannes Hölzl commit 495a678fc62e850d15f860d39faee07ba0a8910c Author: Sylvain Munaut Date: Wed Dec 13 21:09:55 2006 +0100 ohci: Add support for OHCI controller on the of_platform bus PPC embedded systems can have a ohci controller builtin. In the new model, it will end up as a driver on the of_platform bus, this patches takes care of them. Signed-off-by: Sylvain Munaut Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 5e16fabe5dbcff15de6cdcba406195fe6e4380df Author: Sylvain Munaut Date: Wed Dec 13 21:09:54 2006 +0100 ohci: Rework bus glue integration to allow several at once The previous model had the module_init & module_exit function in the bus glue .c files themselves. That's a problem if several glues need to be selected at once and the driver is built has module. This case is quite common in embedded system where you want to handle both the integrated ohci controller and some extra controller on PCI. The ohci-hcd.c file now provide the module_init & module_exit and appropriate driver registering/unregistering is done conditionally, using #ifdefs. Signed-off-by: Sylvain Munaut Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit ad55d71a3d4401f44b4ddee1412283c99eedd05c Author: Ole Andre Vadla Ravnas Date: Thu Dec 14 16:01:28 2006 -0800 rndis_host learns ActiveSync basics Windows Mobile 5 based devices described as supporting "ActiveSync": - Speak RNDIS but lack the CDC and union descriptors. This patch updates the cdc ethernet code to fake ACM descriptors we need. - Require RNDIS_MSG_QUERY messages to include a buffer of the size the response should generate. This patch updates the rndis host code to pass this will-be-ignored data. The resulting RNDIS host code has been reported to work with several WM5 based devices. (Note that a fancier patch is available at synce.sf.net.) Some bugfixes, affecting not just ActiveSync: (a) when cleaning up after RNDS init fails, scrub the second interface just like cdc_ether does, so disconnect won't oops. (b) handle peripherals that use the pad-to-end-of-packet option; some devices can't talk to us if that option doesn't work. (c) when choosing configurations, don't forget about an RNDIS config just because the RNDIS driver is dynamically linked. Cleanup, streamlining, bugfixes, Kconfig, and matching hub driver update. Also for paranoia's sake, refuse to talk to something that looks like a real modem instead of RNDIS. Signed-off-by: Ole Andre Vadla Ravnaas Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 11d5489873facd395653a4ee14669751bfe9bab5 Author: David Brownell Date: Mon Dec 11 15:59:04 2006 -0800 USB: ethernet gadget interop with MCCI Windows driver It turns out that minor tweaks to the "CDC Subset" support in the Ethernet gadget driver, just updating a config descriptor, let it be automagically recognized by a Windows driver supported by MCCI. This patch adds those descriptors, so systems using PXA 255 processors (like Gumstix etc) can interop with those commercial MS-Windows drivers. This is a Good Thing since Microsoft's RNDIS code has bugginess issues, which are unfortunately compounded by "won't fix" issues as well as "the published specs are incomplete and wrong" issues. Being able to talk to the MCCI driver gives Windows users another connectivity option. (MCCI also has CDC Ethernet drivers, which can help most non-PXA processors.) Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 1737bf2c5e78e331ad0a30b8c34edd1016d043c0 Author: Alan Stern Date: Fri Dec 15 16:04:52 2006 -0500 usbcore: remove unneeded error check This patch (as830) removes some unnecessary error checking. According to the kerneldoc, schedule_work() can't fail. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 2360e4aa64da412c29136113f8050b6aa9e757b8 Author: David Brownell Date: Wed Dec 13 13:07:10 2006 -0800 USB: indicate active altsetting in proc/bus/usb/devices file Update /proc/bus/usb/devices output to report active altsettings. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 316547fdfae1be3847add6a18a711703e6d5ebc1 Author: Dan Carpenter Date: Wed Dec 13 00:03:38 2006 -0800 USB: devio.c add missing INIT_LIST_HEAD() It should hopefully fix the list corruption bug on: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=214402 Add a missing INIT_LIST_HEAD() Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit 2cba72f02559ec0bbbcdba8d2604517515b55f03 Author: Oliver Neukum Date: Fri Dec 15 23:48:56 2006 +0100 USB: mutexification of rio500 this makes the rio500 misc usb driver use mutexes and turns uninterruptible sleep into interruptible sleep where the semantics are not affected. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 4727810705d3cf8d565a2cd6c1045bc1db7d3532 Author: Tobias Klauser Date: Wed Dec 20 11:42:12 2006 +0100 USB: Remove unneeded void * casts in idmouse.c The patch removes unneeded void * casts for the following (void *) pointers: - struct file: private_data The patch also contains some whitespace and coding style cleanups in the relevant areas. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit e7d8712c15e087ba6201e5988d618ee03dfe693c Author: David Brownell Date: Tue Dec 12 15:12:30 2006 -0800 USB: define USB_CLASS_MISC in Add USB_CLASS_MISC to Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 5f848137744106ee737f559454ce5adfceb38347 Author: David Brownell Date: Sat Dec 16 15:34:53 2006 -0800 USB: becomes This moves to to reduce some of the clutter of usb header files. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit d728e327d4f86df439fa6b6f2f64b278394a58cc Author: Benjamin Herrenschmidt Date: Thu Dec 28 15:27:27 2006 +1100 USB: Fix EHCI warning This patch fixes a warning introduced by the big endian MMIO EHCI support patch on platforms that don't have readl_be/writel_be variants (though mostly harmless as those are called in an if (0) statement, but gcc still warns). Signed-off-by: Benjamin Herrenschmidt commit b32e904d54d163c6f97fc3c7586d381f4f11c3a5 Author: Benjamin Herrenschmidt Date: Thu Dec 28 15:26:59 2006 +1100 USB: Fix OHCI warning This patch fixes a warning introduces by the split endian OHCI support patch on platforms that don't have readl_be/writel_be variants (though mostly harmless as those are called in an if (0) statement, but gcc still warns). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Greg Kroah-Hartman commit 083522d76662cda71328df1f3d75e5a9057c7c9f Author: Benjamin Herrenschmidt Date: Fri Dec 15 06:54:08 2006 +1100 USB: Implement support for EHCI with big endian MMIO This patch implements supports for EHCI controllers whose MMIO registers are big endian and enables that functionality for the Toshiba SCC chip. It does _not_ add support for big endian in-memory data structures as this is not needed for that chip and I hope it will never be. The guts of the patch are to convert readl(...) to ehci_readl(ehci, ...) and similarly for register writes. Signed-off-by: Kou Ishizaki Signed-off-by: Benjamin Herrenschmidt Acked-by: Geoff Levand Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 11d1a4aa8d657478cb2e5d33f203ba8f01b9ac24 Author: Benjamin Herrenschmidt Date: Fri Dec 15 06:54:03 2006 +1100 USB: Implement support for "split" endian OHCI This patch separates support for big endian MMIO register access and big endian descriptors in order to support the Toshiba SCC implementation which has big endian registers but little endian in-memory descriptors. It simplifies the access functions a bit in ohci.h while at it. Signed-off-by: Benjamin Herrenschmidt Acked-by: David Brownell Acked-by: Geoff Levand Signed-off-by: Greg Kroah-Hartman commit 4302a595cd9c6363b495460497ecbda49fa16858 Author: Benjamin Herrenschmidt Date: Fri Dec 15 06:53:55 2006 +1100 USB: Rework the OHCI quirk mecanism as suggested by David This patch applies David Brownell's suggestion for reworking the OHCI quirk mechanism via a table of PCI IDs. It adapts the existing quirks to use that mechanism. This also moves the quirks to reset() as suggested by the comment in there. This is necessary as we need to have the endian properly set before we try to init the controller. Signed-off-by: Benjamin Herrenschmidt Acked-by: David Brownell Acked-by: Geoff Levand Signed-off-by: Greg Kroah-Hartman commit 0873c76485c126a4df70a6961fd354b21b7987f7 Author: Greg Kroah-Hartman Date: Tue Jun 20 13:09:50 2006 -0700 USB: convert usb class devices to real devices Signed-off-by: Greg Kroah-Hartman commit 7bc3d635628db100c024aca7f836a18188e9bb62 Author: Greg Kroah-Hartman Date: Mon Jun 19 23:59:31 2006 -0700 USB: move usb_device_class class devices to be real devices This moves the usb class devices that control the usbfs nodes to show up in the proper place in the larger device tree. Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 6e8cf7751f9fb913095d6142d068f41fbf0424bb Author: Greg Kroah-Hartman Date: Thu Jan 18 00:20:19 2007 -0800 USB: add EPIC support to the io_edgeport driver This patch adds EPiC support to the io_edgeport driver which adds support for a number of NCR printers: - NCR (Axiohm) 7401-K580 printer - NCR (TEC) 7401-K590 printer, 7402-K592 - NCR (TEC) 7167, 7168 printers - NCR (TEC) 7197, 7198, F306, F307, F309 printers - NCR (Axiohm) 7194 printer - NCR (Axiohm) 7158 printer and a few more. It is based on the 2.6.19 kernel. Signed-off-by: Greg Kroah-Hartman commit 20b2e28fc5557cda2cc840f44c6744b61b068ad6 Author: Luiz Fernando N. Capitulino Date: Wed Jan 24 16:19:37 2007 -0200 USB: unusual_devs.h for Sony floppy This patch increases the range for 0x054c:0x002c devices to make the following Sony USB floppy to work: T: Bus=02 Lev=01 Prnt=01 Port=02 Cnt=02 Dev#= 6 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=054c ProdID=002c Rev=20.00 S: Manufacturer=SONY S: Product=USB Floppy C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA I: If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=04 Prot=00 Driver=usb-storage E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=83(I) Atr=03(Int.) MxPS= 2 Ivl=127ms Signed-off-by: Marcelo Ricardo Leitner Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 21d37bbc65e39a26856de6b14be371ff24e0d03f Merge: bff288c... 57e1c5c... Author: Linus Torvalds Date: Wed Feb 7 15:36:08 2007 -0800 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (140 commits) ACPICA: reduce table header messages to fit within 80 columns asus-laptop: merge with ACPICA table update ACPI: bay: Convert ACPI Bay driver to be compatible with sysfs update. ACPI: bay: new driver is EXPERIMENTAL ACPI: bay: make drive_bays static ACPI: bay: make bay a platform driver ACPI: bay: remove prototype procfs code ACPI: bay: delete unused variable ACPI: bay: new driver adding removable drive bay support ACPI: dock: check if parent is on dock ACPICA: fix gcc build warnings Altix: Add ACPI SSDT PCI device support (hotplug) Altix: ACPI SSDT PCI device support ACPICA: reduce conflicts with Altix patch series ACPI_NUMA: fix HP IA64 simulator issue with extended memory domain ACPI: fix HP RX2600 IA64 boot ACPI: build fix for IBM x440 - CONFIG_X86_SUMMIT ACPICA: Update version to 20070126 ACPICA: Fix for incorrect parameter passed to AcpiTbDeleteTable during table load. ACPICA: Update copyright to 2007. ... commit bff288c19e8b6217ddd660d4fa42c29a0ab1d58c Author: Oleg Verych Date: Wed Feb 7 23:04:35 2007 +0100 [PATCH] kbuild, Kbuild.include: avoid using spaces in call arguments Do not use whitespace in arguments of functions in makefiles, as they propagate further without notice. Thus we get + echo ' y' instead of + echo y Fix misleading comments. Signed-off-by: Oleg Verych Signed-off-by: Linus Torvalds commit b592fcfe7f06c15ec11774b5be7ce0de3aa86e73 Author: Eric W. Biederman Date: Wed Jan 24 12:35:52 2007 -0700 sysfs: Shadow directory support The problem. When implementing a network namespace I need to be able to have multiple network devices with the same name. Currently this is a problem for /sys/class/net/*. What I want is a separate /sys/class/net directory in sysfs for each network namespace, and I want to name each of them /sys/class/net. I looked and the VFS actually allows that. All that is needed is for /sys/class/net to implement a follow link method to redirect lookups to the real directory you want. Implementing a follow link method that is sensitive to the current network namespace turns out to be 3 lines of code so it looks like a clean approach. Modifying sysfs so it doesn't get in my was is a bit trickier. I am calling the concept of multiple directories all at the same path in the filesystem shadow directories. With the directory entry really at that location the shadow master. The following patch modifies sysfs so it can handle a directory structure slightly different from the kobject tree so I can implement the shadow directories for handling /sys/class/net/. Signed-off-by: Eric W. Biederman Cc: Maneesh Soni Signed-off-by: Greg Kroah-Hartman commit 2f65168de7d68a5795e945e781d85b313bdc97b9 Author: Dave Jones Date: Thu Jan 25 15:56:15 2007 -0500 Driver Core: Increase the default timeout value of the firmware subsystem https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=174589 The ipw driver sometimes takes a long time to load its firmware. Whilst the ipw driver should be using the async interface of the firmware loader to make this a non-issue, this is a minimal fix. Signed-off-by: Dave Jones Signed-off-by: Greg Kroah-Hartman commit b7a3e813fb84624166f034e25234f98de5846bfc Author: Kay Sievers Date: Sat Oct 7 21:54:55 2006 +0200 Driver core: allow to delay the uevent at device creation time For the block subsystem, we want to delay all uevents until the disk has been scanned and allpartitons are already created before the first event is sent out. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit f9f852df2faf76a2667949ddb4947d4b8f99f02f Author: Kay Sievers Date: Sat Oct 7 21:54:55 2006 +0200 Driver core: add device_type to struct device This allows us to add type specific attributes, uevent vars and release funtions. A subsystem can carry different types of devices like the "block" subsys has disks and partitions. Both types create a different set of attributes, but belong to the same subsystem. This corresponds to the low level objects: kobject -> device (object/device data) kobj_type -> device_type (type of object/device we are embedded in) kset -> class/bus (list of objects/devices of a subsystem) Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 239378f16aa1ab5c502e42a06359d2de4f88ebb4 Author: Kay Sievers Date: Sat Oct 7 21:54:55 2006 +0200 Driver core: add uevent vars for devices of a class Devices converted from class_device to device should have the same uevent keys as the original class_device had. We search up the parents until we find the first bus device and add the (already deprecated) PHYDEV* values. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit bf0acc330229554c695e4f95e5aa2d2c4f12de1f Author: Frank Haverkamp Date: Wed Jan 17 17:51:18 2007 +0100 SYSFS: Fix missing include of list.h in sysfs.h Sysfs.h uses definitions (e.g. struct list_head s_sibling) from list.h but does not include it. Signed-off-by: Frank Haverkamp Signed-off-by: Greg Kroah-Hartman commit 4de0ca8132861a4255d0a7a991bdfab38378267c Author: Robert P. J. Day Date: Wed Jan 17 04:54:07 2007 -0500 HOWTO: Add a reference to Harbison and Steele Add a reference to Harbison and Steele's C book. Signed-off-by: Robert P. J. Day Signed-off-by: Greg Kroah-Hartman commit 82244b169ed2eee1ef7f97a3a6693f5a6eff8a69 Author: Oliver Neukum Date: Tue Jan 2 08:48:08 2007 +0100 sysfs: error handling in sysfs, fill_read_buffer() if a driver returns an error in fill_read_buffer(), the buffer will be marked as filled. Subsequent reads will return eof. But there is no data because of an error, not because it has been read. Not marking the buffer filled is the obvious fix. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit b067db49e1f4013ef02ef68845701b600e88a722 Author: Mariusz Kozlowski Date: Tue Jan 2 13:44:44 2007 +0100 kobject: kobject_put cleanup This patch removes redundant argument checks for kobject_put(). Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit f75065367077bd3b77842a5aa523ecd05d33e82d Author: Mariusz Kozlowski Date: Tue Jan 2 13:41:10 2007 +0100 sysfs: kobject_put cleanup This patch removes redundant argument checks for kobject_put(). Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit d3fc373ac5061cab7a654502b942e7d00e77f733 Author: Frederik Deweerdt Date: Fri Jan 5 12:04:33 2007 -0800 sysfs: suppress lockdep warnings Lockdep issues the following warning: [ 9.064000] ============================================= [ 9.064000] [ INFO: possible recursive locking detected ] [ 9.064000] 2.6.20-rc3-mm1 #3 [ 9.064000] --------------------------------------------- [ 9.064000] init/1 is trying to acquire lock: [ 9.064000] (&sysfs_inode_imutex_key){--..}, at: [] mutex_lock+0x1c/0x1f [ 9.064000] [ 9.064000] but task is already holding lock: [ 9.064000] (&sysfs_inode_imutex_key){--..}, at: [] mutex_lock+0x1c/0x1f [ 9.065000] [ 9.065000] other info that might help us debug this: [ 9.065000] 2 locks held by init/1: [ 9.065000] #0: (tty_mutex){--..}, at: [] mutex_lock+0x1c/0x1f [ 9.065000] #1: (&sysfs_inode_imutex_key){--..}, at: [] mutex_lock+0x1c/0x1f [ 9.065000] [ 9.065000] stack backtrace: [ 9.065000] [] show_trace_log_lvl+0x1a/0x30 [ 9.066000] [] show_trace+0x12/0x14 [ 9.066000] [] dump_stack+0x16/0x18 [ 9.066000] [] print_deadlock_bug+0xb9/0xc3 [ 9.066000] [] check_deadlock+0x55/0x5a [ 9.066000] [] __lock_acquire+0x371/0xbf0 [ 9.066000] [] lock_acquire+0x69/0x83 [ 9.066000] [] __mutex_lock_slowpath+0x75/0x2d1 [ 9.066000] [] mutex_lock+0x1c/0x1f [ 9.066000] [] sysfs_drop_dentry+0xb1/0x133 [ 9.066000] [] sysfs_hash_and_remove+0xb3/0x142 [ 9.066000] [] sysfs_remove_file+0xd/0x10 [ 9.067000] [] device_remove_file+0x23/0x2e [ 9.067000] [] device_del+0x188/0x1e6 [ 9.067000] [] device_unregister+0xb/0x15 [ 9.067000] [] device_destroy+0x9c/0xa9 [ 9.067000] [] vcs_remove_sysfs+0x1c/0x3b [ 9.067000] [] con_close+0x5e/0x6b [ 9.067000] [] release_dev+0x4c4/0x6e5 [ 9.067000] [] tty_release+0x12/0x1c [ 9.067000] [] __fput+0x177/0x1a0 [ 9.067000] [] fput+0x3b/0x41 [ 9.068000] [] filp_close+0x36/0x65 [ 9.068000] [] sys_close+0x63/0xa4 [ 9.068000] [] sysenter_past_esp+0x5f/0x99 [ 9.068000] ======================= This is due to sysfs_hash_and_remove() holding dir->d_inode->i_mutex before calling sysfs_drop_dentry() which calls orphan_all_buffers() which in turn takes node->i_mutex. Signed-off-by: Frederik Deweerdt Cc: Oliver Neukum Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 94bebf4d1b8e7719f0f3944c037a21cfd99a4af7 Author: Oliver Neukum Date: Wed Dec 20 10:52:44 2006 +0100 Driver core: fix race in sysfs between sysfs_remove_file() and read()/write() This patch prevents a race between IO and removing a file from sysfs. It introduces a list of sysfs_buffers associated with a file at the inode. Upon removal of a file the list is walked and the buffers marked orphaned. IO to orphaned buffers fails with -ENODEV. The driver can safely free associated data structures or be unloaded. Signed-off-by: Oliver Neukum Acked-by: Maneesh Soni Signed-off-by: Greg Kroah-Hartman commit cb986b749c7178422bfbc982cd30e04d5db54bbc Author: Cornelia Huck Date: Mon Nov 27 10:35:12 2006 +0100 driver core: Change function call order in device_bind_driver(). Change function call order in device_bind_driver(). If we create symlinks (which might fail) before adding the device to the list we don't have to clean up afterwards (which we didn't). Signed-off-by: Cornelia Huck Signed-off-by: Greg Kroah-Hartman commit c578abbc20762aa58e390e55252959853eeea17e Author: Cornelia Huck Date: Mon Nov 27 10:35:10 2006 +0100 driver core: Don't stop probing on ->probe errors. Don't stop on the first ->probe error that is not -ENODEV/-ENXIO. There might be a driver registered returning an unresonable return code, and this stops probing completely even though it may make sense to try the next possible driver. At worst, we may end up with an unbound device. Signed-off-by: Cornelia Huck Signed-off-by: Greg Kroah-Hartman commit fbfb14455391b89edcf37327526988dea7849532 Author: Cornelia Huck Date: Mon Nov 27 10:35:08 2006 +0100 driver core fixes: device_register() retval check in platform.c Check the return value of device_register() in platform_bus_init(). Signed-off-by: Cornelia Huck Signed-off-by: Greg Kroah-Hartman commit cb360bbf6352712310a7528137919c626a782744 Author: Cornelia Huck Date: Mon Nov 27 10:35:05 2006 +0100 driver core fixes: make_class_name() retval checks Make make_class_name() return NULL on error and fixup callers in the driver core. Signed-off-by: Cornelia Huck Signed-off-by: Greg Kroah-Hartman commit 270a6c4cad809e92d7b81adde92d0b3d94eeb8ee Author: Kay Sievers Date: Thu Jan 18 13:26:15 2007 +0100 /sys/modules/*/holders /sys/module/usbcore/ |-- drivers | |-- usb:hub -> ../../../subsystem/usb/drivers/hub | |-- usb:usb -> ../../../subsystem/usb/drivers/usb | `-- usb:usbfs -> ../../../subsystem/usb/drivers/usbfs |-- holders | |-- ehci_hcd -> ../../../module/ehci_hcd | |-- uhci_hcd -> ../../../module/uhci_hcd | |-- usb_storage -> ../../../module/usb_storage | `-- usbhid -> ../../../module/usbhid |-- initstate Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 80f745fb1b0fb11383cbb8df2c36aaaa0399b6e6 Author: Greg Kroah-Hartman Date: Mon Jan 15 11:50:02 2007 -0800 USB: add the sysfs driver name to all modules This adds the module name to all USB drivers, if they are built into the kernel or not. It will show up in /sys/modules/MODULE_NAME/drivers/ Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 4b315627e6b894156e235ac905786e7d46aab2e6 Author: Greg Kroah-Hartman Date: Mon Jan 15 11:50:02 2007 -0800 SERIO: add the sysfs driver name to all modules This adds the module name to all SERIO drivers, if they are built into the kernel or not. It will show up in /sys/modules/MODULE_NAME/drivers/ Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 725522b5453dd680412f2b6463a988e4fd148757 Author: Greg Kroah-Hartman Date: Mon Jan 15 11:50:02 2007 -0800 PCI: add the sysfs driver name to all modules This adds the module name to all PCI drivers, if they are built into the kernel or not. It will show up in /sys/modules/MODULE_NAME/drivers/ It also fixes up the IDE core, which was calling __pci_register_driver() directly. Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit fe480a2675ed236af396597d9f05245c7bbd0149 Author: Greg Kroah-Hartman Date: Mon Jan 15 11:50:02 2007 -0800 Modules: only add drivers/ direcory if needed This changes the module core to only create the drivers/ directory if we are going to put something in it. Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit f30c53a873d0d227493197064b8886af2d57bbd6 Author: Kay Sievers Date: Mon Jan 15 20:22:02 2007 +0100 MODULES: add the module name for built in kernel drivers Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit c744aeae9d173a953b771a7ad5c872f91fa99dec Author: Cornelia Huck Date: Mon Jan 8 20:16:44 2007 +0100 driver core: Allow device_move(dev, NULL). If we allow NULL as the new parent in device_move(), we need to make sure that the device is placed into the same place as it would if it was newly registered: - Consider the device virtual tree. In order to be able to reuse code, setup_parent() has been tweaked a bit. - kobject_move() can fall back to the kset's kobject. - sysfs_move_dir() uses the sysfs root dir as fallback. Signed-off-by: Cornelia Huck Cc: Marcel Holtmann Signed-off-by: Greg Kroah-Hartman commit 717e48c29d9a58f4d31c1651bec364212da5f6b2 Author: Cornelia Huck Date: Mon Jan 8 20:16:41 2007 +0100 driver core: Remove device_is_registered() in device_move(). device_is_registered() will always be false for a device with no bus. Remove this check and trust the caller to know what they're doing. Signed-off-by: Cornelia Huck Cc: Marcel Holtmann Signed-off-by: Greg Kroah-Hartman commit 43cb76d91ee85f579a69d42bc8efc08bac560278 Author: Greg Kroah-Hartman Date: Tue Apr 9 12:14:34 2002 -0700 Network: convert network devices to use struct device instead of class_device This lets the network core have the ability to handle suspend/resume issues, if it wants to. Thanks to Frederik Deweerdt for the arm driver fixes. Signed-off-by: Greg Kroah-Hartman commit 2943ecf2ed32632473c06f1975db47a7aa98c10f Author: Greg Kroah-Hartman Date: Mon Jan 22 13:45:38 2007 -0800 Driver core: convert SPI code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Cc: Signed-off-by: Greg Kroah-Hartman commit 873733188a019acdb7fa253011cbdc0a8afd97f3 Author: Greg Kroah-Hartman Date: Tue Sep 12 17:00:10 2006 +0200 Driver core: convert pcmcia code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Cc: Signed-off-by: Greg Kroah-Hartman commit 31b9025aa0f89b392077db3f87458fd46bcc4f58 Author: Greg Kroah-Hartman Date: Thu Jan 18 12:23:51 2007 -0800 Kobject: make kobject apis more robust in handling NULL pointers It should be ok to pass in NULL for some kobject functions, so add error checking for all exported kobject functions to be more robust. Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 1e8f34f7d88c969a06229a786241839d49dd63e3 Author: Andrew Morton Date: Wed Feb 7 18:19:42 2007 +0100 ide-acpi support warning fix drivers/ide/ide-acpi.c: In function 'ide_acpi_get_timing': drivers/ide/ide-acpi.c:537: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'long unsigned int' Signed-off-by: Andrew Morton Signed-off-by: Hannes Reinecke Signed-off-by: Bartlomiej Zolnierkiewicz commit e3a59b4d9378522479609042836ae930305a67fe Author: Hannes Reinecke Date: Wed Feb 7 18:19:37 2007 +0100 ACPI support for IDE devices This patch implements ACPI integration for generic IDE devices. The ACPI spec mandates that some methods are called during suspend and resume. And consequently there most modern Laptops cannot resume properly without it. According to the spec, we should call '_GTM' (Get Timing) upon suspend to store the current IDE adapter settings. Upon resume we should call '_STM' (Set Timing) to initialize the adapter with the stored settings; afterwards '_GTF' (Get Taskfile) should be called which returns a buffer with some IDE initialisation commands. Those commands should be passed to the drive. There are two module params which control the behaviour of this patch: 'ide=noacpi' Do not call any ACPI methods (Disables any ACPI method calls) 'ide=acpigtf' Enable execution of _GTF methods upon resume. Has no effect if 'ide=noacpi' is set. 'ide=acpionboot' Enable execution of ACPI methods during boot. This might be required on some machines if 'ide=acpigtf' is selected as some machines modify the _GTF information depending on the drive identification passed down with _STM. Signed-off-by: Hannes Reinecke Signed-off-by: Bartlomiej Zolnierkiewicz commit 78281c5350029e3fa21758d6db9b45ffc7bf72a1 Author: Mark Lord Date: Wed Feb 7 18:19:32 2007 +0100 IDE Driver for Delkin/Lexar/etc.. cardbus CF adapter On Thursday 11 January 2007 23:17, Bartlomiej Zolnierkiewicz wrote: > > My working IDE tree (against Linus' tree) now resides here: > > http://kernel.org/pub/linux/kernel/people/bart/pata-2.6/patches/ Bart, here's a driver I've been keeping out-of-tree for the past couple of years. This is for the Delking/Lexar/ASKA/etc.. 32-bit cardbus IDE CompactFlash adapter card. It's probably way out of sync with the latest driver model (??), but it still builds/works. I'm not interested in doing much of a rewrite, other than for libata someday, as I no longer use the card myself. But lots of other people do seem to use it, so it might be nice to see it "in-tree". Signed-off-by: Mark Lord Signed-off-by: Bartlomiej Zolnierkiewicz commit 6788182602f6862688d9a14e6f527449696f65c6 Author: Bartlomiej Zolnierkiewicz Date: Wed Feb 7 18:19:26 2007 +0100 ide: it8213 IDE driver update (version 2) * set ATAPI/IORDY/TIME bits correctly in it8213_tuneproc() * fix UDMA/MWDMA/SWDMA masks in it8213_init_hwif() * in it8213_tune_chipset() SWDMA2 mode should be used instead of MWDMA0 * backport various fixes from piix/slc90e66 drivers: - in it8213_tuneproc() the highest possible PIO mode is PIO4 (not PIO5) - clear ATAPI/IORDY/TIME bits before setting them also for slave device - use ->speedproc in it8213_config_drive_for_dma() - don't try to tune PIO in config_chipset_for_pio() - simplify is_slave calculation in it8213_tuneproc() - misc cleanups * fix it8213_ratemask() and it8213_tuneproc() comments * simplify it8213_init_hwif() * remove init_chipset_it8213() * add missing Copyrights and update MODULE_AUTHOR() * CodingStyle cleanups * remove dead code v2: * PCI_DEVICE_ID_ITE_8213 is only defined in -mm kernels, so just use PCI Device ID (0x8213) directly * fix ->ultra_mask incorrectly changed to 0x3f in v1 version of the patch Signed-off-by: Bartlomiej Zolnierkiewicz commit 9c6712c0bcd2954fb4ca58d31f7316292a4b0945 Author: Jack Lee Date: Wed Feb 7 18:19:09 2007 +0100 ide: add it8213 IDE driver From: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit a534b68da0471dd9e4e3f7fc922faba74f8f4506 Author: Bartlomiej Zolnierkiewicz Date: Wed Feb 7 18:19:09 2007 +0100 tc86c001: add missing __init tag for tc86c001_ide_init() Signed-off-by: Bartlomiej Zolnierkiewicz commit ba59c4b84a064e3e9d72d98b56f92a5b2aa71c22 Author: Andrew Morton Date: Wed Feb 7 18:19:01 2007 +0100 tc86c001: mark init_chipset_tc86c001() with __devinit tag Signed-off-by: Andrew Morton Cc: Sergei Shtylyov Cc: Adrian Bunk Signed-off-by: Bartlomiej Zolnierkiewicz commit e8ab7f536f014e5d86ce6cf7860d5def6cc5f715 Author: Adrian Bunk Date: Wed Feb 7 18:18:52 2007 +0100 tc86c001: init_hwif_tc86c001() can be static Signed-off-by: Adrian Bunk Cc: Sergei Shtylyov Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 33dced2ea5ed03dda10e7f9f41f0910f32e02eaa Author: Sergei Shtylyov Date: Wed Feb 7 18:18:45 2007 +0100 ide: add Toshiba TC86C001 IDE driver (take 2) This is the driver for the Toshiba TC86C001 GOKU-S PCI IDE controller, completely reworked from the original brain-damaged Toshiba's 2.4 version. This single channel UltraDMA/66 controller is very simple in programming, yet Toshiba managed to plant many interesting bugs in it. The particularly nasty "limitation 5" (as they call the errata) caused me to abuse the IDE core in a possibly most interesting way so far. However, this is still better than the #ifdef mess in drivers/ide/ide-io.c that the original version included (well, it had much more mess)... Signed-off-by: Sergei Shtylyov Acked-by: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit d24ec426b3be3a011bc8568d53fea486b604a684 Author: Sergei Shtylyov Date: Wed Feb 7 18:18:39 2007 +0100 pdc202xx_new: remove check_in_drive_lists abomination Fold check_in_drive_lists() into quirkproc() handler in both PDC202xx drivers-- this function was never called with a list other than pdc_quirk_drives and was a bad example of code overall... Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 272103144ac1ff937ed22917e1de05da4d6943dd Author: Sergei Shtylyov Date: Wed Feb 7 18:18:37 2007 +0100 pdc202xx_new: remove useless code Remove the following useless fragments from the driver: - the ide_dma_lostirq() and ide_dma_timeout() handlers which boil down to just printing the incoherent reset message and calling their default counterparts; - check for non-NULL drive->id in the ide_dma_check() handler -- this is assumed to be true by all other handlers (also, get rid of unnecessary nesting of the conditional statements there); - the comment before pdcnew_tune_drive() which has nothing to do with the code. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 24e6458d9c0c445141488b70e1a01fa31ed86c8d Author: Sergei Shtylyov Date: Wed Feb 7 18:18:34 2007 +0100 slc90e66: carry over fixes from piix driver Synchronize with version 0.46 of the Intel PIIX/ICH driver: - carry over Alan's and my own fixes in the tuneproc() method and my cleanups both there and in the ratemask() method; - SLC90E66 only supports MW DMA modes 1/2 and SW DMA mode 2 (just like Intel chips), so don't claim support for other MW/SW DMA modes; - don't check dor non-NULL drive->id in the ide_dma_check() method -- this is assumed to be true in all other drivers; - do some coding/formatting cleanups while at it... Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 30dfd12f5384d30c0d0de05eb34d0e26352a20ff Author: Sergei Shtylyov Date: Wed Feb 7 18:18:28 2007 +0100 piix: tuneproc() fixes/cleanups Fix/cleanup the driver's tuneproc() and ratemask() methods: - PPE, IE, and TIME bits need to be cleared beforehand for the slave drive as well as master (Alan probably just forgot about it); - this driver only supports PIO modes up to 4, so must pass the correct limit to ide_get_best_pio_mode(); - use min_t() macro instead of min(); - simplify slave vs master drive evaluation; - do come coding and formatting cleanups... Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit d2872239737ad6394b49c7c9ce9ae8d0f07165e5 Author: Sergei Shtylyov Date: Wed Feb 7 18:18:25 2007 +0100 piix: fix 82371MX enablebits According to the datasheet, Intel 82371MX (MPIIX) actually has only a single IDE channel mapped to the primary or secondary ports depending on the value of the bit 14 of the IDETIM register at PCI config. offset 0x6C (the register at 0x6F which the driver refers to. doesn't exist). So, disguise the controller as dual channel and set enablebits masks/values such that only either primary or secondary channel is detected enabled. Also, preclude the IDE probing code from reading PCI BARs, this controller just doesn't have them (it's not the separate PCI function like the other PCI controllers), it only decodes the legacy addresses. [ Alan sayeth " MPIIX does not work with or without the change. It needs its own different driver and not to use setup-pci. Huge job and since it works well with libata who cares. Ditto the early PIIX chip." ] Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 6273d26a5b280cb96b804424de323560b301ca51 Author: Sergei Shtylyov Date: Wed Feb 7 18:18:20 2007 +0100 hpt366: HPT36x PCI clock detection fix Fix minor coding mistake in the HPT36x PCI clock detection code noticed by Bartlomiej Zolnierkiewicz -- it always reported 33 MHz due to the missing 'break' statements. This, however, most probably never mattered -- in fact, I was thinking of removing the 25/40 MHz cases completely since HPT36x BIOSes didn't seem to set any other value than 7 into the 'cmd_high_time' field, i.e. supported only 33 MHz PCI. Note that in the original driver there was another bug: 25 and 40 MHz cases were interchanged. Since the 'cmd_high_time' field is in units of PCI clocks, a lower clock count just *cannot* correspond to a higher frequency, i. e. it should be 5 for 25 MHz PCI and 9 for 40 MHz PCI, not the other way around. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 7b73ee05d0acb926923d43d78b61add776ea4bb1 Author: Sergei Shtylyov Date: Wed Feb 7 18:18:16 2007 +0100 hpt366: init code rewrite Finally, rework the driver init. code to correctly handle all the chip variants HighPoint has created so far. This should cure the rest of the timing issues in the driver (especially, on 66 MHz PCI) caused by the HighPoint's habit of switching the base DPLL clock with every new revision of the chips... - switch to using the enumeration type to differ between the numerous chip variants, matching PCI device/revision ID with the chip type early, at the init_setup stage; - extend the hpt_info structure to hold the DPLL and PCI clock frequencies, stop duplicating it for each channel by storing the pointer in the pci_dev structure: first, at the init_setup stage, point it to a static "template" with only the chip type and its specific base DPLL frequency, the highest supported DMA mode, and the chip settings table pointer filled, then, at the init_chipset stage, allocate per-chip instance and fill it with the rest of the necessary information; - get rid of the constant thresholds in the HPT37x PCI clock detection code, switch to calculating PCI clock frequency based on the chip's base DPLL frequency; - switch to using the DPLL clock and enable UltraATA/133 mode by default on anything newer than HPT370/A; - fold PCI clock detection and DPLL setup code into init_chipset_hpt366(), unify the HPT36x/37x setup code and the speedproc handlers by joining the register setting lists into the table indexed by the clock selected; - add enablebits for all the chips to avoid touching disabled channels (though the HighPoint BIOS seem to only disable the primary one on HPT371/N); - separate the UltraDMA and MWDMA masks there to avoid changing PIO timings when setting an UltraDMA mode in hpt37x_tune_chipset(). This version has been tested on HPT370/302/371N. Thanks to Alan for the inspiration. Hopefully, his libata driver will also benefit from the work done on this "obsolete" driver... Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 4bf63de27e9fd9c0926ba3bb773de076b324a955 Author: Sergei Shtylyov Date: Wed Feb 7 18:18:13 2007 +0100 hpt366: clean up DMA timeout handling for HPT370 Clean up DMA timeout handling for HPT370: - hpt370_lostirq_timeout() cleared the DMA status which made __ide_dma_end() called afterwards return the incorrect result, and the DMA engine was reset both before and after stopping DMA while the HighPoint drivers only do it after (which seems logical) -- fix this and also rename the function; - get rid of the needless mutual recursion in hpt370_ide_dma_end() and hpt370_ide_dma_timeout(); - get rid of hpt370_lostirq_timeout() since hwif->ide_dma_end() called from the driver's interrupt handler later does all its work. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 26ccb802ee3f9a1f1fd5bc6abf38f124bfbd9cb2 Author: Sergei Shtylyov Date: Wed Feb 7 18:18:11 2007 +0100 hpt366: merge HPT37x speedproc handlers Continue with the driver rewrite: - move the interrupt twiddling code from the speedproc handlers into the init_hwif_hpt366 which allows to merge the two HPT37x speedproc handlers into one; - get rid of in init_hpt366 which solely consists of the duplicate code, then fold init_hpt37x() into init_chipset_hpt366(); - fix hpt3xx_tune_drive() to always set the PIO mode requested, not the best possible one, change hpt366_config_drive_xfer_rate() accordingly, simplify it a bit; - group all the DMA related code together init_hwif_hpt366(), and generally clean up and beautify it. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit abc4ad4c6b3c6a51a0aa633e3d3fbc80b0ecabfe Author: Sergei Shtylyov Date: Wed Feb 7 18:18:05 2007 +0100 hpt366: cache channel's MCR address Begin the real driver redesign. For the starters: - cache the offset of the IDE channel's MISC. control registers which are used throughout the driver in hwif->select_data; - only touch the relevant MCR when detecting the cable type on HPT374's function 1; - make HPT36x's speedproc handler look the same way as HPT37x ones; fix the PIO timing register mask for HPT37x. - rename all the HPT3xx register related variables consistently; clean up the whitespace. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit b4586715d7944dfbcb2b6b76a0098413cf3222e4 Author: Sergei Shtylyov Date: Wed Feb 7 18:17:54 2007 +0100 hpt366: switch to using pci_get_slot Switch to using pci_get_slot() to get to the function 1 of HPT36x/374 chips -- there's no need for the driver itself to walk the list of the PCI devices, and it also forgets to check the bus number of the device found. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 90778574c9257ea2d11c433626e1b12ac4135e0a Author: Sergei Shtylyov Date: Wed Feb 7 18:17:51 2007 +0100 hpt366: print the real chip name at startup - Rework the driver setup code so that it prefixes the driver startup messages with the real chip name. - Print the measured f_CNT value and the DPLL setting for non-HPT3xx chips as well. - Claim the extra 240 bytes of I/O space for all chips, not only for those having PCI device ID of 0x0004. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit f36702b4de1f7ea57927c8eb88d624504d33fc34 Author: Andrew Morton Date: Wed Feb 7 18:17:37 2007 +0100 hpt366: rework rate filtering tidy Cc: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit e139b0b02fd35a68c4353db34d3380c8a7c9a90d Author: Sergei Shtylyov Date: Wed Feb 7 18:17:37 2007 +0100 hpt366: rework rate filtering - Rework hpt3xx_ratemask() and hpt3xx_ratefilter() so that the former returns the max. mode computed at the load time and doesn't have to do bad Ultra33 drive list lookups anymore; remove the duplicate code from the latter function. Move the quirky drive list lookup into hpt3xx_quirkproc() where it should have been from the start... - Disable UltraATA/100 for HPT370 by default as the 33 MHz ATA clock being used does not allow for it, and this *greatly* increases the transfer speed. - Save some space by using byte-wide fields in struct hpt_info; switch to reading the 8-bit PCI revision ID reg. only, not the whole 32-bit reg. - Start incrementing the driver version number with each patch (should have been done from the first one posted). Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 5331be090567d9335476f876b2d85427cd7c4426 Merge: d3f8fd7... 7220c01... Author: Linus Torvalds Date: Wed Feb 7 08:10:48 2007 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6: JFS: Remove incorrect kgdb define JFS: call io_schedule() instead of schedule() to avoid deadlock JFS: Add lockdep annotations JFS: Avoid BUG() on a damaged file system commit d3f8fd765e94b9137e1f27bbb0ac25289f9e565c Merge: 0670afd... a2cf822... Author: Linus Torvalds Date: Wed Feb 7 08:09:00 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: (57 commits) [GFS2] make gfs2_writepages() static [GFS2] Unlock page on prepare_write try lock failure [GFS2] nfsd readdirplus assertion failure [DLM] fix softlockup in dlm_recv [DLM] zero new user lvbs [DLM/GFS2] indent help text [GFS2] Fix unlink deadlocks [GFS2] Put back semaphore to avoid umount problem [GFS2] more CURRENT_TIME_SEC [GFS2/DLM] fix GFS2 circular dependency [GFS2/DLM] use sysfs [GFS2] make lock_dlm drop_count tunable in sysfs [GFS2] increase default lock limit [GFS2] Fix list corruption in lops.c [GFS2] Fix recursive locking attempt with NFS [DLM] can miss clearing resend flag [DLM] saved dlm message can be dropped [DLM] Make sock_sem into a mutex [GFS2] Fix typo in glock.c [GFS2] use CURRENT_TIME_SEC instead of get_seconds in gfs2 ... commit a2cf822274b3d58a16a65c8338e299e18b3dc3a4 Author: Adrian Bunk Date: Tue Feb 6 23:12:49 2007 +0100 [GFS2] make gfs2_writepages() static On Mon, Jan 29, 2007 at 08:45:28PM -0800, Andrew Morton wrote: >... > Changes since 2.6.20-rc6-mm2: >... > git-gfs2-nmw.patch >... > git trees >... This patch makes the needlessly global gfs2_writepages() static. Signed-off-by: Adrian Bunk Signed-off-by: Steven Whitehouse commit 2d72e7101cc7fff5c1eb21bfcbba51c8002418d2 Author: Steven Whitehouse Date: Wed Feb 7 10:25:59 2007 -0500 [GFS2] Unlock page on prepare_write try lock failure When the try lock of the glock failed in prepare_write we were incorrectly exiting this function with the page still locked. This was resulting in further I/O to this page hanging. Signed-off-by: Steven Whitehouse commit 0670afdf0e69e5e73c8358da9c39bf3a8807b03e Merge: dda2ac1... 5109900... Author: Linus Torvalds Date: Tue Feb 6 17:24:58 2007 -0800 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: (27 commits) [IA64] swiotlb abstraction (e.g. for Xen) [IA64] swiotlb cleanup [IA64] make swiotlb use bus_to_virt/virt_to_bus [IA64] swiotlb bug fixes [IA64] Hook up getcpu system call for IA64 [IA64] clean up sparsemem memory_present call [IA64] show_mem() for IA64 sparsemem NUMA [IA64] missing exports hwsw_sync_... [IA64] virt_to_page() can be called with NULL arg [IA64] alignment bug in ldscript [IA64] register memory ranges in a consistent manner [IA64] Enable SWIOTLB only when needed [IA64-SGI] Check for TIO errors on shub2 Altix [IA64] remove bogus prototype ia64_esi_init() [IA64] Clear IRQ affinity when unregistered [IA64] fix ACPI Kconfig issues [IA64] Fix NULL-pointer dereference in ia64_machine_kexec() [IA64] find thread for user rbs address [IA64] use snprintf() on features field of /proc/cpuinfo [IA64] enable singlestep on system call ... commit b7e36bfa9ffa2f6097b622ba07a95d823db553e4 Author: Jiri Kosina Date: Mon Feb 5 16:29:49 2007 -0800 NET: turn local_save_flags() + local_irq_disable() into local_irq_save() drivers/net/amd8111e.c::amd8111e_poll() contains local_irq_disable() after local_save_flags(). Turn it into local_irq_save(). Signed-off-by: Jiri Kosina Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 0d38ff1d3d34ca9ae2a61cf98cf47530f9d51dee Author: Jiri Kosina Date: Mon Feb 5 16:29:48 2007 -0800 NET-3c59x: turn local_save_flags() + local_irq_disable() into local_irq_save() drivers/net/3c59x.c::poll_vortex() contains local_irq_disable() after local_save_flags(). Turn it into local_irq_save(). Signed-off-by: Jiri Kosina Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 7e3e8b05a90bcc5799b0d4525f23c80d661d0194 Author: Richard Knutsson Date: Mon Feb 5 16:29:48 2007 -0800 hp100: convert pci_module_init() to pci_register_driver() Convert pci_module_init() to pci_register_driver(). Signed-off-by: Richard Knutsson Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 27d2ab54bdfaffdbdc1a81100dc53c6479c9db35 Author: Amit S. Kale Date: Mon Feb 5 07:40:49 2007 -0800 NetXen: Added ethtool support for user level tools. NetXen: Added ethtool support for user level firmware management utilities. Signed-off-by: Amit S. Kale Signed-off-by: Jeff Garzik commit 1fcca1a5fc81689d191b7132318970c969b4b635 Author: Amit S. Kale Date: Mon Feb 5 07:35:26 2007 -0800 NetXen: Firmware crb init changes. NetXen: firmware crb init changes. Signed-off-by: Amit S. Kale Signed-off-by: Jeff Garzik commit 8d5ca6ec4e5c7208fe90aaecab9544bf8c08f0dc Author: Jay Cliburn Date: Sat Feb 3 20:25:10 2007 -0600 maintainers: add atl1 maintainers MAINTAINERS: add atl1 maintainers Add a maintainers entry for atl1. Signed-off-by: Jay Cliburn Signed-off-by: Jeff Garzik commit a407a6a085ed149c479562a658f4a06c5ffd347b Author: Stephen Hemminger Date: Fri Feb 2 08:22:54 2007 -0800 skge: version 1.10 Mark this as 1.10 because WOL now works Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit a504e64ab42bcc27074ea37405d06833ed6e0820 Author: Stephen Hemminger Date: Fri Feb 2 08:22:53 2007 -0800 skge: WOL support Add WOL support for Yukon chipsets in skge device. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 1479d13cb5304c452e6d7398c7771974c1014846 Author: Stephen Hemminger Date: Fri Feb 2 08:22:52 2007 -0800 skge: use dev_printk Use dev_printk related macros for PCI related errors and warnings Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit fae87592280039837fdd72c5ecdac2af2eb97f63 Author: Stephen Hemminger Date: Fri Feb 2 08:22:51 2007 -0800 skge: handle zero address at open Some motherboards are broken and have no address set. Failing at probe time prevents the device from ever being used (like to download a fixed BIOS). Instead warn on probe and check again when device is brought up. That way the address can be set. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit a7bed27dc69e3bc9238549a4964ea94ec318362c Author: Al Viro Date: Mon Jan 29 15:36:54 2007 -0500 b44 endian annotations Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit dda2ac15d23b38e4335e858848aa8c9a6710304f Merge: 2ac04a1... e051fda... Author: Linus Torvalds Date: Tue Feb 6 14:59:27 2007 -0800 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: ocfs2: ocfs2_link() journal credits update commit 2ac04a1597d9bca952dafcf8cbff4621884cb723 Merge: 0c7d375... a417a21... Author: Linus Torvalds Date: Tue Feb 6 14:56:37 2007 -0800 Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jikos/hid * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jikos/hid: USB HID: handle multi-interface devices for Apple macbook pro properly HID: move away from DEBUG defines in favor of CONFIG_HID_DEBUG USB HID: fix bogus comment in hid_get_class_descriptor() USB HID: remove hid_find_field_by_usage() HID: API - fix leftovers of hidinput API in USB HID HID: hid debug from hid-debug.h to hid layer hid: force feedback driver for PantherLord USB/PS2 2in1 Adapter hid: quirk for multi-input devices with unneeded output reports hid: allow force feedback for multi-input devices commit 0c7d3757116c59b3eedd9aa6dfd7ae0a1341f5c2 Merge: 2442d31... b45bfcc... Author: Linus Torvalds Date: Tue Feb 6 14:55:33 2007 -0800 Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband: IB/ehca: Remove obsolete prototypes IB/ehca: Remove use of do_mmap() RDMA/addr: Handle ethernet neighbour updates during route resolution IB: Make sure struct ib_user_mad.data is aligned IB/srp: Don't wait for response when QP is in error state. IB: Return qp pointer as part of ib_wc IB: Include explicitly in commit 2442d3109943bafbdfc4f0495e3d10eeedc8390c Merge: 02aedd6... f9d429a... Author: Linus Torvalds Date: Tue Feb 6 14:54:54 2007 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc: (32 commits) mmc: tifm: replace kmap with page_address mmc: sdhci: fix voltage ocr mmc: sdhci: replace kmap with page_address mmc: wbsd: replace kmap with page_address mmc: handle pci_enable_device() return value in sdhci mmc: Proper unclaim in mmc_block mmc: change wbsd mailing list mmc: Graceful fallback for fancy features mmc: Handle wbsd's stupid command list mmc: Allow host drivers to specify max block count mmc: Allow host drivers to specify a max block size tifm_sd: add suspend and resume functionality tifm_core: add suspend/resume infrastructure for tifm devices tifm_7xx1: prettify tifm_7xx1: recognize device 0xac8f as supported tifm_7xx1: switch from workqueue to kthread tifm_7xx1: Merge media insert and media remove functions tifm_7xx1: simplify eject function Add dummy_signal_irq function to save check in ISR Remove unused return value from signal_irq callback ... commit 02aedd69e2ef31b0fca1e8960cb1e7fd0c343110 Merge: 9ad0830... 4d284ca... Author: Linus Torvalds Date: Tue Feb 6 14:45:32 2007 -0800 Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: (37 commits) [S390] Avoid excessive inlining. [S390] Mark kernel text section read-only. [S390] Convert memory detection into C code. [S390] Calibrate delay and bogomips. [S390] Hypervisor filesystem (s390_hypfs) for z/VM [S390] Add crypto support for 3592 tape devices [S390] boot from NSS support [S390] Support for s390 Pseudo Random Number Generator [S390] ETR support. [S390] noexec protection [S390] move crypto options and some cleanup. [S390] cio: Don't spam debug feature. [S390] Cleanup of CHSC event handling. [S390] cio: declare hardware structures packed. [S390] Add set_fs(USER_DS) to start_thread(). [S390] cio: Catch operand exceptions on stsch. [S390] Fix register usage description. [S390] kretprobe_trampoline_holder() in wrong section. [S390] Fix kprobes breakpoint handling. [S390] Update maintainers file. ... commit 9ad0830f307bcd8dc285cfae58998d43b21727f4 Author: David Howells Date: Tue Feb 6 13:45:51 2007 +0000 [PATCH] Keys: Fix key serial number collision handling Fix the key serial number collision avoidance code in key_alloc_serial(). This didn't use to be so much of a problem as the key serial numbers were allocated from a simple incremental counter, and it would have to go through two billion keys before it could possibly encounter a collision. However, now that random numbers are used instead, collisions are much more likely. This is fixed by finding a hole in the rbtree where the next unused serial number ought to be and using that by going almost back to the top of the insertion routine and redoing the insertion with the new serial number rather than trying to be clever and attempting to work out the insertion point pointer directly. This fixes kernel BZ #7727. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 768c242b30d9ec5581dd245e8289acb6b77815d1 Merge: e503606... a850790... Author: Linus Torvalds Date: Tue Feb 6 14:42:20 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] Minor cleanup [CIFS] Missing free in error path [CIFS] Reduce cifs stack space usage [CIFS] lseek polling returned stale EOF commit e503606c5b7687842beb8fca46b827606ae40c63 Merge: 76c3295... d390008... Author: Linus Torvalds Date: Tue Feb 6 14:35:30 2007 -0800 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (40 commits) [MIPS] Yosemite: Fix missing parens in SERIAL_READ_1 macro [MIPS] Fix warnings in run_uncached on 32bit kernel [MIPS] Comment fix [MIPS] MT: Nuke duplicate mips_mt_regdump() prototype. [MIPS] Alchemy: Fix PCI-memory access [MIPS] Move .set reorder out of conditional code [MIPS] Check FCSR for pending interrupts before restoring from a context. [MIPS] Jaguar ATX: Fix large number of warnings. [MIPS] Jaguar: Fix MAC address detection after platform_device conversion. [MIPS] SMTC: Make a bunch of functions and variables static. [MIPS] Use compat_sys_pselect6 [MIPS] SMTC: Cleanup idle hook invocation. [MIPS] SELinux: Add security hooks to mips-mt {get,set}affinity [MIPS] IRIX: Linux coding style cleanups. [MIPS] PB1100: Fix pile of warnings [MIPS] Alchemy: Fix bunch of warnings [MIPS] Whitespace cleanups. [MIPS] Alchemy: Fix bunch more warnings. [MIPS] Use ARRAY_SIZE macro when appropriate [MIPS] Fix some whitespace damage ... commit 76c329563c5b8663ef27eb1bd195885ab826cbd0 Author: Oleg Verych Date: Tue Feb 6 02:18:22 2007 +0100 [PATCH] kbuild: correctly skip tilded backups in localversion files Tildes as in path as in filenames are handled correctly now: only files, containing tilde '~', are backups, thus are not valid. [KJ]: Definition of `space' was removed, scripts/Kbuild.include has one. That definition was taken right from the GNU make manual, while Kbuild's version is original. Cc: Roman Zippel Cc: Bastian Blank Cc: Sam Ravnborg Signed-off-by: Oleg Verych Signed-off-by: Linus Torvalds commit 5de043f4bd11a9e0a3e8daec7d1905da575a76b7 Author: Oleg Verych Date: Tue Feb 6 02:18:21 2007 +0100 [PATCH] kbuild: improve option checking, Kbuild.include cleanup GNU binutils, root users, tmpfiles, external modules ro builds must be fixed to do the right thing now. Cc: Roman Zippel Cc: Sam Ravnborg Cc: Horst Schirmeier Cc: Jan Beulich Cc: Daniel Drake Cc: Andi Kleen Cc: Randy Dunlap Signed-off-by: Oleg Verych Signed-off-by: Linus Torvalds commit f6112ec27a8f0eee6c5a996f65c7bfd9457d9f85 Author: Oleg Verych Date: Tue Feb 6 02:18:20 2007 +0100 [PATCH] kbuild scripts: replace gawk, head, bc with shell, update Replacing overhead of using some (external) programs instead of good old `sh'. Cc: Roman Zippel Cc: Sam Ravnborg Cc: William Stearns Cc: Martin Schlemmer Signed-off-by: Oleg Verych Acked-by: Mark Lord Signed-off-by: Linus Torvalds commit a850790f6c903f1a89d0dbf953946d231df3fe6b Author: Steve French Date: Tue Feb 6 20:43:30 2007 +0000 [CIFS] Minor cleanup Missing tab. Missing entry in changelog Signed-off-by: Steve French commit 57e1c5c87db512629dd44ddeb882a5aaf0e4299e Merge: 62d0cfc... 76a2e84... Author: Len Brown Date: Tue Feb 6 15:31:00 2007 -0500 Pull test into release branch commit 76a2e849df47697706024262a8bbb83432b8bde7 Merge: 894d79b... 03c6d13... Author: Len Brown Date: Tue Feb 6 15:30:03 2007 -0500 Pull acpica into test branch commit 03c6d130f690dba46387480de80acf458a6fd14c Author: Len Brown Date: Tue Feb 6 15:28:23 2007 -0500 ACPICA: reduce table header messages to fit within 80 columns Signed-off-by: Len Brown commit d390008ebf42bdfda106e9de2b2d0abcc9858e26 Author: Ralf Baechle Date: Tue Feb 6 16:43:31 2007 +0000 [MIPS] Yosemite: Fix missing parens in SERIAL_READ_1 macro Signed-off-by: Ralf Baechle commit c55197eb549dc09a52b6d91e6f26709a6d6815e5 Author: Yoichi Yuasa Date: Tue Feb 6 10:59:22 2007 +0900 [MIPS] Fix warnings in run_uncached on 32bit kernel arch/mips/lib/uncached.c: In function 'run_uncached': arch/mips/lib/uncached.c:47: warning: comparison is always true due to limited range of data type arch/mips/lib/uncached.c:48: warning: comparison is always false due to limited range of data type arch/mips/lib/uncached.c:57: warning: comparison is always true due to limited range of data type arch/mips/lib/uncached.c:58: warning: comparison is always false due to limited range of data type Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 131c1a2b6eef87485f7e280817d97615ea2a1551 Author: Chris Dearman Date: Thu Feb 1 19:54:13 2007 +0000 [MIPS] Comment fix Signed-off-by: Chris Dearman Signed-off-by: Ralf Baechle commit be701306eba49c9157506d4bbe40dbed7969a915 Author: Ralf Baechle Date: Sun Feb 4 23:23:00 2007 +0000 [MIPS] MT: Nuke duplicate mips_mt_regdump() prototype. Signed-off-by: Ralf Baechle commit fd046eb5378f2bc59851fcbc91957d01529fc3db Author: Alexander Bigga Date: Thu Dec 21 11:25:19 2006 +0100 [MIPS] Alchemy: Fix PCI-memory access The problem was introduced in 2.6.18.3 with the casting of some 36bit-defines (PCI memory) in au1000.h to resource_size_t which may be u32 or u64 depending on the experimental CONFIG_RESOURCES_64BIT. With unset CONFIG_RESOURCES_64BIT, the pci-memory cannot be accessed because the ioremap in arch/mips/au1000/common/pci.c already used the truncated addresses. With set CONFIG_RESOURCES_64BIT, things get even worse, because PCI-scan aborts, due to resource conflict: request_resource() in arch/mips/pci/pci.c fails because the maximum iomem-address is 0xffffffff (32bit) but the pci-memory-start-address is 0x440000000 (36bit). To get pci working again, I propose the following patch: 1. remove the resource_size_t-casting from au1000.h again 2. make the casting in arch/mips/au1000/common/pci.c (it's allowed and necessary here. The 36bit-handling will be done in __fixup_bigphys_addr). With this patch pci works again like in 2.6.18.2, the gcc-compile warnings in pci.c are gone and it doesn't depend on CONFIG_EXPERIMENTAL. Signed-off-by: Alexander Bigga Signed-off-by: Ralf Baechle commit 37f26742437df885ddd72150ab352d0a931cd3a7 Author: Chris Dearman Date: Thu Feb 1 19:54:13 2007 +0000 [MIPS] Move .set reorder out of conditional code Signed-off-by: Chris Dearman Signed-off-by: Ralf Baechle commit 6d6671066a311703bca1b91645bb1e04cc983387 Author: Chris Dearman Date: Thu Feb 1 19:54:13 2007 +0000 [MIPS] Check FCSR for pending interrupts before restoring from a context. Signed-off-by: Chris Dearman Signed-off-by: Ralf Baechle commit b86b30f81c7601d9a410d2ce0c64d9ba50d673ae Author: Ralf Baechle Date: Tue Nov 7 09:23:57 2006 +0000 [MIPS] Jaguar ATX: Fix large number of warnings. Signed-off-by: Ralf Baechle commit 3d0f82aea19649a2fd1169cfe63a9b522355386b Author: Ralf Baechle Date: Tue Nov 7 09:25:51 2006 +0000 [MIPS] Jaguar: Fix MAC address detection after platform_device conversion. Signed-off-by: Ralf Baechle commit 5868756dcbf4b585c3c485e43fc36844c038cef5 Author: Ralf Baechle Date: Mon Feb 5 00:33:21 2007 +0000 [MIPS] SMTC: Make a bunch of functions and variables static. Signed-off-by: Ralf Baechle commit 99d233fa9bba1916050dd27d74530342af68b6db Author: Joseph S. Myers Date: Wed Jan 10 12:30:50 2007 +0000 [MIPS] Use compat_sys_pselect6 The N32 and O32 pselect6 syscalls need to use compat_sys_pselect6 to translate arguments from 32-bit to 64-bit layout. Signed-off-by: Joseph Myers Signed-off-by: Ralf Baechle commit 447deafba4de56bfa5ed5d5778e56afe55432394 Author: Ralf Baechle Date: Mon Feb 5 00:34:20 2007 +0000 [MIPS] SMTC: Cleanup idle hook invocation. Signed-off-by: Ralf Baechle commit 7418cb89af6f9e21660d60a4bd088a8b6fd11e81 Author: David Quigley Date: Wed Jun 28 09:36:46 2006 -0400 [MIPS] SELinux: Add security hooks to mips-mt {get,set}affinity This patch adds LSM hooks into the setaffinity and getaffinity functions for the mips architecture to enable security modules to control these operations between tasks with different security attributes. This implementation uses the existing task_setscheduler and task_getscheduler LSM hooks. Signed-Off-By: David Quigley Acked-by: Stephen Smalley Signed-off-by: James Morris Signed-off-by: Ralf Baechle commit c9170617510059c750cb91207b08f35001571a22 Author: Ralf Baechle Date: Mon Feb 5 00:05:08 2007 +0000 [MIPS] IRIX: Linux coding style cleanups. Signed-off-by: Ralf Baechle commit 3f21cdee412089ed7ea12c3650bfb4211cf0b1d0 Author: Ralf Baechle Date: Tue Nov 7 10:19:05 2006 +0000 [MIPS] PB1100: Fix pile of warnings CC arch/mips/au1000/pb1100/board_setup.o arch/mips/au1000/pb1100/board_setup.c: In function ‘board_setup’: arch/mips/au1000/pb1100/board_setup.c:104: warning: passing argument 1 of ‘readb’ makes pointer from integer without a cast arch/mips/au1000/pb1100/board_setup.c:105: warning: passing argument 1 of ‘readb’ makes pointer from integer without a cast arch/mips/au1000/pb1100/board_setup.c:105: warning: passing argument 2 of ‘writeb’ makes pointer from integer without a cast arch/mips/au1000/pb1100/board_setup.c:109: warning: passing argument 1 of ‘readb’ makes pointer from integer without a cast arch/mips/au1000/pb1100/board_setup.c:110: warning: passing argument 1 of ‘readb’ makes pointer from integer without a cast arch/mips/au1000/pb1100/board_setup.c:110: warning: passing argument 2 of ‘writeb’ makes pointer from integer without a cast arch/mips/au1000/pb1100/board_setup.c:51: warning: unused variable ‘sys_clksrc’ arch/mips/au1000/pb1100/board_setup.c:51: warning: unused variable ‘sys_freqctrl’ arch/mips/au1000/pb1100/board_setup.c:50: warning: unused variable ‘pin_func’ Signed-off-by: Ralf Baechle commit 786d7cdd06581773ee7913560838d6f4487d2d9f Author: Ralf Baechle Date: Tue Nov 7 09:58:30 2006 +0000 [MIPS] Alchemy: Fix bunch of warnings CC arch/mips/au1000/common/pci.o arch/mips/au1000/common/pci.c:42: warning: large integer implicitly truncated to unsigned type arch/mips/au1000/common/pci.c:43: warning: large integer implicitly truncated to unsigned type arch/mips/au1000/common/pci.c:49: warning: large integer implicitly truncated to unsigned type arch/mips/au1000/common/pci.c:50: warning: large integer implicitly truncated to unsigned type arch/mips/au1000/common/pci.c: In function ‘au1x_pci_setup’: arch/mips/au1000/common/pci.c:82: warning: ISO C90 forbids mixed declarations and code Signed-off-by: Ralf Baechle commit e0daad449c5195fa4552c60392eeee4e5c58d31c Author: Ralf Baechle Date: Mon Feb 5 00:10:11 2007 +0000 [MIPS] Whitespace cleanups. Signed-off-by: Ralf Baechle commit 722b05a0c1498ef12972bbd5084eded498d75fb4 Author: Ralf Baechle Date: Tue Nov 7 10:22:31 2006 +0000 [MIPS] Alchemy: Fix bunch more warnings. Signed-off-by: Ralf Baechle commit 25b8ac3ba46ee3d586a9c00c1771dca58314714e Author: Ahmed S. Darwish Date: Mon Feb 5 04:42:11 2007 +0200 [MIPS] Use ARRAY_SIZE macro when appropriate Signed-off-by: Ahmed S. Darwish Signed-off-by: Ralf Baechle commit 3e7f9b8254b82f7261b2c56ffaf864198c135ee5 Author: Jan Altenberg Date: Thu Jan 25 20:46:14 2007 +0100 [MIPS] Fix some whitespace damage Signed-off-by: Jan Altenberg Signed-off-by: Ralf Baechle commit 811d944901705b8c14b945ba51caff5e912bb9e3 Author: Mathieu Desnoyers Date: Sat Feb 3 23:16:51 2007 -0500 [MIPS] Add missing ifdef arch/mips/pmc-sierra/yosemite/setup.c early_serial_setup is only defined when CONFIG_SERIAL_8250 is set. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ralf Baechle commit 19487f1e8a288da0d84b48d086167cf328080938 Author: Atsushi Nemoto Date: Sun Feb 4 00:57:25 2007 +0900 [MIPS] Fix pb1200/irqmap.c and apply some missed patches pb1200/irqmap.c had been broken a while due to non-named initializer and had missed some recent IRQ related changes. Apply these commits to this file. [MIPS] IRQ cleanups commit 1603b5aca4f15b34848fb5594d0c7b6333b99144 [MIPS] use generic_handle_irq, handle_level_irq, handle_percpu_irq commit 1417836e81c0ab8f5a0bfeafa90d3eaa41b2a067 [MIPS] Compile __do_IRQ() when really needed commit e77c232cfc6e1250b2916a7c69225d6634d05a49 Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 06396094b2fad0c429cde795dac4a72bc4d32bf2 Author: Ralf Baechle Date: Fri Feb 2 11:13:35 2007 +0000 [MIPS] Do not allow oprofile to be enabled on SMTC. Oprofile cannot work on SMTC due to the limited number of counters. Signed-off-by: Ralf Baechle commit 4a969e1e223d517dd568c84ba3a66542a72c3680 Author: Robert P. J. Day Date: Thu Feb 1 05:45:14 2007 -0500 [MIPS] Remove superfluous "ifdef CONFIG_KGDB". Given that the Makefiles involved already have conditional compilation of the form: obj-$(CONFIG_KGDB) += dbg_io.o there seems to be little value for the dbg_io.c source files to check that config variable yet again. Signed-off-by: Robert P. J. Day Signed-off-by: Ralf Baechle commit be6e143741226ca59b24e6760de4578a5d4f98d7 Author: Ralf Baechle Date: Tue Feb 6 16:53:17 2007 +0000 [MIPS] vpe_elfload and vpe_run are only used locally, make them static. Signed-off-by: Ralf Baechle commit 418451c17870e56a176aeb4be1bed810f634fb5a Author: Ralf Baechle Date: Tue Feb 6 16:53:16 2007 +0000 [MIPS] SMTC: remove unused atomic_postclear Signed-off-by: Ralf Baechle commit 69a6c312e5ebb2e929ceb67e6246e2d9314f1d29 Author: Atsushi Nemoto Date: Wed Jan 24 01:21:05 2007 +0900 [MIPS] Move some kernel globals from asm file to C file. This get rid of some undesirable hole in BSS section due to random order of placement. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 907e193ea798b3f73a71a2a01f938b69fd53b26d Author: Atsushi Nemoto Date: Tue Jan 23 22:29:06 2007 +0900 [MIPS] Remove _fdata from asm-mips/sections.h There is no _fdata symbol in kernel. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 130e2fb78305b148b15cd3b5129596844c5f5e4f Author: Ralf Baechle Date: Tue Feb 6 16:53:15 2007 +0000 [MIPS] Kconfig: Provide sane NR_CPUS defaults for more configurations Signed-off-by: Ralf Baechle commit 24d55728dc96d2cb8f49064e012559300eb97610 Author: Yoichi Yuasa Date: Thu Jan 18 22:27:11 2007 +0900 [MIPS] vr41xx: Use symbolic names for IRQ numers Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 70d21cdeef6331e67ed87262c894cd6601f0dccc Author: Atsushi Nemoto Date: Mon Jan 15 00:07:25 2007 +0900 [MIPS] use name instead of typename for each irq_chip The "typename" field was obsoleted by the "name" field. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit ea6e942bea55b574bf2118bce8ee73185e754cfb Author: Atsushi Nemoto Date: Tue Jan 16 23:29:11 2007 +0900 [MIPS] Kconfig: Move some entries to appropriate menu Currently KEXEC is in "Machine selection", SECCOMP, PM, APM are in "Executable file formats" menu. Move KEXEC and SECCOMP to "Kernel type" and PM, APM to new "Power management options" menu. Also replace "config PM" with kernel/power/Kconfig. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 9a0ad9e9d8cae1087fe7b0b137e1c84d12dc0c76 Author: Yoichi Yuasa Date: Thu Jan 11 23:53:18 2007 +0900 [MIPS] vr41xx: add MACINT controls This patch has added MACINT controls. They are necessary for VR4133 ethernet driver. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 6f284a2ce7b8bc49cb8455b1763357897a899abb Author: Franck Bui-Huu Date: Wed Jan 10 09:44:05 2007 +0100 [MIPS] FLATMEM: introduce PHYS_OFFSET. The old code was assuming that min_low_pfn was always 0. This means that platforms having a big hole at their memory start paid the price of wasting some memory for the allocation of unused entries in mem_map[]. This patch prevents this waste. It introduces PHYS_OFFSET define which is the start of the physical memory and uses it wherever needed. Specially when converting physical/virtual addresses into virtual/physical ones. Currently all platforms defines PHYS_OFFSET to 0. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit db84dc61552ae0d198a8133d28b80c3838930ba8 Author: Franck Bui-Huu Date: Wed Jan 10 09:44:04 2007 +0100 [MIPS] Setup min_low_pfn/max_low_pfn correctly This patch makes a better usage of these two globals. 'min_low_pfn' is now correctly setup for all configs, which allow us to rely on it in boot memory code init. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit a583158c9ce822c96a718fbf877cec1e5f9ad75d Author: Atsushi Nemoto Date: Mon Dec 18 00:07:40 2006 +0900 [MIPS] Unify memset.S The 32-bit version and 64-bit version are almost equal. Unify them. This makes further improvements (for example, supporting CDEX, etc.) easier. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit c44e8d5e47b8ba672440b92eab0735628469116c Author: Atsushi Nemoto Date: Sat Dec 30 00:43:59 2006 +0900 [MIPS] prom_free_prom_memory cleanup Current prom_free_prom_memory() implementations are almost same as free_init_pages(), or no-op. Make free_init_pages() extern (again) and make prom_free_prom_memory() use it. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 2fa7937bd8922e1fe4aae6a45e7e787fa45d6043 Author: Atsushi Nemoto Date: Sun Jan 14 23:41:42 2007 +0900 [MIPS] Make I8259A_IRQ_BASE customizable Move I8259A_IRQ_BASE from asm/i8259.h to asm/mach-generic/irq.h and make it really customizable. And remove I8259_IRQ_BASE declared on some platforms. Currently only NEC_CMBVR4133 is using custom I8259A_IRQ_BASE value. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 97dcb82de6cc99a5669eb8e342efc24cceb1e77e Author: Atsushi Nemoto Date: Mon Jan 8 02:14:29 2007 +0900 [MIPS] Define MIPS_CPU_IRQ_BASE in generic header The irq_base for {mips,rm7k,rm9k}_cpu_irq_init() are constant on all platforms and are same value on most platforms (0 or 16, depends on CONFIG_I8259). Define them in asm-mips/mach-generic/irq.h and make them customizable. This will save a few cycle on each CPU interrupt. A good side effect is removing some dependencies to MALTA in generic SMTC code. Although MIPS_CPU_IRQ_BASE is customizable, this patch changes irq mappings on DDB5477, EMMA2RH and MIPS_SIM, since really customizing them might cause some header dependency problem and there seems no good reason to customize it. So currently only VR41XX is using custom MIPS_CPU_IRQ_BASE value, which is 0 regardless of CONFIG_I8259. Testing this patch on those platforms is greatly appreciated. Thank you. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit b6ec8f069bf202d2bd888aa9137b2cc3aad4c573 Author: Atsushi Nemoto Date: Mon Jan 8 00:20:24 2007 +0900 [MIPS] Remove unused rm9k_cpu_irq_disable() rm9k_cpu_irq_disable() is unused since commit 1603b5aca4f15b34848fb5594d0c7b6333b99144. Remove it. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 549ae0ac3d574a682e82b02e79259a65445a675b Author: Wendy Cheng Date: Tue Feb 6 03:52:16 2007 -0500 [GFS2] nfsd readdirplus assertion failure Glock assertion failure found in '07 NFS connectathon. One of the NFSDs is doing a "readdirplus" procedure call. It passes the logic into gfs2_readdir() where it obtains its directory inode glock. This is then followed by filehandle construction that invokes lookup code. It hits the assertion failure while trying to obtain the inode glock again inside gfs2_drevalidate(). This patch bypasses the recursive glock call if caller already holds the lock. Signed-off-by: S. Wendy Cheng Signed-off-by: Steven Whitehouse commit 51099005ab8e09d68a13fea8d55bc739c1040ca6 Author: Jan Beulich Date: Mon Feb 5 18:53:04 2007 -0800 [IA64] swiotlb abstraction (e.g. for Xen) Add abstraction so that the file can be used by environments other than IA64 and EM64T, namely for Xen. Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 563aaf064f3776623ff5e7aef511ac2eb7e5f0bb Author: Jan Beulich Date: Mon Feb 5 18:51:25 2007 -0800 [IA64] swiotlb cleanup - add proper __init decoration to swiotlb's init code (and the code calling it, where not already the case) - replace uses of 'unsigned long' with dma_addr_t where appropriate - do miscellaneous simplicfication and cleanup Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 93fbff63e62b87fe450814db41f859d60b048fb8 Author: Jan Beulich Date: Mon Feb 5 18:49:45 2007 -0800 [IA64] make swiotlb use bus_to_virt/virt_to_bus Convert all phys_to_virt/virt_to_phys uses to bus_to_virt/virt_to_bus, as is what is meant and what is needed in (at least) some virtualized environments like Xen. Signed-off-by: Jan Beulich Acked-by: Muli Ben-Yehuda Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit cde14bbfb3aa79b479db35bd29e6c083513d8614 Author: Jan Beulich Date: Mon Feb 5 18:46:40 2007 -0800 [IA64] swiotlb bug fixes This patch fixes - marking I-cache clean of pages DMAed to now only done for IA64 - broken multiple inclusion in include/asm-x86_64/swiotlb.h - missing call to mark_clean in swiotlb_sync_sg() - a (perhaps only theoretical) issue in swiotlb_dma_supported() when io_tlb_end is exactly at the end of memory Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 86afa9eb88af2248bcc91d5b3568c63fdea65d6c Author: Fenghua Yu Date: Mon Feb 5 16:07:57 2007 -0800 [IA64] Hook up getcpu system call for IA64 getcpu system call returns cpu# and node# on which this system call and its caller are running. This patch hooks up its implementation on IA64. Signed-off-by: Fenghua Yu Signed-off-by: Tony Luck commit 524fd988bb83153ddc9cfea867129eb6efb7ac23 Author: Bob Picco Date: Mon Feb 5 16:20:08 2007 -0800 [IA64] clean up sparsemem memory_present call Eliminate arch specific memory_present call ia64 NUMA by utilizing sparse_memory_present_with_active_regions. Acked-by: Mel Gorman Signed-off-by: Bob Picco Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit f1c0afa2e8802c01cf82c915e2bb3cb2a81570d4 Author: George Beshers Date: Mon Feb 5 16:20:04 2007 -0800 [IA64] show_mem() for IA64 sparsemem NUMA On the ia64 architecture only this patch upgrades show_mem() for sparse memory to be the same as it was for discontig memory. It has been shown to work on NUMA and flatmem architectures. Signed-off-by: George Beshers Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 671496affdb5228786896864c3f900f66563e8c1 Author: Jan Beulich Date: Mon Feb 5 16:20:03 2007 -0800 [IA64] missing exports hwsw_sync_... Add missing exports to allow several drivers to be built as module with CONFIG_IA64_HP_ZX1_SWIOTLB. Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 71120061f271f00d8280659bf12e065ca6533d4d Author: Kirill Korotaev Date: Mon Feb 5 16:20:00 2007 -0800 [IA64] virt_to_page() can be called with NULL arg It does not return NULL when arg is NULL. Signed-off-by: Alexey Kuznetsov Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit d00195ebc18049f067c8e389c186aa6f5d2b659f Author: Kirill Korotaev Date: Mon Feb 5 16:19:59 2007 -0800 [IA64] alignment bug in ldscript Occasionally the FSYS_RETURN patch list can have an odd length, causing other data structures to get out of alignment. In OpenVZ it is odd and we get misaligned kernel image, which does not boot. Signed-off-by: Alexey Kuznetsov Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 139b830477ccdca21b68c40f9a83ec327e65eb56 Author: Bob Picco Date: Tue Jan 30 02:11:09 2007 -0800 [IA64] register memory ranges in a consistent manner While pursuing and unrelated issue with 64Mb granules I noticed a problem related to inconsistent use of add_active_range. There doesn't appear any reason to me why FLATMEM versus DISCONTIG_MEM should register memory to add_active_range with different code. So I've changed the code into a common implementation. The other subtle issue fixed by this patch was calling add_active_range in count_node_pages before granule aligning is performed. We were lucky with 16MB granules but not so with 64MB granules. count_node_pages has reserved regions filtered out and as a consequence linked kernel text and data aren't covered by calls to count_node_pages. So linked kernel regions wasn't reported to add_active_regions. This resulted in free_initmem causing numerous bad_page reports. This won't occur with this patch because now all known memory regions are reported by register_active_ranges. Acked-by: Mel Gorman Signed-off-by: Bob Picco Acked-by: Simon Horman Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit d1598e05faa11d9f04e0a226122dd57674fb1dab Author: Jan Beulich Date: Wed Jan 3 09:26:21 2007 +0000 [IA64] Enable SWIOTLB only when needed Don't force CONFIG_SWIOTLB on when not actually needed (i.e. HP_ZX1 and SGI_SN2). Signed-off-by: Jan Beulich Signed-off-by: Tony Luck commit 980dbfd421c8d33edbd2fbc8f5a6233ccbefb052 Author: Russ Anderson Date: Mon Jan 8 16:05:08 2007 -0600 [IA64-SGI] Check for TIO errors on shub2 Altix The shub2 error interrupt handler must check for TIO errors. Signed-off-by: Russ Anderson (rja@sgi.com) Signed-off-by: Tony Luck commit f43691ef8a816018a0294c5a9fa9d22512886c49 Author: Alex Williamson Date: Mon Jan 15 09:33:55 2007 -0700 [IA64] remove bogus prototype ia64_esi_init() This function doesn't exist. Signed-off-by: Alex Williamson Signed-off-by: Tony Luck commit 451fe00cf7fd48ba55acd1c8b891e7a65e1b3f81 Author: Alex Williamson Date: Wed Jan 24 22:48:04 2007 -0700 [IA64] Clear IRQ affinity when unregistered When we offline a CPU, migrate_irqs() tries to determine whether the affinity bits of the IRQ descriptor match any of the remaining online CPUs. If not, it fixes up the interrupt to point somewhere else. Unfortunately, if an IRQ is unregistered the IRQ descriptor may still have affinity to the CPU being offlined, but the no_irq_chip handler doesn't provide a set_affinity function. This causes us to hit the WARN_ON in migrate_irqs(). The easiest solution seems to be setting all the bits in the affinity mask when the last interrupt is removed from the vector. I hit this on an older kernel with Xen/ia64 using driver domains (so it probably needs more testing on upstream). Xen essentially uses the bind/unbind interface in sysfs to unregister a device from a driver and thus unregister the interrupt. Signed-off-by: Alex Williamson Signed-off-by: Tony Luck commit 06f87adff12e52429390b22c57443665b073cd82 Author: Len Brown Date: Fri Jan 26 00:38:53 2007 -0500 [IA64] fix ACPI Kconfig issues All IA64 systems except IA64_HP_SIM include ACPI and PCI. So prevent IA64 Kconfigs that try to do irritating things like building PCI without building ACPI. Signed-off-by: Len Brown Signed-off-by: Tony Luck commit c2c77fe8df3e0322a613ba1540910632ad14d96d Author: Bernhard Walle Date: Sun Jan 28 13:47:02 2007 +0100 [IA64] Fix NULL-pointer dereference in ia64_machine_kexec() This patch fixes a NULL-pointer dereference in ia64_machine_kexec(). The variable ia64_kimage is set in machine_kexec_prepare() which is called from sys_kexec_load(). If kdump wasn't configured before, ia64_kimage is NULL. machine_kdump_on_init() passes ia64_kimage() to machine_kexec() which assumes a valid value. The patch also adds a few sanity checks for the image to simplify debugging of similar problems in future. Signed-off-by: Bernhard Walle Signed-off-by: Tony Luck commit 87f76d3aafe5b5e0a1d6d857088a0263b35afa6b Author: bibo,mao Date: Tue Jan 30 11:02:19 2007 +0800 [IA64] find thread for user rbs address I encountered one problem when running ptrace test case the situation is this: traced process's syscall parameter needs to be accessed, but for sys_clone system call with clone_flag (CLONE_VFORK | CLONE_VM | SIGCHLD) parameter. This syscall's parameter accessing result is wrong. The reason is that vforked child process mm point is the same, but tgid is different. Without this patch find_thread_for_addr will return vforked process if vforked process is also stopped, but not the thread which calls vfork syscall. Signed-off-by: Tony Luck commit f5cd7872768d5856b1b409a33f516e5ac7798f75 Author: Olof Johansson Date: Wed Jan 31 21:43:54 2007 -0600 PA Semi PWRficient Ethernet driver Driver for the PA Semi PWRficient on-chip Ethernet (1/10G) Basic enablement, will be complemented with performance enhancements over time. PHY support will be added as well. Signed-off-by: Olof Johansson Signed-off-by: Jeff Garzik commit 1ee6dd770b2302e32fdae489f4fc58c374399da4 Author: Ralf Baechle Date: Wed Jan 31 14:09:29 2007 -0500 s2io: De-typedef driver. Removed namespace collisions due to usage of nic_t as per Ralf's patch Signed-off-by: Sivakumar Subramani Signed-off-by: Jeff Garzik commit a113ae066de6fc7ed33a6f420ea7dd2716a1920a Author: Sivakumar Subramani Date: Wed Jan 31 14:05:51 2007 -0500 s2io: Removed enabling of some of the unused interrupts. Removed unused code in en_dis_able_nic_intrs(), TX_DMA_INTR, RX_DMA_INTR, TX_XGXS_INTR, MC_INTR Signed-off-by: Sivakumar Subramani Signed-off-by: Jeff Garzik commit 372cc5972de0eb5b15403d37fa63dcb4f9134ee0 Author: Sivakumar Subramani Date: Wed Jan 31 13:32:57 2007 -0500 s2io: Fixes in updating skb->truesize and code cleanup. 1. Fix for updating skb->truesize properly. 2. Disable NAPI only if more than one ring configured in case of MSI/MSI-X interrupts. Previously we were disabling NAPI irrespective of number of rings when MSI/MSI-X interrupts were used. 3. Code cleanup. Signed-off-by: Sivakumar Subramani Signed-off-by: Jeff Garzik commit 19a605220cf83a5ec5f8d9f9943e862ebf18f93f Author: Sivakumar Subramani Date: Wed Jan 31 13:30:49 2007 -0500 S2IO: Fixes for reset and link handling. 1. Fix for reset and link handling. 2. Allow for promiscuos mode and multicast state be maintained through ifconfig up and down. 3. Support to print adapter serial number. Signed-off-by: Sivakumar Subramani Signed-off-by: Jeff Garzik commit db874e65ae93861461f83658fdec08368252cd2e Author: Sivakumar Subramani Date: Wed Jan 31 13:28:08 2007 -0500 s2io: Making LRO and UFO as module loadable parameter. This patch adds two load parameters napi and ufo. Previously NAPI was compilation option with these changes wan enable disable NAPI using load parameter. Also we are introducing ufo load parameter to enable/disable ufo feature Signed-off-by: Sivakumar Subramani Signed-off-by: Jeff Garzik commit 7517c1b78759921daa679f1efba5d5dc0c81930e Author: Krzysztof Halasa Date: Tue Jan 30 16:10:24 2007 +0100 PC300too alternative WAN driver The attached patch adds an alternative driver "pc300too" for PCI WAN cards PC300/RSV and PC300/X21 made by Cyclades Corp. (now Avocent Corp). Signed-off-by: Krzysztof Halasa Signed-off-by: Jeff Garzik commit 1d68e93d65d63814388d1a0b3de028de6dc27ae0 Author: Divy Le Ray Date: Tue Jan 30 19:44:35 2007 -0800 cxgb3 - Add dual licensing Dual licensing, needed for OFED 1.2 Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit a13fbee086310cb99a73958943d4d8103bf52f3a Author: Divy Le Ray Date: Tue Jan 30 19:44:29 2007 -0800 cxgb3 - Add Include in adapter.h Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit f2aa52086fef57506980df68b92e6bd6faef3c85 Author: Divy Le Ray Date: Tue Jan 30 19:44:18 2007 -0800 cxgb3 - Remove BUG_ON from t3b_intr_napi In some cases, SG_DATA_INTR won't clear on read and the following interrupt may cause us to assert because NAPI is already scheduled. Remove the assertion, NAPI can handle attempts to rearm it while it's already scheduled. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit f2c6879e062071d94d208fb22800410bf8bab294 Author: Divy Le Ray Date: Tue Jan 30 19:44:13 2007 -0800 cxgb3 - white space to tabs Use tabs in comments. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 3b1d307b319cce3d013801b267965ac4c31ce58c Author: Divy Le Ray Date: Tue Jan 30 19:44:07 2007 -0800 cxgb3 - Clean up HW init routine Clean up the tp_config() routine. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit b5a44bcbf53f1af1f24e7fe0e5008eca85659220 Author: Divy Le Ray Date: Tue Jan 30 19:44:01 2007 -0800 cxgb3 - bogus status error string Remove a status error string from the pci-x context and add it where it belongs - the pci-e context. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 6195c71d652d337521ec8431c0923a85d6aaaf71 Author: Divy Le Ray Date: Tue Jan 30 19:43:56 2007 -0800 cxgb3 - remove SW Tx credits coalescing Remove tx credit coalescing done in SW. The HW is caring care of it already. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 14ab989245069907622ab9fd930275c086cee069 Author: Divy Le Ray Date: Tue Jan 30 19:43:50 2007 -0800 cxgb3 - bind qsets on multiport adapter Inform FW about the queue set->interface mapping. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 4aac38990843b4f165ccf467b772e18827bff84c Author: Divy Le Ray Date: Tue Jan 30 19:43:45 2007 -0800 cxgb3 - FW versioning Clean up FW version checking. The supported FW version is now 3.1. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit b9662d0e9ca3092e1473f27628fd60fa33b1a97a Author: Andrew Morton Date: Tue Jan 30 00:33:04 2007 -0800 git-netdev-all: chelsio fix Cc: "Sunil Naidu" Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 01243ecb794fc008155f257cc25b98e2b8e855e5 Author: Adrian Bunk Date: Sat Jan 27 00:00:03 2007 -0800 remove one remaining "#define BCM_TSO 1" Since it's no longer used, this "#define BCM_TSO 1" can now be removed. Signed-off-by: Adrian Bunk Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 04b588d727cf49321458731727737cf330f04cd2 Author: Ahmed S. Darwish Date: Sat Jan 27 00:00:02 2007 -0800 UCC Ether driver: kmalloc casting cleanups A kmalloc casting cleanup patch. Signed-off-by: Ahmed Darwish Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 7f60c64bd0e7262b51faefcce5d8df9d51d84b60 Author: shemminger@linux-foundation.org Date: Fri Jan 26 11:38:36 2007 -0800 sky2: handle network device allocation failure If alloc_etherdev() failed, then sky2_init_netdev will return NULL, and sky2_probe would end up returning 0 instead of -ENOMEM. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 2bf56fe25cef2a7652f7b2ab37ac14a336c76c75 Author: shemminger@linux-foundation.org Date: Fri Jan 26 11:38:39 2007 -0800 sky2: software rx/tx stats Maintain packet statistics in software rather than hardware. This is slightly slower, but allows easier debugging of problems where packets are still being received by PHY but not being handled by hardware. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 285e6ddd013bafa6278a0e4b76a25a075be74e14 Author: shemminger@linux-foundation.org Date: Fri Jan 26 11:38:40 2007 -0800 sky2: version 1.11.1 Version update to 1.11.1. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e77c2baf75a2ba3d8e7ad8677b193db2d03acace Author: YOSHIFUJI Hideaki / 吉藀英明 Date: Fri Jan 26 22:59:01 2007 +0900 PEGASUS: Fix typo in Corega products. s/FEter/FEther/. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Jeff Garzik commit b29cf31d7ee7da285265577b0df5e62c6b5a6119 Author: YOSHIFUJI Hideaki / 吉藀英明 Date: Fri Jan 26 22:57:38 2007 +0900 ASIX: Add IO-DATA ETG-US2 Support. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Jeff Garzik commit 21828163b2b31e0675cb3e66a2a4a231dec06236 Author: Ayaz Abdulla Date: Tue Jan 23 12:27:21 2007 -0500 forcedeth: statistics optimization This patch optimizes the data paths that can support hw counters. It removes the sw counted statistics. This is the last patch for the optimization set. Bumping up version of driver. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 57fff6986b6daae13947c565786757c05303f0f6 Author: Ayaz Abdulla Date: Tue Jan 23 12:27:00 2007 -0500 forcedeth: statistics supported This patch introduces hw statistics for older devices that supported it. It breaks up the counters supported into separate versions. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 4e16ed1b0e17a3832310031e2ddaeb0914eb837d Author: Ayaz Abdulla Date: Tue Jan 23 12:00:56 2007 -0500 forcedeth: tx max work This patch adds a limit to how much tx work can be done in each iteration of tx processing. If the max limit is reached, remaining tx completions will be handled by timer interrupt. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit f0734ab658390380079369f7090dcf7aa226f394 Author: Ayaz Abdulla Date: Sun Jan 21 18:10:57 2007 -0500 forcedeth: irq data path optimization This patch optimizes the irq data paths and cleans up the code. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit b01867cbd1853995946c8c838eff93a0885d8bc6 Author: Ayaz Abdulla Date: Sun Jan 21 18:10:52 2007 -0500 forcedeth: rx data path optimization This patch optimizes the rx data paths and cleans up the code. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 445583b89d71b48cf8c64e26acc5a710248feed7 Author: Ayaz Abdulla Date: Sun Jan 21 18:10:47 2007 -0500 forcedeth: tx data path optimization This patch optimizes the tx data paths and cleans up the code (removes vlan from descr1/2 since only valid for desc3, changes to make code easier to read, etc). Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit aaa37d2d099f97ced415546e285ac901e47a2437 Author: Ayaz Abdulla Date: Sun Jan 21 18:10:42 2007 -0500 forcedeth: tx limiting This patch optimizes the logic for tx limiting. It adds a flag to check on the completion side instead of recalculating the number of empty slots. Also, it removes the fields that were previous used for limiting since they have no value. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 86b22b0dfbf462e6ed75e54fc83575dae01e3c69 Author: Ayaz Abdulla Date: Sun Jan 21 18:10:37 2007 -0500 forcedeth: optimized routines This patch breaks up the routines into two versions, one for legacy descriptor versions (ver 1 and ver 2) and one for desc ver 3. This will make the new desc functions more leaner and further reductions will be made in next few patches. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 658f648ad1c2876e0ce5401e087d2d21d0262441 Author: Jay Vosburgh Date: Fri Jan 19 18:15:56 2007 -0800 bonding: update version Update version number to reflect recent changes. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 877cbd36b27e073eb78fe7073a433fbe0da7d5f8 Author: Jay Vosburgh Date: Fri Jan 19 18:15:47 2007 -0800 bonding: modify sysfs support to permit multiple loads The existing code would blindly attempt to create the bonding_masters file (in /sys/class/net) every time the module was loaded. When the module is loaded multiple times (which is the historical method used by initscripts and sysconfig to create multiple bonding interfaces), this caused load failure of the second module load attempt, as the creation request would fail. This changes the code to note the failure, arrange to not remove the bonding_masters file upon module exit, and then return success. Bonding interfaces created by the second or subsequent loads of the module will not exist in bonding_masters. This is not a significant change, as previously only the interfaces from the most recent load of the module would be listed. Both situations are less than optimal, but this case permits compatibility with existing distro configuration scripts, and is consistent. Note that previously, the sysfs create request would overwrite the exsting bonding_masters file and succeed, allowing multiple loads of the module. The sysfs code has recently changed to return an error if the file being created already exists. Patrick McHardy , who reported this problem, observed crashes on the old kernel (before sysfs checked for duplicates). I did not experience such crashes, but this change should resolve them. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 09c892797688312dc8a3c4d8b37dcb7207c1d48a Author: Jay Vosburgh Date: Fri Jan 19 18:15:38 2007 -0800 bonding: fix error check in sysfs creation The existing code did not correctly handle failures to create the per-interface sysfs group for bonding. Modified code to notice errors, and correctly unwind. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit e4b91c484611da385e34ff0f8bb2744ae2c735b7 Author: Jay Vosburgh Date: Fri Jan 19 18:15:31 2007 -0800 bonding: fix device name allocation error The code to select names for the bonding interfaces was, for the non-sysfs creation case, always using a hard-coded set of bond0, bond1, etc, up to max_bonds. This caused conflicts for the second or subsequent loads of the module. Changed the code to obtain device names from dev_alloc_name(). Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit bc63eb9c7ec0eb7b091db2d82d46d1e68ff9e231 Author: Akinobu Mita Date: Tue Dec 19 13:09:08 2006 -0800 net: use bitrev8 Use bitrev8 for bmac, mace, macmace, macsonic, and skfp drivers. [akpm@osdl.org: use the API, not the array] Cc: Jeff Garzik Cc: Paul Mackerras Cc: Mirko Lindner Cc: Thomas Bogendoerfer Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 079ca7da1e6d05c7cb82e9c4f2e1d98839332664 Author: Adrian Bunk Date: Tue Dec 12 17:24:39 2006 +0100 bonding.h: "extern inline" -> "static inline" "extern inline" generates a warning with -Wmissing-prototypes and I'm currently working on getting the kernel cleaned up for adding this to the CFLAGS since it will help us to avoid a nasty class of runtime errors. If there are places that really need a forced inline, __always_inline would be the correct solution. Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit bd36b0ac5d06378c95b5149b6df5f413a6c985a5 Author: Ron Mercer Date: Wed Jan 3 16:26:08 2007 -0800 qla3xxx: Add support for Qlogic 4032 chip. Qlogic 4032 chip is an incremental change from the 4022. Signed-off-by: Ron Mercer Signed-off-by: Jeff Garzik commit 83d98b401c053d760e38571595d8f4fa76ee271b Author: Adrian Bunk Date: Thu Jan 4 19:53:30 2007 +0100 remove the broken OAKNET driver The OAKNET driver: - has been marked as BROKEN for more than two years and - is still marked as BROKEN. Drivers that had been marked as BROKEN for such a long time seem to be unlikely to be revived in the forseeable future. But if anyone wants to ever revive this driver, the code is still present in the older kernel releases. Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit 24a427cf76984726641ea0d8163e61e99119069d Author: Stephen Hemminger Date: Mon Jan 8 11:26:12 2007 -0800 chelsio: more rx speedup Cleanup receive processing some more: * do the reserve padding of skb during setup * don't pass constants to get_packet * do smart prefetch of skb * make copybreak a module parameter Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 3de00b8958b12d62712ae9500968c65d3b43bb27 Author: Stephen Hemminger Date: Mon Jan 8 11:26:30 2007 -0800 chelsio: NAPI speed improvement Speedup and cleanup the receive processing by eliminating the mmio read and a lock round trip. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 4d22de3e6cc4a09c369b504cd8bcde3385a974cd Author: Divy Le Ray Date: Thu Jan 18 22:04:14 2007 -0500 Add support for the latest 1G/10G Chelsio adapter, T3. This driver is required by the Chelsio T3 RDMA driver posted by Steve Wise. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 0bf94faf64afaba6e7b49fd11541b59d2ba06d0e Author: Adrian Bunk Date: Thu Jan 11 14:48:59 2007 +0100 make hdlc_setup() static again hdlc_setup was exported, but this export was never used. If a driver using it actually shows up it can still be exported again. Signed-off-by: Adrian Bunk Acked-by: Krzysztof Halasa Signed-off-by: Jeff Garzik commit 0d63fb32b2b8c3464d9c1afc3ce3fd3ceec025b6 Author: Ayaz Abdulla Date: Tue Jan 9 13:30:13 2007 -0500 forcedeth: rx skb recycle This patch removes the code that recycled the skb on error. This will help in reducing the branches in the main data paths. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 164a86e40e6c74ec5a91c364ccf7b1a2295b0a52 Author: Ayaz Abdulla Date: Tue Jan 9 13:30:10 2007 -0500 forcedeth: tx locking This patch reduces the amount of code within the lock to only the critical sections. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 761fcd9e3e0aa2a02231d1631f31409be5e890d2 Author: Ayaz Abdulla Date: Tue Jan 9 13:30:07 2007 -0500 forcedeth: ring access This patch modifys ring access by using pointers. This avoids computing the current index and avoids accessing the base address of the rings. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit d2f7841277d8613a780ab28d04d8f31a31816153 Author: Ayaz Abdulla Date: Tue Jan 9 13:30:02 2007 -0500 forcedeth: dma access This patch allows the hardware to fetch the tx and rx ring descriptors with 64 bytes per access instead of 32 bytes. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 95f48a71a254fa81ae4be1307ce3bb8361521a7d Author: Adrian Bunk Date: Tue Dec 19 13:08:48 2006 -0800 remove the broken SKMC driver The SKMC driver has: - already been marked as BROKEN in 2.6.0 three years ago and - is still marked as BROKEN. Drivers that had been marked as BROKEN for such a long time seem to be unlikely to be revived in the forseeable future. But if anyone wants to ever revive this driver, the code is still present in the older kernel releases. Signed-off-by: Adrian Bunk Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit bf345707299b34de90fbae062eff51e76561eb40 Author: Cesar Eduardo Barros Date: Tue Dec 19 13:08:47 2006 -0800 driver for Silan SC92031 netdev This is a driver for the Silan SC92031/Rsltek 8139D NIC chip. This chip is found on at least one counterfeit Encore ENL832-TX-RENT NIC [1], which came with a mini-CD with the 2.4 driver. A slightly older version of the driver was found at [2]. The main difference between them is that the newer one has a small bugfix in the RX path, a lot of gratuitous renaming of functions, all the printable strings changed to show as a "Rsltek 8139D" [sic], and a PCI ID of 8139 instead of 2031. The driver on this patch is a rewrite of the vendor drivers (based mostly on the older one). Changes from the previous patch sent to netdev: - Use MMIO instead of PIO - Changed TX bounce buffers allocation - Use skb_copy_and_csum_dev - Several small bug fixes - Tested for more than just a few minutes each time [1] See http://www.encore-usa.com/faq.php under ENL832-TX-RENT for more information [2] Look for SL_LINUX.ZIP (which is really a .tar.gz) at http://broadbandforum.in/dataone_Intex_LAN_cardlinux-t4207-s15.html [3] To compile on 2.6.17, simply add back the last argument to the interrupt handler in two places, and copy the boolean declarations from 2.6.19 [akpm@osdl.org: build fixes] Signed-off-by: Cesar Eduardo Barros Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit ae306cca3ada3c84f3e30e1091a98d99ee1d0557 Author: Stephen Hemminger Date: Wed Dec 20 13:06:36 2006 -0800 sky2: better power state management Improve power management and error handling by using pci_set_power_state(), instead of driver doing PCI PM register changes in the driver. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 1d39ed565cfcc7c4fe586de621aef495c4f94ffb Author: Arjan van de Ven Date: Tue Dec 12 14:06:23 2006 +0100 remove NETIF_F_TSO ifdefery Remove the NETIF_F_TSO #ifdef-ery in drivers/net; this was for old-old-2.4 compat (even current 2.4 has NETIF_F_TSO) but it's time to get rid of it by now. Signed-off-by: Arjan van de Ven Signed-off-by: Jeff Garzik commit 6d24998f07588ca83ce04e60af5a79e805df7532 Author: Linas Vepstas Date: Wed Dec 13 15:23:56 2006 -0600 Spidernet RX Debugging printout Add some debugging and error printing. The show_rx_chain() prints out the status of the rx chain, which shows that the status of the descriptors gets messed up after the second & subsequent RX ramfulls. Print out contents of bad packets if error occurs. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit df519ab2c5a774e813459fcb3e3d080276baa7d8 Author: Linas Vepstas Date: Wed Dec 13 15:23:01 2006 -0600 Spidernet Avoid possible RX chain corruption Delete possible source of chain corruption; the hardware already knows the location of the tail, and writing it again is likely to mess it up. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 90476a20fa4742c827b437d9814a51d06c153884 Author: Linas Vepstas Date: Wed Dec 13 15:22:04 2006 -0600 Spidernet Memory barrier Add memory barrier to make sure that the rest of the RX descriptor state is flushed to memory before we tell the hardware that its ready to go. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 2c307db7e40ff537d39c2e66629ba718ee2a8e51 Author: Linas Vepstas Date: Wed Dec 13 15:20:59 2006 -0600 Spidernet RX Chain tail Tell the hardware the location of the rx ring tail. More punctuation cleanup. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit a4182c50bcd6a20caae82c202436fe892f642150 Author: Linas Vepstas Date: Wed Dec 13 15:19:54 2006 -0600 Spidernet Remove unused variable Remove unused variable; this makes code easier to read. Tweak commentary. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 80dab7c7e5b7c4e53e9423c22375bfd9cbf7f2c3 Author: Linas Vepstas Date: Wed Dec 13 15:18:52 2006 -0600 Spidernet RX Refill The invocation of the rx ring refill routine is haphazard, it can be called from a central location. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 7f7223b8f11f9857fba1dbd5474882219a7ae6e9 Author: Linas Vepstas Date: Wed Dec 13 15:17:39 2006 -0600 Spidernet Cleanup return codes Simplify the somewhat convoluted use of return codes in the rx buffer handling. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 366684bd0d6bc5b224fc798675b9a85eb9279227 Author: Linas Vepstas Date: Wed Dec 13 15:16:18 2006 -0600 Spidernet another skb mem leak Another skb leak in an error branch. Fix this by adding call to dev_kfree_skb_irq() after moving to a more appropriate spot. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 05b346b552e13cc090ea908e2be183b377ff30a2 Author: Linas Vepstas Date: Wed Dec 13 15:15:15 2006 -0600 Spidernet RX skb mem leak One of the unlikely error branches has an skb memory leak. Fix this by handling the error conditions consistently. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 1cd173f66c392ede57fa10f614fca22d79501424 Author: Linas Vepstas Date: Wed Dec 13 15:12:26 2006 -0600 Spidernet cleanup un-needed API There is no need to pass a flag into spider_net_decode_one_descr() so remove this, and perform some othre minor cleanup. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 75856175c26f89198ec64eb2480ed00c4a39a5d6 Author: Linas Vepstas Date: Wed Dec 13 15:10:06 2006 -0600 Spidernet remove rxramfull tasklet Get rid of the rxramfull tasklet, and let the NAPI poll routine deal with this situation. (The rxramfull interrupt is simply stating that the h/w has run out of room for incoming packets). Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 5a028877d2a350ebba3cda924cbf7f3bd2eb2135 Author: Linas Vepstas Date: Wed Dec 13 15:08:25 2006 -0600 Spidernet add net_ratelimit to suppress long output This patch adds net_ratelimit to many of the printks in order to limit extraneous warning messages (created in response to Bug 28554). This patch supercedes all previous ratelimit patches. This has been tested, please apply. From: James K Lewis Signed-off-by: James K Lewis Signed-off-by: Linas Vepstas Signed-off-by: Jeff Garzik commit d4ed8f8d1fb7d59eb63d2eada9a32c2f8c3795e2 Author: Linas Vepstas Date: Wed Dec 13 15:06:59 2006 -0600 Spidernet DMA coalescing The current driver code performs 512 DMA mappings of a bunch of 32-byte ring descriptor structures. This is silly, as they are all in contiguous memory. This patch changes the code to dma_map_coherent() each rx/tx ring as a whole. Signed-off-by: Linas Vepstas Cc: James K Lewis Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit 834324687d08e0f67b167934cb56406aa98ff8c6 Author: Francois Romieu Date: Tue Dec 12 00:13:48 2006 +0100 chelsio: tabulate the update of the statistic counters Let's try to avoid some code duplication. - cxgb2 The data are contiguous. Use plain memcpy. - ixf1010/pm3393/vsc7326 The cast of &mac->stats to (u64 *) is not wonderful but it is not clear if it is worth to add an ad-hoc union under the struct cmac_statistics. vsc7326_reg.h suggests that more statistics could be available. Signed-off-by: Francois Romieu commit 3e0f75be52605a901165fa1d8acf4ffd37a4857b Author: Francois Romieu Date: Tue Dec 5 23:57:41 2006 +0100 chelsio: misc cleanups in sge - duplicated code in sge::free_cmdQ_buffers ; - NET_IP_ALIGN is already defined in (included) ; - pci_alloc_consistent() returns void * ; - pci_alloc_consistent() returns a zeroed chunk of memory ; - early return in restart_tx_queues. Signed-off-by: Francois Romieu commit 47cbe6f47d854410d5c296098d87cf8151517c20 Author: Francois Romieu Date: Tue Dec 5 23:19:06 2006 +0100 chelsio: useless test in cxgb2::remove_one pci_get_drvadata() is necessarily distinct from NULL if cxgb2::init_one succeeded. cxgb2::remove_one is solely issued through the PCI device callback. Signed-off-by: Francois Romieu commit d7487421b629c5ca71ce23b10461ef0c3ad2c741 Author: Francois Romieu Date: Mon Dec 11 23:49:13 2006 +0100 chelsio: useless curly braces Signed-off-by: Francois Romieu commit 356bd1460d1e1c4e433e4114fdac02139bddf17c Author: Francois Romieu Date: Mon Dec 11 23:47:00 2006 +0100 chelsio: spaces, tabs and friends Signed-off-by: Francois Romieu commit b7d58394e65c7d90486026614a6ae26d82dd7756 Author: Francois Romieu Date: Mon Dec 11 23:41:36 2006 +0100 chelsio: the return statement is not a function Signed-off-by: Francois Romieu commit c697f83e8c880a1e69fb2a45a6e4aa0670e10602 Author: Francois Romieu Date: Tue Dec 5 22:38:00 2006 +0100 chelsio: move return, break and continue statements on their own line Signed-off-by: Francois Romieu commit ea8862dc86c0f5a0be012a0f2e9de1b2ccabbaa5 Author: Zhu Yi Date: Thu Jan 11 17:32:54 2007 +0800 [PATCH] ipw2200: add iwconfig rts/frag auto support This patch add ipw2200 support for iwconfig rts/frag auto. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 2e9b2467de69733c9ac455e261aef302d288fb17 Author: Daniel Drake Date: Thu Jan 4 03:33:54 2007 +0000 [PATCH] zd1211rw: Add ID for ZyXEL ZyAIR G-220 v2 Tested by Marijn Schouten zd1211b chip 0586:340f v4810 high 00-13-49 AL2230_RF pa0 g--- FCC ID: I88G220V2 Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 6bbdce5ac755e3b3cdcf9bb9fdbcc2af78ad34d0 Author: John W. Linville Date: Tue Jan 2 21:22:05 2007 -0500 [PATCH] softmac: avoid assert in ieee80211softmac_wx_get_rate Unconfigured bcm43xx device can hit an assert() during wx_get_rate queries. This is because bcm43xx calls ieee80211softmac_start late (i.e. during open instead of probe). bcm43xx_net_open -> bcm43xx_init_board -> bcm43xx_select_wireless_core -> ieee80211softmac_start Fix is to check that device is running before completing ieee80211softmac_wx_get_rate. Signed-off-by: John W. Linville commit ff86a543e9de35c5b17a289a58aed0be4e7b9d22 Author: Kai Engert Date: Tue Dec 12 21:09:41 2006 +0100 [PATCH] prism54: add ethtool -i interface Add support for "ethtool -i" to prism54 driver. ethtool -i queries the specified device for associated driver information. This helps tools like Fedora's system-config-network to provide GUI management of network devices. I learned how to write this patch by reading the ipw2100 driver code. Signed-off-by: Kai Engert Signed-off-by: John W. Linville commit 01917382865bb640fc00df7ea476a14c8c539ec3 Author: Larry Finger Date: Sat Dec 30 23:30:32 2006 -0600 [PATCH] bcm43xx: Interrogate hardware-enable switch and update LEDs The current bcm43xx driver ignores any wireless-enable switches on mini-PCI and mini-PCI-E cards. This patch implements a new routine to interrogate the radio hardware enabled bit in the interface, logs the initial state and any changes in the switch (if debugging enabled), activates the LED to show the state, and changes the periodic work handler to provide 1 second response to switch changes and to account for changes in the periodic work specs. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 33218ba1d114c2d8ce275b74ad47d0718af99a5a Author: Daniel Drake Date: Sat Dec 30 22:38:23 2006 +0000 [PATCH] zd1211rw: Add ID for Linksys WUSBF54G Tested by Henrik Hjelte zd1211b chip 13b1:0024 v4802 high 00-14-bf AL2230_RF pa0 ---- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit c10ca77368a87079ff0303d8b7506f0e8a2be6d1 Author: Michael Buesch Date: Fri Dec 15 21:32:44 2006 +0100 [PATCH] Update Prism54 MAINTAINERS entry prism54-private@prism54.org bounces with SMTP error from remote mailer after RCPT TO:: host mx1.tuxfamily.net [212.85.158.8]: 550 unknown user developers@islsm.org seems to be the new mailing list. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 0ce34bc8f7d906d66ce6803f63399ef9bbe54012 Author: Daniel Drake Date: Tue Dec 12 01:26:11 2006 +0000 [PATCH] zd1211rw: Remove addressing abstraction Instead of passing our own custom 32-bit addresses around and translating them, this patch makes all our register address constants absolute and removes the translation. There are two ugly parts: - fw_reg_addr() is needed to compute addresses of firmware registers, as this is dynamic based upon firmware - inc_addr() needs a small hack to handle byte vs word addressing However, both of those are only small, and we don't use fw_regs a whole lot anyway. The bonuses here include simplicity and improved driver readability. Also, the fact that registers are now referenced by 16-bit absolute addresses (as opposed to 32-bit pseudo addresses) means that over 2kb compiled code size has been shaved off. Includes some touchups and sparse fixes from Ulrich Kunitz. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit ee30276774451d657407855d95d9393ee8bc0bac Author: Daniel Drake Date: Tue Dec 12 01:25:52 2006 +0000 [PATCH] zd1211rw: Consistency for address space constants The zd1211rw address space has confused me once too many times. This patch introduces the following naming notation: Memory space is split into segments (cr, fw, eeprom) and segments may contain components (e.g. boot code inside eeprom). These names are arbitrary and only for the description below: x_START: Absolute address of segment start (previously these were named such as CR_BASE_OFFSET, but they weren't really offsets unless you were considering them as an offset to 0) x_LEN: Segment length x_y_LEN: Length of component y of segment x x_y_OFFSET: Relative address of component y into segment x. The absolute address for this component is (x_START + x_y_OFFSET) I also renamed EEPROM registers to EEPROM data. These 'registers' can't be written to using standard I/O and really represent predefined data from the vendor. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit a2bdcc679288307f9237c9611a0cc0c3c06669a9 Author: Daniel Drake Date: Tue Dec 12 01:25:37 2006 +0000 [PATCH] zd1211rw: 2 new ZD1211B device ID's Philips SNU5600, tested by unibrow zd1211b chip 0471:1236 v4810 high 00-12-bf AL2230_RF pa0 g-- SMC Ez Connect 802.11g (SMCWUSB-G), tested by Victorino Sanz Prat zd1211b chip 083a:4505 v4810 full 00-13-f7 AL2230_RF pa0 g--N Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 34c4491264ceafa5c81f74a5f24f49e8e24f12f2 Author: Daniel Drake Date: Tue Dec 12 01:25:13 2006 +0000 [PATCH] zd1211rw: Generic HMAC initialization Many of the registers written during ZD1211 HMAC initialization are duplicated exactly for ZD1211B. Move the identical ones into a generic part, and write the hardware-specific ones separately. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 7e721579479350b15b2bf1e232cd372c704aff7b Author: Auke Kok Date: Thu Jan 18 09:25:33 2007 -0800 e1000: update version to 7.3.20-k2 Signed-off-by: Auke Kok commit 7753b171c4e7604294060d4039214c8c8319bfca Author: Jesse Brandeburg Date: Thu Jan 18 09:25:31 2007 -0800 e1000: tune our dynamic itr transmit packet accounting The driver was still mis-calculating the number of bytes sent during transmit, now the driver computes what appears to be exactly 100% correct byte counts (not including CRC) when figuring out how many bytes and frames were sent during the current transmit packet. commit f6c57bafcdebed4429cdda206149ddcbb1d46e91 Author: Bruce Allan Date: Thu Jan 18 09:25:28 2007 -0800 e1000: clear ip csum info from context descriptor Since the driver sets the IP checksum insertion bit (IXSM in Status field) in transmit context descriptors, it should clear the IP checksum bits of any garbage so as not to confuse the hardware. Signed-off-by: Bruce Allan Signed-off-by: Auke Kok commit 9669f53b98974ede4728e288316296666722ab8c Author: Auke Kok Date: Thu Jan 18 09:25:26 2007 -0800 e1000: display flow control of link status at link up Print RX/TX flow control setting at link up time to display the actual link FC properties instead of the advertised values. Signed-off-by: Auke Kok commit 60cba200f11b6f90f35634c5cd608773ae3721b7 Author: Jesse Brandeburg Date: Thu Jan 18 09:25:23 2007 -0800 e1000: fix NAPI performance on 4-port adapters This fix attempts to solve a customer (IBM) reported issue with NAPI enabled e1000 having bad performance when transmitting simultaneously on four ports. The issue comes down to an interaction between NAPI, hardware interrupt balancing, and the driver rescheduling poll on the same processor. Try to fix by allowing the driver to re-enable interrupts sooner instead of polling one more time, when there was recently all the work completed in cleanup. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit b5fc8f0c43d388d76ebbb5650b20f4ce4420a5ad Author: Jesse Brandeburg Date: Thu Jan 18 09:25:21 2007 -0800 e1000: Fix MSI only interrupt handler routine Unfortunately the read-free MSI interrupt handler needs to flush write the icr register and thus we can't be read-free. Our MSI irq routine thus becomes a lot more simpler since we don't need to track link state anymore. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit bf3cea4d8a1a8deb21d247a0622f1aa54270e0f9 Author: Auke Kok Date: Thu Jan 18 09:25:18 2007 -0800 e1000: clean up debug output defines Remove unused MSGOUT macro and add "\n" to function debug output. Signed-off-by: Auke Kok commit 9990fa3cbd35046cce1eb4667bb2e33057c5ca1a Author: Jesse Brandeburg Date: Thu Jan 18 09:25:15 2007 -0800 e1000: simplify case handling gigabit at half duplex Remvoe duplicate code handling erraneous user supplied wrong case of gigabit speed with half duplex. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit ae0af3e3462fdada42deba30479aba70c6cf8b72 Author: Aron Griffis Date: Mon Feb 5 13:54:31 2007 -0800 [IA64] use snprintf() on features field of /proc/cpuinfo Some patches have turned up on xen-devel recently to convert strcpy() to safer alternatives and so forth. While reviewing those patches I noticed that the features string building could be cleaned up. This patch uses snprintf() instead of strcpy() and direct character pointer manipulation. It makes the features string building safe and gets rid of the special case for features output in show_cpuinfo() Additionally I removed the (int) cast of ARRAY_SIZE, which seems to serve no purpose. Signed-off-by: Aron Griffis Signed-off-by: Tony Luck commit 90f9d70a582c02f50b4dd847166cd5b037219891 Author: bibo,mao Date: Wed Jan 31 17:50:31 2007 +0800 [IA64] enable singlestep on system call As is pointed out in http://www.gelato.org/community/view_linear.php?id=1_1036&from=authors&value=Ian%20Wienand#1_1039, if single step on break instruction, the break fault has higher priority than the single-step trap. When the break fault handler is entered, it advances the IP by 1 instruction so break instruction single-stepping is skipped, actually it is next instruction which is single stepped. This patch modifies this, it adds TIF_SINGLESTEP bit for thread flags, and generate a fake sigtrap when single stepping break instruction. Test case in attachment can verify this. Any comments is welcome. Signed-off-by: bibo, mao Signed-off-by: Tony Luck commit c237508afa5d47282d3047784864013eebdc68ab Author: Horms Date: Mon Feb 5 13:49:10 2007 -0800 [IA64] kexec: Move machine_shutdown from machine_kexec.c to process.c This moves the ia64 implementation of machine_shutdown() from machine_kexec.c to process.c, which is in keeping with the implelmentation on other architectures, and seems like a much more appropriate home for it. Signed-off-by: Simon Horman Signed-off-by: Tony Luck commit 4d284cac76d0bfebc42d76b428c4e44d921200a9 Author: Heiko Carstens Date: Mon Feb 5 21:18:53 2007 +0100 [S390] Avoid excessive inlining. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 162e006ef59266b9ebf34e3d15ca1f3d9ee956d7 Author: Heiko Carstens Date: Mon Feb 5 21:18:41 2007 +0100 [S390] Mark kernel text section read-only. Set read-only flag in the page table entries for the kernel image text section. This will catch all instruction caused corruptions withing the text section. Instruction replacement via kprobes still works, since it bypasses now dynamic address translation. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit ab14de6c37fae22911ba99f4171613e6d758050b Author: Heiko Carstens Date: Mon Feb 5 21:18:37 2007 +0100 [S390] Convert memory detection into C code. Hopefully this will make it more maintainable and less error prone. Code makes use of search_exception_tables(). Since it calls this function before the kernel exeception table is sorted, there is an early call to sort_main_extable(). This way it's easy to use the already present infrastructure of fixup sections. Also this would allows to easily convert the rest of head[31|64].S into C code. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 31ee4b2f40994e8b21691f85cdd4052551a789b7 Author: Martin Schwidefsky Date: Mon Feb 5 21:18:31 2007 +0100 [S390] Calibrate delay and bogomips. Preset the bogomips number to the cpu capacity value reported by store system information in SYSIB 1.2.2. This value is constant for a particular machine model and can be used to determine relative performance differences between machines. Signed-off-by: Martin Schwidefsky commit 31cb4bd31a48f62105d037ad53192b94d4c08f53 Author: Michael Holzheu Date: Mon Feb 5 21:18:29 2007 +0100 [S390] Hypervisor filesystem (s390_hypfs) for z/VM This is an extension of the already existing hypfs for LPAR (DIAG 204). Data returned by DIAG 2fc is exported using the s390_hypfs when Linux is running under z/VM. Information about cpus and memory is provided. Data is put into different virtual files which can be accessed from user space. All values are represented as ASCII strings Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit cced1dd42ebcebc7fa7f02fe487e48aa71752401 Author: Michael Holzheu Date: Mon Feb 5 21:18:26 2007 +0100 [S390] Add crypto support for 3592 tape devices 3592 tape devices are able to write data encrpyted on tape mediums. This z/Linux device driver support includes the following functions: * ioctl to switch on/off encryption * ioctl to query encryption status of drive * ioctls to set and query key encrypting keys (kekls) * long busy interrupt handling Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit fe355b7f1c7400cbb71762a1237461be03f88265 Author: Hongjie Yang Date: Mon Feb 5 21:18:24 2007 +0100 [S390] boot from NSS support Add support to boot from a named saved segment (NSS). Signed-off-by: Hongjie Yang Signed-off-by: Martin Schwidefsky commit 1b2782948997cf5a0d1747de13d43ba7dfa7c543 Author: Jan Glauber Date: Mon Feb 5 21:18:22 2007 +0100 [S390] Support for s390 Pseudo Random Number Generator Starting with the z9 the CPU Cryptographic Assist Facility comes with an integrated Pseudo Random Number Generator. The generator creates random numbers by an algorithm similar to the ANSI X9.17 standard. The pseudo-random numbers can be accessed via a character device driver node called /dev/prandom. Similar to /dev/urandom any amount of bytes can be read from the device without blocking. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit d54853ef8cb17296ac7bce9c77430fb7c80532d0 Author: Martin Schwidefsky Date: Mon Feb 5 21:18:19 2007 +0100 [S390] ETR support. This patch adds support for clock synchronization to an external time reference (ETR). The external time reference sends an oscillator signal and a synchronization signal every 2^20 microseconds to keep the TOD clocks of all connected servers in sync. For availability two ETR units can be connected to a machine. If the clock deviates for more than the sync-check tolerance all cpus get a machine check that indicates that the clock is out of sync. For the lovely details how to get the clock back in sync see the code below. Signed-off-by: Martin Schwidefsky commit c1821c2e9711adc3cd298a16b7237c92a2cee78d Author: Gerald Schaefer Date: Mon Feb 5 21:18:17 2007 +0100 [S390] noexec protection This provides a noexec protection on s390 hardware. Our hardware does not have any bits left in the pte for a hw noexec bit, so this is a different approach using shadow page tables and a special addressing mode that allows separate address spaces for code and data. As a special feature of our "secondary-space" addressing mode, separate page tables can be specified for the translation of data addresses (storage operands) and instruction addresses. The shadow page table is used for the instruction addresses and the standard page table for the data addresses. The shadow page table is linked to the standard page table by a pointer in page->lru.next of the struct page corresponding to the page that contains the standard page table (since page->private is not really private with the pte_lock and the page table pages are not in the LRU list). Depending on the software bits of a pte, it is either inserted into both page tables or just into the standard (data) page table. Pages of a vma that does not have the VM_EXEC bit set get mapped only in the data address space. Any try to execute code on such a page will cause a page translation exception. The standard reaction to this is a SIGSEGV with two exceptions: the two system call opcodes 0x0a77 (sys_sigreturn) and 0x0aad (sys_rt_sigreturn) are allowed. They are stored by the kernel to the signal stack frame. Unfortunately, the signal return mechanism cannot be modified to use an SA_RESTORER because the exception unwinding code depends on the system call opcode stored behind the signal stack frame. This feature requires that user space is executed in secondary-space mode and the kernel in home-space mode, which means that the addressing modes need to be switched and that the noexec protection only works for user space. After switching the addressing modes, we cannot use the mvcp/mvcs instructions anymore to copy between kernel and user space. A new mvcos instruction has been added to the z9 EC/BC hardware which allows to copy between arbitrary address spaces, but on older hardware the page tables need to be walked manually. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 86aa9fc2456d8a662f299a70bdb70987209170f0 Author: Jan Glauber Date: Mon Feb 5 21:18:14 2007 +0100 [S390] move crypto options and some cleanup. This patch moves the config options for the s390 crypto instructions to the standard "Hardware crypto devices" menu. In addition some cleanup has been done: use a flag for supported keylengths, add a warning about machien limitation, return ENOTSUPP in case the hardware has no support, remove superfluous printks and update email addresses. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 347d59d7e9739ff2acbaa751b6225ecb335c3f29 Author: Cornelia Huck Date: Mon Feb 5 21:17:56 2007 +0100 [S390] cio: Don't spam debug feature. Lower priority of "Blacklisted device detected" messages so we don't overwrite more useful messages. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 184357a59669e2b1f9bb684c598458717207793b Author: Peter Oberparleiter Date: Mon Feb 5 21:17:42 2007 +0100 [S390] Cleanup of CHSC event handling. Change CHSC event handling to be more easily extensible. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 0f008aa300f1a48144a1b988a85db9d330f884b7 Author: Peter Oberparleiter Date: Mon Feb 5 21:17:40 2007 +0100 [S390] cio: declare hardware structures packed. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 9b241cc862d55038c43feee86670cb7d86cf01c1 Author: Heiko Carstens Date: Mon Feb 5 21:17:38 2007 +0100 [S390] Add set_fs(USER_DS) to start_thread(). Currently works anyway since search_binary_handler has a set_fs(USER_DS). But start_thread() is the place where this should be done. Following all other architectures... Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 758976f9a55cb22ddc602a0690d67f9546e3e43f Author: Cornelia Huck Date: Mon Feb 5 21:17:36 2007 +0100 [S390] cio: Catch operand exceptions on stsch. If we have a subchannel id which has been generated via for_each_subchannel(), it might contain an invalid subchannel set id. We need to catch the ensuing operand exception by using stsch_err() instead of stsch() in all possible cases. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit d8c351a97e492dcf24021a0875bf138bfa1374f9 Author: Heiko Carstens Date: Mon Feb 5 21:17:34 2007 +0100 [S390] Fix register usage description. Fix description of register usage as pointed out by Andreas Krebbel. Since this document is completely outdated and would need a lot of fixing, it might be worth considering to get rid of it... Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit d42335a33b2ca2406d57bb8f0cf00adbdda8cede Author: Heiko Carstens Date: Mon Feb 5 21:17:32 2007 +0100 [S390] kretprobe_trampoline_holder() in wrong section. kretprobe_trampoline_holder() is in kprobes section but used to register a kprobe in arch_init_kprobes(). Hence register_kprobe() and therefore arch_init_kprobes() will fail. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 35df8d53f5c951ac0cd79f1084e6787ca5980207 Author: Heiko Carstens Date: Mon Feb 5 21:17:29 2007 +0100 [S390] Fix kprobes breakpoint handling. In case of an illegal op the die notifier gets called with DIE_TRAP instead of DIE_BPT first. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit d58140cc18b3d69e86dead47aab5c838c08dc37e Author: Martin Schwidefsky Date: Mon Feb 5 21:17:27 2007 +0100 [S390] Update maintainers file. Use the new linux-s390@vger.kernel.org mailing list instead of linux-390@vm.marist.edu. Signed-off-by: Martin Schwidefsky commit 336c340b682daa283acf9202a07c4fd5c28e53a5 Author: Horst Hummel Date: Mon Feb 5 21:17:24 2007 +0100 [S390] dasd: fix unconditional reserve handling. The reserve/release IOCTLs sometimes do not work. If second system does a 'steal lock' the pending unit check (Format 3 Msg F) is delivered. Since ERP is disabled for reserve/release, the IOCTL call fails. We have to allow basic ERP (retries) for reserve/release IOCTLs. Signed-off-by: Horst Hummel Signed-off-by: Martin Schwidefsky commit db2738197b52f02f4c599c1ae3f66ae1894406cd Author: Horst Hummel Date: Mon Feb 5 21:17:22 2007 +0100 [S390] Remove dasd_ccw_log function. Logging of relevant information is already done by disciplines dump_sense function. Signed-off-by: Horst Hummel Signed-off-by: Martin Schwidefsky commit c48e09131bd7c632c80a3245688d2d29dbc4f6b5 Author: Heiko Carstens Date: Mon Feb 5 21:17:20 2007 +0100 [S390] Small barrier() and cpu_relax() cleanup. cpu_relax() has barrier() semantics hence there is no need to use both of them in conjunction in sclp_sync_wait(). Also change cpu_relax() so it's more obvious that it has barrier semantics. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 1125b4640fea29aafe9bf24672e2da9672f6592e Author: Cornelia Huck Date: Mon Feb 5 21:17:18 2007 +0100 [S390] cio: Use device_{create,remove}_bin_file. Create/remove the channel measurement binary files with device_{create,remove}_bin_file instead of sysfs_{create,remove}_bin_file. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit c59d744bd8a0e283daf6726881e4c9aa4bd25261 Author: Heiko Carstens Date: Mon Feb 5 21:17:16 2007 +0100 [S390] sclp: don't call local_bh_disable/_local_bh_enable if in_interrupt() local_bh_disable/_local_bh_enable must not be called if in_irq() is true. Besides that if in_interrupt() is true bottom halves are disabled anyway. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 444f0e5489e7ac4bca5c4748d7d846c352a5cd03 Author: Gerald Schaefer Date: Mon Feb 5 21:17:11 2007 +0100 [S390] Show loaded DCSS segments under /proc/iomem. Currently loaded DCSS segments are now listed in /proc/iomem with their name followed by a trailing "(DCSS)". Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 18374d376c7eb30b6359759e767cd99397b377d2 Author: Cornelia Huck Date: Mon Feb 5 21:17:09 2007 +0100 [S390] cio: Restart path verification after unsolicited interrupt. If we try to start path verification when an unsolicited interrupt is already pending, stctl shows status pending and we delay path verification again. We need to check for the doverify bit when the unsolicited interrupt comes in and then do path verification. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit b075083f35309c4f3e50886d6f31a3a0e07a29b5 Author: Heiko Carstens Date: Mon Feb 5 21:17:07 2007 +0100 [S390] Fix FCP dump feature detection. FCP dump feature detection works only if the sclp command in head.S was succesful. Since the sclp command is skipped if diag260 works, we don't have any dump feature detection anymore. Bug was introduced with d57de5a36791cb1b7285649c62f183b0d3505f7d. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit e3c699b38ef3c59521fdd1732efcaaa789d81440 Author: Stefan Weinhuber Date: Mon Feb 5 21:17:04 2007 +0100 [S390] dasd: fix bug in dasd initialization cleanup The initialization of the dasd_eer code is one of the last steps of the dasd driver initialization. When initialization fails in one of the earlier steps, the dasd_exit function is called to clean up what has been done so far. So the dasd_eer_exit function may be called, although the dasd_eer_init function wasn't called before and dasd_eer_exit tries to unregister a misc device that wasn't registered, which results in a BUG. Make sure that dasd_eer_exit can be called without initialization. Use a dynamically allocated struct miscdevice instead of a static one, so we only try to unregister the device if it exists and was actually registered. Signed-off-by: Stefan Weinhuber Signed-off-by: Martin Schwidefsky commit dbd8ae63065189b12c46bdc58799dc353e4b3a53 Author: Peter Oberparleiter Date: Mon Feb 5 21:17:00 2007 +0100 [S390] sclp: invalid handling of temporary 'not operational' status Requests are aborted when the sclp interface reports 'not operational' even though they may still be active at the sclp, leading to concurrent writes to request memory by both the kernel and the sclp interface. Do not abort requests for which the sclp interface reports not operational status during request retry. Signed-off-by: Peter Oberparleiter 5A Signed-off-by: Martin Schwidefsky commit 3b0b4af2c7593af6dfe92afa1033033c4746ec11 Author: Heiko Carstens Date: Mon Feb 5 21:16:58 2007 +0100 [S390] Simplify virt_to_phys. No need to use lrag in 64 bit addressing mode since lra will do the same. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 32c5b050927c515cea4083eb8f3a7177dc4279a1 Author: Cornelia Huck Date: Mon Feb 5 21:16:56 2007 +0100 [S390] cio: Remove check for ssd in chpids_show(). Since ssd_info is now available before the subchannel is registered, we don't need to check whether it is available. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit bda3563fb28e3a4260ac3566cf11700792a336bb Author: Christian Borntraeger Date: Mon Feb 5 21:16:54 2007 +0100 [S390] cpcmd with vmalloc addresses. Change the bounce buffer logic of cpcmd. diag8 needs _real_ memory below 2GB. Therefore vmalloced data does not work. As the data might cross a page boundary, we cannot use virt_to_page either. The solution is to use virt_to_page only in the check for a bounce buffer. There was a redundant check for response==NULL. response < 2GB contains this check as well. I also removed the rlen==0 check, since rlen=0 and response!=NULL would be a caller bug and response==NULL is already checked. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 60383201c2c155fae2aaffd483d09eb4198b6356 Author: Heiko Carstens Date: Mon Feb 5 21:16:52 2007 +0100 [S390] Remove pointless/unreliable kernel messages. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit b0f1779a878cf15b07181ef31394ecd33b40c470 Author: Akinobu Mita Date: Mon Feb 5 21:16:49 2007 +0100 [S390] Check the return value of kthread_run(). Signed-off-by: Akinobu Mita Signed-off-by: Martin Schwidefsky commit 2b67fc46061b2171fb8fbb55d1ac717abd533569 Author: Heiko Carstens Date: Mon Feb 5 21:16:47 2007 +0100 [S390] Get rid of a lot of sparse warnings. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 55dff5224abeb734b12c1661c34ccf534955bee7 Author: Heiko Carstens Date: Mon Feb 5 21:16:44 2007 +0100 [S390] Move init_irq_proc to the other irq related functions. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 9473252f20e8482464415d9030b3957b5593796d Author: Horms Date: Mon Feb 5 10:17:38 2007 +0900 [IA64] add newline to PAL-code warning message Signed-off-by: Simon Horman Signed-off-by: Tony Luck commit abac08dbb4739f417f570e5bdf03af36150b28c3 Author: Horms Date: Mon Feb 5 10:16:20 2007 +0900 [IA64] kexec: Remove inline declaration of efi_get_pal_addr() Remove the Remove inline declaration of efi_get_pal_addr() as it is declared in linux/efi.h. Signed-Off-By: Simon Horman Signed-off-by: Tony Luck commit 8a697d0a4c8e7ed51cf71a467ad59c25bfb85b44 Author: Horms Date: Mon Feb 5 10:17:22 2007 +0900 [IA64] kexec: Minor enhancement to includes in crash.c linux/uaccess.h was being included, but it seems that really the following includes are needed. asm/page.h: for __va() and PAGE_SHIFT asm/uaccess.h: for copy_to_user() I guess that linux/uaccess.h pulls in both asm/page.h and asm/uaccess.h. I notices this while backporting the code to xen's linux-2.6.16.33, which does not have linux/uaccess.h. I'm posting it as I think it is a correct, though somewhat cosmetic fix. Signed-off-by: Simon Horman Signed-off-by: Tony Luck commit 233c2f99d6605343fa4a4c68560a4f74882b2693 Author: Horms Date: Mon Feb 5 11:05:29 2007 +0900 [IA64] kexec: typo in the saved_max_pfn description in contig.c Fix a typo in the saved_max_pfn description in contig.c Signed-off-by: Simon Horman Signed-off-by: Tony Luck commit 475c63bded322545d1e9ccc5930c8903d2c97c4c Author: Horms Date: Mon Feb 5 10:59:03 2007 +0900 [IA64] Zero size /proc/vmcore on ia64 Set saved_max_pfn when discontig memory is in use. This sets up saved_max_pfn when disctontig memory is in use. This mirrors the code for contig memory. This patch does not entirely solve the problem of making vmcore work, however it does appear to be neccessary. Please consider applying. Signed-off-by: Simon Horman Signed-off-by: Tony Luck commit bcb9b99d1fb6a1cbe592f131dc95450d2f18c91f Author: Magnus Damm Date: Mon Feb 5 15:43:42 2007 +0900 [IA64] kexec: Fix CONFIG_SMP=n compilation Kexec support for 2.6.20 on ia64 does not build properly using a config made up by CONFIG_SMP=n and CONFIG_HOTPLUG_CPU=n: Signed-off-by: Magnus Damm Acked-by: Simon Horman Acked-by: Jay Lan Signed-off-by: Tony Luck commit a34fbc6363256387372331000462691bc4b3f5a9 Author: Patrick Caulfield Date: Thu Feb 1 16:46:33 2007 +0000 [DLM] fix softlockup in dlm_recv This patch stops the dlm_recv workqueue from busy-waiting when a node disconnects. This can cause soft lockup errors on debug systems and bad performance generally. Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 62a0f62369b0fece37f6652d69b918c89d53c3b3 Author: David Teigland Date: Wed Jan 31 13:25:00 2007 -0600 [DLM] zero new user lvbs A new lvb for a userland lock wasn't being initialized to zero. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 9beeb9f3c5b0401491f59b71521ab2678f584b09 Author: Randy Dunlap Date: Tue Jan 30 14:30:08 2007 -0800 [DLM/GFS2] indent help text Indent help text as expected. Signed-off-by: Randy Dunlap Signed-off-by: Steven Whitehouse commit ddee76089cc9bcbd8ae9ec6c26e726a8ab2fe675 Author: Russell Cattelan Date: Mon Jan 29 17:13:44 2007 -0600 [GFS2] Fix unlink deadlocks Move the glock acquisition to outside of the transactions. Lock odering must be preserved in order to prevent ABBA deadlocks. The current gfs2_change_nlink code would tries to grab the glock after having started a transaction and thus is holding the log lock. This is inconsistent with other code paths in gfs that grab the resource group glock prior to staring a tranactions. One problem with this fix is that the resource group lock is always grabbed now even if the inode still has ref count and can not be marked for unlink. Signed-off-by: Russell Cattelan Signed-off-by: Steven Whitehouse commit 61be084efcc4451934257350281962595418a33c Author: Steven Whitehouse Date: Mon Jan 29 11:51:45 2007 +0000 [GFS2] Put back semaphore to avoid umount problem Dave Teigland fixed this bug a while back, but I managed to mistakenly remove the semaphore during later development. It is required to avoid the list of inodes changing during an invalidate_inodes call. I have made it an rwsem since the read side will be taken frequently during normal filesystem operation. The write site will only happen during umount of the file system. Also the bug only triggers when using the DLM lock manager and only then under certain conditions as its timing related. Signed-off-by: Steven Whitehouse Cc: David Teigland commit bbb28ab7599789740b2233a0805d22aefb97f533 Author: Eric Sandeen Date: Mon Jan 29 11:11:51 2007 -0600 [GFS2] more CURRENT_TIME_SEC Whoops, quilt user error, missed this one in the previous patch. Signed-off-by: Eric Sandeen Signed-off-by: Steven Whitehouse commit 001172778543c6997d3339f43085e43460e5883a Author: Adrian Bunk Date: Sun Jan 28 17:19:50 2007 +0100 [GFS2/DLM] fix GFS2 circular dependency On Sun, Jan 28, 2007 at 11:08:18AM +0100, Jiri Slaby wrote: > Andrew Morton napsal(a): > >Temporarily at > > > > http://userweb.kernel.org/~akpm/2.6.20-rc6-mm1/ > > Unable to select IPV6. Menuconfig doesn't offer it when INET is selected. > When it's not it appears in the menu, but after state change it gets away. > The same behaviour in xconfig, gconfig. > > $ mkdir ../a/tst > $ make O=../a/tst menuconfig > HOSTCC scripts/basic/fixdep > [...] > HOSTLD scripts/kconfig/mconf > scripts/kconfig/mconf arch/i386/Kconfig > Warning! Found recursive dependency: INET GFS2_FS_LOCKING_DLM SYSFS > OCFS2_FS INET > > Maybe this is the problem? Yes, patch below. > regards, cu Adrian <-- snip --> This patch fixes a circular dependency by letting GFS2_FS_LOCKING_DLM and DLM depend on instead of select SYSFS. Since SYSFS depends on EMBEDDED this change shouldn't cause any problems for users. Signed-off-by: Adrian Bunk Acked-by: Randy Dunlap Signed-off-by: Steven Whitehouse commit 67f55897ee5ffa16ca00ed39d176dc52b5066679 Author: Randy Dunlap Date: Thu Jan 25 18:42:39 2007 -0800 [GFS2/DLM] use sysfs With CONFIG_DLM=m, CONFIG_PROC_FS=n, and CONFIG_SYSFS=n, kernel build fails with: WARNING: "kernel_subsys" [fs/gfs2/locking/dlm/lock_dlm.ko] undefined! WARNING: "kernel_subsys" [fs/dlm/dlm.ko] undefined! WARNING: "kernel_subsys" [fs/configfs/configfs.ko] undefined! make[1]: *** [__modpost] Error 1 make: *** [modules] Error 2 Since fs/dlm/lockspace.c and fs/gfs2/locking/dlm/sysfs.c use kernel_subsys, they should either DEPEND on it or SELECT it. Signed-off-by: Randy Dunlap Signed-off-by: Steven Whitehouse commit ee32e4f3d347e4b562de0bd70be99e622d7d1a9f Author: David Teigland Date: Thu Jan 25 14:24:04 2007 -0600 [GFS2] make lock_dlm drop_count tunable in sysfs We want to be able to change or disable the default drop_count (number at which the dlm asks gfs to limit the the number of locks it's holding). Add it to the collection of sysfs tunables for an fs. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 2f708649baad6350f506e7f5ca6649e32a8e4b49 Author: David Teigland Date: Thu Jan 25 13:50:52 2007 -0600 [GFS2] increase default lock limit Increase the number of locks at which point the dlm begins asking gfs to reduce its lock usage. The default value is largely arbitrary, but the current value of 50,000 ends up limiting performance unnecessarily for too many users. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 8bd9572769767c6fd164cff4e1202df12cb34b4a Author: Steven Whitehouse Date: Thu Jan 25 10:04:20 2007 +0000 [GFS2] Fix list corruption in lops.c The patch below appears to fix the list corruption that we are seeing on occasion. Although the transaction structure is private to a single thread, when the queued structures are dismantled during an in-core commit, its possible for a different thread to be trying to add the same structure to another, new, transaction at the same time. To avoid this, this patch takes the log spinlock during this operation. Signed-off-by: Steven Whitehouse commit d7c103d0bd29c94f78155a4538faf314e49d9713 Author: Steven Whitehouse Date: Thu Jan 25 17:14:59 2007 +0000 [GFS2] Fix recursive locking attempt with NFS In certain cases, its possible for NFS to call the lookup code while holding the glock (when doing a readdirplus operation) so we need to check for that and not try and lock the glock twice. This also fixes a typo in a previous NFS related GFS2 patch. Signed-off-by: Steven Whitehouse commit b790c3b7c38aae28c497bb363a6fe72f7c96568f Author: David Teigland Date: Wed Jan 24 10:21:33 2007 -0600 [DLM] can miss clearing resend flag A long, complicated sequence of events, beginning with the RESEND flag not being cleared on an lkb, can result in an unlock never completing. - lkb on waiters list for remote lookup - the remote node is both the dir node and the master node, so it optimizes the lookup into a request and sends a request reply back - the request reply is saved on the requestqueue to be processed after recovery - recovery runs dlm_recover_waiters_pre() which sets RESEND flag so the lookup will be resent after recovery - end of recovery: process_requestqueue takes saved request reply which removes the lkb off the waitesr list, _without_ clearing the RESEND flag - end of recovery: dlm_recover_waiters_post() doesn't do anything with the now completed lookup lkb (would usually clear RESEND) - later, the node unmounts, unlocks this lkb that still has RESEND flag set - the lkb is on the waiters list again, now for unlock, when recovery occurs, dlm_recover_waiters_pre() shows the lkb for unlock with RESEND set, doesn't do anything since the master still exists - end of recovery: dlm_recover_waiters_post() takes this lkb off the waiters list because it has the RESEND flag set, then reports an error because unlocks are never supposed to be handled in recover_waiters_post(). - later, the unlock reply is received, doesn't find the lkb on the waiters list because recover_waiters_post() has wrongly removed it. - the unlock operation has been lost, and we're left with a stray granted lock - unmount spins waiting for the unlock to complete The visible evidence of this problem will be a node where gfs umount is spinning, the dlm waiters list will be empty, and the dlm locks list will show a granted lock. The fix is simply to clear the RESEND flag when taking an lkb off the waiters list. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 8fd3a98f2c22982aff4d29e4ee72959d3032c123 Author: David Teigland Date: Wed Jan 24 10:11:45 2007 -0600 [DLM] saved dlm message can be dropped dlm_receive_message() returns 0 instead of returning 'error'. What would happen is that process_requestqueue would take a saved message off the requestqueue and call receive_message on it. receive_message would then see that recovery had been aborted, set error to EINTR, and 'goto out', expecting that the error would be returned. Instead, 0 was always returned, so process_requestqueue would think that the message had been processed and delete it instead of saving it to process next time. This means the message (usually an unlock in my tests) would be lost. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit f1f1c1ccf7848a6e25db30ee9216e1a1e7eb6bef Author: Patrick Caulfield Date: Wed Jan 24 11:17:59 2007 +0000 [DLM] Make sock_sem into a mutex Now that there can be multiple dlm_recv threads running we need to prevent two recvs running for the same connection - it's unlikely but it can happen and it causes message corruption. Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit d043e1900c97f7282b71844c8530279913b6ec5a Author: Steven Whitehouse Date: Tue Jan 23 16:56:36 2007 -0500 [GFS2] Fix typo in glock.c This is a one letter typo fix in glock.c, spotted by Rob Kenna. Signed-off-by: Steven Whitehouse commit ddfe0627838ca0c0e8babb0dd2bd7f4b35e25bff Author: Eric Sandeen Date: Thu Jan 18 16:41:23 2007 -0600 [GFS2] use CURRENT_TIME_SEC instead of get_seconds in gfs2 I was looking something else up and came across this... I don't honestly have a good reason to change it other than to make it like every other Linux filesystem in this regard. ;-) It doesn't functionally change anything, but makes some lines shorter. :) I'm also curious; why does gfs2 have 64-bits of on-disk timestamps, but not in timespec_t format, and only stores second resolutions? Seems like you're halfway to sub-second resolutions already. I suppose if that gets implemented then all of the below should instead be CURRENT_TIME not CURRENT_TIME_SEC. Signed-off-by: Eric Sandeen Signed-off-by: Steven Whitehouse commit 90101c31867b7acc44286b425d50e1042aa55b8d Author: Steven Whitehouse Date: Tue Jan 23 13:20:41 2007 -0500 [GFS2] Compile fix for glock.c This one liner got missed from the previous patch. Signed-off-by: Steven Whitehouse commit 12132933c4fdeb458195a9388287d550c8476edf Author: Steven Whitehouse Date: Mon Jan 22 13:09:04 2007 -0500 [GFS2] Remove queue_empty() function This function is not longer required since we do not do recursive locking in the glock layer. As a result all its callers can be replaceed with list_empty() calls. Signed-off-by: Steven Whitehouse commit bd44e2b007bc9024bce3357c185b38c73f87c3dd Author: Patrick Caulfield Date: Mon Jan 22 14:51:33 2007 +0000 [DLM] fix lowcomms receiving This patch fixes a bug whereby data on a newly accepted connection would be ignored if it arrived soon after the accept. Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit b5d32bead1578afc5ca817d40c320764d50a8600 Author: Steven Whitehouse Date: Mon Jan 22 12:15:34 2007 -0500 [GFS2] Tidy up glops calls This patch doesn't make any changes to the ordering of the various operations related to glocking, but it does tidy up the calls to the glops.c functions to make the structure more obvious. The two functions: gfs2_glock_xmote_th() and gfs2_glock_drop_th() can be made static within glock.c since they are called by every set of glock operations. The xmote_th and drop_th glock operations are then made conditional upon those two routines existing and called from the previously mentioned functions in glock.c respectively. Also it can be seen that the go_sync operation isn't needed since it can easily be replaced by calls to xmote_bh and drop_bh respectively. This results in no longer (confusingly) calling back into routines in glock.c from glops.c and also reducing the glock operations by one member. Signed-off-by: Steven Whitehouse commit f2f5095f9e63db57faa7cb082e958910ecdd7ad4 Author: Patrick Caulfield Date: Mon Jan 22 14:50:10 2007 +0000 [DLM] lowcomms tidy This patch removes some redundant fields from the connection structure and adds some lockdep annotation to remove spurious warnings. Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 1c0f4872dc4bbeb2223a300517099786211fce83 Author: Steven Whitehouse Date: Mon Jan 22 12:10:39 2007 -0500 [GFS2] Remove local exclusive glock mode Here is a patch for GFS2 to remove the local exclusive flag. In the places it was used, mutex's are always held earlier in the call path, so it appears redundant in the LM_ST_SHARED case. Also, the GFS2 holders were setting local exclusive in any case where the requested lock was LM_ST_EXCLUSIVE. So the other places in the glock code where the flag was tested have been replaced with tests for the lock state being LM_ST_EXCLUSIVE in order to ensure the logic is the same as before (i.e. LM_ST_EXCLUSIVE is always locally exclusive as well as globally exclusive). Signed-off-by: Steven Whitehouse commit 6bd9c8c2fb99d1f5af6201db2f063c1d754c230a Author: Steven Whitehouse Date: Fri Jan 19 13:57:36 2007 -0500 [GFS2] Remove unused go_callback operation This is never used, so we might as well remove it. Signed-off-by: Steven Whitehouse commit e5dab552c82ce416d7be867b1e5a0fa585dcf590 Author: Steven Whitehouse Date: Thu Jan 18 17:44:20 2007 +0000 [GFS2] Remove the "greedy" function from glock.[ch] The "greedy" code was an attempt to retain glocks for a minimum length of time when they relate to mmap()ed files. The current implementation of this feature is not, however, ideal in that it required allocating memory in order to do this and its overly complicated. It also misses the mark by ignoring the other I/O operations which are just as likely to suffer from the same problem. So the plan is to remove this now and then add the functionality back as part of the glock state machine at a later date (and thus take into account all the possible users of this feature) Signed-off-by: Steven Whitehouse commit fee852e374fb367c5436b1226eb93b35f8355ed9 Author: Steven Whitehouse Date: Wed Jan 17 15:33:23 2007 +0000 [GFS2] Shrink gfs2_inode memory by half Here is something I spotted (while looking for something entirely different) the other day. Rather than using a completion in each and every struct gfs2_holder, this removes it in favour of hashed wait queues, thus saving a considerable amount of memory both on the stack (where a number of gfs2_holder structures are allocated) and in particular in the gfs2_inode which has 8 gfs2_holder structures embedded within it. As a result on x86_64 the gfs2_inode shrinks from 2488 bytes to 1912 bytes, a saving of 576 bytes per inode (no thats not a typo!). In actual practice we get a much better result than that since now that a gfs2_inode is under the 2048 byte barrier, we get two per 4k slab page effectively halving the amount of memory required to store gfs2_inodes. Signed-off-by: Steven Whitehouse commit 330005c2b23e71e54931913e9b63d1712a19e444 Author: Steven Whitehouse Date: Mon Jan 15 16:36:26 2007 -0500 [GFS2] Remove max_atomic_write tunable This removes an unused sysfs tunable parameter. Signed-off-by: Steven Whitehouse commit 3699e3a44bf56e0cd58c97e8655f375ad9b65d9d Author: Steven Whitehouse Date: Wed Jan 17 15:09:20 2007 +0000 [GFS2] Clean up/speed up readdir This removes the extra filldir callback which gfs2 was using to enclose an attempt at readahead for inodes during readdir. The code was too complicated and also hurts performance badly in the case that the getdents64/readdir call isn't being followed by stat() and it wasn't even getting it right all the time when it was. As a result, on my test box an "ls" of a directory containing 250000 files fell from about 7mins (freshly mounted, so nothing cached) to between about 15 to 25 seconds. When the directory content was cached, the time taken fell from about 3mins to about 4 or 5 seconds. Interestingly in the cached case, running "ls -l" once reduced the time taken for subsequent runs of "ls" to about 6 secs even without this patch. Now it turns out that there was a special case of glocks being used for prefetching the metadata, but because of the timeouts for these locks (set to 10 secs) the metadata was being timed out before it was being used and this the prefetch code was constantly trying to prefetch the same data over and over. Calling "ls -l" meant that the inodes were brought into memory and once the inodes are cached, the glocks are not disposed of until the inodes are pushed out of the cache, thus extending the lifetime of the glocks, and thus bringing down the time for subsequent runs of "ls" considerably. Signed-off-by: Steven Whitehouse commit a8d638e30e768adc6956541f79f7bf05139ba475 Author: Steven Whitehouse Date: Mon Jan 15 13:52:17 2007 +0000 [GFS2] Add writepages for "data=writeback" mounts It occurred to me that although a gfs2 specific writepages for ordered writes and journaled data would be tricky, by hooking writepages only for "data=writeback" mounts we could take advantage of not needing buffer heads (we don't use them on the read side, nor have we for some time) and create much larger I/Os for the block layer. Using blktrace both before and after, its possible to see that for large I/Os, most of the requests generated through writepages are now 1024 sectors after this patch is applied as opposed to 8 sectors before. Signed-off-by: Steven Whitehouse commit 222d396092acc11b4af03bede309aa066945e920 Author: David Teigland Date: Mon Jan 15 10:28:22 2007 -0600 [DLM] fix master recovery If master recovery happens on an rsb in one recovery sequence, then that sequence is aborted before lock recovery happens, then in the next sequence, we rely on the previous master recovery (which may now be invalid due to another node ignoring a lookup result) and go on do to the lock recovery where we get stuck due to an invalid master value. recovery cycle begins: master of rsb X has left nodes A and B send node C an rcom lookup for X to find the new master C gets lookup from B first, sets B as new master, and sends reply back to B C gets lookup from A next, and sends reply back to A saying B is master A gets lookup reply from C and sets B as the new master in the rsb recovery cycle on A, B and C is aborted to start a new recovery B gets lookup reply from C and ignores it since there's a new recovery recovery cycle begins: some other node has joined B doesn't think it's the master of X so it doesn't rebuild it in the directory C looks up the master of X, no one is master, so it becomes new master B looks up the master of X, finds it's C A believes that B is the master of X, so it sends its lock to B B sends an error back to A A resends this repeats forever, the incorrect master value on A is never corrected The fix is to do master recovery on an rsb that still has the NEW_MASTER flag set from an earlier recovery sequence, and therefore didn't complete lock recovery. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit a1bc86e6bddd34362ca08a3a4d898eb4b5c15215 Author: David Teigland Date: Mon Jan 15 10:34:52 2007 -0600 [DLM] fix user unlocking When a user process exits, we clear all the locks it holds. There is a problem, though, with locks that the process had begun unlocking before it exited. We couldn't find the lkb's that were in the process of being unlocked remotely, to flag that they are DEAD. To solve this, we move lkb's being unlocked onto a new list in the per-process structure that tracks what locks the process is holding. We can then go through this list to flag the necessary lkb's when clearing locks for a process when it exits. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 1d6e8131cf0064ef5ab5f3411a82b800afbfadee Author: Patrick Caulfield Date: Mon Jan 15 14:33:34 2007 +0000 [DLM] Use workqueues for dlm lowcomms This patch converts the DLM TCP lowcomms to use workqueues rather than using its own daemon functions. Simultaneously removing a lot of code and making it more scalable on multi-processor machines. Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 03dc6a538e42bcc8d5dfabcee208b639db85a80c Author: Adrian Bunk Date: Sat Jan 13 10:56:41 2007 +0100 [GFS2] make gfs2_change_nlink_i() static On Thu, Jan 11, 2007 at 10:26:27PM -0800, Andrew Morton wrote: >... > Changes since 2.6.20-rc3-mm1: >... > git-gfs2-nmw.patch >... > git trees >... This patch makes the needlessly globlal gfs2_change_nlink_i() static. Signed-off-by: Adrian Bunk Signed-off-by: Steven Whitehouse commit 70831465646b1fef9bf7b51b64409276411e9746 Author: Robert Peterson Date: Thu Jan 11 13:25:00 2007 -0600 [GFS2] gfs2 knows of directories which it chooses not to display This is for Red Hat bugzilla bug bz #222302: Moving a virtual IP from node to node between two NFS-over-GFS2 servers was causing one of the GFS2 servers to become confused and reference a deleted inode. The problem was due to vfs dentries that did not reference the gfs2_dops and therefore didn't call the gfs2 revalidate code to revalidate a dentry after a directory had been deleted & recreated. This patch is a crosswrite from a RHEL4 bug found in GFS1 as bz #190756 and it is against the latest -nmw git tree. Signed-off-by: Robert Peterson Signed-off-by: Steven Whitehouse commit d200778e1257eeb92242355de6f191a0a5ad43c4 Author: David Teigland Date: Tue Jan 9 09:46:02 2007 -0600 [DLM] expose dlm_config_info fields in configfs Make the dlm_config_info values readable and writeable via configfs entries. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 99fc64874aad1ee0aea5c4d8c07e3529f9d03497 Author: David Teigland Date: Tue Jan 9 09:44:01 2007 -0600 [DLM] add config entry to enable log_debug Add a new dlm_config_info field to enable log_debug output and change log_debug() to use it. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 68c817a1c4e21b893672ac73d8a498e6647453aa Author: David Teigland Date: Tue Jan 9 09:41:48 2007 -0600 [DLM] rename dlm_config_info fields Add a "ci_" prefix to the fields in the dlm_config_info struct so that we can use macros to add configfs functions to access them (in a later patch). No functional changes in this patch, just naming changes. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 8ec6886748443bec53ce9b9bf50cec92bc417a1b Author: David Teigland Date: Tue Jan 9 09:38:39 2007 -0600 [DLM] change some log_error to log_debug Some common, non-error messages should use log_debug instead of log_error so they can be turned off. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 87d21e07f3880b8d489f0b4a639deb1362101838 Author: S. Wendy Cheng Date: Thu Jan 18 16:07:03 2007 -0500 [GFS2] Fix gfs2_rename deadlock Second round of gfs2_rename lock re-ordering to allow Anaconda adding root partition on top of gfs2. Previous to this patch the recursive lock detector in glock.c can be triggered due to attempting to lock the rgrp twice. This fixes it by checking to see whether the rgrp is already locked. This fixes Red Hat bugzilla #221237 Signed-off-by: S. Wendy Cheng Signed-off-by: Steven Whitehouse commit 6c93fd1e578669364e026a0d44c669b871e2a8c4 Author: Russell Cattelan Date: Mon Jan 8 17:47:51 2007 -0600 [GFS2] BZ 217008 fsfuzzer fix. Update the quilt header comments to match the code changes. Change gfs2_lookup_simple to return an error in the case of a NULL inode. The callers of gfs2_lookup_simple do not check for NULL in the no entry case and such would end up dereferencing a NULL ptr. This fixes: http://projects.info-pull.com/mokb/MOKB-15-11-2006.html Signed-off-by: Russell Cattelan Signed-off-by: Steven Whitehouse commit 49686f71060e342bce6644a5c69fbc6ad0e75a13 Author: Steven Whitehouse Date: Mon Jan 8 14:31:40 2007 +0000 [GFS2] Fix ordering of page disposal vs. glock_dq In case of unlinked files with dirty pages GFS2 wasn't clearing the pages in quite the right order. This patch clears the pages earlier (before the qlock_dq) to avoid the situation that the release of the glock results in attempting to write back data that has already been deallocated. This fixes Red Hat bugzilla: #220117 Signed-off-by: Steven Whitehouse commit 4edde74eedb8bc4c03adc3602b114b72a7ccd13f Author: Patrick Caulfield Date: Tue Jan 2 17:08:54 2007 +0000 [DLM] Fix spin lock already unlocked bug I just noticed this message when testing some other changes I'd made to lowcomms (to use workqueues) but the problem seems to be in the current git trees too. I'm amazed no-one has seen it. BUG: spinlock already unlocked on CPU#1, dlm_recoverd/16868 Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 3fb4a251febe70e4c65ea8250545b391fd414d5a Author: Patrick Caulfield Date: Tue Jan 2 17:01:05 2007 +0000 [DLM] Fix schedule() calls I was a little over-enthusiastic turning schedule() calls int cond_sched() when fixing the DLM for Andrew Morton. These four should really be calls to schedule() or the dlm can busy-wait. Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 5509826f1e548d14bb888c1cb6e3bbf23f855770 Author: S. Wendy Cheng Date: Thu Jan 18 15:56:34 2007 -0500 [GFS2] Fix change nlink deadlock Bugzilla 215088 Fix deadlock in gfs2_change_nlink() while installing RHEL5 into GFS2 partition. The gfs2_rename() apparently needs block allocation for the new name (into the directory) where it requires rg locks. At the same time, while updating the nlink count for the replaced file, gfs2_change_nlink() tries to return the inode meta-data back to resource group where it needs rg locks too. Our logic doesn't allow process to acquire these locks recursively by the same process (RHEL installer) that results a BUG call. This only happens within rename code path and only if the destination file exists before the rename operation. Signed-off-by: S. Wendy Cheng Signed-off-by: Steven Whitehouse commit e1d5b18ae92d0bbfe66dc2b4bab65006d32c5f7d Author: Steven Whitehouse Date: Fri Dec 15 16:49:51 2006 -0500 [GFS2] Fail over to readpage for stuffed files This is partially derrived from a patch written by Russell Cattelan. It fixes a bug where there is a race between readpages and truncate by ignoring readpages for stuffed files. This is ok because a stuffed file will never be more than one block (minus sizeof(struct gfs2_dinode)) in size and block size is always less than page size, so we do not lose anything efficiency-wise by not doing readahead for stuffed files. They will have already been "read ahead" by the action of reading the inode in, in the first place. This is the remaining part of the fix for Red Hat bugzilla #218966 which had not yet made it upstream. Signed-off-by: Steven Whitehouse Cc: Russell Cattelan commit c7b3383437ff41781964d1bf7f40ff8d7dd5bc47 Author: Steven Whitehouse Date: Thu Dec 14 18:24:26 2006 +0000 [GFS2] Fix DIO deadlock This patch fixes Red Hat bugzilla #212627 in which a deadlock occurs due to trying to take the i_mutex while holding a glock. The correct locking order is defined as i_mutex -> glock in all cases. I've left dealing with allocating writes. I know that we need to do that, but for now this should do the trick. We don't need to take the i_mutex on write, because the VFS has already taken it for us. On read we don't need it since the glock is enough protection. The reason that I've made some of the checks into a separate function is that we'll need to do the checks again in the allocating write case eventually, so this is partly in preparation for this. Likewise the return value test of != 1 might look a bit odd and thats because we'll need a third return value in case of requiring an allocation. I've made the change to deferred mode on the glock to ensure flushing read caches on other nodes. I notice that (using blktrace to look at whats going on) we appear to do a better job of large I/Os than ext3 after this patch (in terms of not splitting up the I/Os). Signed-off-by: Steven Whitehouse Cc: Wendy Cheng commit 927255f0383342f5d49b82adb6689b9cba52a6f5 Author: Adrian Bunk Date: Tue Dec 19 13:04:03 2006 -0800 [DLM] fs/dlm/lowcomms-tcp.c: remove 2 functions Remove the following unused functions: - lowcomms_send_message() - lowcomms_max_buffer_size() Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 075529b5e1ffa8c9864d23930b71b5306a13d9f8 Author: David Teigland Date: Wed Dec 13 10:40:26 2006 -0600 [DLM] fix lost flags in stub replies When the dlm fakes an unlock/cancel reply from a failed node using a stub message struct, it wasn't setting the flags in the stub message. So, in the process of receiving the fake message the lkb flags would be updated and cleared from the zero flags in the message. The problem observed in tests was the loss of the USER flag which caused the dlm to think a user lock was a kernel lock and subsequently fail an assertion checking the validity of the ast/callback field. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 8d07fd509e9c82a59e37b8b18a2fd0e8ef8fc837 Author: David Teigland Date: Wed Dec 13 10:39:20 2006 -0600 [DLM] fix receive_request() lvb copying LVB's are not sent as part of new requests, but the code receiving the request was copying data into the lvb anyway. The space in the message where it mistakenly thought the lvb lived actually contained the resource name, so it wound up incorrectly copying this name data into the lvb. Fix is to just create the lvb, not copy junk into it. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit da49f36f4f64feb281d7663be99e779b2aecc607 Author: David Teigland Date: Wed Dec 13 10:38:45 2006 -0600 [DLM] fix send_args() lvb copying The send_args() function is used to copy parameters into a message for a number different message types. Only some of those types are set up beforehand (in create_message) to include space for sending lvb data. send_args was wrongly copying the lvb for all message types as long as the lock had an lvb. This means that the lvb data was being written past the end of the message into unknown space. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 9e971b715dcc3cd5f4383f2815aaa7e5853d1f7b Author: David Teigland Date: Wed Dec 13 10:37:55 2006 -0600 [DLM] add version check Check if we receive a message from another lockspace member running a version of the dlm with an incompatible inter-node message protocol. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 38aa8b0c59c35d10d15ebf00ceee641f9ed7acba Author: David Teigland Date: Wed Dec 13 10:37:16 2006 -0600 [DLM] fix old rcom messages A reply to a recovery message will often be received after the relevant recovery sequence has aborted and the next recovery sequence has begun. We need to ignore replies to these old messages from the previous recovery. There's already a way to do this for synchronous recovery requests using the rc_id number, but not for async. Each recovery sequence already has a locally unique sequence number associated with it. This patch adds a field to the rcom (recovery message) structure where this recovery sequence number can be placed, rc_seq. When a node sends a reply to a recovery request, it copies the rc_seq number it received into rc_seq_reply. When the first node receives the reply to its recovery message, it will check whether rc_seq_reply matches the current recovery sequence number, ls_recover_seq, and if not then it ignores the old reply. An old, inadequate approach to filtering out old replies (checking if the current stage of recovery has moved back to the start) has been removed from two spots. The protocol version number is changed to reflect the different rcom structures. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit dc200a8848cca8b0e99012996c66f4b379a390ed Author: David Teigland Date: Wed Dec 13 10:36:37 2006 -0600 [DLM] fix resend rcom lock There's a chance the new master of resource hasn't learned it's the new master before another node sends it a lock during recovery. The node sending the lock needs to resend if this happens. - A sends a master lookup for resource R to C - B sends a master lookup for resource R to C - C receives A's lookup, assigns A to be master of R and sends a reply back to A - C receives B's lookup and sends a reply back to B saying that A is the master - B receives lookup reply from C and sends its lock for R to A - A receives lock from B, doesn't think it's the master of R and sends an error back to B - A receives lookup reply from C and becomes master of R - B gets error back from A and resends its lock back to A (this resending is what this patch does) - A receives lock from B, it now sees it's the master of R and takes the lock Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit c378051177dce4421428fd1691ffdf15ad57c161 Author: David Teigland Date: Wed Dec 6 11:46:33 2006 -0600 [GFS2] don't try to lockfs after shutdown If an fs has already been shut down, a lockfs callback should do nothing. An fs that's been shut down can't acquire locks or do anything with respect to the cluster. Also, remove FIXME comment in withdraw function. The missing bits of the withdraw procedure are now all done by user space. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit a417a21e10831bca695b4ba9c74f4ddf5a95ac06 Author: Soeren Sonnenburg Date: Mon Feb 5 10:06:01 2007 +0100 USB HID: handle multi-interface devices for Apple macbook pro properly Some HID devices by Apple have both keyboard and mouse interfaces; the keyboard interface is handled by usbhid, but the mouse (really touchpad) interface must be handled by the separate 'appletouch' driver. Using HID_QUIRK_IGNORE will make hiddev ignore both interfaces, therefore a new quirk flag to ignore only the mouse interface is required. Signed-off-by: Soeren Sonnenburg Signed-off-by: Sergey Vlasov Signed-off-by: Jiri Kosina commit dd64c151b978dc78ed535433d930c75b5c15deeb Author: Jiri Kosina Date: Tue Jan 30 16:02:24 2007 +0100 HID: move away from DEBUG defines in favor of CONFIG_HID_DEBUG CONFIG_INPUT_DEBUG is non-existent option, so remove anything depending on it. Also, as we have new CONFIG_HID_DEBUG, this should be used on places where ifdef DEBUG was used before. Suggested by Adrian Bunk. Signed-off-by: Jiri Kosina commit 43c7bf0472ec1f813fccc6012654399345898491 Author: Jiri Kosina Date: Fri Jan 26 12:58:24 2007 +0100 USB HID: fix bogus comment in hid_get_class_descriptor() The comment in hid_get_class_descriptor() says a very obvious thing and is also violating codingstyle. Just remove it. Signed-off-by: Jiri Kosina commit 8235ca3c05076f35d22578e8f530fd374104332a Author: Jiri Kosina Date: Fri Jan 26 12:56:16 2007 +0100 USB HID: remove hid_find_field_by_usage() The unused hid_find_field_by_usage() function has been commented out for a pretty long time. Remove it completely. Signed-off-by: Jiri Kosina commit 7c379146005d277982acde02da44c773de5e7e5a Author: Jiri Kosina Date: Wed Jan 24 11:54:19 2007 +0100 HID: API - fix leftovers of hidinput API in USB HID hidinput_{open,close}() functions do not belong to usbhid, but to the generic HID layer. Move them, and fix hooks in struct hid_device, so that now the callbacks are done to transport-specific _open() functions, but not input_open() functions. Signed-off-by: Jiri Kosina commit c080d89ad91e98fec0e8fc5f448a1ad899bd85c7 Author: Jiri Kosina Date: Thu Jan 25 11:43:31 2007 +0100 HID: hid debug from hid-debug.h to hid layer hid-debug.h contains a lot of code, and should not therefore be a header. This patch moves the code to generic hid layer as .c source, and introduces CONFIG_HID_DEBUG to conditionally compile it, instead of playing with #define DEBUG and including hid-debug.h. Signed-off-by: Jiri Kosina commit 20eb12790670985c8e30821218993bd260387b89 Author: Anssi Hannula Date: Thu Jan 11 16:51:18 2007 +0200 hid: force feedback driver for PantherLord USB/PS2 2in1 Adapter Add a force feedback driver for PantherLord USB/PS2 2in1 Adapter, 0810:0001. The device identifies itself as "Twin USB Joystick". Signed-off-by: Anssi Hannula Signed-off-by: Jiri Kosina commit 5556feae1c4e1cf2021b5fb2ef99973125de2250 Author: Anssi Hannula Date: Thu Jan 11 16:51:17 2007 +0200 hid: quirk for multi-input devices with unneeded output reports Add new quirk HID_QUIRK_SKIP_OUTPUT_REPORTS to skip output reports when enumerating reports on a hid-input device. Add this quirk and HID_QUIRK_MULTI_INPUT to 0810:0001. PantherLord Twin USB Joystick, 0810:0001 has separate input reports for 2 distinct game controllers in the same interface, so it needs HID_QUIRK_MULTI_INPUT. However, the device also contains one output report per controller which is used to control the force feedback function, and we do not want those to appear as separate input devices as well. The simplest approach seems to be to add a quirk to skip output reports on 0810:0001, and allow the force feedback driver to handle those. Signed-off-by: Anssi Hannula Signed-off-by: Jiri Kosina commit c4146067fd7889bc6fab6cdfd8b2795d745a2156 Author: Anssi Hannula Date: Thu Jan 11 16:51:16 2007 +0200 hid: allow force feedback for multi-input devices Allow hid devices with HID_QUIRK_MULTI_INPUT to have force feedback. This was previously disabled because there were not any force feedback drivers for such devices. This will change with my upcoming patch. Signed-off-by: Anssi Hannula Signed-off-by: Jiri Kosina commit b45bfcc1ae084aa98c0350b8c33c8b57540b0acc Author: Hoang-Nam Nguyen Date: Wed Jan 24 00:14:18 2007 +0100 IB/ehca: Remove obsolete prototypes Remove prototypes for functions that don't exist. Signed-off-by: Hoang-Nam Nguyen Signed-off-by: Roland Dreier commit 4c34bdf58c0a3b305ebd9b5e74011ca1fd6d964d Author: Hoang-Nam Nguyen Date: Wed Jan 24 00:13:35 2007 +0100 IB/ehca: Remove use of do_mmap() This patch removes do_mmap() from ehca: - Call remap_pfn_range() for hardware register block - Use vm_insert_page() to register memory allocated for completion queues and queue pairs - The actual mmap() call/trigger is now controlled by user space, ie. libehca Signed-off-by: Hoang-Nam Nguyen Signed-off-by: Roland Dreier commit 1f12667021c542236b1f10eb5d8b2d8f3a79ab48 Author: Steve Wise Date: Tue Jan 23 19:03:17 2007 -0600 RDMA/addr: Handle ethernet neighbour updates during route resolution The iWARP connection manager uses the ib_addr services to do route resolution (neighbour discovery in the IP world). The ib_addr netevent callback routine, however, currently only acts on InfiniBand neighbour updates. It needs to act on ethernet neighbour updates as well. This patch just removes filtering on device type altogether and will trigger on any neighour updates where the nud_type is valid. This simplifies the code some. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit fa7252ed4d92397baf30e4a144af95a33eaa925b Author: Jason Gunthorpe Date: Fri Jan 19 11:58:49 2007 -0700 IB: Make sure struct ib_user_mad.data is aligned Make the untyped data region in ib_user_mad have type u64 so that it gets aligned properly. This avoids alignment faults in ib_umad when casting the data field to an rmpp_mad and accessing the 64-bit tid field on architectures like ia64. Signed-off-by: Jason Gunthorpe Signed-off-by: Roland Dreier commit 1033ff670d49760604f5d4c73a1b60741863a406 Author: Ishai Rabinovitz Date: Tue Jan 16 17:26:22 2007 +0200 IB/srp: Don't wait for response when QP is in error state. When there is a call to send_tsk_mgmt SRP posts a send and waits for 5 seconds to get a response. When the QP is in the error state it is obvious that there will be no response so it is quite useless to wait. In fact, the timeout causes SRP to wait a long time to reconnect when a QP error occurs. (Each abort and each reset_device calls send_tsk_mgmt, which waits for the timeout). The following patch solves this problem by identifying the failure and returning an immediate error code. Signed-off-by: Ishai Rabinovitz Signed-off-by: Roland Dreier commit 062dbb69f32b9ccea701b30f8cc0049482e6211f Author: Michael S. Tsirkin Date: Sun Dec 31 21:09:42 2006 +0200 IB: Return qp pointer as part of ib_wc struct ib_wc currently only includes the local QP number: this matches the IB spec, but seems mostly useless. The following patch replaces this with the pointer to qp itself, and updates all low level drivers and all users. This has the following advantages: - Ability to get a per-qp context through wc->qp->qp_context - Existing drivers already have the qp pointer ready in poll cq, so this change actually saves a tiny bit (extra memory read) on data path (for ehca it would actually be expensive to find the QP pointer when polling a CQ, but ehca does not support SRQ so we can leave wc->qp as NULL for ehca) - Users that need the QP number can still get it through wc->qp->qp_num Use case: In IPoIB connected mode code, I have a common CQ shared by multiple QPs. To track connection usage, I need a way to get at some per-QP context upon the completion, and I would like to avoid allocating context object per work request just to stick a QP pointer into it. With this code, I can just use wc->qp->qp_context. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 459d6e2a541a5226825db998e627e0aa046aa257 Author: Michael S. Tsirkin Date: Sun Feb 4 14:11:55 2007 -0800 IB: Include explicitly in uses struct kref, so it should include explicitly to avoid hidden include dependencies. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit f9d429a2e579ed7c51c49a81265f7e7d2c59c197 Author: Pierre Ossman Date: Sat Feb 3 13:36:41 2007 +0100 mmc: tifm: replace kmap with page_address Since we actively avoid highmem, calling kmap_atomic() instead of page_address() is effectively only obfuscation. Signed-off-by: Pierre Ossman commit c70840e819acdbab96b8cdf71d27cb68c6567efa Author: Pierre Ossman Date: Fri Feb 2 22:41:41 2007 +0100 mmc: sdhci: fix voltage ocr Some bad if-clauses caused the driver to just report the highest supported voltage, not all. Signed-off-by: Pierre Ossman commit 2a22b14edfdf1dce303ec48bb934a6a2edb278b5 Author: Pierre Ossman Date: Fri Feb 2 18:27:42 2007 +0100 mmc: sdhci: replace kmap with page_address Since we actively avoid highmem, calling kmap_atomic() instead of page_address() is effectively only obfuscation. Signed-off-by: Pierre Ossman commit 4a0ddbd25ad4e03a0a1657f5cb2259c9a35fe9e6 Author: Pierre Ossman Date: Wed Jan 31 18:20:48 2007 +0100 mmc: wbsd: replace kmap with page_address Since we actively avoid highmem, calling kmap_atomic() instead of page_address() is effectively only obfuscation. Signed-off-by: Pierre Ossman commit df1c4b7bf7f3b3a48d78c6e5c2fc5b9a1c01b821 Author: Pierre Ossman Date: Tue Jan 30 07:55:15 2007 +0100 mmc: handle pci_enable_device() return value in sdhci Make sure we report back any errors from pci_enable_device(). Signed-off-by: Pierre Ossman commit 397411e67ff473c36161d93e4c7ac6dc53e23503 Author: Pierre Ossman Date: Tue Jan 30 07:48:04 2007 +0100 mmc: Proper unclaim in mmc_block Make sure we release the claim on the host even on failure. Signed-off-by: Pierre Ossman commit fac8899129a0490020a0734cc84c1a94ac72c7e1 Author: Pierre Ossman Date: Sat Jan 27 13:18:26 2007 +0100 mmc: change wbsd mailing list The wbsd-devel list has been shut down. Refer people to LKML instead. Signed-off-by: Pierre Ossman commit ae06eaf9abb1fd00e413753786e13406eda5819a Author: Pierre Ossman Date: Sun Jan 7 16:59:06 2007 +0100 mmc: Graceful fallback for fancy features MMC high-speed, wide bus support and SD high-speed are functions that aren't critical for correct operation of the card. As such, they shouldn't mark the card as bad or dead when there is a failure activating these features. This is needed in particular on some really stupid hardware (e.g. Winbond's) where not all data transfer commands are supported. Signed-off-by: Pierre Ossman commit 5ba593a97206fb96dc0e63f209e6ade86452844f Author: Pierre Ossman Date: Tue Nov 21 17:45:37 2006 +0100 mmc: Handle wbsd's stupid command list The wbsd hardware is so incredibly brain damaged that it has an internal list of commands that result in data transfers. The result being that commands that aren't on this list aren't supported. Instead of locking up, waiting for a data interrupt that will never come, we try to fail a bit more gracefully. Signed-off-by: Pierre Ossman commit 55db890a838c7b37256241b1fc53d6344aa79cc0 Author: Pierre Ossman Date: Tue Nov 21 17:55:45 2006 +0100 mmc: Allow host drivers to specify max block count Many controllers have an upper limit on the number of blocks that can be transferred in one request. Allow the host drivers to specify this and make sure we avoid hitting this limit. Also change the max_sectors field to avoid confusion. This makes it map less directly to the block layer limits, but as they didn't apply directly on MMC cards anyway, this isn't a great loss. Signed-off-by: Pierre Ossman commit fe4a3c7a20f14d86022a8132adbf6ddb98e7197c Author: Pierre Ossman Date: Tue Nov 21 17:54:23 2006 +0100 mmc: Allow host drivers to specify a max block size Most controllers have an upper limit on the block size. Allow the host drivers to specify this and make sure we avoid hitting this limit. Signed-off-by: Pierre Ossman commit dba4accab17bd2e2e09088f746257a8c14af1cc2 Author: Alex Dubov Date: Mon Dec 11 01:55:38 2006 +1100 tifm_sd: add suspend and resume functionality Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 41d78f7405659b55e082c5f0b3d1b625e75e1294 Author: Alex Dubov Date: Mon Dec 11 01:55:37 2006 +1100 tifm_core: add suspend/resume infrastructure for tifm devices Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 8b40adab9c6cb63cede72c3ce3c3fee1157719e0 Author: Alex Dubov Date: Mon Dec 11 01:55:36 2006 +1100 tifm_7xx1: prettify Fix some spaces and tabs. No semantic changes are introduced. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit b5ad6761533c3f7e97c93b2333a0f88490d44f36 Author: Alex Dubov Date: Mon Dec 11 01:55:35 2006 +1100 tifm_7xx1: recognize device 0xac8f as supported This patch also adds symbolic defines for supported pci ids. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 7146f0d3bd2bcd0100a5db54f4ba9edc1042fe01 Author: Alex Dubov Date: Mon Dec 18 14:20:06 2006 +1100 tifm_7xx1: switch from workqueue to kthread As there's only one work item (media_switcher) to handle and it's effectively serialized with itself, I found it more convenient to use kthread instead of workqueue. This also allows for a working implementation of suspend/resume, which were totally broken in the past version. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 6412d927313f08808d61b7efba8da43717d4e8d2 Author: Alex Dubov Date: Mon Dec 11 01:55:33 2006 +1100 tifm_7xx1: Merge media insert and media remove functions Hardware does not say whether card was inserted or removed when reporting socket events. Moreover, during suspend, media can be removed or switched to some other card type without notification. Therefore, for each socket in the change set the following is performed: 1. If there's active device in the socket it's unregistered 2. Media detection is performed 3. If detection recognizes supportable media, new device is registered This patch also alters some macros and variable names to enhance clarity. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 1499ead31ede528a657c50761c4780c40f929d6d Author: Alex Dubov Date: Mon Dec 11 01:55:32 2006 +1100 tifm_7xx1: simplify eject function Eject function can take advantage of the socket_id field instead of explicit pointer comparison. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 217334d14d28e6a671e6dd2c7a35c9070b0721ea Author: Alex Dubov Date: Mon Dec 11 01:55:31 2006 +1100 Add dummy_signal_irq function to save check in ISR Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 50743f4cb1d655c7fbe25af58a9d0db6bf76d687 Author: Alex Dubov Date: Mon Dec 11 01:55:30 2006 +1100 Remove unused return value from signal_irq callback Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 2e8ce5e7414e74fe8904495b1f22cf00d3349398 Author: Alex Dubov Date: Fri Dec 8 16:50:52 2006 +1100 tifm_sd: prettify This patch introduces no semantic changes - it is here for estetic purposes. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 8e02f8581cd2f9c12a03be7641d5c2c427170feb Author: Alex Dubov Date: Fri Dec 8 16:50:51 2006 +1100 tifm_sd: restructure initialization, removal and command handling In order to support correct suspend and resume several changes were needed: 1. Switch from work_struct to tasklet for command handling. When device suspend is called workqueues are already frozen and can not be used. 2. Separate host initialization code from driver's probe and don't rely on interrupts for host initialization. This, in turn, addresses two problems: a) Resume needs to re-initialize the host, but can not assume that device interrupts were already re-armed. b) Previously, probe will return successfully before really knowing the state of the host, as host interrupts were not armed in time. Now it uses polling to determine the real host state before returning. 3. Separate termination code from driver's remove. Termination may be caused by resume, if media changed type or became unavailable during suspend. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 83d420ba92bdd52127e4548ae8050a48f655ce3b Author: Alex Dubov Date: Fri Dec 8 16:50:50 2006 +1100 tifm_sd: fix hardware timeout setup The register access order when setting hardware timeout was incorrect and causing problems (wrong timeout intervals). This is now fixed. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 0803dd0c2594c7dc70c14ab00ea21e68605f5ba1 Author: Alex Dubov Date: Fri Dec 8 16:50:49 2006 +1100 tifm_sd: Switch software timeout handler from work_struct to timer Two changes are introduced to software timeout handler in order to simplify its management: 1. The implementation is switched from work_struct to timer 2. Previously, software timeout was rearmed with each interrupt. Now, current request must complete entirely within timeout interval. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 255ef22e89ecedcc594428444a72a29cb66153f5 Author: Alex Dubov Date: Fri Dec 8 16:50:48 2006 +1100 tifm_sd: use kmap_atomic instead of kmap for PIO data buffer Data buffer for PIO transfer used to be mapped in advance with kmap. Abolish it in favor of on-demand kmap_atomic. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit 1289335a2ab57d00c638c3954dc86d6c4eab5606 Author: Alex Dubov Date: Fri Dec 8 16:50:47 2006 +1100 tifm_sd: alter order of the states in the command handler Previously, stop command was issued right after BRS (block received/sent) event. Stop command completion event could interfere with the card busy event, causing miscount of the written blocks. This patch ensures that stop command issued as last action for a particular command, after DMA sompletion event and written block count verification. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit fba68bd2dab1ac99af3c5a963ec9581cfa9f1725 Author: Philip Langdale Date: Thu Jan 4 06:57:32 2007 -0800 mmc: Add support for SDHC cards Thanks to the generous donation of an SDHC card by John Gilmore, and the surprisingly enlightened decision by the SD Card Association to publish useful specs, I've been able to bash out support for SDHC. The changes are not too profound: i) Add a card flag indicating the card uses block level addressing and check it in the block driver. As we never took advantage of byte-level addressing, this simply involves skipping the block -> byte translation when sending commands. ii) The layout of the CSD is changed - a set of fields are discarded to make space for a larger C_SIZE. We did not reference any of the discarded fields except those related to the C_SIZE. iii) Read and write timeouts are fixed values and not calculated from CSD values. iv) Before invoking SEND_APP_OP_COND, we must invoke the new SEND_IF_COND to inform the card we support SDHC. Signed-off-by: Philipl Langdale Signed-off-by: Pierre Ossman commit 9e9dc5f29f2eb65153a15c4fdb12b4382e3a75b2 Author: Darren Salt Date: Sat Jan 27 15:32:31 2007 +0100 mmc: Power quirk for ENE controllers Support for these devices was broken for 2.6.18-rc1 and later by commit 146ad66eac836c0b976c98f428d73e1f6a75270d, which added voltage level support. This restores the previous behaviour for these devices by ensuring that when the voltage is changed, only one write to set the voltage is performed. It may be that both writes are needed if the voltage is being changed between two non-zero values or that it's safe to ensure that only one write is done if the hardware only supports one voltage; I don't know whether either is the case nor can I test since I have only the one SD reader (1524:0550), and it supports just the one voltage. Signed-off-by: Darren Salt Signed-off-by: Pierre Ossman commit 11354d03afe9dd0d114e078057158baad4b4eee9 Author: Pierre Ossman Date: Sun Jan 14 01:41:45 2007 +0100 mmc: let host be parent of cards Change the parent of cards to be a specific host (a class device), not the physical controller. This is particularly useful when the hardware has multiple slots, meaning multiple hosts. Signed-off-by: Pierre Ossman commit f22ee4edf63e7480511112d9965c71e07be3f8b7 Author: Pierre Ossman Date: Tue Dec 26 15:11:23 2006 +0100 mmc: replace host->card_busy As card_busy was only used to indicate if the host was exclusively claimed and not really used to identify a particular card, replacing it with just a boolean makes things a lot more easily understandable. Signed-off-by: Pierre Ossman commit 279bc4450989215e741c2c9d3a726f1ac96ede40 Author: Manuel Lauss Date: Thu Jan 25 10:27:41 2007 +0100 mmc: au1xmmc: return errors for unknown response types au1xmmc: return error when encountering unhandled/unknown response type. Signed-off-by: Manuel Lauss Signed-off-by: Pierre Ossman commit 82999770d6926193f50b42e713a92ee4028398e3 Author: Manuel Lauss Date: Thu Jan 25 10:29:24 2007 +0100 mmc: au1xmmc: implement proper ro switch detection au1xmmc: implement proper R/O switch detection. Signed-off-by: Manuel Lauss Signed-off-by: Pierre Ossman commit 894d79bedd8b48fe838083f2d2a42ac09817c530 Author: Len Brown Date: Sat Feb 3 02:13:53 2007 -0500 asus-laptop: merge with ACPICA table update No longer need a buffer for a copy of the DSDT, just a pointer to the mapped table. Signed-off-by: Len Brown commit 274ec7a8c07036bd02e8f2301456e443ef30b8a8 Merge: 6b25970... b03637b... Author: Len Brown Date: Sat Feb 3 01:39:22 2007 -0500 Pull output-switch into test branch commit 6b259707d53f0f25f0b24318a0774f1ae7e7e92c Merge: a4144e4... db503422... Author: Len Brown Date: Sat Feb 3 01:39:07 2007 -0500 Pull trivial into test branch Conflicts: drivers/acpi/scan.c Signed-off-by: Len Brown commit a4144e451ce1951e8dad2aa8e2288f75ab745172 Merge: eee3c85... 8def05f... Author: Len Brown Date: Sat Feb 3 01:38:30 2007 -0500 Pull asus into test branch commit eee3c859c486d4f110f154807430eaf825ff4a3d Merge: 5473526... fb5c3e1... Author: Len Brown Date: Sat Feb 3 01:38:16 2007 -0500 Pull motherboard into test branch Conflicts: drivers/acpi/motherboard.c Signed-off-by: Len Brown commit 547352660506ab99d6b0bad58dea495bf3718cee Author: Zhang Rui Date: Thu Jan 11 02:09:09 2007 -0500 ACPI: bay: Convert ACPI Bay driver to be compatible with sysfs update. Set fake hid for ejectable drive bay. Match bay devices by checking the hid. Remove .match method of Bay driver. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 975a8e3ed2b9eab9f062a1e0ba7fe180e15204e1 Merge: 1fcb71b... bfd8022... Author: Len Brown Date: Sat Feb 3 01:14:35 2007 -0500 Pull sysfs into test branch Conflicts: Documentation/feature-removal-schedule.txt include/acpi/acpi_drivers.h Signed-off-by: Len Brown commit 1fcb71b84b05ff3bfd5b5b2eca9a9b3d13a76e3a Merge: e8bdc5a... 0ed1e38... Author: Len Brown Date: Sat Feb 3 01:12:39 2007 -0500 Pull bay into test branch commit 0ed1e38d513ea683ce125e698dd41d31441e0e8c Author: Len Brown Date: Fri Feb 2 22:39:16 2007 -0500 ACPI: bay: new driver is EXPERIMENTAL Signed-off-by: Len Brown commit 5d22e1e83aac1f81f948ac8bff281487c11cc967 Author: Adrian Bunk Date: Mon Dec 4 14:49:39 2006 -0800 ACPI: bay: make drive_bays static Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 2b167c01190b647c976e7fab312f2e3d3b3a785f Author: Kristen Carlson Accardi Date: Mon Dec 18 18:07:00 2006 -0500 ACPI: bay: make bay a platform driver Convert the bay driver to be a platform driver, so that we can have sysfs entries. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Len Brown commit e9dd85e5bdff2a3981dfaa55869ba920e985ea8a Author: Kristen Carlson Accardi Date: Mon Dec 18 18:06:00 2006 -0500 ACPI: bay: remove prototype procfs code Remove all the procfs related code. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Len Brown commit 5447cbb278fd01c402180ab1e820b95101e782fa Author: Len Brown Date: Sat Oct 21 01:15:41 2006 -0400 ACPI: bay: delete unused variable drivers/acpi/bay.c: In function ‘bay_notify’: drivers/acpi/bay.c:491: warning: unused variable ‘bay’ Signed-off-by: Len Brown commit 01b57e73728880b787c85e27ad06c249412813b1 Author: Kristen Carlson Accardi Date: Fri Oct 20 14:30:25 2006 -0700 ACPI: bay: new driver adding removable drive bay support Signed-off-by: Kristen Carlson Accardi Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit fe9a2f77e5ad508b18671571c0b3f6f79ea709a8 Author: Kristen Carlson Accardi Date: Fri Feb 2 22:33:00 2007 -0500 ACPI: dock: check if parent is on dock When determining if a device is on a dock station, we should check the parent of the device as well. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Len Brown commit e8bdc5a9c56c140c732246a298922c3cf3777460 Merge: c6f4bc2... b0b7eaa... Author: Len Brown Date: Sat Feb 3 01:08:52 2007 -0500 Pull acpica into test branch commit b0b7eaaf0c7aefd118d3ff8640fbed75a9fad9a1 Author: Alexey Starikovskiy Date: Thu Jan 25 22:39:44 2007 -0500 ACPICA: fix gcc build warnings drivers/acpi/namespace/nsparse.c:126: warning: int format, different type arg (arg 7) drivers/acpi/tables/tbfadt.c:224: warning: unsigned int format, different type arg (arg 6) drivers/acpi/utilities/utdebug.c:184: warning: cast from pointer to integer of different size drivers/acpi/utilities/utdebug.c:184: warning: cast from pointer to integer of different size drivers/acpi/utilities/utdebug.c:197: warning: cast from pointer to integer of different size drivers/acpi/processor_idle.c:1093: warning: long long unsigned int format, u64 arg (arg 5) Signed-off-by: Len Brown commit c6f4bc211122c86de85a6c93f139319957fd1f8a Merge: 7e23772... 82cae99... Author: Len Brown Date: Fri Feb 2 22:42:44 2007 -0500 Pull bugzilla-7349 into test branch commit 7e23772f414cdbfb2a08aed237d6e926bb1cb728 Merge: bcd8b54... 2f3d000... Author: Len Brown Date: Fri Feb 2 22:42:02 2007 -0500 Pull video into test branch commit bcd8b54f7d9c980b945d3f1cc48f76f2fa6e2e1b Merge: e47fddf... d91a007... Author: Len Brown Date: Fri Feb 2 22:21:10 2007 -0500 Pull hp-pci-root into test branch commit 3e643e77a929202455a0cc868c2030a5ba8d1371 Author: John Keller Date: Tue Jan 30 01:18:38 2007 -0500 Altix: Add ACPI SSDT PCI device support (hotplug) Support for dynamic loading and unloading of ACPI SSDT tables upon slot hotplugs and unplugs. On SN platforms, we now represent every populated root bus slot with a single ACPI SSDT table containing info for every device and PPB attached to the slot. These SSDTs are generated by the prom at initial boot and hotplug time. The info in these SSDT tables is used by the SN kernel IO "fixup" code (which is called at boot and hotplug time). On hotplugs (i.e. enable_slot()), if running with an ACPI capable prom, attempt to obtain a new ACPI SSDT table for the slot being hotplugged. If successful, add the table to the ACPI namespace (acpi_load_table()) and then walk the new devices and add them to the ACPI infrastructure (acpi_bus_add()). On hot unplugs (i.e. disable_slot()), if running with an ACPI capable prom, attempt to remove the SSDT table associated with the slot from the ACPI namespace (acpi_unload_table_id()) and infastructure (acpi_bus_trim()). From: John Keller A bug was fixed where the sgi hotplug driver was removing the slot's SSDT table from the ACPI namespace a bit too early in disable_slot(). Also, we now call acpi_bus_start() subsequent to acpi_bus_add(). Signed-off-by: Aaron Young Cc: Greg KH Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 6f09a9250a5d76c0765cd51a33e0a042e9761cfc Author: John Keller Date: Tue Jan 30 01:17:37 2007 -0500 Altix: ACPI SSDT PCI device support Add SN platform support for running with an ACPI capable PROM that defines PCI devices in SSDT tables. There is a SSDT table for every occupied slot on a root bus, containing info for every PPB and/or device on the bus. The SSDTs will be dynamically loaded/unloaded at hotplug enable/disable. Platform specific information that is currently passed via a SAL call, will now be passed via the Vendor resource in the ACPI Device object(s) defined in each SSDT. Signed-off-by: John Keller Cc: Greg KH Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 647fb47dfabeffd2f1706013ebf5cfc92b70d273 Author: Len Brown Date: Fri Feb 2 22:14:22 2007 -0500 ACPICA: reduce conflicts with Altix patch series Syntax only -- no functional changes. Signed-off-by: Len Brown commit defad23020bb7701b3ad414135c73fc03054507b Author: Alexey Starikovskiy Date: Fri Feb 2 22:02:55 2007 -0500 ACPI_NUMA: fix HP IA64 simulator issue with extended memory domain ACPI 3.0 incorporated the SRAT spec, upping the table version to 2, and extending the size of the proximity domain from 1-byte to 4-bytes. This extension was into a reserved field that firmware should set to 0, but the HP simulator had non-zero values there resulting in unexpected huge numbers. So mask the domain down to 8-bits for now. A more general fix will be to check the table version supplied by firmware and get paranoid about reserved fields. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 45eded8703c0f9d58a8807f80baa9fe98ac0ec67 Author: Alexey Starikovskiy Date: Fri Feb 2 21:48:40 2007 -0500 ACPI: fix HP RX2600 IA64 boot Copy space_id of GAS structure to newly created GAS. The previous FADT conversion code defaulted to IO space. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 0e5683350f5bcd23d5d579f91d488caeda432617 Author: Alexey Starikovskiy Date: Fri Feb 2 21:37:53 2007 -0500 ACPI: build fix for IBM x440 - CONFIG_X86_SUMMIT i386 srat.c broke due to re-names from ACPICA table-manager re-write. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 5763d3c7a0c2b165504954b1eeb898fb8d97d8f5 Author: Bob Moore Date: Fri Feb 2 19:48:24 2007 +0300 ACPICA: Update version to 20070126 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 035f994b3ccfcfc555f838e2f33a2e49721e8533 Author: Bob Moore Date: Fri Feb 2 19:48:24 2007 +0300 ACPICA: Fix for incorrect parameter passed to AcpiTbDeleteTable during table load. Bad pointer was passed in the case where the DSDT is overridden. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 6c9deb7201d96733dcd1b4cc44e99232308db359 Author: Bob Moore Date: Fri Feb 2 19:48:24 2007 +0300 ACPICA: Update copyright to 2007. Added 2007 copyright to all module headers and signons. This affects virtually every file in the ACPICA core subsystem, iASL compiler, and the utilities. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 11bf04c44fd284a5f4e2348a04da6f749cace250 Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Allow processor to be declared with the Device() instead of Processor() Allow processor to be declered with the Device(), such as: Device(CPU1234) { Name(_HID, "ACPI007") Name(_UID, 1234) } Signed-off-by: Len Brown commit f18c5a08bf035b51939281f5b49aa3ae45cea6ce Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Allow ACPI id to be u32 instead of u8. Allow ACPI id to be u32 instead of u8. Requires drop of conversion tables with the acpiid as index. Signed-off-by: Len Brown commit 5008740e27540e4069a2f8235f8308aba46036a2 Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Update version to 20061215 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit d41eb99bac4063aa3fac2dbb8ca01bedd9f0b3bf Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Added option to display memory statistics upon termination. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit afbb9e659d584bd5bf0604848c91afd5761ed7a1 Author: Valery A. Podrezov Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Enhance debugger statistics/memory command. Debugger: Enhanced the Statistics/Memory command to emit the total (maximum) memory used during execution, as well as the maximum memory consumed by each of the various object types. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit ea5415785146afe37dd2d1179a6c3a34fd26b52f Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Update a comment. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 2e23f8513e9d0cc6d07d36e4555badc2518df433 Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Debugger multithreading enhancements. Implemented enhancements to the multithreading support within the debugger to enable better multithreading evaluation of the subsystem. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 59fa85057e12ff135df54266722b2064c418fc05 Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Removed all 16-bit support. Support for 16-bit ACPICA has been completely removed since it is no longer necessary and it clutters the code. All 16-bit macros, types, and conditional compiles have been removed, cleaning up and simplifying the code across the entire subsystem. DOS support is no longer needed since the Linux firmware kit is now available. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit ff40c8a3f258e9a54b0b94b92d5e2d9d88a39954 Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Update version to 20061109 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 1a666f8be16a0e1580e0f37e1322d06affb84e1b Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Add include of actables.h Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit c857303ad496e1f52955e95994a67869882e89f9 Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Fail AcpiEnable if ACPI tables not loaded. AcpiEnable will now fail if all of the required ACPI tables are not loaded (FADT, FACS, DSDT). BZ 477 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 987c21a0b0081d480ec3cd04875509cdc10e15e7 Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Add ACPI_MAX macro Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 7c9626bade13de3f160f0926455328650045d6cd Author: Bob Moore Date: Fri Feb 2 19:48:23 2007 +0300 ACPICA: Ensure that all structures in acobject.h are aligned, via #pragma. Thus, even if the default compiler setting is non-aligned, the header is compiled correctly. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 8876016bb384044a59c1e2ddcad4cf41b06344b9 Author: Bob Moore Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Remove global lock handler on AcpiTerminate. Added AcpiEvRemoveGlobalLockHandler Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit a6823e12ca3f79a8c0f8b2d14976ab2152d117e5 Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Fixes for load() operator. Optimized the Load operator in the case where the source operand is an operation region. Simply map the operation region memory, instead of performing a bytewise read. Signed-off-by: Bob Moore Signed-off-by: Len Brown commit 428f211297bc95fd41f23830eab4180339020dd0 Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Miscellaneous table manager updates and optimizations Signed-off-by: Bob Moore Signed-off-by: Len Brown commit 77f6a9fca39f4f19d2d9d5fff1ff5c2ccf20629c Author: Bob Moore Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Update debug output routines for data structure changes Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 15a58ed12142939d51076380e6e58af477ad96ec Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Remove duplicate table definitions (non-conflicting), cont Signed-off-by: Len Brown commit 5f3b1a8b6737b09ce5df4ec9fad4ad271aecb5fb Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Remove duplicate table definitions (non-conflicting) Signed-off-by: Len Brown commit ad363f80c386bc4701b1bc2cdf08ca9b96a9337b Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Remove duplicate table definitions. Signed-off-by: Len Brown commit cee324b145a1e5488b34191de670e5ed1d346ebb Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: use new ACPI headers. Signed-off-by: Len Brown commit ceb6c46839021d5c7c338d48deac616944660124 Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Remove duplicate table manager Signed-off-by: Len Brown commit a7a22fa9c368ba22f13b87585052b8cdbbc18f7a Author: Bob Moore Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Update version to 20061011 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit f1c2b1daf040d2feebfbbd4a0cd80cde856fc031 Author: Bob Moore Date: Fri Feb 2 19:48:22 2007 +0300 ACPICA: Fixes for parameter validation. Extra checks for valid handle/path combinations, BZ 478 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit c1014629c0fc563be65e675e72bcc9bd7db50195 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Abort downward walk on temporary node detection. Enhancement to code that ignores temporary namespace nodes Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 3effba32069514e56bcb778f90cd34fdbac79a50 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Update comments Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit ec3153fb0e96988dc7e378b3ab01e05131ba713b Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Use manifest constants for parse pass number Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit b7a69806308600711589e4ca306d18dd029ef0cf Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: _CID support for PCI Root Bridge detection. Implemented _CID support for PCI Root Bridge detection. If the _HID does not match the predefined root bridge IDs, the _CID list (if present) is now obtained and also checked for an ID match Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit d1fdda83f7c567f376ddd4305833de09f7919ca9 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Fix race condition with AcpiWalkNamespace. Fixed a problem with a possible race condition between threads executing AcpiWalkNamespace and the AML interpreter. This condition was removed by modifying AcpiWalkNamespace to (by default) ignore all temporary namespace entries created during any concurrent control method execution Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 9bc75cff4919f9d947982d805aed89582a20d04d Author: Valery Podrezov Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Eliminate control method 2-pass parse/execute. Completed an AML interpreter performance enhancement for control method execution. Previously a 2-pass parse/execution, control methods are now completely parsed and executed in single pass. This improves overall interpreter performance by ~25%, reduces code size, and reduces CPU stack use. Signed-off-by: Bob Moore Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 4d0b4af958453afe871022e44abd57fac09baf67 Author: Mikhail Kouzmich Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Restructured module into multiple functions. Restructured the AML ParseLoop function, breaking it into several subfunctions in order to reduce CPU stack use and improve maintainability Signed-off-by: Bob Moore Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 2b705a8abbce1753c1e5af5ae2ed97e374277654 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Update version to 20060927 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit cb219bb6bf6f8cabdf07fbbca8487eee5a91ff05 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Add new subsystem state bit that is set after SubsystemInitialize is called Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 65e4b9b05dc10ee84b5c9fc3039fbcc6863743d7 Author: Fiodor Suietov Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Fix for possible memory leak and fault. Fixed a possible memory leak and fault in acpi_ex_resolve_object_to_value() during a read from a buffer or region field. (BZ 458) Signed-off-by: Bob Moore Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 867c9aec576e0c0d89dfa3922019320619002129 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Update interpreter error paths to always report the error Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit f70a5e7b6c28e0b08f721204f4b98c5d1cfb44d9 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: On AML mutex force-release, set depth to zero (was 1). Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 310a7f7fee489b7dadd27b0d8487bd0ce66281e7 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Use faster ByIndex interface to get FACS Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit d8c71b6d3b21cf21ad775e1cf6da95bf87bd5ad4 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Remove obsolete Flags parameter. Remove flags parameter for acpi_{get,set}_register(). It is no longer necessary now that these functions use a spinlock for mutual exclusion. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 73ca0fbcc25a6080db4136f55dbcd5fe7b33398f Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Fix for Global Lock semaphore. Fixed a problem with the Global Lock where the lock could appear to be obtained before it is actually obtained, semaphore created with one unit. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 14d64b5e36a82ef21a51d8a15639d26b75a79499 Author: Bob Moore Date: Fri Feb 2 19:48:21 2007 +0300 ACPICA: Add full table name to disassembler output Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 4cdf469090f732ab8a45b2d30b43ec5745699285 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Update version to 20060912 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 977a6226feae3e2c10a4d8227625ff0f04b49239 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Fix trace output name and whitespace Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 0fab8997f18f71b2391e72e49d8d31a395352dcc Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Fix memory leak in table load error path Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 7139284460fba90c4dfcfae76680ad36b45f5982 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: New common routine for creating and verifying a local FADT. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 13b572a35ed904ae1e162f8ee89ca7fd6992b44c Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Report error if method creates 2 objects with the same name Fixed a regression where an error was no longer emitted if a control method attempts to create 2 objects of the same name. This previously and now returns AE_ALREADY_EXISTS. When this exception occurs, it invokes the mechanism that will dynamically serialize the control method to possible prevent future errors. (BZ 440) Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit ea5d8ebcbb7ca3bcb35a2133805571295f3f06e8 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: FADT verification is now table driven. Disassembler now verifies an input Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 775d85b6aa33116da8aacad4168c540ce86a1803 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Add declarations for ASF! sub-tables Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit cc2a472b8411ce0b71738039e15d45917da30fbe Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: IsResourceTemplate now returns ACPI_STATUS to differentiate the failure modes. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 15f0c0d1ef7804d098fe3eb0a3f350a490ca269c Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Allow type ANY to be the target of the Scope operator. Useful during disassembly where the target may be in a different table and thus the type is unknown. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 77389e1263a7c9bc8040bda726e08b6501ba1c8b Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: re-factor table init routines for benefit of iASL Required new table init interface since iASL does not use RSDP/XSDT. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 694b0b2092bce3f4610626b04158a6f3a95058e6 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: add ASF comment Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit e56b638bbee3c17b0dee39495bd15afe64db1b94 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Update comments in tbfadt.c Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 765ec20180fb70b4ee9d730167b2a0b76879f791 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Delete stale FADT functions outside tbfadt.c. Moved all FADT-related functions to a new file, tbfadt.c. Eliminated the acpi_hw_initialize function - the FADT registers are now validated when the table is loaded. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 1ba753acb372c2955a4843302e92e49ce82e2fea Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Re-implement interpreters' "serialized mode" Enhanced the implementation of the interpreters' serialized mode (boot with "acpi_serialize" to set acpi_glb_all_methods_serialized flag.) When this mode is specified, instead of creating a serialization semaphore per control method, the interpreter lock is simply no longer released before a blocking operation during control method execution. This effectively makes the AML Interpreter single-threaded. The overhead of a semaphore per-method is eliminated. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 95befdb398e0112ede80529f6770644ecfa5a82e Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Create tbfadt.c to hold all FADT-related functions Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit b89b71a0019660d73e3c9671205c49e443d7085c Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Cleanup of FADT verification function. Removed offset display, not needed. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 0eaa14c02809cc93386b907846da5c024fd73012 Author: Bob Moore Date: Fri Feb 2 19:48:20 2007 +0300 ACPICA: Update version to 20060831 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 84fb2c97731c1631c5548c15f3698ad82c274245 Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Split acpi_format_exception into two parts Split acpi_format_exception into two parts. New function is acpi_ut_verify_exception and will be used to verify exception codes returned by user. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 69874165ab953a62f9adb3096ccd84ed2561a602 Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Store GPE number instead of bitmask Update internal GPE data structure to simplify debug, use gpe_number instead of register bitmask. Signed-off-by: Bob Moore Signed-off-by: Len Brown commit 3d81b236a82a26fa8bdef9096829675d81890dc9 Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Fix unalignment in acpi_ut_repair_name Update interface to acpi_ut_repair_name() to avoid alignment issues on IA64 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit c5a7156959e89b32260ad6072bbf5077bcdfbeee Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Disable all wake GPEs after first one recieved Change for GPE support: when a wake GPE is received, now all wake GPEs are immediately disabled to prevent the waking GPE from firing again, and to prevent other wake GPEs from interrupting the wake process. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit fdffb72d23172c91af56983f303d1986994df522 Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Add acpi_gpe_count global to track the number of GPE events Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 2502fffb1958da66fa50a475081cb6827acdd9f3 Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Add support for DMAR table Implement support for ACPI DMAR table (DMA Remapping Table) in header files and disassembler. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit ad71860a17ba33eb0e673e9e2cf5ba0d8e3e3fdd Author: Alexey Starikovskiy Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: minimal patch to integrate new tables into Linux Signed-off-by: Len Brown commit a4bbb810dedaecf74d54b16b6dd3c33e95e1024c Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Lint changes Lint changes Move RSDT/XSDT pointer extraction to separate function Warning on 32-bit platforms if XSDT pointers use more than 32 bits. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 4bf273939c99fae5bae399f51c417a552d74b97f Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Fix for FADT conversion in 64-bit mode Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 8f34890dce60f7df6dd23a0d04977c6572adaab8 Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: Update comments for individual table fields comments only Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit c5fc42ac4d4d6d3e3f619290b86890cb3725d2f8 Author: Bob Moore Date: Fri Feb 2 19:48:19 2007 +0300 ACPICA: misc fixes for new Table Manager: Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit f3d2e7865c816258c699ff965768e46b50d536d3 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Implement simplified Table Manager The Table Manager component has been completely redesigned and reimplemented. The new design is much simpler, and reduces the overall code and data size of the kernel-resident ACPICA by approximately 5%. Also, it is now possible to obtain the ACPI tables very early during kernel initialization, even before dynamic memory management is initialized. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 2e42005bcdb4f63bed1cea7f537a5534d4bd7a57 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Update debug output Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit f93a21c7184de3db962d01f11eb2ddad5396c824 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Update version to 20060721 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 9c52657a2ac8aac5149e11049497b10918e1f58f Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Temporary fix for BankValue parameter Temporary fix for BankValue parameter of a Bank Field to support all constant values, including Zero and One. Must eventually be converted to a full TermArg evaluation. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 6b366e2fe1b68bd9af55caf166eaaf0609ba18a9 Author: Fiodor Suietov Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: fix for object premature deletion Fix for object premature deletion after CopyObject on Operation Region (BZ 350) Signed-off-by: Bob Moore Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 0654a6d3c7a777ddccd35c5bbc5765ffbfe3ea96 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Cast acpi_thread_id to UINT32 for debug output only Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit a72d47563bce9542b9a83521a4e8175076278ee9 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Release global lock from interrupt handler The ACPI Global Lock interrupt handler no longer queues the execution of a separate thread to signal the global lock semaphore. Instead, the semaphore is signaled directly from the interrupt handler. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit c81da66608d65dab04730582dfdfcdcab779e2fe Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Delete recursive feature of ACPI Global Lock Completed a new design and implementation for the ACPI Global Lock support. On the OS side, the global lock is now treated as a standard AML mutex. Previously, multiple OS threads could acquire the global lock simultaneously, but this could cause the BIOS to be starved by the lock in cases such as the Embedded Controller driver, where there is a tight coupling between the OS and the BIOS. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 8f9337c88335846b01801b1047a4caf10527a320 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Handle case NumElements > Package length Additional update for NumElements fix. Must handle case where NumElements > Package list length, pad package with null elements. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 24058054d781934df526be114c612cf2b29cf4e7 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Handle mis-matched package length Implement support within the AML interpreter for package objects that contain a mismatch between the AML length and package element count. In this case, the lesser of the two is used. Some BIOS code apparently modifies the package length on the fly, and this change supports this. Provides compatibility with the MS AML interpreter. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit c9e3ba2c1d178195e17bb4f1d49c32e0be8dbb16 Author: Bob Moore Date: Fri Feb 2 19:48:18 2007 +0300 ACPICA: Update function header Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit db50342205deabaff9ce1fbe53d5ba351992fa08 Author: Len Brown Date: Fri Feb 2 21:05:04 2007 -0500 ACPI: prevent build failure when CONFIG_X86_NUMAQ=y ...by disabling CONFIG_ACPI when CONFIG_X86_NUMAQ=y otherwise arch/i386/pci/Makefile forgets that it needs to build acpi.o drivers/built-in.o: In function `acpi_pci_root_add': pci_root.c:(.text+0x45ec4): undefined reference to `pci_acpi_scan_root' Signed-off-by: Len Brown commit 914afcf55ae2621a3c5930e8c458d4ae8636c469 Author: Steve French Date: Fri Feb 2 14:42:12 2007 +0000 [CIFS] Missing free in error path Thanks to jra for pointing this out Signed-off-by: Jeremy Allison Signed-off-by: Steve French commit 9a0c8230e84898ed27f790408805e33fa482b2f9 Author: Steve French Date: Fri Feb 2 04:21:57 2007 +0000 [CIFS] Reduce cifs stack space usage The two cifs functions that used the most stack according to "make checkstack" have been changed to use less stack. Thanks to jra and Shaggy for helpful ideas Signed-off-by: Steve French cc: jra@samba.org cc: shaggy@us.ibm.com commit e051fda4fd14fe878e6d2183b3a4640febe9e9a8 Author: Mark Fasheh Date: Thu Feb 1 11:40:16 2007 -0800 ocfs2: ocfs2_link() journal credits update Commit 592282cf2eaa33409c6511ddd3f3ecaa57daeaaa fixed some missing directory c/mtime updates in part by introducing a dinode update in ocfs2_add_entry(). Unfortunately, ocfs2_link() (which didn't update the directory inode before) is now missing a single journal credit. Fix this by doubling the number of inode updates expected during hard link creation. Signed-off-by: Mark Fasheh commit bfd80223d73f80e1d1c69dace9151756b3ef3b49 Author: Alexey Starikovskiy Date: Wed Jan 31 16:00:20 2007 -0800 ACPI: correct id for fixed buttons ACPI_BUTTON_HID_POWERF was changed, but this change was not propogated to button.c, thus breaking detection of fixed power and sleep buttons. Signed-off-by: Alexey Starikovskiy Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 030e9d8147491a9d2fe1b67882a3720fcf8b95f7 Author: Steve French Date: Thu Feb 1 04:27:59 2007 +0000 [CIFS] lseek polling returned stale EOF Fixes Samba bug 4362 Discovered by Jeremy Allison Clipper database polls on EOF via lseek and can get stale EOF when file is open on different client Signed-off-by: Jeremy Allison Signed-off-by: Steve French commit 7ac2735462349ca35d8807d93d66cf4d9ea7b729 Author: Len Brown Date: Tue Jan 30 02:13:44 2007 -0500 ACPI: delete unused acpi_device_get_debug_info() Signed-off-by: Len Brown commit 37cabc81640ddba28a2aa7f0d1286a1012eae248 Author: Robert P. J. Day Date: Sat Jan 27 01:55:18 2007 -0500 ACPI: Correct ACPI_DEBUG_OUTPUT typo -#ifdef CONFIG_ACPI_DEBUG_OUTPUT +#ifdef ACPI_DEBUG_OUTPUT As the former doesn't exist. Signed-off-by: Robert P. J. Day Signed-off-by: Len Brown commit 8def05fa82bfa4af0c8e83a00ff377ddd9074480 Author: Len Brown Date: Tue Jan 30 01:46:43 2007 -0500 asus-laptop: Lindent Signed-off-by: Len Brown commit 8b857353237c144113b9bbbf9e0236b3f0e7d315 Author: Corentin Chary Date: Fri Jan 26 14:04:58 2007 +0100 asus-laptop: add light sensor support /proc/acpi/asus/lslvl is now /sys/.../asus-laptop/ls_level /proc/acpi/asus/lssw is now /sys/.../asus-laptop/ls_switch nothing else .. Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 722ad97153015aaf5becba3084565e98e71a2aed Author: Corentin Chary Date: Fri Jan 26 14:04:55 2007 +0100 asus-laptop: add ledd support Ledd is a special led ... /sys/.../asus-laptop/ledd works like /proc/acpi/asus/ledd Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 78127b4a90469d6973de2837d483f80f3709e6e0 Author: Corentin Chary Date: Fri Jan 26 14:04:49 2007 +0100 asus-laptop: add display switching support /sys/.../asus-laptop/display can now be used to switch displays like the old /proc/acpi/asus/disp does Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 6b7091e74fe176da97917ca60524e2b3554305f0 Author: Corentin Chary Date: Fri Jan 26 14:04:45 2007 +0100 asus-laptop: add backlight support Adds backlight support using backlight class. We now change the brightness *and toggle the backlight !* via /sys/class/backlight/asus-laptop/. If the user switchs the backlight using the keyboard, asus_hotk_notify looks for ATKD_LCD_OFF and ATKD_LCD_ON events, and stores the right state into hotk->status and bd->props->power . Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 4564de172dcdce641c0d6c689e79e95b5f6bee2c Author: Corentin Chary Date: Fri Jan 26 14:04:40 2007 +0100 asus-laptop: add bluetooth and wlan support WLED and BLED are not handled like other leds (MLED, etc ..), because sometime they also control the wlan/bluetooth device. If the method for wireless_status is found, it's used to get the status, otherwise hotk->status is used. We also use the HWRS method, which tell if the bluetooth/wlan device is present or not. This patch show why we need a ASUS_SET_DEVICE_ATTR macro : if there is a bluetooth device, /sys/dev.../asus-laptop/bluetooth is usable, else it's not but it's clean. Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit be18cdabb8ed40ff4b8a240e0d6f4e6c30ff866d Author: Corentin Chary Date: Fri Jan 26 14:04:35 2007 +0100 asus-laptop: add led support Add led support, using generic led class. Thomas Tuttle's patch was very usefull. We use hotk->status to store led status because it's very hard to find acpi method to get the right status... To reduce the code, I use a lot of macro (ASUS_LED, ASUS_LED_REGISTER, etc ...), because the code is the same for all leds ... Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 85091b718969be7b8e6f795af7e264b8afcd7a6d Author: Corentin Chary Date: Fri Jan 26 14:04:30 2007 +0100 asus-laptop: add base driver Adds the new driver and make ASUS_LAPTOP and ACPI_ASUS incompatible. It may be strange to use ASUS_CREATE_DEVICE_ATTR and ASUS_SET_DEVICE_ATTR now, but these macro will be very usefull in next patchs. ASUS_HANDLE and ASUS_HANDLE_INIT comes from IBM_HANDLE and IBM_HANDLE_INIT, with some modification, and will also be used in next patchs. Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 5bb730fda8aa4e3f7e94b259c468ecd095f60770 Author: Zhang Rui Date: Mon Jan 29 11:02:42 2007 +0800 ACPI: add ACPICA version in sysfs Add an ACPI attribute to indicate ACPICA version. /proc/acpi/version is deprecated by /sys/module/acpi/parameters/acpica_version. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 219c3c8e268b9307eae9fae4c765a0c589b98338 Author: Zhang Rui Date: Mon Jan 29 11:02:38 2007 +0800 ACPI: add ACPI debug attribute in sysfs Add ACPI debug attributes in sysfs. /proc/acpi/debug_layer && debug_level are deprecated by /sys/module/acpi/parameters/debug_layer && debug_level. NOTE: The operations to them are quite the same. E.g. if you want to enable ACPI_DB_INFO, ACPI_DB_WARN, ACPI_DB_ERROR and disable the others, #echo 0x13 >/sys/module/acpi/parameters/debug_level is OK, and a boot option "acpi.debug_level = 0x13" also works. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit b981c591891dc8885de36498d38fa8d8a5481069 Author: Zhang Rui Date: Mon Jan 29 11:02:30 2007 +0800 ACPI: add a Kconfig option for ACPI procfs interface Add a kconfig option CONFIG_ACPI_PROCFS to make procfs interface a configurable attribute of ACPI. No procfs interface is actually deprecated, and no sysfs interface is added in this patch. CONGI_ACPI_PROCFS is used to mark procfs interface as deprecated once the same function is duplicated in sysfs. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 7220c0177b45600eef2cfd3e5e57ab5b96f3222c Author: Dave Kleikamp Date: Fri Jan 26 10:14:36 2007 -0600 JFS: Remove incorrect kgdb define jfs_debug.h uses an incorrect CONFIG_KERNEL_ASSERT ifdef to redefine the assert macro for kgdb use. I believe the code worked a long time ago, but today it's not a valid config option. Since I'm not aware of anybody interested in debugging jfs with kgdb, it should just be removed. Thanks to Robert P. J. Day for reporting this. Signed-off-by: Dave Kleikamp commit fb5c3e1b6d304bcf5f8d697471e36f2fa8d53f1c Author: Bjorn Helgaas Date: Wed Jan 24 00:49:19 2007 -0800 PNPACPI: remove EXPERIMENTAL dependency PNPACPI is pretty widely used and seems fairly stable, so remove the dependency on EXPERIMENTAL. Signed-off-by: Bjorn Helgaas Cc: Adam Belay Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 5eca338fb510af78eee5372ff6a3525768ab913f Author: Bjorn Helgaas Date: Thu Jan 18 16:44:48 2007 -0700 ACPI: remove motherboard driver (redundant with PNP system driver) The PNP system board driver (drivers/pnp/system.c) contains all the same functionality, so we don't need the ACPI version. Previously, a motherboard device would be claimed by *both* the ACPI and PNP drivers, resulting in stuff like this in /proc/ioports: 1200-121f : motherboard <-- from drivers/acpi/motherboard.c 1200-121f : pnp 00:0d <-- from drivers/pnp/system.c Make sure to enable CONFIG_PNP (and CONFIG_PNPACPI) to include the PNP system board driver. Signed-off-by: Bjorn Helgaas Signed-off-by: Len Brown commit 10fccf5fda7529258325769e9da136064b481aab Author: Bjorn Helgaas Date: Thu Jan 18 16:44:24 2007 -0700 i386: turn on CONFIG_PNP in defconfig I'm trying to remove drivers/acpi/motherboard.c, which is mostly redundant with drivers/pnp/system.c. So make sure that we include the PNP driver in the default config. Most distros enable this already. Turning on CONFIG_PNP also causes the following options to be enabled: CONFIG_PNPACPI CONFIG_SERIAL_8250_PNP CONFIG_SERIAL_8250_PNP causes legacy serial ports to be discovered twice, which is ugly but harmless: serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A 00:07: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A Signed-off-by: Bjorn Helgaas Signed-off-by: Len Brown commit 5859554c3ad31b722f0b5a1d3a40e19d8ccedd0b Author: Bjorn Helgaas Date: Thu Jan 18 16:43:46 2007 -0700 PNP: system.c whitespace cleanup No functional change. Signed-off-by: Bjorn Helgaas Signed-off-by: Len Brown commit a8c78f7fb1571764f48b8af5459abdd2c66a765f Author: Bjorn Helgaas Date: Thu Jan 18 16:43:27 2007 -0700 PNP: reserve system board iomem resources as well as ioport resources Most x86 boxes have no iomem system board resources, but some ia64 boxes do. Signed-off-by: Bjorn Helgaas Signed-off-by: Len Brown commit 9a47cdb1bb85e7944fb7419e4078c46516ef7335 Author: Bjorn Helgaas Date: Thu Jan 18 16:42:55 2007 -0700 ACPI: move FADT resource reservations from motherboard driver to osl Resources described by the FADT aren't really a good fit for the ACPI motherboard driver. The motherboard driver cares about PNP0C01 and PNP0C02 devices and their resources. The FADT describes some resources used by the ACPI core. Often, they are also described by by the _CRS of a motherboard device, but I think it's better to reserve them specifically in the ACPI osl.c because (a) the motherboard driver is optional and ACPI uses the resources even if the driver is absent, and (b) I want to remove the ACPI motherboard driver because it's mostly redundant with the PNP system.c driver. Signed-off-by: Bjorn Helgaas Signed-off-by: Len Brown commit 4aa0d230c2cfc1ac4bcf7c5466f9943cf14233a9 Author: Dave Kleikamp Date: Wed Jan 17 21:18:35 2007 -0600 JFS: call io_schedule() instead of schedule() to avoid deadlock The introduction of Jens Axboe's explicit i/o plugging patches introduced a deadlock in jfs. This was caused by the process initiating I/O not unplugging the queue before waiting on the commit thread. The commit thread itself was waiting for that I/O to complete. Calling io_schedule() rather than schedule() unplugs the I/O queue avoiding the deadlock, and it appears to be the right function to call in any case. Signed-off-by: Dave Kleikamp commit d91a0078476ca536d76419f3b53196873b2931bc Author: Justin Chen Date: Wed Dec 6 10:17:10 2006 -0700 ACPI: Optimize acpi_get_pci_rootbridge_handle() to boot faster Move acpi_get_pci_rootbridge_handle() from glue.c to pci_root.c and get the root bridge ACPI handles by searching the &acpi_pci_roots list instead of walking through the ACPI name space. This significantly reduces boot time on large I/O systems. Signed-off-by: Justin Chen Signed-off-by: Bjorn Helgaas Signed-off-by: Len Brown commit 82d5b9a7c63054a9a2cd838ffd177697f86e7e34 Author: Dave Kleikamp Date: Tue Jan 9 14:14:48 2007 -0600 JFS: Add lockdep annotations Yeah, it's about time. Signed-off-by: Dave Kleikamp commit 17e6afc75ad0150d265a86a8f155b2871f9c07fe Author: Dave Kleikamp Date: Tue Jan 9 08:57:34 2007 -0600 JFS: Avoid BUG() on a damaged file system On Mon, 2006-12-18 at 19:51 +0100, Eric Sesterhenn wrote: > hi, > > while playing around with fsfuzzer, i got the following oops with jfs: > > [ 851.804875] BUG at fs/jfs/jfs_xtree.c:760 > assert(!BT_STACK_FULL(btstack)) > [ 851.805179] ------------[ cut here ]------------ > [ 851.805238] kernel BUG at fs/jfs/jfs_xtree.c:760! JFS should mark the superblock dirty and return an error rather than calling BUG(). Signed-off-by: Dave Kleikamp commit bb0958544f3c7c016b2a3025ab3694363e403aa1 Author: Zhang Rui Date: Thu Jan 4 15:03:18 2007 +0800 ACPI: use more understandable bus_id for ACPI devices Some of the ACPI devices use the internal fake hids which are exposed to userspace as devces' bus_id after sysfs conversion. To make it more friendly, we convert them to more understandable strings. For those devices w/o PNPids, we use "device:instance_no" as the bus_id instead of "PNPIDNON:instance_no". Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 82cae99980c158cb9724415547ca59cf95c58792 Author: Rui Zhang Date: Wed Jan 3 23:40:53 2007 -0500 ACPI: video: fix LCD monitor seen as CRT http://bugzilla.kernel.org/show_bug.cgi?id=7349 Signed-off-by: Len Brown commit 2786f6e388e9dfe9e7b1c3c6bd7fcfba9cfb9831 Author: Rui Zhang Date: Thu Dec 21 02:21:13 2006 -0500 ACPI: fix Supermicro X7DB8+ Boot regression http://bugzilla.kernel.org/show_bug.cgi?id=7695 Originally we converted bind/unbind to use a new pci bridge driver. The driver will add/remove _PRT, so we can eventually remove .bind/.unbind methods. But we found that some of the _ADR-Based devices don't have _PRT, i.e. they are not managed by the new ACPI PCI bridge driver. So that .bind method is not called for some _ADR-Based devices, which leads to a failure. Now we make ACPI PCI Root Bridge Driver scan and binds all _ADR-Based devices once the driver is loaded, in the .add method of ACPI PCI Root Bridge driver. Extra code path for calling .bind/.unbind when _ADR-Based devices are hot added/removed is also added. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit e49bd2dd5a503bb94fe2f2af45422b610940b75d Author: Zhang Rui Date: Fri Dec 8 17:23:43 2006 +0800 ACPI: use PNPID:instance_no as bus_id of ACPI device Previously we used the device name in the DSDT, but would crash upon encountering a duplicate. Also, exposing the DSDT device name to the user in a patch isn't a good idea, because it is arbitrary. After some discussion, we finally decided to use "PNPID:instance_no" as the bus_id of ACPI devices. Two attributes for each device are added at the same time, the full pathname in ACPI namespace and hardware_id if it has. NOTE: acpi_bus_id_list is used to keep the information of PNPID and instance number of the given PNPID. Loop the acpi_bus_id_list to find the instance_no of the same PNPID when register a device. If failed, i.e. we don't have a node with this PNPID, allocate one and link it to this list. NOTE: Now I don't take the memory free work in charge. If necessary, I can add a reference count in struct acpi_device_bus_id, and check the reference and when unregister a device, i.e. memory is freed when the reference count of a given PNPID is 0. Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 2f3d000a133f68250635f14f6caf24d32d358090 Author: Yu Luming Date: Sat Nov 11 02:40:34 2006 +0800 ACPI: Adds backlight sysfs support for acpi video driver. Adds backlight sysfs support for acpi video driver. signed-off-by: Luming Yu Signed-off-by: Len Brown commit b03637b8863159a4518cb0a9ab90577460fe3417 Author: Yu Luming Date: Tue Dec 19 12:56:18 2006 -0800 output: Add output class document Signed-off-by: Luming Yu Cc: "Antonino A. Daplas" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 2dec3ba8d872aa3ffbcdb8f6f8a2c0bcd44e9910 Author: Yu Luming Date: Tue Dec 19 12:56:17 2006 -0800 output: Add display output class support Add generic abstract layer for display output switch control. The output sysfs class driver provides an abstract video output layer that can be used to hook platform specific methods to enable/disable video output device through common sysfs interface. Signed-off-by: Luming Yu Cc: "Antonino A. Daplas" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit ae8433324be16673c75951986dcf85f29c090557 Author: Zhang Rui Date: Thu Dec 7 20:57:10 2006 +0800 ACPI: Set fake hid for non-PNPID ACPI devices We do this mainly because: 1. hid is used to match ACPI devices and drivers. .match method which is incompatible to driver model can be deleted from acpi_driver.ops then. 2. As the .uevent method mark ACPI drivers by PNPID, fake hid is set to non-PNPID devices so that udev script can load the right ACPI driver by looking for "HWID = " or "COMPTID = ". Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit db3e1cc3257758d8a694d0a6ab29f109fb019853 Author: Li Shaohua Date: Thu Dec 7 20:57:05 2006 +0800 ACPI: Convert ACPI PCI .bind/.unbind to use PCI bridge driver acpi_device had a .bind/.unbind methods, but Linux driver model does not. Cut ACPI PCI code over to use the Linux driver model methods. Convert bind/unbind to use a new pci bridge driver. The driver will add/remove _PRT, so we can eventually remove .bind/.unbind methods. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 54a07001b9efb6a3bb9a9d8ac9ddb226e29b5406 Author: Li Shaohua Date: Thu Dec 7 20:56:51 2006 +0800 ACPI: consolidate two motherboard drivers into one Consolidate motherboard1 and motherboard2 drivers into one so that driver core doesn't complain that two drivers have the same name. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 96333578b023957537c3e98b50af7f3b7e08e411 Author: Li Shaohua Date: Thu Dec 7 20:56:46 2006 +0800 ACPI: add acpi_bus_removal_type in acpi_device Add removal_type in structure acpi_device for hot removal. ACPI_BUS_REMOVAL_EJECT is used for ACPI device hot removal. Only one parameter is allowed in .remove method due to driver model. So removal_type is added to indicate different removal type. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit c4168bff32e218b8400cb48b48adb9b7f7bb31b8 Author: Li Shaohua Date: Thu Dec 7 20:56:41 2006 +0800 ACPI: add acpi_bus_ops in acpi_device Add acpi_bus_ops in acpi_device to support acpi hot plug. NOTE: Two methods .add and .start in acpi_driver.ops are called separately to probe ACPI devices, while only .probe method is called in driver model. As executing .add and .start separately is critical for ACPI device hot plug, we use acpi_bus_ops to distinguish different code path. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit f883d9db008deb20d4969c26475100cec2b7f6f8 Author: Patrick Mochel Date: Thu Dec 7 20:56:38 2006 +0800 ACPI: convert to sysfs framework Setup new sysfs framework 1. Remove /sys/firmware/acpi 2. Add ACPI device in device tree. File "eject" for every device that has _EJ0 method is moved from /sys/firmware to /sys/devices. Operation on this file is exactly the same as before. i.e. echo 1 to "eject" will cause hot removal of this device. Corresponding changes should be made in userspace for hot removal. Signed-off-by: Li Shaohua Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit a7178df5e7e5730e5daa6cf6d8b8bf73adbe75c0 Author: Li Shaohua Date: Thu Dec 7 20:56:34 2006 +0800 ACPI: adjust init order Adjust link order to add ACPI devices to global list before PCI devices. In addition, acpi_bus type must be initialized before any driver loads. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 1890a97ab3f66d1e99768439f8067608b9b97fe3 Author: Patrick Mochel Date: Thu Dec 7 20:56:31 2006 +0800 ACPI: change registration interface to follow driver model ACPI device/driver registration Interfaces are modified to follow Linux driver model. Signed-off-by: Li Shaohua Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 5d9464a46918ced087c351a10f38cee95725f85b Author: Patrick Mochel Date: Thu Dec 7 20:56:27 2006 +0800 ACPI: add ACPI bus_type for driver model Add ACPI bus_type for Linux driver model. 1. .shutdown method is added into acpi_driver.ops needed by bus_type operations. 2. remove useless parameter 'int state' in .resume method. 3. change parameter 'int state' to 'pm_message_t state' in .suspend method. Note: The new .uevent method mark ACPI drivers by PNPID instead of by name. Udev script needs to look for "HWID=" or "COMPTID=" to load ACPI drivers as a result. Signed-off-by: Li Shaohua Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit d43ec68e9837dfa6618ab473622683fdbf6e68a9 Author: Patrick Mochel Date: Thu Dec 7 20:56:23 2006 +0800 ACPI: add device_driver and hepler functions Add device_driver into acpi_driver for driver model. Add helper functions 'to_acpi_device' and 'to_acpi_driver' to get structure acpi_device/acpi_driver by device/device_driver. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 1d268b0a0f5407138caf0dec9559d68e657a3a74 Author: Zhang Rui Date: Thu Dec 7 20:56:19 2006 +0800 ACPI: rename some functions We want the name 'to_acpi_device'. And the current macro 'to_acpi_device' will be removed after device model is setup. So just simply rename them. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 9e89dde2b063ca73fcdc9244fe68e2dea32c5088 Author: Zhang Rui Date: Thu Dec 7 20:56:16 2006 +0800 ACPI: clean up scan.c Adjust the code and make code doing similar things together. No logic changes. Signed-off-by : Zhang Rui Signed-off-by: Len Brown